haskell-src-exts-1.18.2/0000755000000000000000000000000012746233113013164 5ustar0000000000000000haskell-src-exts-1.18.2/CHANGELOG0000644000000000000000000004533512746233113014410 0ustar00000000000000001.18.1 --> 1.18.2 =================== * Fix overzealous lexing of type applications 1.18.0 --> 1.18.1 =================== * Fix overzealous lexing of overloaded labels. 1.17.1 --> 1.18.0 =================== * Remove simplified AST * GHC 8.0 update: Overloaded labels, type applications, pattern synonym extensions, StrictData, injective type families AST changes: * Add TyQuasiQuote (#279). Other changes: * Only treat 'role' as a keyword in certain contexts (#286). * Prettyprint '!' in patterns correctly when BangPatterns are enabled (#287). * Parse magic hash with multiple trailing hashes (#300). * Apply fixities inside pattern synonym builders * Fix lexing of idents with multiple trailing # ** 1.17.x 1.17.0 --> 1.17.1 ================= Bug Fix: * Fix bug in parsing view patterns (#284) 1.16.0.1 --> 1.17.0 =================== AST changes: * Replaced VarA with AppA in Asst (#168). * Promoted list/tuple members changed from Promoted to Type (#162). * Update PatBind, Match, and Alt from containing Binds to Maybe Binds to distinguish between empty where clauses and where clauses with no binds (#244). * Add RoleAnnotDecl and Role to support Role annotations (#215). * Move NameSpace field from EVar/IVar to EAbs/IAbs. Other changes: * Add standalone parsers for ImportDecl. * Fix pretty-printer bugs for HaRP (#160). * Insert parentheses when pretty-printing non-atomic bang types (#169). * Un-reverse confusion of left and right arrow (#175). * Prettyprint option pragmas like 1.15 (#172). * Conditionally insert lines when pretty-printing declarations (#171). * Distinguish deriving (Show) from deriving Show (#189). * Allow parsing of unicode subscript and superscript functions (#173). * Pretty print unboxed tuples with spaces (#193). * Improve performance when parsing long extension lists (#200). * Properly pretty print constructor and class operators (#204). * Read Haskell source files as UTF-8 (#223). * Fix ExplicitNamespaces parsing (#216). * PolyKinds implies KindSignatures (#220). * Preserve location information for infix binds (#205). * Preserve positional information in checkPattern (#231). * Maintain correct line numbers when parsing multiline GHC_OPTIONS (#218). * Correctly parse "*" with TypeOperators (#81). * Export the "pretty" method (#222). * Add javascript calling convention for foreign imports (#236). * Add non-greedy parsers for module heads (#191). * Add a flag to disable arity checking when parsing (#260). * Parse "-" in type signatures (#206). * Add support for type wildcards and expression holes (#252). * Add support for Pattern Synonyms (#197). * Bump the happy lower bound (#250). * Make test suite pass on GHC 7.12 (#224). * Support linking Haddock comments to AST nodes (#213). * Parse multiline LANGUAGE pragmas (#217). * Parse trailing where (#25). * Parse modules starting with pragmas and indented "module" keyword (#122). * Use pretty-show to get human readable test outputs. * Respect fixity declarations inside where/let/class in `applyFixities` (#212). * Correctly parse the combination of view patterns and bang patterns. (#276) ** 1.16.x 1.16.0 --> 1.16.0.1 =================== Include generated InternalParser.hs in the release tarball (See http://ro-che.info/articles/2014-03-08-happy-alex-ghc-7.8 for details) 1.15.0.1 --> 1.16.0 =================== New language features: * DoRec * Closed type families * GADT records * ExplicitNamespaces * Type equality constraints * PolyKinds * DataKinds * Default associated types * Instance signatures * OVERLAP pragma * Parallel arrays * MINIMAL pragma * Default signatures * Safe Haskell * Binary literals * Qualified record puns * Type splices AST changes: * PatBind no longer contains the optional Maybe Type field. The type signature is now represented as part of the pattern (PatTypeSig) * GuardedAlt and GuardedAlts types are replaced with the isomorphic GuardedRhs and Rhs types * Move parentheses from the Context to Asst type * Change DeclHead and InstHead to make it possible to represent various ways to put parentheses around parts of declarations. Introduce a new type InstRule for the same purpose. * Change representation of negated patterns * Make strictness annotations on data type fields part of those fields' Type Notable bug fixes: * Allow statements, and not just expression, in MultiWayIf conditions * Allow equality constraints when GADTs are enabled * Fix parsing and printing of pragma modifiers, such as CONLIKE * Don't treat 'capi' or 'interruptible' as a keyword except after 'foreign' * Let ImpredicativeTypes imply ExplicitForAll * Let RecursiveDo enable 'rec' keyword * Fix pretty-printing of the unary minus sign * Do not require FlexibleContexts for things like Ord (i Int) => ... * Fix pretty-printing of deriving clauses * Parse "Constraint" as a kind with ConstraintKinds enabled * Support qualified quasi-quoters * Enable ScopedTypeVariables when parsing rules * Only permit record wildcards in last position * Allow n-parameter infix data declaration heads Other changes: * Expose showToken from Language.Haskell.Exts.Lexer * Show instance for SrcLoc and SrcSpan are changed (now they do not contain * field names) * Add DeriveGeneric to known extensions ** 1.15.x 1.15.0 --> 1.15.0.1 =============== * Eliminate inexhaustive patterns (and consequent bugs) * The test suite for 1.15.0 wouldn't build due to a missing file in the source distribution. Fixed. 1.14.0.1 --> 1.15.0 =============== * Add support for extensions: - MultiWayIf - LambdaCase - DataKinds * Remove support for old (deprecated) Generics * Derive GHC's Generic instances for datatypes * Derive some missing Data and Typeable instances * Multiple bug fixes * Add missing Functor and Applicative instances for monads * Remove support for GHCs older than 7.4 ** 1.14.x 1.14.0 --> 1.14.0.1 =============== Nothing has actually changed here (apart from the CHANGELOG). This release is done to include InternalParser.hs generated with happy 1.19 so that it compiles with GHC 7.8. 1.13.6 --> 1.14.0 =============== * Modernize the Extension datatype in L.H.E.Extension, following the lead of Cabal, to allow negative and positive extension modifiers (turning features on and off). You need to worry about backwards-incompatible changes if any of the following pertains to you: 1) If you use the Extension datatype programmatically - it has changed significantly (see documentation). 2) The ParseMode record now has one more field (baseLanguage :: Language), which might give you a type error. 3) The behavior of the (extensions :: [Extension]) field has changed, which could bite you if you pass custom extensions in the ParseMode. Previously, the ParseMode defaulted to the list of extensions accepted by Haskell2010, and if you set the list explicitly you would override this. Now, the defaults are { baseLanguage = Haskell2010, extensions = [] }, and explicitly setting a list of extensions will be interpreted on top of Haskell2010. See further the documentation for L.H.E.Extension. * Add support for the 'capi' calling convention. It is enabled with the CApiFFI extension. It's been included since GHC 7.4, and advertised since 7.6. * Add support for the 'interruptible' FFI safety annotation, enabled with the InterruptibleFFI extension. * Give better error message when lexing newline fails. In particular, fix the bug when the parser would crash if the file didn't end with a newline. * Support unboxed tuple expressions and patterns. * Fix bug in lexing of primitive integer literals in hex or octal notation. * Disallow negative primitive word literals (such as W# (-0x8000000000000000##)). * Allow phase control for SPECIALIZE pragma. * Derive Foldable and Traversable instances for all annotated AST types. * Fix bug with pretty-printing WARNING and DEPRECATED pragmas. ** 1.13.x 1.13.5 --> 1.13.6 =============== * Allow 0-parameter type classes when MultiParamTypeClasses is on. * Add support for NondecreasingIndentation. Previously it was always on, which is the default behavior in GHC. Now it is on only if enabled, or when using the newly added ghcDefaults extension set (instead of haskell2010). 1.13.4 --> 1.13.5 =============== * Expose Language.Haskell.Exts.Lexer, which implements a standalone token stream lexer. The module is re-exported both by Language.Haskell.Exts and by Language.Haskell.Exts.Annotated. 1.13.3 --> 1.13.4 =============== * Fix bug where operators starting with # written in parentheses would not be parsed when UnboxedTuples is turned on. Now works. * Allow 'family' and 'forall' as (non-type) varid's. This adds one more shift/reduce conflict to the parser, and its resolution means that '{-# RULES "name" forall = ... #-}' is not allowed. * Complete the set of FFI calling conventions from the Haskell 2010 report (even if no compiler implements them). Also include the 'js' calling convention, supported by UHC. 1.13.2 --> 1.13.3 =============== * Fundep premises are now allowed to be empty. * Fix the bug where the lexer would crash on a LINE pragma that did not include a line number. * Fix the bug where the lexer would require the # of a MagicHash-style type constructor to be succeeded by at least one character in the file. * Fix long-standing bug where the parser would crash with an ugly "Internal error" error message if encountering an extra }. * Report errors at the right place for function arity mismatches. Earlier they were reported at end of file, now they are reported where the function is declared. * Lexer now properly fails on line-breaks in string literals. * Lexer now handles character escapes up to 0x10FFFF (unicode). 1.13.1 --> 1.13.2 =============== * Fix the bug with the precedence of unary prefix minus. Previously it was resolved as binding more tightly than any infix operator, now it is correctly treated as having the same fixity as binary infix minus. 1.13.0 --> 1.13.1 =============== * Allow an optional semi before the closing tag of an element. This achieves a similar effect for XmlSyntax in do blocks as DoAndIfThenElse does for the if construct. No more need to indent the closing tag one step further than the opening tag. * Add a dummy 'noLoc :: SrcLoc' to L.H.E.SrcLoc, to use when generating code. It could definitely be done more elegantly, but not without inducing another major version bump, so later. * Fix a regression from 1.11.x where the parser would crash upon encountering non-simple class/data declaration heads, e.g. 'data A [a]'. Now fails with a parse error as intended. 1.12.0 --> 1.13.0 =============== * Add extensions DoAndIfThenElse and NPlusKPatterns to Language.Haskell.Exts.Extensions. * DoAndIfThenElse is now supported, at long last, making HSE compatible with Haskell2010 * Introduce haskell98 and haskell2010 extension groups, exported from Language.Haskell.Exts.Extensions. * Backwards-incompatible change: default parse mode is now to use haskell2010, which means the following features are recognized by default: DoAndIfThenElse, PatternGuards, ForeignFunctionInterface, EmptyDataDecls. NPlusKPatterns is no longer recognized by default. ** 1.12.x 1.11.1 --> 1.12.0 =============== * Move from old [$...| quasi-quote syntax to the new [...| one. The old syntax is still recognized while parsing. * Allow symbols as variables when TypeOperators is enabled. * Rename ExplicitForall in ExplicitForAll, to be consistent with GHC and the Haskell' process. ** 1.11.x 1.10.2 --> 1.11.1 =============== * API change: the fixities field in ParseMode is now of type Maybe [Fixity]. If the field is Nothing the parsing will not try to do any fixity resolution whatsoever, otherwise it behaves as before. * API change, bug fix: The Fixity type contains a QName rather than an Op to name the operator. The operator must match the given QName exactly (i.e., unqualified names only match unqualified names, and qualified names only match qualified names) for applyFixities to perform fixups. * Bug fix: End-of-file inside an OPTIONS pragma no longer loops. ** 1.10.x 1.10.1 --> 1.10.2 =============== * Fix a missing case in the Functor declaration for Decl. Thanks to Malcolm Wallace for the patch! 1.10.0 --> 1.10.1 =============== * Enable the unicode version of DoubleColon (x2237). Thanks to Andr�s Sicard-Ram�rez for the patch! 1.9.6 --> 1.10.0 =============== * Ensure that implied extensions are always picked up, not only when using the parseFile* family of functions as previously. * Add the newly devised <%>... syntax to the XmlSyntax support. This causes changes to pretty much everything, including adding a case to the AST which prompts the major version bump. ** 1.9.x 1.9.5 --> 1.9.6 =============== * Fix a bug (#203) where the lexer loops on malformed quasi-quoters. * Fix a bug with pretty-printing RULES pragmas. 1.9.4 --> 1.9.5 =============== * Fix a bug where deriving clauses for GADT-style data declarations were not properly indented. * Pretty-printing patterns is now more accurate in inserting (and not inserting) parentheses when needed. 1.9.3 --> 1.9.4 =============== * Pretty-printer now inserts parentheses in clever places when printing kinds. * Pretty-printing expressions is now far more accurate in inserting (and not inserting) parentheses when needed. * Pretty-printing negative expressions no longer inserts a superfluous space between the - and the expression. 1.9.2 --> 1.9.3 =============== * Constructors for newtype declarations must now have exactly one argument. This is only when using the classic syntax, not with GADT-style syntax. * Fix a bug where preceding commas in tuple sections were counted one too few. 1.9.1 --> 1.9.2 =============== * Fix a bug with pretty-printing lexer tokens. * Fix a bug where non-colon TypeOperators could not be used in prefix mode. 1.9.0 --> 1.9.1 =============== * Export parseFileContentsWithExts from .Exts. 1.8.2 --> 1.9.0 =============== * OptionPragma is renamed to the more descriptive ModulePragma, and adds a constructor AnnModulePragma for handling ANN pragmas preceding module header. * Add instances for Eq/Ord/Data/Typeable for Fixity. * Add 'parseFileWithComments' and 'parseFileContentsWithComments' to L.H.Exts . * More informative error messages when HSX tags are mismatched. ** 1.8.x 1.8.1 --> 1.8.2 =============== * Don't insert redundant parentheses around record constructions and updates. 1.8.0 --> 1.8.1 =============== * Fix three bugs with the handling of ANN. I must have been really tired when implementing that support. 1.7.2 --> 1.8.0 =============== * Add an instance Show Fixity (derived). * Support for the new ANN and INLINE_CONLIKE pragmas. * Export knownExtensions from .Extension. * Remove support for CFILES and INCLUDE pragmas. The support wasn't correct anyway, as it assumed the pragmas appeared at the top of files. As CFILES/INCLUDE pragmas can (and do) appear anywhere, there's no hope to support them in the AST. Better to remove the support altogether. Files with CFILES/INCLUDE pragmas can still be parsed of course, but those pragmas will be handled as comments. * Parsing with ignoreLinePragmas = False now correctly updates the file name. * Allow the whole SPECIALISE/INLINE family of pragmas in instance declarations. The InsInline constructor is removed, and is now represented by InsDecl (InlineSig ...). * Fix a bug with line numbering and quasi quotes, and a similar one with line numbering and CDATA. * Fix a few minor bugs in the exactPrinter. * Fix the strange handling of so called strings in LINE pragmas. ** 1.7.x 1.7.1 --> 1.7.2 =============== * Fixes a bug in lexing LINE pragmas (used when ignoreLinePragmas is set to False). 1.7.0 --> 1.7.1 =============== * UnicodeSyntax now also enables the forall symbol (U+2200). 1.6.1 --> 1.7.0 =============== * Operators defined on the form (a `op` b) c = ... could not be handled by the (annotated) AST, nor the parser. I had to change the definition of the AST node for InfixMatch to allow a list of right-hand subpatterns, i.e. InfixMatch l (Pat l) (Name l) (Pat l) ... has become InfixMatch l (Pat l) (Name l) [Pat l] ... I also had an epiphany and fixed the issue that would arise with exact printing of prefix definitions including parentheses, so that now works too! ** 1.6.x 1.6.0 --> 1.6.1 =============== * UnicodeSyntax now works not only for identifiers, but also for ->, <- and =>, as well as Arrows arrows and kind stars. 1.5.3 --> 1.6.0 =============== * (=~=) turns out to be too general at Functor (for intuitive and not technical reasons), so is specialised to Annotated to closer mirror the original intention. * applyFixities is hoisted to a monad, and now fails on ambiguous infix expressions. ** 1.5.x 1.5.2 --> 1.5.3 =============== * Several small bug fixes in the exact printer, and fail more gracefully if the number of srcInfoPoints doesn't match the needs of the node. 1.5.1 --> 1.5.2 =============== * Fix a bug in the exact printer that made it always print the first token at position (0,0). * In fixing the above, Annotated is now a superclass of ExactP. It was already a superclass in spirit, and nothing can break from this since ExactP is only exported abstractly. 1.5.0 --> 1.5.1 =============== * The pretty printer now introduces parentheses for non-atomic arguments to function application. Note that infix applications are left untouched, no parentheses will be inserted there, as it is assumed that fixities are already properly resolved. * Fix a bug in the pretty printer where view patterns and n+k patterns were not properly parenthesised. 1.4.0 --> 1.5.0 =============== * Add support for acting on LINE pragmas while parsing, i.e. updating the source position according to info given in LINE pragmas. This is done conditionally based on a new flag ignoreLinePragmas in the ParseMode, hence the need to increase the major version. ** 1.4.x 1.3.5 --> 1.4.0 =============== * The AST node for Proc in the simple AST is changed to include a SrcLoc argument, to make it consistent with similar nodes e.g. Lambda. This is specifically needed for transformation of patterns in HSX. ** 1.3.x 1.3.4 --> 1.3.5 =============== * Added an entry point in the parser for statements, and an instance Parseable Stmt to go with it. * Ensured that .Annotated exports all relevant parseXXX(WithYYY) functions. 1.3.3 --> 1.3.4 =============== * Operator fixities are now resolved in patterns. 1.3.2 --> 1.3.3 =============== * Fixes a bug where qualified keywords are rejected even if the extension that enables the keyword in question is not turned on. 1.3.0 --> 1.3.2 =============== (Let's forget 1.3.1 ever existed.) * Fix a bug where declarations of infix operators were not properly merged as FunBinds. haskell-src-exts-1.18.2/haskell-src-exts.cabal0000644000000000000000000001002212746233113017334 0ustar0000000000000000Name: haskell-src-exts Version: 1.18.2 License: BSD3 License-File: LICENSE Build-Type: Simple Author: Niklas Broberg Maintainer: Niklas Broberg , Roman Cheplyaka Category: Language Synopsis: Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer Description: Haskell-Source with Extensions (HSE, haskell-src-exts) is a standalone parser for Haskell. In addition to standard Haskell, all extensions implemented in GHC are supported. . Apart from these standard extensions, it also handles regular patterns as per the HaRP extension as well as HSX-style embedded XML syntax. Homepage: https://github.com/haskell-suite/haskell-src-exts Stability: Stable Cabal-Version: >= 1.10 Tested-With: GHC == 7.4.2 , GHC == 7.6.3 , GHC == 7.8.2 , GHC == 7.10.3 , GHC == 8.0.1 Extra-Source-Files: README.md CHANGELOG RELEASENOTES-1.17.0 tests/examples/*.hs tests/examples/*.lhs tests/examples/*.hs.parser.golden tests/examples/*.lhs.parser.golden tests/examples/*.hs.exactprinter.golden tests/examples/*.lhs.exactprinter.golden tests/examples/*.hs.prettyprinter.golden tests/examples/*.lhs.prettyprinter.golden tests/examples/*.hs.prettyparser.golden tests/examples/*.lhs.prettyparser.golden tests/Runner.hs tests/Extensions.hs Library Default-language: Haskell98 Build-Tools: happy >= 1.19 Build-Depends: array >= 0.1, pretty >= 1.0, cpphs >= 1.3, base >= 4.5 && < 5, -- this is needed to access GHC.Generics on GHC 7.4 ghc-prim Exposed-modules: Language.Haskell.Exts, Language.Haskell.Exts.Lexer, Language.Haskell.Exts.Pretty, Language.Haskell.Exts.Extension, Language.Haskell.Exts.Build, Language.Haskell.Exts.SrcLoc, Language.Haskell.Exts.Syntax, Language.Haskell.Exts.Fixity, Language.Haskell.Exts.ExactPrint, Language.Haskell.Exts.Parser, Language.Haskell.Exts.Comments Other-modules: Language.Haskell.Exts.ExtScheme, Language.Haskell.Exts.ParseMonad, Language.Haskell.Exts.ParseSyntax, Language.Haskell.Exts.InternalLexer, Language.Haskell.Exts.ParseUtils, Language.Haskell.Exts.InternalParser Hs-source-dirs: src Ghc-options: -Wall Source-Repository head Type: git Location: https://github.com/haskell-suite/haskell-src-exts.git Test-Suite test type: exitcode-stdio-1.0 hs-source-dirs: tests main-is: Runner.hs GHC-Options: -threaded -Wall -O0 Default-language: Haskell2010 Build-depends: base < 5, mtl, containers, haskell-src-exts, smallcheck >= 1.0, tasty >= 0.3, tasty-smallcheck, tasty-golden >= 2.2.2, filepath, directory, pretty-show haskell-src-exts-1.18.2/LICENSE0000644000000000000000000001077612746233113014204 0ustar0000000000000000This library (Haskell Source eXtensions) is derived from code from several sources: * Code from the GHC project which is largely (c) The University of Glasgow, and distributable under a BSD-style license (see below), * Code from the Haskell 98 Report which is (c) Simon Peyton Jones and freely redistributable (but see the full license for restrictions). The full text of these licenses is reproduced below. All of the licenses are BSD-style or compatible. ----------------------------------------------------------------------------- The haskell-src-exts package itself is distributable under the modified BSD license: Copyright (c) 2005, Niklas Broberg All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * The names of its contributors may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ----------------------------------------------------------------------------- The Glasgow Haskell Compiler License Copyright 2004, The University Court of the University of Glasgow. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - Neither name of the University nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE UNIVERSITY COURT OF THE UNIVERSITY OF GLASGOW AND THE CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE UNIVERSITY COURT OF THE UNIVERSITY OF GLASGOW OR THE CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ----------------------------------------------------------------------------- Code derived from the document "Report on the Programming Language Haskell 98", is distributed under the following license: Copyright (c) 2002 Simon Peyton Jones The authors intend this Report to belong to the entire Haskell community, and so we grant permission to copy and distribute it for any purpose, provided that it is reproduced in its entirety, including this Notice. Modified versions of this Report may also be copied and distributed for any purpose, provided that the modified version is clearly presented as such, and that it does not claim to be a definition of the Haskell 98 Language. ----------------------------------------------------------------------------- haskell-src-exts-1.18.2/README.md0000644000000000000000000000272612746233113014452 0ustar0000000000000000Haskell Source Extensions ========================= haskell-src-exts is a package for handling and manipulating Haskell source code. It is a descendant of the haskell-src package that is part of the standard libraries, but extends this to support a number of syntactic extensions, e.g. MPTCs, fundeps, GADTs, TH etc. The aim is to support all extensions recognized by the community, as determined by what is implemented in compilers and tools. Apart from the more standard extensions supported by e.g. GHC, haskell-src-exts provides support for HaRP (Haskell Regular Patterns) and HSX (Haskell Source with XML) syntax. Package structure ----------------- The modules that comprise haskell-src-exts all reside in the hierarchic namespace Language.Haskell.Exts. Notable exposed modules include: * `Language.Haskell.Exts` - Imports and re-exports all the below, and also defines some functions that combine functionality from several modules. * `Language.Haskell.Exts.Syntax` - The abstract syntax tree that the other modules work on. * `Language.Haskell.Exts.Build` - Combinators for building abstract syntax. * `Language.Haskell.Exts.Parser` - Functions for parsing Haskell source code into an abstract syntax representation. License ------- The haskell-src-exts Package is distributed under a derived BSD-style license. It derives from several sources, all of which are distributable under BSD-style or compatible licenses. See the file LICENSE for the complete license text. haskell-src-exts-1.18.2/RELEASENOTES-1.17.00000644000000000000000000000146612746233113015531 0ustar0000000000000000I am pleased to announce the release of haskell-src-exts-1.17.0! Hackage: https://hackage.haskell.org/package/haskell-src-exts-1.17.0 GitHub: https://github.com/haskell-suite/haskell-src-exts This release brings bugfixes, as well as the following language features: * Type wildcards and expression holes (#252). * Pattern Synonyms (#197). The full changelog is available at https://github.com/haskell-suite/haskell-src-exts/blob/1.17.0/CHANGELOG This release is brought to you by: Matthew Pickering Michael Walker Simon Marlow Neil Mitchell JP Moresmau Артур Файзрахманов phischu Michael Sloan m00nlight Niklas Broberg Stijn van Drongelen Jakub Kozlowski Leonid Onokhov Matthew Pickering is a force of nature who deserves a special mention for all his contributions to this release. Peter haskell-src-exts-1.18.2/Setup.hs0000644000000000000000000000005612746233113014621 0ustar0000000000000000import Distribution.Simple main = defaultMain haskell-src-exts-1.18.2/dist/0000755000000000000000000000000012746233110014124 5ustar0000000000000000haskell-src-exts-1.18.2/dist/build/0000755000000000000000000000000012746233110015223 5ustar0000000000000000haskell-src-exts-1.18.2/dist/build/Language/0000755000000000000000000000000012746233110016746 5ustar0000000000000000haskell-src-exts-1.18.2/dist/build/Language/Haskell/0000755000000000000000000000000012746233110020331 5ustar0000000000000000haskell-src-exts-1.18.2/dist/build/Language/Haskell/Exts/0000755000000000000000000000000012746233113021257 5ustar0000000000000000haskell-src-exts-1.18.2/dist/build/Language/Haskell/Exts/InternalParser.hs0000644000000000000000000244516112746233113024561 0ustar0000000000000000{-# OPTIONS_GHC -w #-} {-# OPTIONS -fglasgow-exts -cpp #-} {-# OPTIONS_HADDOCK hide #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Annotated.Parser -- Copyright : (c) Niklas Broberg 2004-2009, -- Original (c) Simon Marlow, Sven Panne 1997-2000 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.InternalParser ( mparseModule, mparseExp, mparsePat, mparseDecl, mparseType, mparseStmt, mparseImportDecl, ngparseModulePragmas, ngparseModuleHeadAndImports, ngparsePragmasAndModuleHead, ngparsePragmasAndModuleName ) where import Language.Haskell.Exts.Syntax hiding ( Type(..), Exp(..), Asst(..), XAttr(..), FieldUpdate(..) ) import Language.Haskell.Exts.Syntax ( Type, Exp, Asst ) import Language.Haskell.Exts.ParseMonad import Language.Haskell.Exts.InternalLexer import Language.Haskell.Exts.ParseUtils import Language.Haskell.Exts.Fixity import Language.Haskell.Exts.SrcLoc import Language.Haskell.Exts.Extension import Control.Monad ( liftM, (<=<), when ) import Control.Applicative ( (<$>) ) import Data.Maybe import qualified Data.Array as Happy_Data_Array import qualified GHC.Exts as Happy_GHC_Exts import Control.Applicative(Applicative(..)) import Control.Monad (ap) -- parser produced by Happy Version 1.19.5 newtype HappyAbsSyn = HappyAbsSyn HappyAny #if __GLASGOW_HASKELL__ >= 607 type HappyAny = Happy_GHC_Exts.Any #else type HappyAny = forall a . a #endif happyIn14 :: ([Module L]) -> (HappyAbsSyn ) happyIn14 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn14 #-} happyOut14 :: (HappyAbsSyn ) -> ([Module L]) happyOut14 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut14 #-} happyIn15 :: ([[ModulePragma L] -> [S] -> L -> Module L]) -> (HappyAbsSyn ) happyIn15 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn15 #-} happyOut15 :: (HappyAbsSyn ) -> ([[ModulePragma L] -> [S] -> L -> Module L]) happyOut15 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut15 #-} happyIn16 :: (Module L) -> (HappyAbsSyn ) happyIn16 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn16 #-} happyOut16 :: (HappyAbsSyn ) -> (Module L) happyOut16 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut16 #-} happyIn17 :: (PExp L) -> (HappyAbsSyn ) happyIn17 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn17 #-} happyOut17 :: (HappyAbsSyn ) -> (PExp L) happyOut17 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut17 #-} happyIn18 :: (([ModulePragma L],[S],L)) -> (HappyAbsSyn ) happyIn18 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn18 #-} happyOut18 :: (HappyAbsSyn ) -> (([ModulePragma L],[S],L)) happyOut18 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut18 #-} happyIn19 :: (([ModulePragma L],[S],Maybe L)) -> (HappyAbsSyn ) happyIn19 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn19 #-} happyOut19 :: (HappyAbsSyn ) -> (([ModulePragma L],[S],Maybe L)) happyOut19 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut19 #-} happyIn20 :: (ModulePragma L) -> (HappyAbsSyn ) happyIn20 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn20 #-} happyOut20 :: (HappyAbsSyn ) -> (ModulePragma L) happyOut20 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut20 #-} happyIn21 :: (([Name L],[S])) -> (HappyAbsSyn ) happyIn21 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn21 #-} happyOut21 :: (HappyAbsSyn ) -> (([Name L],[S])) happyOut21 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut21 #-} happyIn22 :: ([ModulePragma L] -> [S] -> L -> Module L) -> (HappyAbsSyn ) happyIn22 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn22 #-} happyOut22 :: (HappyAbsSyn ) -> ([ModulePragma L] -> [S] -> L -> Module L) happyOut22 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut22 #-} happyIn23 :: (Maybe (ModuleHead L)) -> (HappyAbsSyn ) happyIn23 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn23 #-} happyOut23 :: (HappyAbsSyn ) -> (Maybe (ModuleHead L)) happyOut23 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut23 #-} happyIn24 :: (Maybe (WarningText L)) -> (HappyAbsSyn ) happyIn24 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn24 #-} happyOut24 :: (HappyAbsSyn ) -> (Maybe (WarningText L)) happyOut24 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut24 #-} happyIn25 :: (([ImportDecl L],[Decl L],[S],L)) -> (HappyAbsSyn ) happyIn25 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn25 #-} happyOut25 :: (HappyAbsSyn ) -> (([ImportDecl L],[Decl L],[S],L)) happyOut25 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut25 #-} happyIn26 :: (([ImportDecl L],[Decl L],[S])) -> (HappyAbsSyn ) happyIn26 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn26 #-} happyOut26 :: (HappyAbsSyn ) -> (([ImportDecl L],[Decl L],[S])) happyOut26 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut26 #-} happyIn27 :: ([S]) -> (HappyAbsSyn ) happyIn27 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn27 #-} happyOut27 :: (HappyAbsSyn ) -> ([S]) happyOut27 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut27 #-} happyIn28 :: ([S]) -> (HappyAbsSyn ) happyIn28 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn28 #-} happyOut28 :: (HappyAbsSyn ) -> ([S]) happyOut28 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut28 #-} happyIn29 :: (Maybe (ExportSpecList L)) -> (HappyAbsSyn ) happyIn29 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn29 #-} happyOut29 :: (HappyAbsSyn ) -> (Maybe (ExportSpecList L)) happyOut29 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut29 #-} happyIn30 :: (ExportSpecList L) -> (HappyAbsSyn ) happyIn30 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn30 #-} happyOut30 :: (HappyAbsSyn ) -> (ExportSpecList L) happyOut30 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut30 #-} happyIn31 :: ([S]) -> (HappyAbsSyn ) happyIn31 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn31 #-} happyOut31 :: (HappyAbsSyn ) -> ([S]) happyOut31 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut31 #-} happyIn32 :: (([ExportSpec L],[S])) -> (HappyAbsSyn ) happyIn32 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn32 #-} happyOut32 :: (HappyAbsSyn ) -> (([ExportSpec L],[S])) happyOut32 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut32 #-} happyIn33 :: (ExportSpec L) -> (HappyAbsSyn ) happyIn33 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn33 #-} happyOut33 :: (HappyAbsSyn ) -> (ExportSpec L) happyOut33 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut33 #-} happyIn34 :: (([Either S (CName L)],[S])) -> (HappyAbsSyn ) happyIn34 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn34 #-} happyOut34 :: (HappyAbsSyn ) -> (([Either S (CName L)],[S])) happyOut34 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut34 #-} happyIn35 :: (Either S (CName L)) -> (HappyAbsSyn ) happyIn35 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn35 #-} happyOut35 :: (HappyAbsSyn ) -> (Either S (CName L)) happyOut35 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut35 #-} happyIn36 :: (QName L) -> (HappyAbsSyn ) happyIn36 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn36 #-} happyOut36 :: (HappyAbsSyn ) -> (QName L) happyOut36 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut36 #-} happyIn37 :: (([ImportDecl L],[S])) -> (HappyAbsSyn ) happyIn37 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn37 #-} happyOut37 :: (HappyAbsSyn ) -> (([ImportDecl L],[S])) happyOut37 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut37 #-} happyIn38 :: (ImportDecl L) -> (HappyAbsSyn ) happyIn38 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn38 #-} happyOut38 :: (HappyAbsSyn ) -> (ImportDecl L) happyOut38 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut38 #-} happyIn39 :: ((Bool,[S])) -> (HappyAbsSyn ) happyIn39 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn39 #-} happyOut39 :: (HappyAbsSyn ) -> ((Bool,[S])) happyOut39 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut39 #-} happyIn40 :: ((Bool,[S])) -> (HappyAbsSyn ) happyIn40 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn40 #-} happyOut40 :: (HappyAbsSyn ) -> ((Bool,[S])) happyOut40 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut40 #-} happyIn41 :: ((Bool,[S])) -> (HappyAbsSyn ) happyIn41 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn41 #-} happyOut41 :: (HappyAbsSyn ) -> ((Bool,[S])) happyOut41 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut41 #-} happyIn42 :: ((Maybe String,[S])) -> (HappyAbsSyn ) happyIn42 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn42 #-} happyOut42 :: (HappyAbsSyn ) -> ((Maybe String,[S])) happyOut42 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut42 #-} happyIn43 :: ((Maybe (ModuleName L),[S],Maybe L)) -> (HappyAbsSyn ) happyIn43 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn43 #-} happyOut43 :: (HappyAbsSyn ) -> ((Maybe (ModuleName L),[S],Maybe L)) happyOut43 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut43 #-} happyIn44 :: (Maybe (ImportSpecList L)) -> (HappyAbsSyn ) happyIn44 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn44 #-} happyOut44 :: (HappyAbsSyn ) -> (Maybe (ImportSpecList L)) happyOut44 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut44 #-} happyIn45 :: (ImportSpecList L) -> (HappyAbsSyn ) happyIn45 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn45 #-} happyOut45 :: (HappyAbsSyn ) -> (ImportSpecList L) happyOut45 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut45 #-} happyIn46 :: ((Bool, Maybe L,[S])) -> (HappyAbsSyn ) happyIn46 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn46 #-} happyOut46 :: (HappyAbsSyn ) -> ((Bool, Maybe L,[S])) happyOut46 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut46 #-} happyIn47 :: (([ImportSpec L],[S])) -> (HappyAbsSyn ) happyIn47 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn47 #-} happyOut47 :: (HappyAbsSyn ) -> (([ImportSpec L],[S])) happyOut47 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut47 #-} happyIn48 :: (ImportSpec L) -> (HappyAbsSyn ) happyIn48 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn48 #-} happyOut48 :: (HappyAbsSyn ) -> (ImportSpec L) happyOut48 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut48 #-} happyIn49 :: (([CName L],[S])) -> (HappyAbsSyn ) happyIn49 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn49 #-} happyOut49 :: (HappyAbsSyn ) -> (([CName L],[S])) happyOut49 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut49 #-} happyIn50 :: (CName L) -> (HappyAbsSyn ) happyIn50 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn50 #-} happyOut50 :: (HappyAbsSyn ) -> (CName L) happyOut50 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut50 #-} happyIn51 :: (Decl L) -> (HappyAbsSyn ) happyIn51 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn51 #-} happyOut51 :: (HappyAbsSyn ) -> (Decl L) happyOut51 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut51 #-} happyIn52 :: ((Maybe Int, [S])) -> (HappyAbsSyn ) happyIn52 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn52 #-} happyOut52 :: (HappyAbsSyn ) -> ((Maybe Int, [S])) happyOut52 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut52 #-} happyIn53 :: (Assoc L) -> (HappyAbsSyn ) happyIn53 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn53 #-} happyOut53 :: (HappyAbsSyn ) -> (Assoc L) happyOut53 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut53 #-} happyIn54 :: (([Op L],[S],L)) -> (HappyAbsSyn ) happyIn54 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn54 #-} happyOut54 :: (HappyAbsSyn ) -> (([Op L],[S],L)) happyOut54 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut54 #-} happyIn55 :: (Maybe (InjectivityInfo L)) -> (HappyAbsSyn ) happyIn55 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn55 #-} happyOut55 :: (HappyAbsSyn ) -> (Maybe (InjectivityInfo L)) happyOut55 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut55 #-} happyIn56 :: (InjectivityInfo L) -> (HappyAbsSyn ) happyIn56 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn56 #-} happyOut56 :: (HappyAbsSyn ) -> (InjectivityInfo L) happyOut56 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut56 #-} happyIn57 :: ([Name L]) -> (HappyAbsSyn ) happyIn57 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn57 #-} happyOut57 :: (HappyAbsSyn ) -> ([Name L]) happyOut57 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut57 #-} happyIn58 :: (([Decl L],[S])) -> (HappyAbsSyn ) happyIn58 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn58 #-} happyOut58 :: (HappyAbsSyn ) -> (([Decl L],[S])) happyOut58 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut58 #-} happyIn59 :: (([Decl L],[S])) -> (HappyAbsSyn ) happyIn59 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn59 #-} happyOut59 :: (HappyAbsSyn ) -> (([Decl L],[S])) happyOut59 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut59 #-} happyIn60 :: (Decl L) -> (HappyAbsSyn ) happyIn60 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn60 #-} happyOut60 :: (HappyAbsSyn ) -> (Decl L) happyOut60 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut60 #-} happyIn61 :: (Maybe (ResultSig L)) -> (HappyAbsSyn ) happyIn61 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn61 #-} happyOut61 :: (HappyAbsSyn ) -> (Maybe (ResultSig L)) happyOut61 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut61 #-} happyIn62 :: (Maybe (ResultSig L)) -> (HappyAbsSyn ) happyIn62 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn62 #-} happyOut62 :: (HappyAbsSyn ) -> (Maybe (ResultSig L)) happyOut62 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut62 #-} happyIn63 :: ((Maybe (ResultSig L), Maybe (InjectivityInfo L))) -> (HappyAbsSyn ) happyIn63 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn63 #-} happyOut63 :: (HappyAbsSyn ) -> ((Maybe (ResultSig L), Maybe (InjectivityInfo L))) happyOut63 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut63 #-} happyIn64 :: ((Maybe (ResultSig L), Maybe (S, Type L), Maybe (InjectivityInfo L))) -> (HappyAbsSyn ) happyIn64 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn64 #-} happyOut64 :: (HappyAbsSyn ) -> ((Maybe (ResultSig L), Maybe (S, Type L), Maybe (InjectivityInfo L))) happyOut64 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut64 #-} happyIn65 :: (Decl L) -> (HappyAbsSyn ) happyIn65 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn65 #-} happyOut65 :: (HappyAbsSyn ) -> (Decl L) happyOut65 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut65 #-} happyIn66 :: ([(Maybe String, L)]) -> (HappyAbsSyn ) happyIn66 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn66 #-} happyOut66 :: (HappyAbsSyn ) -> ([(Maybe String, L)]) happyOut66 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut66 #-} happyIn67 :: ((Maybe String, L)) -> (HappyAbsSyn ) happyIn67 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn67 #-} happyOut67 :: (HappyAbsSyn ) -> ((Maybe String, L)) happyOut67 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut67 #-} happyIn68 :: (Maybe (Overlap L)) -> (HappyAbsSyn ) happyIn68 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn68 #-} happyOut68 :: (HappyAbsSyn ) -> (Maybe (Overlap L)) happyOut68 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut68 #-} happyIn69 :: (Maybe ([TypeEqn L], S)) -> (HappyAbsSyn ) happyIn69 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn69 #-} happyOut69 :: (HappyAbsSyn ) -> (Maybe ([TypeEqn L], S)) happyOut69 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut69 #-} happyIn70 :: ([TypeEqn L]) -> (HappyAbsSyn ) happyIn70 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn70 #-} happyOut70 :: (HappyAbsSyn ) -> ([TypeEqn L]) happyOut70 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut70 #-} happyIn71 :: ([TypeEqn L]) -> (HappyAbsSyn ) happyIn71 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn71 #-} happyOut71 :: (HappyAbsSyn ) -> ([TypeEqn L]) happyOut71 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut71 #-} happyIn72 :: (TypeEqn L) -> (HappyAbsSyn ) happyIn72 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn72 #-} happyOut72 :: (HappyAbsSyn ) -> (TypeEqn L) happyOut72 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut72 #-} happyIn73 :: (DataOrNew L) -> (HappyAbsSyn ) happyIn73 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn73 #-} happyOut73 :: (HappyAbsSyn ) -> (DataOrNew L) happyOut73 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut73 #-} happyIn74 :: (([Type L],[S])) -> (HappyAbsSyn ) happyIn74 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn74 #-} happyOut74 :: (HappyAbsSyn ) -> (([Type L],[S])) happyOut74 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut74 #-} happyIn75 :: (([Decl L],[S])) -> (HappyAbsSyn ) happyIn75 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn75 #-} happyOut75 :: (HappyAbsSyn ) -> (([Decl L],[S])) happyOut75 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut75 #-} happyIn76 :: (([Decl L],[S])) -> (HappyAbsSyn ) happyIn76 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn76 #-} happyOut76 :: (HappyAbsSyn ) -> (([Decl L],[S])) happyOut76 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut76 #-} happyIn77 :: (Decl L) -> (HappyAbsSyn ) happyIn77 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn77 #-} happyOut77 :: (HappyAbsSyn ) -> (Decl L) happyOut77 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut77 #-} happyIn78 :: (Binds L) -> (HappyAbsSyn ) happyIn78 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn78 #-} happyOut78 :: (HappyAbsSyn ) -> (Binds L) happyOut78 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut78 #-} happyIn79 :: (Decl L) -> (HappyAbsSyn ) happyIn79 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn79 #-} happyOut79 :: (HappyAbsSyn ) -> (Decl L) happyOut79 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut79 #-} happyIn80 :: (Decl L) -> (HappyAbsSyn ) happyIn80 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn80 #-} happyOut80 :: (HappyAbsSyn ) -> (Decl L) happyOut80 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut80 #-} happyIn81 :: (Decl L) -> (HappyAbsSyn ) happyIn81 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn81 #-} happyOut81 :: (HappyAbsSyn ) -> (Decl L) happyOut81 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut81 #-} happyIn82 :: (([Type L],[S])) -> (HappyAbsSyn ) happyIn82 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn82 #-} happyOut82 :: (HappyAbsSyn ) -> (([Type L],[S])) happyOut82 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut82 #-} happyIn83 :: (Type L) -> (HappyAbsSyn ) happyIn83 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn83 #-} happyOut83 :: (HappyAbsSyn ) -> (Type L) happyOut83 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut83 #-} happyIn84 :: (Maybe (BooleanFormula L)) -> (HappyAbsSyn ) happyIn84 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn84 #-} happyOut84 :: (HappyAbsSyn ) -> (Maybe (BooleanFormula L)) happyOut84 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut84 #-} happyIn85 :: (BooleanFormula L) -> (HappyAbsSyn ) happyIn85 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn85 #-} happyOut85 :: (HappyAbsSyn ) -> (BooleanFormula L) happyOut85 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut85 #-} happyIn86 :: (BooleanFormula L) -> (HappyAbsSyn ) happyIn86 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn86 #-} happyOut86 :: (HappyAbsSyn ) -> (BooleanFormula L) happyOut86 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut86 #-} happyIn87 :: (BooleanFormula L) -> (HappyAbsSyn ) happyIn87 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn87 #-} happyOut87 :: (HappyAbsSyn ) -> (BooleanFormula L) happyOut87 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut87 #-} happyIn88 :: (Binds L) -> (HappyAbsSyn ) happyIn88 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn88 #-} happyOut88 :: (HappyAbsSyn ) -> (Binds L) happyOut88 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut88 #-} happyIn89 :: (([Name L],[S],L)) -> (HappyAbsSyn ) happyIn89 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn89 #-} happyOut89 :: (HappyAbsSyn ) -> (([Name L],[S],L)) happyOut89 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut89 #-} happyIn90 :: (CallConv L) -> (HappyAbsSyn ) happyIn90 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn90 #-} happyOut90 :: (HappyAbsSyn ) -> (CallConv L) happyOut90 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut90 #-} happyIn91 :: (Maybe (Safety L)) -> (HappyAbsSyn ) happyIn91 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn91 #-} happyOut91 :: (HappyAbsSyn ) -> (Maybe (Safety L)) happyOut91 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut91 #-} happyIn92 :: ((Maybe String, Name L, Type L, [S])) -> (HappyAbsSyn ) happyIn92 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn92 #-} happyOut92 :: (HappyAbsSyn ) -> ((Maybe String, Name L, Type L, [S])) happyOut92 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut92 #-} happyIn93 :: ([Rule L]) -> (HappyAbsSyn ) happyIn93 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn93 #-} happyOut93 :: (HappyAbsSyn ) -> ([Rule L]) happyOut93 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut93 #-} happyIn94 :: (Rule L) -> (HappyAbsSyn ) happyIn94 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn94 #-} happyOut94 :: (HappyAbsSyn ) -> (Rule L) happyOut94 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut94 #-} happyIn95 :: (Maybe (Activation L)) -> (HappyAbsSyn ) happyIn95 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn95 #-} happyOut95 :: (HappyAbsSyn ) -> (Maybe (Activation L)) happyOut95 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut95 #-} happyIn96 :: ((Maybe [RuleVar L],[S])) -> (HappyAbsSyn ) happyIn96 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn96 #-} happyOut96 :: (HappyAbsSyn ) -> ((Maybe [RuleVar L],[S])) happyOut96 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut96 #-} happyIn97 :: ([RuleVar L]) -> (HappyAbsSyn ) happyIn97 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn97 #-} happyOut97 :: (HappyAbsSyn ) -> ([RuleVar L]) happyOut97 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut97 #-} happyIn98 :: (RuleVar L) -> (HappyAbsSyn ) happyIn98 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn98 #-} happyOut98 :: (HappyAbsSyn ) -> (RuleVar L) happyOut98 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut98 #-} happyIn99 :: (([([Name L],String)],[S])) -> (HappyAbsSyn ) happyIn99 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn99 #-} happyOut99 :: (HappyAbsSyn ) -> (([([Name L],String)],[S])) happyOut99 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut99 #-} happyIn100 :: ((([Name L], String),[S])) -> (HappyAbsSyn ) happyIn100 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn100 #-} happyOut100 :: (HappyAbsSyn ) -> ((([Name L], String),[S])) happyOut100 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut100 #-} happyIn101 :: (([Name L],[S])) -> (HappyAbsSyn ) happyIn101 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn101 #-} happyOut101 :: (HappyAbsSyn ) -> (([Name L],[S])) happyOut101 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut101 #-} happyIn102 :: (Name L) -> (HappyAbsSyn ) happyIn102 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn102 #-} happyOut102 :: (HappyAbsSyn ) -> (Name L) happyOut102 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut102 #-} happyIn103 :: (Annotation L) -> (HappyAbsSyn ) happyIn103 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn103 #-} happyOut103 :: (HappyAbsSyn ) -> (Annotation L) happyOut103 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut103 #-} happyIn104 :: (Type L) -> (HappyAbsSyn ) happyIn104 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn104 #-} happyOut104 :: (HappyAbsSyn ) -> (Type L) happyOut104 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut104 #-} happyIn105 :: (PType L) -> (HappyAbsSyn ) happyIn105 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn105 #-} happyOut105 :: (HappyAbsSyn ) -> (PType L) happyOut105 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut105 #-} happyIn106 :: (Type L) -> (HappyAbsSyn ) happyIn106 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn106 #-} happyOut106 :: (HappyAbsSyn ) -> (Type L) happyOut106 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut106 #-} happyIn107 :: (PType L) -> (HappyAbsSyn ) happyIn107 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn107 #-} happyOut107 :: (HappyAbsSyn ) -> (PType L) happyOut107 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut107 #-} happyIn108 :: (Type L) -> (HappyAbsSyn ) happyIn108 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn108 #-} happyOut108 :: (HappyAbsSyn ) -> (Type L) happyOut108 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut108 #-} happyIn109 :: (Type L) -> (HappyAbsSyn ) happyIn109 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn109 #-} happyOut109 :: (HappyAbsSyn ) -> (Type L) happyOut109 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut109 #-} happyIn110 :: (PType L) -> (HappyAbsSyn ) happyIn110 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn110 #-} happyOut110 :: (HappyAbsSyn ) -> (PType L) happyOut110 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut110 #-} happyIn111 :: (PType L) -> (HappyAbsSyn ) happyIn111 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn111 #-} happyOut111 :: (HappyAbsSyn ) -> (PType L) happyOut111 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut111 #-} happyIn112 :: (Promoted L) -> (HappyAbsSyn ) happyIn112 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn112 #-} happyOut112 :: (HappyAbsSyn ) -> (Promoted L) happyOut112 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut112 #-} happyIn113 :: ((Maybe (L -> BangType L,S), Maybe (Unpackedness L))) -> (HappyAbsSyn ) happyIn113 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn113 #-} happyOut113 :: (HappyAbsSyn ) -> ((Maybe (L -> BangType L,S), Maybe (Unpackedness L))) happyOut113 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut113 #-} happyIn114 :: ((L -> BangType L, S)) -> (HappyAbsSyn ) happyIn114 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn114 #-} happyOut114 :: (HappyAbsSyn ) -> ((L -> BangType L, S)) happyOut114 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut114 #-} happyIn115 :: (Unpackedness L) -> (HappyAbsSyn ) happyIn115 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn115 #-} happyOut115 :: (HappyAbsSyn ) -> (Unpackedness L) happyOut115 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut115 #-} happyIn116 :: (QName L) -> (HappyAbsSyn ) happyIn116 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn116 #-} happyOut116 :: (HappyAbsSyn ) -> (QName L) happyOut116 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut116 #-} happyIn117 :: (QName L) -> (HappyAbsSyn ) happyIn117 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn117 #-} happyOut117 :: (HappyAbsSyn ) -> (QName L) happyOut117 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut117 #-} happyIn118 :: (QName L) -> (HappyAbsSyn ) happyIn118 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn118 #-} happyOut118 :: (HappyAbsSyn ) -> (QName L) happyOut118 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut118 #-} happyIn119 :: (Type L) -> (HappyAbsSyn ) happyIn119 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn119 #-} happyOut119 :: (HappyAbsSyn ) -> (Type L) happyOut119 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut119 #-} happyIn120 :: (PType L) -> (HappyAbsSyn ) happyIn120 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn120 #-} happyOut120 :: (HappyAbsSyn ) -> (PType L) happyOut120 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut120 #-} happyIn121 :: (PContext L) -> (HappyAbsSyn ) happyIn121 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn121 #-} happyOut121 :: (HappyAbsSyn ) -> (PContext L) happyOut121 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut121 #-} happyIn122 :: (([PType L],[S])) -> (HappyAbsSyn ) happyIn122 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn122 #-} happyOut122 :: (HappyAbsSyn ) -> (([PType L],[S])) happyOut122 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut122 #-} happyIn123 :: (([PType L],[S])) -> (HappyAbsSyn ) happyIn123 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn123 #-} happyOut123 :: (HappyAbsSyn ) -> (([PType L],[S])) happyOut123 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut123 #-} happyIn124 :: (([TyVarBind L],Maybe L)) -> (HappyAbsSyn ) happyIn124 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn124 #-} happyOut124 :: (HappyAbsSyn ) -> (([TyVarBind L],Maybe L)) happyOut124 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut124 #-} happyIn125 :: (TyVarBind L) -> (HappyAbsSyn ) happyIn125 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn125 #-} happyOut125 :: (HappyAbsSyn ) -> (TyVarBind L) happyOut125 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut125 #-} happyIn126 :: (([Name L],Maybe L)) -> (HappyAbsSyn ) happyIn126 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn126 #-} happyOut126 :: (HappyAbsSyn ) -> (([Name L],Maybe L)) happyOut126 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut126 #-} happyIn127 :: (([Name L],L)) -> (HappyAbsSyn ) happyIn127 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn127 #-} happyOut127 :: (HappyAbsSyn ) -> (([Name L],L)) happyOut127 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut127 #-} happyIn128 :: (([FunDep L],[S],Maybe L)) -> (HappyAbsSyn ) happyIn128 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn128 #-} happyOut128 :: (HappyAbsSyn ) -> (([FunDep L],[S],Maybe L)) happyOut128 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut128 #-} happyIn129 :: (([FunDep L],[S],L)) -> (HappyAbsSyn ) happyIn129 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn129 #-} happyOut129 :: (HappyAbsSyn ) -> (([FunDep L],[S],L)) happyOut129 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut129 #-} happyIn130 :: (FunDep L) -> (HappyAbsSyn ) happyIn130 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn130 #-} happyOut130 :: (HappyAbsSyn ) -> (FunDep L) happyOut130 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut130 #-} happyIn131 :: (([GadtDecl L],[S],Maybe L)) -> (HappyAbsSyn ) happyIn131 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn131 #-} happyOut131 :: (HappyAbsSyn ) -> (([GadtDecl L],[S],Maybe L)) happyOut131 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut131 #-} happyIn132 :: (([GadtDecl L],[S])) -> (HappyAbsSyn ) happyIn132 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn132 #-} happyOut132 :: (HappyAbsSyn ) -> (([GadtDecl L],[S])) happyOut132 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut132 #-} happyIn133 :: (([GadtDecl L],[S])) -> (HappyAbsSyn ) happyIn133 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn133 #-} happyOut133 :: (HappyAbsSyn ) -> (([GadtDecl L],[S])) happyOut133 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut133 #-} happyIn134 :: ([GadtDecl L]) -> (HappyAbsSyn ) happyIn134 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn134 #-} happyOut134 :: (HappyAbsSyn ) -> ([GadtDecl L]) happyOut134 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut134 #-} happyIn135 :: (([QualConDecl L],[S],Maybe L)) -> (HappyAbsSyn ) happyIn135 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn135 #-} happyOut135 :: (HappyAbsSyn ) -> (([QualConDecl L],[S],Maybe L)) happyOut135 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut135 #-} happyIn136 :: (([QualConDecl L],[S],L)) -> (HappyAbsSyn ) happyIn136 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn136 #-} happyOut136 :: (HappyAbsSyn ) -> (([QualConDecl L],[S],L)) happyOut136 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut136 #-} happyIn137 :: (QualConDecl L) -> (HappyAbsSyn ) happyIn137 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn137 #-} happyOut137 :: (HappyAbsSyn ) -> (QualConDecl L) happyOut137 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut137 #-} happyIn138 :: ((Maybe [TyVarBind L], [S], Maybe L)) -> (HappyAbsSyn ) happyIn138 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn138 #-} happyOut138 :: (HappyAbsSyn ) -> ((Maybe [TyVarBind L], [S], Maybe L)) happyOut138 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut138 #-} happyIn139 :: (ConDecl L) -> (HappyAbsSyn ) happyIn139 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn139 #-} happyOut139 :: (HappyAbsSyn ) -> (ConDecl L) happyOut139 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut139 #-} happyIn140 :: ((Name L, [Type L], L)) -> (HappyAbsSyn ) happyIn140 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn140 #-} happyOut140 :: (HappyAbsSyn ) -> ((Name L, [Type L], L)) happyOut140 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut140 #-} happyIn141 :: (([FieldDecl L],[S])) -> (HappyAbsSyn ) happyIn141 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn141 #-} happyOut141 :: (HappyAbsSyn ) -> (([FieldDecl L],[S])) happyOut141 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut141 #-} happyIn142 :: (FieldDecl L) -> (HappyAbsSyn ) happyIn142 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn142 #-} happyOut142 :: (HappyAbsSyn ) -> (FieldDecl L) happyOut142 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut142 #-} happyIn143 :: (Maybe (Deriving L)) -> (HappyAbsSyn ) happyIn143 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn143 #-} happyOut143 :: (HappyAbsSyn ) -> (Maybe (Deriving L)) happyOut143 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut143 #-} happyIn144 :: (([InstRule L],[S])) -> (HappyAbsSyn ) happyIn144 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn144 #-} happyOut144 :: (HappyAbsSyn ) -> (([InstRule L],[S])) happyOut144 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut144 #-} happyIn145 :: (InstHead L) -> (HappyAbsSyn ) happyIn145 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn145 #-} happyOut145 :: (HappyAbsSyn ) -> (InstHead L) happyOut145 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut145 #-} happyIn146 :: (Kind L) -> (HappyAbsSyn ) happyIn146 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn146 #-} happyOut146 :: (HappyAbsSyn ) -> (Kind L) happyOut146 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut146 #-} happyIn147 :: (Kind L) -> (HappyAbsSyn ) happyIn147 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn147 #-} happyOut147 :: (HappyAbsSyn ) -> (Kind L) happyOut147 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut147 #-} happyIn148 :: (Kind L) -> (HappyAbsSyn ) happyIn148 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn148 #-} happyOut148 :: (HappyAbsSyn ) -> (Kind L) happyOut148 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut148 #-} happyIn149 :: (Kind L) -> (HappyAbsSyn ) happyIn149 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn149 #-} happyOut149 :: (HappyAbsSyn ) -> (Kind L) happyOut149 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut149 #-} happyIn150 :: (Kind L) -> (HappyAbsSyn ) happyIn150 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn150 #-} happyOut150 :: (HappyAbsSyn ) -> (Kind L) happyOut150 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut150 #-} happyIn151 :: (([Kind L], [S])) -> (HappyAbsSyn ) happyIn151 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn151 #-} happyOut151 :: (HappyAbsSyn ) -> (([Kind L], [S])) happyOut151 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut151 #-} happyIn152 :: ((Maybe (Kind L), [S])) -> (HappyAbsSyn ) happyIn152 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn152 #-} happyOut152 :: (HappyAbsSyn ) -> ((Maybe (Kind L), [S])) happyOut152 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut152 #-} happyIn153 :: ((Maybe [ClassDecl L],[S],Maybe L)) -> (HappyAbsSyn ) happyIn153 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn153 #-} happyOut153 :: (HappyAbsSyn ) -> ((Maybe [ClassDecl L],[S],Maybe L)) happyOut153 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut153 #-} happyIn154 :: (([ClassDecl L],[S])) -> (HappyAbsSyn ) happyIn154 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn154 #-} happyOut154 :: (HappyAbsSyn ) -> (([ClassDecl L],[S])) happyOut154 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut154 #-} happyIn155 :: (([ClassDecl L],[S])) -> (HappyAbsSyn ) happyIn155 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn155 #-} happyOut155 :: (HappyAbsSyn ) -> (([ClassDecl L],[S])) happyOut155 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut155 #-} happyIn156 :: (ClassDecl L) -> (HappyAbsSyn ) happyIn156 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn156 #-} happyOut156 :: (HappyAbsSyn ) -> (ClassDecl L) happyOut156 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut156 #-} happyIn157 :: ([S]) -> (HappyAbsSyn ) happyIn157 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn157 #-} happyOut157 :: (HappyAbsSyn ) -> ([S]) happyOut157 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut157 #-} happyIn158 :: (ClassDecl L) -> (HappyAbsSyn ) happyIn158 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn158 #-} happyOut158 :: (HappyAbsSyn ) -> (ClassDecl L) happyOut158 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut158 #-} happyIn159 :: ((Maybe [InstDecl L],[S],Maybe L)) -> (HappyAbsSyn ) happyIn159 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn159 #-} happyOut159 :: (HappyAbsSyn ) -> ((Maybe [InstDecl L],[S],Maybe L)) happyOut159 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut159 #-} happyIn160 :: (([InstDecl L],[S])) -> (HappyAbsSyn ) happyIn160 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn160 #-} happyOut160 :: (HappyAbsSyn ) -> (([InstDecl L],[S])) happyOut160 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut160 #-} happyIn161 :: (([InstDecl L],[S])) -> (HappyAbsSyn ) happyIn161 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn161 #-} happyOut161 :: (HappyAbsSyn ) -> (([InstDecl L],[S])) happyOut161 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut161 #-} happyIn162 :: (InstDecl L) -> (HappyAbsSyn ) happyIn162 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn162 #-} happyOut162 :: (HappyAbsSyn ) -> (InstDecl L) happyOut162 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut162 #-} happyIn163 :: (InstDecl L) -> (HappyAbsSyn ) happyIn163 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn163 #-} happyOut163 :: (HappyAbsSyn ) -> (InstDecl L) happyOut163 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut163 #-} happyIn164 :: (Decl L) -> (HappyAbsSyn ) happyIn164 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn164 #-} happyOut164 :: (HappyAbsSyn ) -> (Decl L) happyOut164 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut164 #-} happyIn165 :: ((Maybe (Binds L),[S])) -> (HappyAbsSyn ) happyIn165 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn165 #-} happyOut165 :: (HappyAbsSyn ) -> ((Maybe (Binds L),[S])) happyOut165 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut165 #-} happyIn166 :: ((Maybe (Type L, S))) -> (HappyAbsSyn ) happyIn166 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn166 #-} happyOut166 :: (HappyAbsSyn ) -> ((Maybe (Type L, S))) happyOut166 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut166 #-} happyIn167 :: (Rhs L) -> (HappyAbsSyn ) happyIn167 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn167 #-} happyOut167 :: (HappyAbsSyn ) -> (Rhs L) happyOut167 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut167 #-} happyIn168 :: (([GuardedRhs L],L)) -> (HappyAbsSyn ) happyIn168 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn168 #-} happyOut168 :: (HappyAbsSyn ) -> (([GuardedRhs L],L)) happyOut168 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut168 #-} happyIn169 :: (GuardedRhs L) -> (HappyAbsSyn ) happyIn169 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn169 #-} happyOut169 :: (HappyAbsSyn ) -> (GuardedRhs L) happyOut169 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut169 #-} happyIn170 :: (Exp L) -> (HappyAbsSyn ) happyIn170 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn170 #-} happyOut170 :: (HappyAbsSyn ) -> (Exp L) happyOut170 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut170 #-} happyIn171 :: (PExp L) -> (HappyAbsSyn ) happyIn171 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn171 #-} happyOut171 :: (HappyAbsSyn ) -> (PExp L) happyOut171 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut171 #-} happyIn172 :: (PExp L) -> (HappyAbsSyn ) happyIn172 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn172 #-} happyOut172 :: (HappyAbsSyn ) -> (PExp L) happyOut172 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut172 #-} happyIn173 :: (PExp L) -> (HappyAbsSyn ) happyIn173 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn173 #-} happyOut173 :: (HappyAbsSyn ) -> (PExp L) happyOut173 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut173 #-} happyIn174 :: (PExp L) -> (HappyAbsSyn ) happyIn174 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn174 #-} happyOut174 :: (HappyAbsSyn ) -> (PExp L) happyOut174 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut174 #-} happyIn175 :: (PExp L) -> (HappyAbsSyn ) happyIn175 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn175 #-} happyOut175 :: (HappyAbsSyn ) -> (PExp L) happyOut175 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut175 #-} happyIn176 :: ([S]) -> (HappyAbsSyn ) happyIn176 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn176 #-} happyOut176 :: (HappyAbsSyn ) -> ([S]) happyOut176 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut176 #-} happyIn177 :: ([S]) -> (HappyAbsSyn ) happyIn177 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn177 #-} happyOut177 :: (HappyAbsSyn ) -> ([S]) happyOut177 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut177 #-} happyIn178 :: (PExp L) -> (HappyAbsSyn ) happyIn178 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn178 #-} happyOut178 :: (HappyAbsSyn ) -> (PExp L) happyOut178 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut178 #-} happyIn179 :: (PExp L) -> (HappyAbsSyn ) happyIn179 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn179 #-} happyOut179 :: (HappyAbsSyn ) -> (PExp L) happyOut179 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut179 #-} happyIn180 :: (PExp L) -> (HappyAbsSyn ) happyIn180 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn180 #-} happyOut180 :: (HappyAbsSyn ) -> (PExp L) happyOut180 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut180 #-} happyIn181 :: ([Pat L]) -> (HappyAbsSyn ) happyIn181 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn181 #-} happyOut181 :: (HappyAbsSyn ) -> ([Pat L]) happyOut181 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut181 #-} happyIn182 :: (Pat L) -> (HappyAbsSyn ) happyIn182 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn182 #-} happyOut182 :: (HappyAbsSyn ) -> (Pat L) happyOut182 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut182 #-} happyIn183 :: (PExp L) -> (HappyAbsSyn ) happyIn183 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn183 #-} happyOut183 :: (HappyAbsSyn ) -> (PExp L) happyOut183 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut183 #-} happyIn184 :: (PExp L) -> (HappyAbsSyn ) happyIn184 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn184 #-} happyOut184 :: (HappyAbsSyn ) -> (PExp L) happyOut184 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut184 #-} happyIn185 :: (PExp L) -> (HappyAbsSyn ) happyIn185 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn185 #-} happyOut185 :: (HappyAbsSyn ) -> (PExp L) happyOut185 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut185 #-} happyIn186 :: ([S]) -> (HappyAbsSyn ) happyIn186 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn186 #-} happyOut186 :: (HappyAbsSyn ) -> ([S]) happyOut186 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut186 #-} happyIn187 :: (PExp L) -> (HappyAbsSyn ) happyIn187 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn187 #-} happyOut187 :: (HappyAbsSyn ) -> (PExp L) happyOut187 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut187 #-} happyIn188 :: (([Maybe (PExp L)],[S])) -> (HappyAbsSyn ) happyIn188 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn188 #-} happyOut188 :: (HappyAbsSyn ) -> (([Maybe (PExp L)],[S])) happyOut188 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut188 #-} happyIn189 :: (([Maybe (PExp L)],[S])) -> (HappyAbsSyn ) happyIn189 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn189 #-} happyOut189 :: (HappyAbsSyn ) -> (([Maybe (PExp L)],[S])) happyOut189 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut189 #-} happyIn190 :: (([PExp L],[S])) -> (HappyAbsSyn ) happyIn190 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn190 #-} happyOut190 :: (HappyAbsSyn ) -> (([PExp L],[S])) happyOut190 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut190 #-} happyIn191 :: (PExp L) -> (HappyAbsSyn ) happyIn191 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn191 #-} happyOut191 :: (HappyAbsSyn ) -> (PExp L) happyOut191 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut191 #-} happyIn192 :: (PExp L) -> (HappyAbsSyn ) happyIn192 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn192 #-} happyOut192 :: (HappyAbsSyn ) -> (PExp L) happyOut192 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut192 #-} happyIn193 :: ([PExp L]) -> (HappyAbsSyn ) happyIn193 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn193 #-} happyOut193 :: (HappyAbsSyn ) -> ([PExp L]) happyOut193 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut193 #-} happyIn194 :: (PExp L) -> (HappyAbsSyn ) happyIn194 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn194 #-} happyOut194 :: (HappyAbsSyn ) -> (PExp L) happyOut194 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut194 #-} happyIn195 :: (XName L) -> (HappyAbsSyn ) happyIn195 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn195 #-} happyOut195 :: (HappyAbsSyn ) -> (XName L) happyOut195 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut195 #-} happyIn196 :: (Loc String) -> (HappyAbsSyn ) happyIn196 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn196 #-} happyOut196 :: (HappyAbsSyn ) -> (Loc String) happyOut196 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut196 #-} happyIn197 :: (Loc String) -> (HappyAbsSyn ) happyIn197 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn197 #-} happyOut197 :: (HappyAbsSyn ) -> (Loc String) happyOut197 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut197 #-} happyIn198 :: ([ParseXAttr L]) -> (HappyAbsSyn ) happyIn198 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn198 #-} happyOut198 :: (HappyAbsSyn ) -> ([ParseXAttr L]) happyOut198 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut198 #-} happyIn199 :: (ParseXAttr L) -> (HappyAbsSyn ) happyIn199 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn199 #-} happyOut199 :: (HappyAbsSyn ) -> (ParseXAttr L) happyOut199 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut199 #-} happyIn200 :: (Maybe (PExp L)) -> (HappyAbsSyn ) happyIn200 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn200 #-} happyOut200 :: (HappyAbsSyn ) -> (Maybe (PExp L)) happyOut200 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut200 #-} happyIn201 :: (L -> PExp L) -> (HappyAbsSyn ) happyIn201 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn201 #-} happyOut201 :: (HappyAbsSyn ) -> (L -> PExp L) happyOut201 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut201 #-} happyIn202 :: (([PExp L],[S])) -> (HappyAbsSyn ) happyIn202 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn202 #-} happyOut202 :: (HappyAbsSyn ) -> (([PExp L],[S])) happyOut202 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut202 #-} happyIn203 :: (([[QualStmt L]],[S])) -> (HappyAbsSyn ) happyIn203 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn203 #-} happyOut203 :: (HappyAbsSyn ) -> (([[QualStmt L]],[S])) happyOut203 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut203 #-} happyIn204 :: (([QualStmt L],[S])) -> (HappyAbsSyn ) happyIn204 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn204 #-} happyOut204 :: (HappyAbsSyn ) -> (([QualStmt L],[S])) happyOut204 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut204 #-} happyIn205 :: (QualStmt L) -> (HappyAbsSyn ) happyIn205 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn205 #-} happyOut205 :: (HappyAbsSyn ) -> (QualStmt L) happyOut205 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut205 #-} happyIn206 :: (QualStmt L) -> (HappyAbsSyn ) happyIn206 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn206 #-} happyOut206 :: (HappyAbsSyn ) -> (QualStmt L) happyOut206 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut206 #-} happyIn207 :: (([Stmt L],[S])) -> (HappyAbsSyn ) happyIn207 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn207 #-} happyOut207 :: (HappyAbsSyn ) -> (([Stmt L],[S])) happyOut207 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut207 #-} happyIn208 :: (Stmt L) -> (HappyAbsSyn ) happyIn208 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn208 #-} happyOut208 :: (HappyAbsSyn ) -> (Stmt L) happyOut208 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut208 #-} happyIn209 :: (L -> PExp L) -> (HappyAbsSyn ) happyIn209 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn209 #-} happyOut209 :: (HappyAbsSyn ) -> (L -> PExp L) happyOut209 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut209 #-} happyIn210 :: (([Alt L],L,[S])) -> (HappyAbsSyn ) happyIn210 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn210 #-} happyOut210 :: (HappyAbsSyn ) -> (([Alt L],L,[S])) happyOut210 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut210 #-} happyIn211 :: (([Alt L],[S])) -> (HappyAbsSyn ) happyIn211 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn211 #-} happyOut211 :: (HappyAbsSyn ) -> (([Alt L],[S])) happyOut211 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut211 #-} happyIn212 :: (([Alt L],[S])) -> (HappyAbsSyn ) happyIn212 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn212 #-} happyOut212 :: (HappyAbsSyn ) -> (([Alt L],[S])) happyOut212 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut212 #-} happyIn213 :: (Alt L) -> (HappyAbsSyn ) happyIn213 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn213 #-} happyOut213 :: (HappyAbsSyn ) -> (Alt L) happyOut213 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut213 #-} happyIn214 :: (Rhs L) -> (HappyAbsSyn ) happyIn214 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn214 #-} happyOut214 :: (HappyAbsSyn ) -> (Rhs L) happyOut214 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut214 #-} happyIn215 :: (([GuardedRhs L],L)) -> (HappyAbsSyn ) happyIn215 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn215 #-} happyOut215 :: (HappyAbsSyn ) -> (([GuardedRhs L],L)) happyOut215 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut215 #-} happyIn216 :: (GuardedRhs L) -> (HappyAbsSyn ) happyIn216 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn216 #-} happyOut216 :: (HappyAbsSyn ) -> (GuardedRhs L) happyOut216 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut216 #-} happyIn217 :: (Pat L) -> (HappyAbsSyn ) happyIn217 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn217 #-} happyOut217 :: (HappyAbsSyn ) -> (Pat L) happyOut217 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut217 #-} happyIn218 :: (([GuardedRhs L], L, [S])) -> (HappyAbsSyn ) happyIn218 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn218 #-} happyOut218 :: (HappyAbsSyn ) -> (([GuardedRhs L], L, [S])) happyOut218 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut218 #-} happyIn219 :: (([GuardedRhs L], [S])) -> (HappyAbsSyn ) happyIn219 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn219 #-} happyOut219 :: (HappyAbsSyn ) -> (([GuardedRhs L], [S])) happyOut219 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut219 #-} happyIn220 :: (([GuardedRhs L], [S])) -> (HappyAbsSyn ) happyIn220 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn220 #-} happyOut220 :: (HappyAbsSyn ) -> (([GuardedRhs L], [S])) happyOut220 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut220 #-} happyIn221 :: (([Stmt L],L,[S])) -> (HappyAbsSyn ) happyIn221 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn221 #-} happyOut221 :: (HappyAbsSyn ) -> (([Stmt L],L,[S])) happyOut221 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut221 #-} happyIn222 :: (([Stmt L],[S])) -> (HappyAbsSyn ) happyIn222 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn222 #-} happyOut222 :: (HappyAbsSyn ) -> (([Stmt L],[S])) happyOut222 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut222 #-} happyIn223 :: (([Stmt L],[S])) -> (HappyAbsSyn ) happyIn223 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn223 #-} happyOut223 :: (HappyAbsSyn ) -> (([Stmt L],[S])) happyOut223 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut223 #-} happyIn224 :: (Stmt L) -> (HappyAbsSyn ) happyIn224 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn224 #-} happyOut224 :: (HappyAbsSyn ) -> (Stmt L) happyOut224 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut224 #-} happyIn225 :: (([PFieldUpdate L],[S])) -> (HappyAbsSyn ) happyIn225 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn225 #-} happyOut225 :: (HappyAbsSyn ) -> (([PFieldUpdate L],[S])) happyOut225 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut225 #-} happyIn226 :: (PFieldUpdate L) -> (HappyAbsSyn ) happyIn226 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn226 #-} happyOut226 :: (HappyAbsSyn ) -> (PFieldUpdate L) happyOut226 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut226 #-} happyIn227 :: (([IPBind L],[S])) -> (HappyAbsSyn ) happyIn227 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn227 #-} happyOut227 :: (HappyAbsSyn ) -> (([IPBind L],[S])) happyOut227 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut227 #-} happyIn228 :: (([IPBind L],[S])) -> (HappyAbsSyn ) happyIn228 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn228 #-} happyOut228 :: (HappyAbsSyn ) -> (([IPBind L],[S])) happyOut228 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut228 #-} happyIn229 :: (IPBind L) -> (HappyAbsSyn ) happyIn229 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn229 #-} happyOut229 :: (HappyAbsSyn ) -> (IPBind L) happyOut229 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut229 #-} happyIn230 :: (PExp L) -> (HappyAbsSyn ) happyIn230 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn230 #-} happyOut230 :: (HappyAbsSyn ) -> (PExp L) happyOut230 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut230 #-} happyIn231 :: (Name L) -> (HappyAbsSyn ) happyIn231 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn231 #-} happyOut231 :: (HappyAbsSyn ) -> (Name L) happyOut231 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut231 #-} happyIn232 :: (Name L) -> (HappyAbsSyn ) happyIn232 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn232 #-} happyOut232 :: (HappyAbsSyn ) -> (Name L) happyOut232 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut232 #-} happyIn233 :: (QName L) -> (HappyAbsSyn ) happyIn233 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn233 #-} happyOut233 :: (HappyAbsSyn ) -> (QName L) happyOut233 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut233 #-} happyIn234 :: (IPName L) -> (HappyAbsSyn ) happyIn234 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn234 #-} happyOut234 :: (HappyAbsSyn ) -> (IPName L) happyOut234 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut234 #-} happyIn235 :: (Name L) -> (HappyAbsSyn ) happyIn235 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn235 #-} happyOut235 :: (HappyAbsSyn ) -> (Name L) happyOut235 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut235 #-} happyIn236 :: (QName L) -> (HappyAbsSyn ) happyIn236 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn236 #-} happyOut236 :: (HappyAbsSyn ) -> (QName L) happyOut236 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut236 #-} happyIn237 :: (Name L) -> (HappyAbsSyn ) happyIn237 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn237 #-} happyOut237 :: (HappyAbsSyn ) -> (Name L) happyOut237 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut237 #-} happyIn238 :: (QName L) -> (HappyAbsSyn ) happyIn238 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn238 #-} happyOut238 :: (HappyAbsSyn ) -> (QName L) happyOut238 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut238 #-} happyIn239 :: (QName L) -> (HappyAbsSyn ) happyIn239 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn239 #-} happyOut239 :: (HappyAbsSyn ) -> (QName L) happyOut239 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut239 #-} happyIn240 :: (Name L) -> (HappyAbsSyn ) happyIn240 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn240 #-} happyOut240 :: (HappyAbsSyn ) -> (Name L) happyOut240 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut240 #-} happyIn241 :: (QName L) -> (HappyAbsSyn ) happyIn241 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn241 #-} happyOut241 :: (HappyAbsSyn ) -> (QName L) happyOut241 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut241 #-} happyIn242 :: (Op L) -> (HappyAbsSyn ) happyIn242 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn242 #-} happyOut242 :: (HappyAbsSyn ) -> (Op L) happyOut242 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut242 #-} happyIn243 :: (QOp L) -> (HappyAbsSyn ) happyIn243 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn243 #-} happyOut243 :: (HappyAbsSyn ) -> (QOp L) happyOut243 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut243 #-} happyIn244 :: (QOp L) -> (HappyAbsSyn ) happyIn244 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn244 #-} happyOut244 :: (HappyAbsSyn ) -> (QOp L) happyOut244 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut244 #-} happyIn245 :: (QName L) -> (HappyAbsSyn ) happyIn245 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn245 #-} happyOut245 :: (HappyAbsSyn ) -> (QName L) happyOut245 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut245 #-} happyIn246 :: (PExp L) -> (HappyAbsSyn ) happyIn246 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn246 #-} happyOut246 :: (HappyAbsSyn ) -> (PExp L) happyOut246 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut246 #-} happyIn247 :: (QName L) -> (HappyAbsSyn ) happyIn247 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn247 #-} happyOut247 :: (HappyAbsSyn ) -> (QName L) happyOut247 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut247 #-} happyIn248 :: (Name L) -> (HappyAbsSyn ) happyIn248 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn248 #-} happyOut248 :: (HappyAbsSyn ) -> (Name L) happyOut248 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut248 #-} happyIn249 :: (Name L) -> (HappyAbsSyn ) happyIn249 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn249 #-} happyOut249 :: (HappyAbsSyn ) -> (Name L) happyOut249 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut249 #-} happyIn250 :: (IPName L) -> (HappyAbsSyn ) happyIn250 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn250 #-} happyOut250 :: (HappyAbsSyn ) -> (IPName L) happyOut250 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut250 #-} happyIn251 :: (QName L) -> (HappyAbsSyn ) happyIn251 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn251 #-} happyOut251 :: (HappyAbsSyn ) -> (QName L) happyOut251 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut251 #-} happyIn252 :: (Name L) -> (HappyAbsSyn ) happyIn252 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn252 #-} happyOut252 :: (HappyAbsSyn ) -> (Name L) happyOut252 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut252 #-} happyIn253 :: (QName L) -> (HappyAbsSyn ) happyIn253 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn253 #-} happyOut253 :: (HappyAbsSyn ) -> (QName L) happyOut253 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut253 #-} happyIn254 :: (Name L) -> (HappyAbsSyn ) happyIn254 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn254 #-} happyOut254 :: (HappyAbsSyn ) -> (Name L) happyOut254 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut254 #-} happyIn255 :: (QName L) -> (HappyAbsSyn ) happyIn255 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn255 #-} happyOut255 :: (HappyAbsSyn ) -> (QName L) happyOut255 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut255 #-} happyIn256 :: (QName L) -> (HappyAbsSyn ) happyIn256 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn256 #-} happyOut256 :: (HappyAbsSyn ) -> (QName L) happyOut256 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut256 #-} happyIn257 :: (Name L) -> (HappyAbsSyn ) happyIn257 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn257 #-} happyOut257 :: (HappyAbsSyn ) -> (Name L) happyOut257 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut257 #-} happyIn258 :: (Name L) -> (HappyAbsSyn ) happyIn258 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn258 #-} happyOut258 :: (HappyAbsSyn ) -> (Name L) happyOut258 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut258 #-} happyIn259 :: (QName L) -> (HappyAbsSyn ) happyIn259 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn259 #-} happyOut259 :: (HappyAbsSyn ) -> (QName L) happyOut259 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut259 #-} happyIn260 :: (Literal L) -> (HappyAbsSyn ) happyIn260 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn260 #-} happyOut260 :: (HappyAbsSyn ) -> (Literal L) happyOut260 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut260 #-} happyIn261 :: (S) -> (HappyAbsSyn ) happyIn261 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn261 #-} happyOut261 :: (HappyAbsSyn ) -> (S) happyOut261 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut261 #-} happyIn262 :: (S) -> (HappyAbsSyn ) happyIn262 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn262 #-} happyOut262 :: (HappyAbsSyn ) -> (S) happyOut262 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut262 #-} happyIn263 :: (Decl L) -> (HappyAbsSyn ) happyIn263 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn263 #-} happyOut263 :: (HappyAbsSyn ) -> (Decl L) happyOut263 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut263 #-} happyIn264 :: (Decl L) -> (HappyAbsSyn ) happyIn264 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn264 #-} happyOut264 :: (HappyAbsSyn ) -> (Decl L) happyOut264 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut264 #-} happyIn265 :: (Pat L) -> (HappyAbsSyn ) happyIn265 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn265 #-} happyOut265 :: (HappyAbsSyn ) -> (Pat L) happyOut265 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut265 #-} happyIn266 :: ([Pat L]) -> (HappyAbsSyn ) happyIn266 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn266 #-} happyOut266 :: (HappyAbsSyn ) -> ([Pat L]) happyOut266 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut266 #-} happyIn267 :: (([S], [Name L])) -> (HappyAbsSyn ) happyIn267 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn267 #-} happyOut267 :: (HappyAbsSyn ) -> (([S], [Name L])) happyOut267 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut267 #-} happyIn268 :: (PatternSynDirection L) -> (HappyAbsSyn ) happyIn268 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn268 #-} happyOut268 :: (HappyAbsSyn ) -> (PatternSynDirection L) happyOut268 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut268 #-} happyIn269 :: (Decl L) -> (HappyAbsSyn ) happyIn269 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn269 #-} happyOut269 :: (HappyAbsSyn ) -> (Decl L) happyOut269 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut269 #-} happyIn270 :: ((Maybe [TyVarBind L], [S], Maybe (Context L), Maybe (Context L), Type L )) -> (HappyAbsSyn ) happyIn270 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn270 #-} happyOut270 :: (HappyAbsSyn ) -> ((Maybe [TyVarBind L], [S], Maybe (Context L), Maybe (Context L), Type L )) happyOut270 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut270 #-} happyIn271 :: (ModuleName L) -> (HappyAbsSyn ) happyIn271 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn271 #-} happyOut271 :: (HappyAbsSyn ) -> (ModuleName L) happyOut271 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut271 #-} happyIn272 :: (Name L) -> (HappyAbsSyn ) happyIn272 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn272 #-} happyOut272 :: (HappyAbsSyn ) -> (Name L) happyOut272 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut272 #-} happyIn273 :: (QName L) -> (HappyAbsSyn ) happyIn273 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn273 #-} happyOut273 :: (HappyAbsSyn ) -> (QName L) happyOut273 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut273 #-} happyIn274 :: (Name L) -> (HappyAbsSyn ) happyIn274 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn274 #-} happyOut274 :: (HappyAbsSyn ) -> (Name L) happyOut274 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut274 #-} happyIn275 :: (Name L) -> (HappyAbsSyn ) happyIn275 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn275 #-} happyOut275 :: (HappyAbsSyn ) -> (Name L) happyOut275 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut275 #-} happyIn276 :: (QName L) -> (HappyAbsSyn ) happyIn276 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn276 #-} happyOut276 :: (HappyAbsSyn ) -> (QName L) happyOut276 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut276 #-} happyIn277 :: (Name L) -> (HappyAbsSyn ) happyIn277 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn277 #-} happyOut277 :: (HappyAbsSyn ) -> (Name L) happyOut277 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut277 #-} happyIn278 :: (([ImportDecl L],[S],L)) -> (HappyAbsSyn ) happyIn278 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn278 #-} happyOut278 :: (HappyAbsSyn ) -> (([ImportDecl L],[S],L)) happyOut278 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut278 #-} happyIn279 :: ((([ModulePragma L], [S], L), Maybe (ModuleName L))) -> (HappyAbsSyn ) happyIn279 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn279 #-} happyOut279 :: (HappyAbsSyn ) -> ((([ModulePragma L], [S], L), Maybe (ModuleName L))) happyOut279 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut279 #-} happyIn280 :: ((([ModulePragma L], [S], L), Maybe (ModuleHead L))) -> (HappyAbsSyn ) happyIn280 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn280 #-} happyOut280 :: (HappyAbsSyn ) -> ((([ModulePragma L], [S], L), Maybe (ModuleHead L))) happyOut280 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut280 #-} happyIn281 :: ((([ModulePragma L], [S], L), Maybe (ModuleHead L), Maybe ([ImportDecl L],[S],L))) -> (HappyAbsSyn ) happyIn281 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyIn281 #-} happyOut281 :: (HappyAbsSyn ) -> ((([ModulePragma L], [S], L), Maybe (ModuleHead L), Maybe ([ImportDecl L],[S],L))) happyOut281 x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOut281 #-} happyInTok :: (Loc Token) -> (HappyAbsSyn ) happyInTok x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyInTok #-} happyOutTok :: (HappyAbsSyn ) -> (Loc Token) happyOutTok x = Happy_GHC_Exts.unsafeCoerce# x {-# INLINE happyOutTok #-} happyActOffsets :: HappyAddr happyActOffsets = HappyA# "\x00\x00\x0e\x27\x8f\x26\xad\x09\x39\x1a\x16\x23\x5b\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x59\x09\x7c\x05\x4f\x09\xbb\x09\x45\x09\xb3\x09\x3a\x09\xb0\x09\xb0\x09\x22\x09\x21\x09\x00\x00\x76\x09\x00\x00\x00\x00\x38\x06\x00\x00\x00\x00\x00\x00\x06\x2b\x00\x00\x80\x09\x00\x00\x00\x00\x6d\x09\x0f\x09\x00\x00\x4f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x1f\x00\x1f\x12\x20\x9b\x20\x00\x00\x20\x2a\x79\x1c\x06\x2b\x06\x2b\x06\x2b\x0e\x27\x00\x00\x0e\x27\x0e\x27\x0e\x27\x39\x1a\x00\x00\x60\x2d\xbe\x30\x00\x00\x40\x30\x0e\x27\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x27\x7d\x09\x00\x00\x00\x00\x00\x00\x10\x26\x7c\x09\x7b\x09\x93\x2a\x7b\x09\x00\x00\x00\x00\x85\x09\x84\x09\x83\x09\x00\x00\x00\x00\x69\x13\x00\x00\x00\x00\x79\x1c\x00\x00\x69\x03\x00\x00\x00\x00\x00\x09\x00\x00\x39\x1a\x68\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x13\x89\x14\xc9\x16\x59\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x27\x31\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfd\x08\xfb\x08\xf9\x08\x00\x00\x00\x00\x00\x00\xf9\x08\x70\x09\xf8\x08\x00\x00\xf8\x08\x44\x00\x00\x00\x00\x00\x6b\x09\x40\x30\x10\x09\x3e\x07\x00\x00\x1d\x09\x00\x00\x00\x00\x64\x09\x00\x00\xa9\x0d\x58\x00\x00\x00\x00\x00\x1d\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\x14\x69\x16\x00\x00\x5d\x09\x55\x09\xc9\x13\x53\x09\x00\x00\x52\x09\x4e\x09\x00\x00\x58\x03\x47\x03\x00\x00\x00\x00\xe1\x02\x58\x09\xe3\x02\x54\x09\x4b\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x09\x00\x00\x48\x09\x00\x00\x79\x1c\x00\x00\x00\x00\x00\x00\x00\x00\x79\x1c\x00\x00\x00\x00\x79\x1c\x00\x00\x00\x00\xed\x30\x39\x1a\x00\x00\x00\x00\x41\x09\xc7\x08\xc6\x08\x00\x00\x1a\x21\x1a\x21\x29\x09\x00\x00\x06\x2b\x00\x00\xdf\x08\x26\x09\x00\x00\x00\x00\x00\x00\x00\x00\xd4\x08\x99\x02\xf6\x08\x00\x00\x1a\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7a\x2c\x46\x03\x20\x09\x00\x00\x00\x00\x2c\x0e\xcb\x0e\xfc\x08\xf7\x08\x52\x0d\xf3\x08\x1c\x09\x12\x09\x59\x01\x00\x00\x06\x2b\x00\x00\x00\x00\x00\x00\xad\x29\x00\x00\x17\x09\xfe\x08\x06\x03\x06\x09\x08\x09\x00\x00\x00\x00\x0e\x27\x00\x00\x00\x00\x00\x00\xf0\x27\x00\x00\x09\x01\x07\x09\xff\x08\x00\x00\x77\x1e\x39\x03\x00\x00\xcd\x04\xee\x1d\x44\x02\x0e\x09\x0d\x09\x0c\x09\x0b\x09\x09\x09\x00\x00\x06\x2b\x06\x2b\x06\x2b\x0e\x27\x42\x2d\x00\x00\x00\x00\x00\x00\x0e\x27\x00\x00\xf0\x27\x39\x1a\x0e\x27\x0e\x27\x0e\x27\x0e\x27\xca\x08\x8a\x08\x37\x00\x00\x00\x3e\x07\x58\x00\x00\x00\x00\x00\x00\x00\xf5\x2c\x00\x00\xa4\x08\x00\x00\x06\x2b\x89\x08\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x06\x2b\x0a\x09\xec\x08\x77\x00\x34\x00\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8b\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x08\xe3\x08\x00\x00\x00\x00\xe7\x08\xd8\x08\xd0\x08\xa6\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x65\x1d\x00\x00\x00\x00\x43\x02\x00\x00\x00\x00\x0e\x27\x91\x25\xdc\x1c\x00\x00\x00\x00\xee\x02\x00\x00\x9b\x20\x00\x00\x9b\x20\x0e\x27\x97\x22\xd3\x08\x00\x00\x00\x00\x9b\x20\x0e\x27\x97\x22\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x27\x0e\x27\x00\x00\x12\x25\x00\x00\x00\x00\x0e\x27\x00\x00\x00\x00\x00\x00\xe4\x08\x58\x00\x00\x00\x00\x00\x00\x00\x09\x16\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x91\x27\x00\x00\x00\x00\x00\x00\x06\x2b\x1b\x01\x39\x1a\x87\x08\xd7\x08\x7b\x08\x00\x00\x00\x00\x00\x00\x54\x05\x00\x00\xc9\x19\x19\x2f\xcd\x08\xcd\x08\xfc\xff\xcd\x08\xdb\x08\xfe\x2e\xfe\x2e\xf5\x2c\xe1\x2f\xcb\x08\x00\x00\x40\x30\xba\x28\x00\x00\x9e\x08\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x27\xbd\x08\xcc\x02\xba\x08\x58\x00\x5a\x08\x00\x00\x0e\x27\x00\x00\x0e\x27\xb9\x08\xb8\x08\x1a\x21\x58\x00\x0e\x27\x0e\x27\xaa\x08\x00\x00\xac\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x2c\x00\x00\x00\x00\x69\x19\x69\x19\x00\x00\x00\x00\x00\x00\x00\x00\x10\x03\x00\x00\x23\x02\x00\x00\x00\x00\x00\x00\x7c\x31\x69\x19\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x66\x10\xb3\x08\xb2\x08\x58\x00\x58\x00\xb0\x06\x80\x08\x00\x00\x00\x00\xba\x28\x84\x08\xb4\x08\xb7\x08\xb5\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x27\x00\x00\x00\x00\x97\x08\x56\x08\x3a\x0e\x9a\x08\x9a\x08\x00\x00\x88\x08\x00\x00\x00\x00\x8d\x08\x00\x00\x94\x08\x00\x00\x89\x2b\x00\x00\x00\x00\x00\x00\x00\x00\x6f\x2b\x75\x2c\x00\x00\x00\x00\x93\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x21\x00\x00\x00\x00\x00\x00\x0e\x27\x00\x00\x00\x00\x00\x00\x00\x00\x12\x25\x00\x00\x00\x00\x1b\x00\x55\x08\x00\x00\x6f\x08\x00\x00\xf4\x06\x6d\x06\x69\x06\x68\x06\x62\x06\x3b\x06\x3a\x06\x02\x06\xe6\x05\xd0\x05\xca\x05\xb4\x05\x96\x05\x74\x05\x6b\x05\x27\x05\x17\x05\x09\x05\xfd\x04\xec\x04\xba\x04\x00\x00\x0d\x08\x00\x00\x6b\x08\x73\x08\x00\x00\x0c\x2c\x00\x08\x2a\x00\x00\x00\x83\x08\x71\x08\x22\x00\x20\x00\x00\x00\x70\x08\xb3\x2e\x47\x00\xb3\x2e\x69\x19\xb3\x2e\xb3\x2e\x95\x2e\xcb\x04\x60\x03\x81\x08\x57\x08\x59\x1b\x79\x1c\xed\x02\x69\x19\xf4\x07\xf3\x07\xea\x07\x54\x05\x69\x19\x69\x19\x52\x08\x70\x06\x70\x06\x78\x04\x78\x04\x79\x2e\x69\x19\x07\x07\x69\x19\xcb\x0e\x61\x08\x37\x08\x34\x06\x00\x00\x00\x00\x4c\x00\x00\x00\x4e\x08\x5d\x08\x00\x00\x00\x00\x18\x22\x5b\x08\x58\x00\x4b\x08\x51\x08\x00\x00\x00\x00\x00\x00\x93\x24\x00\x00\xec\x02\x00\x00\x00\x00\x4a\x08\x00\x00\x85\x02\x00\x00\x00\x00\x00\x00\xe6\x02\x00\x00\x00\x00\x47\x08\x00\x00\x00\x00\x00\x00\xf3\x01\x00\x00\x0e\x27\xe6\x2d\x00\x00\x00\x00\x00\x00\x62\x08\x00\x00\x1d\x00\x1d\x00\x00\x00\x00\x00\x00\x00\x16\x00\x68\x08\x06\x2b\x00\x00\x4d\x08\x4c\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x27\x99\x21\x0e\x27\x02\x08\xf1\xff\x99\x21\x00\x00\x00\x00\x00\x00\x00\x00\x37\x04\xf2\x07\x0e\x27\x14\x24\x00\x00\x3c\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x2f\x00\x00\x00\x00\xfb\x06\xf9\x07\xe0\x07\xf2\x2b\xf0\x07\x1c\x04\xe4\x02\x00\x00\xd3\x07\x23\x08\x00\x00\x0e\x27\x14\x24\xd0\x07\x43\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x2b\xcc\x07\x00\x00\x1f\x08\x2c\x08\x00\x00\x0b\x08\x00\x00\x69\x19\x00\x00\x00\x00\x00\x00\xbb\x07\x00\x00\x94\x01\x07\x08\x00\x00\xe8\x06\x69\x19\x95\x23\x95\x23\x0f\x30\x0f\x30\x00\x00\x0f\x30\x09\x19\xa6\x07\xa5\x07\x9a\x07\x04\x08\x0c\x08\x1e\x08\xfe\x07\xba\x07\x11\x08\x00\x00\x4a\x2e\x00\x00\x4a\x2e\x00\x00\x00\x00\x00\x00\x08\x08\xab\x2f\xab\x2f\x00\x00\x00\x00\x00\x00\x06\x2b\x00\x00\x00\x00\x48\x01\xcc\x02\xff\x07\x00\x00\xe3\x07\xec\x07\xe7\x07\xee\x07\x00\x00\x00\x00\xf2\x2b\x00\x00\xf2\x2b\x00\x00\x00\x00\x0e\x27\x0b\x07\xe6\x07\x39\x29\x70\x11\xe6\x07\x70\x07\x63\x07\x78\x07\x00\x00\x7d\x27\x00\x00\xa8\x06\x00\x00\x00\x00\xdf\x07\xcb\x07\x00\x00\x00\x00\xd5\x07\x94\x01\x00\x00\xfd\x06\xbe\x2c\xce\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x07\x00\x00\xd1\x07\x00\x00\x00\x00\xf2\x2b\x00\x00\xdd\x07\x81\x07\x00\x00\x0e\x27\x00\x00\x99\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x27\x7d\x2f\xa9\x18\xc7\x07\x00\x00\xa9\x18\x00\x00\x00\x00\x00\x00\x00\x00\x59\x1b\x00\x00\x00\x00\xc3\x07\xc0\x07\x00\x00\x00\x00\x66\x07\x00\x00\x00\x00\xb2\x07\xf2\x2b\x37\x31\xa9\x18\x45\x00\x00\x00\xb8\x07\x00\x00\x00\x00\x00\x00\xf2\x2b\x08\x31\xb6\x07\x00\x00\x00\x00\xb7\x07\x00\x00\xa8\x07\x00\x00\x25\x05\xc9\x01\xa4\x2b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x07\xad\x00\x00\x00\x00\x00\x00\x00\x62\x2f\xa9\x18\xa3\x07\x00\x00\x19\x1c\x00\x00\x00\x00\x69\x07\xb1\x07\x00\x00\xa7\x01\x64\x07\x4f\x07\xa0\x07\x9c\x07\x34\x06\x00\x00\x00\x00\x4e\x07\x91\x07\x00\x00\x0e\x27\x95\x23\x9e\x07\x00\x00\x0e\x27\x0e\x27\x0e\x27\x00\x00\x94\x07\x00\x00\x5c\x07\x47\x07\xcf\x03\xf7\x00\x00\x00\x00\x00\x05\x00\xfd\x06\x00\x00\x00\x00\x39\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x07\x00\x00\x00\x00\x00\x00\xa9\x15\x00\x00\x00\x00\x00\x00\xd3\x30\x56\x01\x49\x18\x19\x1c\x00\x00\x00\x00\x89\x07\x88\x07\x03\x13\x1a\x07\x00\x00\x00\x00\xc9\x01\x0e\x27\x00\x00\x00\x00\x85\x07\x79\x07\xb9\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\x00\x00\x00\x21\x07\x00\x00\x7c\x31\x00\x00\x74\x07\x00\x00\x0f\x30\xcb\x2d\x00\x00\x59\x1b\x04\x07\x6c\x07\x00\x00\x00\x00\xf8\x06\x60\x07\x47\x2f\x00\x00\x0f\x30\x5a\x07\x38\x07\x00\x00\x0e\x27\x58\x07\x5f\x07\x67\x07\x00\x00\x00\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd9\x2c\x65\x07\xac\x27\x00\x00\xba\x03\x40\x30\x00\x00\x00\x00\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x2b\x6f\x07\x00\x00\x40\x30\x0e\x27\x52\x07\x00\x00\x00\x00\x00\x00\xe9\x17\x00\x00\x00\x00\x89\x17\x00\x00\x00\x00\x00\x00\x4b\x07\x00\x00\x5e\x07\xeb\x10\x5b\x07\x58\x00\x7c\x31\x00\x00\x00\x00\x5c\x0f\x59\x07\x58\x00\x00\x00\xb9\x1b\x00\x00\x00\x00\x00\x00\x5d\x07\xad\x2d\xf9\x1a\x00\x00\xb9\x1b\x6b\x07\x00\x00\x13\x02\x44\x07\x58\x00\x4c\x07\x45\x07\x00\x00\x00\x00\x0e\x27\x00\x00\x00\x00\x00\x00\x48\x07\x00\x00\x0b\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x07\x00\x00\xb9\x1b\xc8\x02\x62\x02\x00\x00\x00\x00\x3f\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x06\x7a\x12\x49\x15\x67\x31\x00\x00\x00\x00\x29\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb9\x1b\x00\x00\x29\x17\x29\x17\x4c\x31\x66\x10\x2f\x07\x58\x00\x00\x00\x00\x00\x29\x17\x00\x00\x0a\x07\x89\x06\x00\x00\x00\x00\x7b\x2d\x01\x07\x00\x00\x00\x00\x0e\x27\x00\x00\x32\x07\x00\x00\x00\x00\x4c\x31\x00\x00\xca\x03\x00\x00\x1e\x07\x5e\x00\x1d\x07\xf5\x11\x2b\x07\xbb\x06\xa6\x06\x99\x1a\x29\x17\x00\x00\xf3\x05\x99\x1a\x00\x00\xe1\x0f\x2b\x07\x00\x00\x30\x2e\x29\x17\xe9\x14\x04\x01\x2b\x07\x26\x07\x06\x07\x00\x00\x00\x00\x00\x00\x00\x07\xe2\x2e\x86\x02\x00\x00\x00\x00\x8f\x2c\xef\x06\x3a\x28\x00\x00\x00\x00\x00\x00\x30\x2e\x00\x00\x00\x00\x00\x00\xd0\x06\x29\x17\x00\x00\x4c\x06\x00\x00\xf2\x2b\x29\x17\x92\x06\x65\x06\x00\x00\x29\x17\x00\x00\x29\x17\x29\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x77\x06\x00\x00\xb4\x06\x00\x00\x00\x00\xf2\x2b\x74\x30\x00\x00\x00\x00\x66\x00\x00\x00\x00\x00\xb2\x00\x00\x00\x00\x00\xbd\x06\x00\x00\x00\x00\x16\x2e\x8b\x06\x88\x06\x00\x00\x00\x00\x00\x00\x00\x00\x29\x17\x00\x00\x00\x00\x00\x00"# happyGotoOffsets :: HappyAddr happyGotoOffsets = HappyA# "\x02\x00\x56\x38\x08\x3d\x0b\x00\x5c\x09\x9b\x34\x80\x06\x03\x00\xfd\xff\xff\xff\xfe\xff\x01\x00\x9b\x03\xbf\x06\x00\x00\x00\x00\xa5\x06\x00\x00\x91\x06\x00\x00\x00\x00\x00\x00\x74\x06\x00\x00\x00\x00\x00\x00\x00\x00\x48\x08\x00\x00\x00\x00\x00\x00\xe9\x44\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x38\x41\x39\x21\x39\xc7\x38\x00\x00\x36\x31\xe9\x01\xd2\x44\xa6\x0c\x8c\x44\xf1\x3c\x00\x00\x03\x38\xec\x37\xe9\x41\x19\x09\x9d\x05\xf7\x06\x9a\x01\x00\x00\x4b\x05\x2c\x41\xb3\x05\x00\x00\x00\x00\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\x41\x7d\xff\x00\x00\x00\x00\x00\x00\xb2\x34\xf9\xff\x7c\xff\x5e\x42\x73\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x0c\x00\x00\x00\x00\x5c\x0c\x00\x00\x06\x06\x00\x00\x00\x00\x00\x00\x00\x00\x72\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xea\x05\xd2\x06\x86\x06\x0e\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x99\x37\xe4\x03\x00\x00\x00\x00\x00\x00\x00\x00\xf1\x05\x00\x00\x00\x00\x00\x00\xaa\x05\xa6\x05\x00\x00\x00\x00\xf2\xff\x00\x00\x00\x00\x00\x00\x79\x03\x00\x00\x00\x00\x08\x00\xd1\x04\xae\x06\x45\x05\x00\x00\x00\x00\x0a\x00\x04\x00\x00\x00\x00\x00\x79\x00\x44\x05\x00\x00\x00\x00\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x06\x47\x09\x00\x00\x00\x00\x00\x00\x31\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x0c\x00\x00\x00\x00\x00\x00\x00\x00\xdd\x0b\x00\x00\x00\x00\x31\x0a\x00\x00\x00\x00\x21\x02\x5d\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x34\xde\x33\x00\x00\x00\x00\x75\x44\x00\x00\x00\x00\x78\x05\x00\x00\x13\x00\x10\x00\x00\x00\x00\x00\x15\x02\x00\x00\x5f\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\x02\x61\x05\x00\x00\x00\x00\x00\x00\x35\x07\x69\x01\x00\x00\x00\x00\xf5\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x44\x00\x00\x00\x00\x00\x00\x47\x42\x00\x00\x71\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x41\x00\x00\x00\x00\x00\x00\x70\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x3b\x82\x02\x00\x00\x00\x00\xac\x3a\x2f\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x0c\x18\x44\xd2\x43\x82\x37\xef\x04\x00\x00\x00\x00\x00\x00\xb6\x33\x00\x00\x40\x03\x04\x09\xc2\x40\xab\x40\x58\x40\x41\x40\xfa\x05\x00\x00\x6d\x01\x00\x00\xfa\x04\xe7\x04\x9f\x06\x99\x06\xc3\x02\x7f\x03\x00\x00\x7e\x03\x00\x00\xbb\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\x02\x75\x43\x07\x05\x8f\x06\xf5\x04\x00\x00\x43\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x06\x00\x00\x6f\x06\x00\x00\xbb\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8d\x3a\x00\x00\x00\x00\xf3\x02\x00\x00\x00\x00\x9e\x3c\x87\x3c\x33\x3a\x00\x00\x00\x00\x29\x01\x00\x00\x14\x3a\x00\x00\xba\x39\xee\x3f\xa0\x31\x00\x00\x00\x00\x00\x00\x9b\x39\xd7\x3f\x4d\x31\x00\x00\x19\x00\x0c\x00\x00\x00\x84\x3f\x6d\x3f\x00\x00\x8b\x33\x00\x00\x00\x00\xb6\x33\x00\x00\x00\x00\x00\x00\x88\x05\xcf\x04\x45\x06\x00\x00\x00\x00\x1a\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd3\x06\x00\x00\x00\x00\x00\x00\x5e\x43\x00\x00\x06\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x05\x00\x00\x71\x09\x64\x02\x41\x05\x3a\x05\x2a\x05\x1d\x05\xf0\x05\x52\x02\xc7\x01\xf8\x02\x1a\x00\x00\x00\x00\x00\x80\x05\xbb\x42\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x34\x3c\x5e\xff\x42\x01\x00\x00\x7b\x04\x00\x00\x00\x00\x1a\x3f\x00\x00\x03\x3f\x00\x00\x7d\x04\x67\x33\x64\x04\xb0\x3e\x99\x3e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7b\x19\x00\x00\x00\x00\xc7\x0a\xb2\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x00\x6f\x0a\x10\x06\xbe\x05\x00\x00\x00\x00\x00\x00\x00\x00\x4c\x02\x00\x00\x00\x00\x4a\x04\x46\x04\x20\x05\x00\x00\x76\x04\x00\x00\xa4\x42\x1e\x05\x52\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xac\x05\x00\x00\x81\x03\x8b\x05\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\x04\x00\x00\x00\x00\x00\x00\x00\x00\x52\x0c\x2c\x19\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x33\x00\x00\x00\x00\x00\x00\x46\x3e\x00\x00\x00\x00\x00\x00\x81\x05\xec\x32\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x04\x1d\x03\x00\x00\x13\x03\x5b\x0a\x83\x02\x55\x01\xd3\x01\x77\x04\x00\x00\x05\x04\x00\x00\xf2\x0b\x8a\x05\xa9\xff\x1c\x0a\x00\x00\x00\x00\x00\x00\xd9\x04\x24\x04\x07\x0a\x52\x04\x75\x04\x68\x04\xb0\x04\x72\x04\xf6\x00\xef\x08\xe8\x01\xb1\x08\x82\x01\x00\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\xff\x00\x00\x00\x00\x60\x3b\x00\x00\xee\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x37\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x02\x00\x00\x2f\x3e\xb6\x04\x00\x00\x00\x00\x00\x00\x85\x04\x00\x00\x40\x05\x2f\x05\x00\x00\x00\x00\x00\x00\x00\x00\xaf\x03\x18\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2c\x05\xf1\x04\x92\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdc\x3d\xf3\x31\xc5\x3d\x00\x00\x00\x00\x46\x32\x00\x00\x00\x00\xce\x04\x00\x00\x3b\x04\x00\x00\x18\x37\x48\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8d\x03\x00\x00\x00\x00\x6e\x01\xf8\x03\xfe\x03\xb5\x12\x65\x04\x00\x00\x00\x00\x00\x00\xd4\x03\xcc\x03\x00\x00\xc5\x36\x99\x32\xcb\x03\x12\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2c\x00\xc9\x03\xcb\x02\x16\x04\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x09\x00\x00\x00\x00\x00\x00\xb0\x03\xfd\x03\x2c\x06\x00\x00\x00\x00\xed\x03\x9c\x08\x1d\x3c\xca\x3b\xbc\x03\xd1\x01\x00\x00\x98\x01\xc4\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xad\x03\x9f\x03\x00\x00\x8c\x01\x00\x00\xc9\x02\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x00\x51\x00\x00\x00\x31\x03\x00\x00\x01\x43\x00\x00\x00\x00\x00\x00\x1f\x03\x3c\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4b\x17\x00\x00\x7b\x12\x00\x00\x00\x00\xae\x36\x9d\x01\x00\x00\x00\x42\x36\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\xff\x00\x00\x00\x00\x1a\x03\x00\x00\x00\x00\xc1\x03\x00\x00\x00\x00\x00\x00\xab\x03\x00\x00\xbb\x02\x65\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x36\x00\x00\xef\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7f\x41\x07\x00\xb8\x04\x00\x00\x00\x00\x88\x04\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x06\x00\x00\x28\x03\x00\x00\x00\x00\x00\x00\x00\x00\xa7\x02\x00\x00\x00\x00\x59\x04\x64\x12\xec\x00\x59\x08\x48\x03\x00\x00\x91\x02\x00\x00\x00\x00\x00\x00\x69\x0c\xbb\x00\x00\x00\x00\x00\x00\x00\x7d\x02\x00\x00\x00\x00\x00\x00\xdc\x00\x57\x03\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xed\xff\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x01\x44\x08\x00\x00\x00\x00\x9f\x0c\x01\x03\x00\x00\xc2\x02\x35\x02\x00\x00\x92\xff\x9e\x02\x9f\x02\x00\x00\x00\x00\xbc\x02\x00\x00\x00\x00\x48\x02\x33\x02\x00\x00\x44\x36\xb3\x3b\x00\x00\x00\x00\xf1\x35\xda\x35\x87\x35\x00\x00\x00\x00\x00\x00\xb5\x02\x98\x02\x00\x00\xae\x01\x00\x00\x00\x00\xf7\x03\x9b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x01\x00\x00\x00\x00\x00\x00\x3e\x06\x40\x00\x17\x00\x00\x00\xa5\xff\x85\xff\xdc\x0a\xc7\x0c\x00\x00\x00\x00\x00\x00\x00\x00\xce\x05\xf3\x03\x00\x00\x00\x00\x44\x03\x70\x35\x00\x00\x00\x00\x00\x00\x00\x00\x6e\x05\x3c\x00\x1c\x00\x7a\x00\x00\x00\xb7\x03\x00\x00\x32\x00\x21\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xee\x01\x00\x00\x74\x00\x00\x00\x1a\x01\x00\x00\x5f\x00\xa5\xff\x00\x00\xcd\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\xff\x00\x00\x52\x01\x00\x00\x00\x00\x00\x00\x72\x3d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x53\x01\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x23\x00\x00\x00\x51\x02\x19\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x03\x00\x00\x00\x00\x09\x04\x1d\x35\x00\x00\x00\x00\x00\x00\x00\x00\x48\x04\x00\x00\x00\x00\xaf\x09\x00\x00\x64\x00\x49\x00\x00\x00\x00\x00\xd4\xff\xbf\x04\x00\x00\xff\x00\x96\x00\x00\x00\x00\x00\xf0\x01\x00\x00\xfa\x00\x00\x00\x56\x04\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x01\xdc\x0a\x00\x00\x9d\x0a\x16\x01\x00\x00\x15\x01\x00\x00\xf2\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x35\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb3\x03\x00\x00\x00\x00\x00\x00\xdc\x0a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x03\x00\x00\x00\x00\x02\x01\x37\x05\xc0\x0b\x00\x00\x00\x00\x00\x00\x06\x08\x00\x00\x00\x00\x8a\x02\x00\x00\x00\x00\x00\x00\x00\x00\x5f\x02\x00\x00\x90\x03\x2e\x03\xe3\xff\xda\x02\x00\x00\xed\x00\x00\x00\x00\x00\xf1\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6f\x00\x00\x00\x00\x00\x00\x00\x5b\x3d\x00\x00\x00\x00\x00\x00\x00\x00\x63\x00\x00\x00\x00\x00\x00\x00\x00\x00\xab\x00\x00\x00\x1b\x05\x00\x00\x28\x01\x26\x01\xb1\x0b\xec\x03\x00\x00\x9d\x07\x9c\x0b\x00\x00\x6c\x02\x00\x00\x00\x00\xc4\xff\xdc\x07\xae\x07\xa7\xff\x00\x00\x00\x00\x78\x01\x00\x00\x00\x00\x00\x00\x00\x00\x4b\x01\x6b\xff\x00\x00\x00\x00\xc9\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x0b\x01\x00\x00\x00\x00\x00\x00\x50\x01\x99\x07\x00\x00\x50\x00\x00\x00\x2b\x06\x46\x07\xb3\x00\x3b\x00\x00\x00\x31\x07\x00\x00\xd9\x03\x03\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xde\xff\x00\x00\x2f\x02\x00\x00\x00\x00\x82\x04\x9e\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe4\xff\x00\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\xee\x06\x00\x00\x00\x00\x00\x00"# happyDefActions :: HappyAddr happyDefActions = HappyA# "\x2f\xfd\x00\x00\x00\x00\x2f\xfd\x00\x00\x00\x00\x00\x00\x2f\xfd\x2f\xfd\x2f\xfd\x2f\xfd\x00\x00\x00\x00\xea\xff\x0a\xfd\x00\x00\xe2\xff\x00\x00\xe2\xff\x00\x00\x00\x00\x00\x00\xbc\xff\x92\xfd\x6c\xfe\x6a\xfe\x64\xfe\x63\xfe\x61\xfe\x5f\xfe\x59\xfe\x4f\xfe\x4a\xfe\x41\xfe\x3e\xfe\x2a\xfe\x00\x00\x00\x00\x3a\xfe\x3b\xfe\x3d\xfe\x82\xfd\x3c\xfe\x7d\xfd\x54\xfd\x63\xfd\x7b\xfd\x78\xfd\x4a\xfd\x39\xfe\x61\xfd\x64\xfd\x62\xfd\x4c\xfd\x4b\xfd\x48\xfd\x49\xfd\x39\xfd\x37\xfd\x38\xfd\x36\xfd\x35\xfd\x34\xfd\x33\xfd\x32\xfd\x31\xfd\x30\xfd\x00\x00\x00\x00\x00\x00\xb3\xfd\x2e\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x2f\xfd\x00\x00\x00\x00\x1e\xfe\x00\x00\x00\x00\x09\xfe\x5d\xfd\x53\xfd\x52\xfd\x50\xfd\x51\xfd\x5c\xfd\x5b\xfd\x5a\xfd\x59\xfd\x58\xfd\x57\xfd\x56\xfd\x55\xfd\x60\xfd\x00\x00\x2f\xfd\x4e\xfd\x4f\xfd\x5e\xfd\x2f\xfd\x2f\xfd\x2f\xfd\x00\x00\x2f\xfd\x5f\xfd\x4d\xfd\x00\x00\x00\x00\x00\x00\x05\xff\xd4\xfe\x0b\xff\x01\xff\xf3\xfe\x00\x00\xe9\xfe\xe8\xfe\x00\xff\xe2\xfe\x00\x00\xd7\xfe\x00\x00\x00\x00\x15\xfd\xdb\xfe\xff\xfe\x16\xfd\xeb\xfe\xea\xfe\x00\x00\x00\x00\x00\x00\x00\x00\xf5\xfe\xe5\xfe\xe6\xfe\xf6\xfe\x00\x00\x00\x00\xf4\xfe\x14\xfd\x13\xfd\x12\xfd\xce\xfe\x00\x00\x00\x00\x00\x00\xd6\xff\xd6\xff\xa2\xfd\x00\x00\x2f\xfd\x00\x00\x6c\xfe\x00\x00\xe2\xff\xf1\xff\xef\xff\x2f\xfd\x00\x00\xe2\xff\x00\x00\x3a\xff\x00\x00\xd6\xff\xd6\xff\x00\x00\xd7\xff\xd9\xff\x00\x00\xe3\xfe\xe4\xfe\x00\x00\x17\xfd\xed\xfe\x65\xfd\x47\xfd\xec\xfe\x45\xfd\x46\xfd\x00\x00\x00\x00\x66\xfd\x00\x00\x00\x00\x0b\xff\xd4\xfe\xd1\xfe\x00\x00\x00\x00\xdf\xfe\x00\x00\x00\x00\xdd\xfe\x1c\xfe\xd1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x44\xfd\x40\xfd\x43\xfd\x3e\xfd\x3a\xfd\xe1\xfe\x3c\xfd\x00\x00\x3f\xfd\xe6\xfe\x3b\xfd\x00\x00\xd5\xfe\xe7\xfe\xfe\xfe\x02\xff\x00\x00\xd8\xfe\x6e\xfd\x00\x00\x10\xfd\x0f\xfd\x00\x00\x00\x00\xd3\xfe\x0e\xfd\x00\x00\x00\x00\x00\x00\x91\xfd\x97\xfd\x97\xfd\x00\x00\x47\xfe\x00\x00\x50\xfe\x94\xfd\x57\xfe\x5b\xfe\xd6\xff\xd6\xff\x51\xfe\x00\x00\x55\xfe\x00\x00\xd0\xfd\x04\xfe\x00\xfe\x03\xfe\x02\xfe\x01\xfe\xfc\xfd\xfb\xfd\xfa\xfd\xf9\xfd\xf7\xfd\xf8\xfd\xf6\xfd\xf5\xfd\xf4\xfd\xf3\xfd\xf2\xfd\xf1\xfd\xf0\xfd\xef\xfd\xee\xfd\xed\xfd\xec\xfd\xfe\xfd\xfd\xfd\xeb\xfd\xea\xfd\xe9\xfd\xe8\xfd\xe7\xfd\xe6\xfd\xe5\xfd\xe4\xfd\xe3\xfd\xe2\xfd\xe1\xfd\xe0\xfd\xdf\xfd\xde\xfd\xdd\xfd\xdc\xfd\xdb\xfd\xda\xfd\xd9\xfd\xd8\xfd\xd7\xfd\xd6\xfd\xd5\xfd\xff\xfd\xd4\xfd\xd3\xfd\xd2\xfd\x1f\xfe\x20\xfe\x00\x00\x00\x00\x00\x00\x22\xfe\x21\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x63\xfe\x00\x00\x00\x00\x11\xfe\x00\x00\xa1\xfd\x52\xfe\x43\xfe\x42\xfe\x03\xff\x00\x00\x48\xfe\x2f\xfd\x1b\xfe\xb2\xfd\xb1\xfd\x00\x00\x68\xfd\x67\xfd\x00\x00\x72\xfd\x42\xfd\x41\xfd\x00\x00\x3d\xfd\xcc\xfd\x00\x00\xcb\xfd\x86\xfd\x00\x00\x00\x00\x84\xfd\x1b\xfe\x00\x00\x00\x00\x00\x00\x6e\xfd\x00\x00\x42\xfd\x41\xfd\x87\xfd\x3f\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x4b\xfe\x6a\xfd\x69\xfd\x69\xfe\x74\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xba\xff\x00\x00\x07\xfd\x09\xfd\x00\x00\x00\x00\xd6\xff\xd6\xff\xd6\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\xff\x11\xff\x81\xfd\x7a\xfd\x00\x00\x00\x00\x00\x00\xd6\xff\x00\x00\x00\x00\xea\xff\xec\xff\x2d\xfd\x2e\xfd\x0b\xfd\x1a\xfd\x19\xfd\xd6\xff\x08\xfd\xd6\xff\xbd\xff\xb8\xff\xbb\xff\x65\xfe\x66\xfe\x67\xfe\x68\xfe\x6b\xfe\x00\x00\x00\x00\x62\xfe\x60\xfe\x00\x00\x8f\xfd\x8c\xfd\x00\x00\x40\xfe\x8e\xfd\x93\xfd\x44\xfe\x45\xfe\x7c\xfd\x77\xfd\x2d\xfe\x00\x00\x37\xfe\x38\xfe\x00\x00\x85\xfd\x1d\xfe\x00\x00\x00\x00\x00\x00\x34\xfe\x33\xfe\x00\x00\x83\xfd\x00\x00\x30\xfe\x00\x00\xca\xfd\x00\x00\x00\x00\x1a\xfe\x2f\xfe\x00\x00\x00\x00\x00\x00\x53\xfe\xd6\xff\xd6\xff\x49\xfe\x00\x00\x00\x00\x2c\xfe\x00\x00\x28\xfe\x27\xfe\x00\x00\x26\xfe\x25\xfe\x55\xff\x9f\xff\x00\x00\xd6\xff\x91\xff\x90\xff\x00\x00\x7c\xff\x56\xff\x4f\xff\x4e\xff\x54\xff\x83\xff\x63\xfe\x53\xff\x2c\xfd\x52\xff\x00\x00\x00\x00\x00\x00\x5f\xff\x00\x00\x00\x00\x9d\xff\x9c\xff\x9b\xff\x68\xff\x5e\xff\x00\x00\x00\x00\x21\xff\x21\xff\x21\xff\x21\xff\x23\xff\x15\xff\x15\xff\x00\x00\x41\xff\x00\x00\x23\xfe\x00\x00\xcd\xfd\x0c\xfe\x00\x00\x06\xfe\x0a\xfe\x56\xfe\x08\xfe\x00\x00\x2f\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x58\xfe\x00\x00\x46\xfe\x00\x00\x00\x00\x95\xfd\x97\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x08\xff\x00\x00\x09\xff\x0a\xff\x06\xff\xe0\xfe\xd9\xfe\xda\xfe\xde\xfe\xfd\xfe\xf9\xfe\x00\x00\xdc\xfe\xfc\xfe\x00\x00\x00\x00\xf0\xfe\xfb\xfe\xfa\xfe\xf7\xfe\x00\x00\xf1\xfe\x00\x00\xee\xfe\xcf\xfe\xcd\xfe\x00\x00\x00\x00\xd6\xff\xd6\xff\xbf\xff\xdb\xff\xd8\xff\xde\xff\x59\xff\x00\x00\x00\x00\x00\x00\x00\x00\xdf\xff\x00\x00\xd0\xfd\xe4\xff\xcd\xfd\x00\x00\xd4\xff\x00\x00\x00\x00\x38\xff\x50\xff\x39\xff\x51\xff\xd6\xff\x57\xff\x72\xfe\xd6\xff\x89\xfd\x3d\xfe\x00\x00\xd7\xff\xda\xff\xdd\xff\xd6\xfe\x00\x00\xef\xfe\xf2\xfe\xd2\xfe\xd0\xfe\x00\x00\xa6\xfe\xa5\xfe\xa3\xfe\x9f\xfe\x9e\xfe\x9d\xfe\x00\x00\x00\x00\xa1\xfe\x11\xfd\x00\x00\x4d\xfe\x4e\xfe\x9a\xfd\x98\xfd\x99\xfd\x97\xfd\x9b\xfd\x5a\xfe\x5d\xfe\x00\x00\x9f\xfd\xa0\xfd\x9c\xfd\xd6\xff\x00\x00\x54\xfe\x11\xfe\x00\x00\x00\x00\xce\xfd\x00\x00\xd1\xfd\x00\x00\x61\xfd\x48\xfd\x5d\xfd\x53\xfd\x52\xfd\x50\xfd\x51\xfd\x5c\xfd\x5b\xfd\x5a\xfd\x59\xfd\x58\xfd\x57\xfd\x56\xfd\x55\xfd\x60\xfd\x4e\xfd\x4f\xfd\x5e\xfd\x5f\xfd\x05\xfe\x00\x00\x42\xff\x40\xff\x3e\xff\x3b\xff\x00\x00\x00\x00\x00\x00\x16\xff\x00\x00\x13\xff\x00\x00\x00\x00\x24\xff\x21\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x25\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x68\xff\x5b\xff\x00\x00\xc8\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\xfe\x00\x00\xd7\xff\x93\xff\x00\x00\x00\x00\x9e\xff\xb5\xfd\x00\x00\xb7\xfd\x00\x00\x2f\xfd\x12\xfe\x5e\xfe\x00\x00\x00\x00\x00\x00\xae\xfd\xc2\xfd\xc0\xfd\xbf\xfd\xbe\xfd\x00\x00\xb0\xfd\x1b\xfe\xc4\xfd\x71\xfd\xc6\xfd\xc8\xfd\x1b\xfe\xc5\xfd\x31\xfe\x32\xfe\x00\x00\x13\xfe\x19\xfe\x0f\xfe\x10\xfe\x35\xfe\x36\xfe\x00\x00\x16\xfe\x00\x00\x00\x00\x3f\xfe\x6d\xfd\x73\xfd\xb6\xff\xb9\xff\x00\x00\x00\x00\xeb\xff\xe8\xff\xe5\xff\x00\x00\x00\x00\x00\x00\x0e\xff\x00\x00\x00\x00\xe7\xff\x0d\xff\x80\xfd\x79\xfd\x0f\xff\xe6\xff\xe9\xff\xd6\xff\xd6\xff\x00\x00\xb7\xff\x90\xfd\x8d\xfd\x18\xfe\x17\xfe\x15\xfe\x14\xfe\xc9\xfd\x00\x00\x00\x00\xbd\xfd\x00\x00\x00\x00\xac\xfd\xad\xfd\xd6\xff\xa9\xfd\x00\x00\xb4\xfd\x00\x00\x00\x00\x2b\xfe\xa0\xff\x6c\xfd\x6b\xfd\x99\xff\x70\xfd\x76\xfd\x00\x00\x24\xfe\x92\xff\x97\xfe\xac\xfe\xc1\xfe\x00\x00\xb5\xfe\x4d\xff\x00\x00\x36\xff\x74\xfe\x70\xfe\x6e\xfe\x00\x00\x00\x00\x74\xfe\x29\xff\x35\xff\x34\xff\x33\xff\x32\xff\x31\xff\x30\xff\x2f\xff\x2e\xff\x00\x00\x93\xfe\xca\xfe\x7b\xff\x00\x00\x5c\xff\x07\xff\x5d\xff\x00\x00\x6a\xff\x6b\xff\x69\xff\x83\xfe\x6f\xff\x00\x00\x00\x00\x0c\xff\x79\xff\x00\x00\x00\x00\x00\x00\x00\x00\x25\xfd\x28\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\xff\x25\xff\x80\xff\x17\xff\x7f\xff\x00\x00\x14\xff\x7e\xff\x7d\xff\x00\x00\x00\x00\x00\x00\x46\xff\x09\xfe\x0d\xfe\x00\x00\x0b\xfe\x07\xfe\x00\x00\x9e\xfd\x57\xfe\x96\xfd\x00\x00\x00\x00\x00\x00\xa6\xfe\x9c\xfe\xa2\xfe\x00\x00\xf8\xfe\x00\x00\xc0\xff\xdc\xff\x00\x00\xd7\xff\x8b\xfd\x00\x00\xd7\xff\x5a\xff\x00\x00\x00\x00\x00\x00\xd5\xff\xd0\xff\xf0\xff\x00\x00\x09\xfe\xed\xff\x00\x00\xd0\xff\xce\xff\xcd\xff\xcb\xff\x00\x00\xd1\xff\x00\x00\x00\x00\x00\x00\xe3\xff\xe1\xff\xe0\xff\x58\xff\x8a\xfd\x00\x00\x88\xfd\x00\x00\xa4\xfe\xa0\xfe\x00\x00\x9a\xfe\x00\x00\x00\x00\x9d\xfd\x00\x00\xcf\xfd\x55\xfe\x3f\xff\x3d\xff\x3c\xff\x12\xff\x18\xff\x26\xff\x00\x00\x00\x00\x00\x00\x00\x00\x20\xff\x00\x00\x47\xff\x4a\xff\x4b\xff\x1b\xfd\x00\x00\x1f\xfd\xce\xfe\x23\xfd\x00\x00\x24\xfd\x27\xfd\x2a\xfd\x2b\xfd\x8f\xff\x98\xff\x00\x00\x00\x00\x00\x00\x70\xff\x86\xff\x2f\xfd\x85\xff\x84\xff\x8a\xff\x00\x00\x00\x00\xc7\xfe\xc5\xfe\x87\xff\x2f\xfd\x81\xff\x00\x00\x7f\xfd\x00\x00\x00\x00\x00\x00\x2d\xff\x2c\xff\x2b\xff\x2a\xff\x76\xfe\x2f\xfd\x00\x00\x71\xfe\x6f\xfe\x77\xfe\x00\x00\x00\x00\xbb\xfe\xb9\xfe\x00\x00\xce\xfe\x96\xfe\xac\xfe\x2f\xfd\x8c\xff\x00\x00\xac\xfe\xc1\xfe\x00\x00\x00\x00\x00\x00\xb8\xfd\xb6\xfd\x74\xfe\xa6\xfd\xa4\xfd\x00\x00\xd7\xff\xab\xfd\xc1\xfd\x00\x00\x00\x00\x00\x00\xaf\xfd\xc3\xfd\xc7\xfd\xb4\xff\xd7\xff\x00\x00\x00\x00\x0c\xfd\x0d\xfd\xb2\xff\x00\x00\xbc\xfd\xba\xfd\xbb\xfd\xaa\xfd\xa7\xfd\xa5\xfd\xa8\xfd\x9a\xff\x6f\xfd\x75\xfd\xac\xfe\x89\xff\xab\xfe\xa7\xfe\x00\x00\xd6\xff\xd6\xff\x8b\xff\x00\x00\x00\x00\xb0\xfe\x00\x00\xb7\xfe\xb4\xfe\x00\x00\xdb\xfe\x00\x00\xb5\xfe\x4c\xff\x37\xff\x00\x00\x00\x00\x75\xfe\x82\xff\x00\x00\x00\x00\x00\x00\xd6\xff\xd6\xff\xca\xfe\xcb\xfe\xca\xfe\x7a\xff\xd6\xff\xd6\xff\x6e\xff\x6d\xff\x6c\xff\x8d\xff\x77\xff\x78\xff\x67\xff\x97\xff\x00\x00\x29\xfd\x2f\xfd\x26\xfd\x00\x00\x00\x00\x1c\xfd\x00\x00\x00\x00\x45\xff\x43\xff\x1f\xff\x00\x00\x00\x00\x1c\xff\x1a\xff\x00\x00\x00\x00\x00\x00\xa3\xfd\x00\x00\x00\x00\x99\xfe\x00\x00\xcc\xfe\xc7\xff\x00\x00\xcc\xff\xc2\xff\xc1\xff\xc8\xff\x00\x00\x00\x00\xd1\xff\xd2\xff\x00\x00\x00\x00\xcf\xff\xd3\xff\x00\x00\xc5\xff\xc3\xff\xa2\xff\xa1\xff\xca\xff\xc4\xff\x9b\xfe\x00\x00\x00\x00\x5c\xfe\x00\x00\x00\x00\x00\x00\x1b\xff\x1d\xff\x48\xff\x00\x00\x49\xff\x1d\xfd\x00\x00\x22\xfd\xd6\xff\xd6\xff\x00\x00\x8e\xff\x2f\xfd\x81\xfe\x00\x00\x00\x00\x00\x00\xc4\xfe\xc6\xfe\x91\xfe\x00\x00\x00\x00\x27\xff\x00\x00\x7e\xfd\x6d\xfe\xba\xfe\x00\x00\x00\x00\xb0\xfe\xb8\xfe\x00\x00\x00\x00\xb6\xfe\x00\x00\x00\x00\x00\x00\xa8\xfe\x00\x00\xaa\xfe\x88\xff\x00\x00\xb5\xff\xbe\xff\xb3\xff\x00\x00\xaf\xff\xd0\xff\xb9\xfd\xa9\xfe\xc2\xfe\xc3\xfe\xd6\xff\xbe\xfe\x00\x00\xb3\xfe\x04\xff\x00\x00\x00\x00\xae\xfe\xb2\xfe\xda\xfe\x28\xff\x94\xfe\x95\xfe\x8e\xfe\xd6\xff\x8f\xfe\x8d\xfe\x8b\xfe\x00\x00\x00\x00\xc9\xfe\x84\xfe\x85\xfe\x00\x00\x7b\xfe\x7c\xfe\xd6\xff\x7f\xfe\x7d\xfe\x7e\xfe\x5f\xff\x00\x00\x66\xff\x00\x00\x00\x00\x00\x00\x59\xff\x00\x00\x00\x00\x1e\xfd\x44\xff\x00\x00\x22\xff\x00\x00\x00\x00\x98\xfe\xc9\xff\x00\x00\x00\x00\xee\xff\xc6\xff\x00\x00\x0e\xfe\x00\x00\x20\xfd\x21\xfd\x96\xff\x94\xff\x00\x00\x61\xff\x00\x00\x00\x00\x00\x00\xd7\xff\x82\xfe\x97\xfe\x73\xff\x00\x00\x00\x00\x8c\xfe\x00\x00\x00\x00\x8a\xfe\xd7\xff\x92\xfe\xb1\xfe\x00\x00\x00\x00\x00\x00\xd7\xff\xc0\xfe\x00\x00\xd0\xff\xac\xff\xab\xff\x18\xfd\xa8\xff\x00\x00\x00\x00\xa9\xff\xaa\xff\x00\x00\x00\x00\xd1\xff\xb0\xff\xbf\xfe\xbd\xfe\x00\x00\xad\xfe\xaf\xfe\x90\xfe\x7b\xff\x00\x00\x86\xfe\x76\xff\x88\xfe\x00\x00\x00\x00\xac\xfe\xc1\xfe\x80\xfe\x00\x00\x64\xff\x62\xff\x00\x00\x65\xff\x95\xff\x19\xff\x4c\xfe\x60\xff\x63\xff\x7a\xfe\xac\xfe\x79\xfe\x98\xff\x72\xff\x87\xfe\x00\x00\x00\x00\x4d\xff\x89\xfe\x00\x00\xad\xff\xb1\xff\x00\x00\xa3\xff\xa6\xff\x00\x00\xa7\xff\xa5\xff\x00\x00\x00\x00\x00\x00\x75\xff\x71\xff\x78\xfe\x74\xff\x00\x00\xa4\xff\xbc\xfe"# happyCheck :: HappyAddr happyCheck = HappyA# "\xff\xff\x04\x00\x04\x00\x04\x00\x02\x00\x04\x00\x04\x00\x04\x00\x24\x00\x11\x00\x12\x00\x13\x00\x38\x00\x6f\x00\x2b\x00\x4b\x00\x67\x00\x0d\x00\x0e\x00\x0b\x00\x6f\x00\x83\x00\x0b\x00\x0d\x00\x0e\x00\x0d\x00\x0e\x00\x1f\x00\x17\x00\x0d\x00\x0e\x00\x78\x00\x0d\x00\x0e\x00\xc4\x00\x11\x00\x0d\x00\x0e\x00\x0d\x00\x0e\x00\x1b\x00\x0d\x00\x0e\x00\x53\x00\x54\x00\x40\x00\x0d\x00\x0e\x00\x40\x00\x1b\x00\x40\x00\x21\x00\x22\x00\xc4\x00\x13\x00\x4a\x00\x1b\x00\x40\x00\x4a\x00\x1b\x00\x4a\x00\x1b\x00\x23\x00\x0d\x00\x0e\x00\x3d\x00\xcf\x00\x4a\x00\x80\x00\x1b\x00\x01\x00\x3d\x00\xdd\x00\x0d\x00\x0e\x00\xcf\x00\xcf\x00\x0d\x00\x0e\x00\x1b\x00\x2a\x00\x60\x00\x1b\x00\x1c\x00\x0d\x00\xf7\x00\x0d\x00\x0e\x00\x00\x00\xee\x00\x53\x00\x54\x00\x14\x00\x15\x00\x00\x00\x81\x00\x46\x00\x47\x00\x48\x00\x49\x00\x0a\x00\x22\x00\x0c\x00\xe2\x00\xf7\x00\x24\x00\xf7\x00\x50\x00\x24\x00\x7c\x00\x72\x00\x23\x00\x6b\x00\x0d\x00\x0e\x00\xf7\x00\xf7\x00\xf0\x00\x1e\x00\x4e\x00\x31\x00\x1b\x00\x4e\x00\x16\x00\x1e\x00\x06\x00\x2f\x00\xed\x00\xee\x00\x31\x00\x28\x00\x1d\x00\x15\x00\xde\x00\x3d\x00\x3b\x00\xea\x00\x23\x00\x6d\x00\x3c\x00\x48\x00\x76\x00\x4a\x00\xea\x00\x17\x00\x18\x00\x1b\x00\x24\x00\xed\x00\xee\x00\xed\x00\xee\x00\x47\x00\x48\x00\x49\x00\x8e\x00\x8f\x00\x90\x00\x25\x00\xdb\x00\x27\x00\x3d\x00\x04\x01\x05\x01\x6d\x00\x2c\x00\x2d\x00\x2e\x00\x8c\x00\x04\x01\x05\x01\x95\x00\x33\x00\xe9\x00\xea\x00\xeb\x00\x75\x00\x18\x00\x28\x00\x92\x00\x3b\x00\x95\x00\x76\x00\x95\x00\x3f\x00\x75\x00\x41\x00\x42\x00\x43\x00\xd9\x00\x25\x00\x95\x00\x27\x00\xdd\x00\xea\x00\xeb\x00\x92\x00\x2c\x00\x2d\x00\x2e\x00\x8c\x00\x95\x00\x18\x00\xf7\x00\x33\x00\xea\x00\xea\x00\xeb\x00\x23\x00\xc5\x00\xee\x00\xdb\x00\x3b\x00\x23\x00\xde\x00\x2a\x00\x3f\x00\xd5\x00\x41\x00\x42\x00\x43\x00\xcd\x00\xc5\x00\xd5\x00\xcd\x00\xe9\x00\xea\x00\xeb\x00\xf7\x00\xed\x00\xee\x00\xf7\x00\x05\x01\xf7\x00\x70\x00\xd9\x00\x23\x00\x24\x00\x74\x00\xdd\x00\xf7\x00\xea\x00\xeb\x00\xd9\x00\xf7\x00\xf7\x00\xf7\x00\x00\x00\xf7\x00\xf7\x00\xf7\x00\x03\x01\xea\x00\xeb\x00\xdb\x00\xf7\x00\xee\x00\xde\x00\xf7\x00\xda\x00\xea\x00\xeb\x00\xda\x00\x09\x01\x0b\x01\x0a\x01\x06\x00\x07\x00\xe9\x00\xea\x00\xeb\x00\x96\x00\xed\x00\xee\x00\x1b\x00\xea\x00\x02\x01\x1e\x00\xea\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\x17\x00\xd9\x00\xa4\x00\xa5\x00\xa6\x00\xdd\x00\xd9\x00\xa9\x00\xaa\x00\xab\x00\xdd\x00\x03\x01\x47\x00\x48\x00\x49\x00\xd9\x00\xb2\x00\x23\x00\xea\x00\xeb\x00\x96\x00\x27\x00\xee\x00\xea\x00\xeb\x00\x81\x00\x2c\x00\xee\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xea\x00\xeb\x00\xa4\x00\xa5\x00\xa6\x00\xdb\x00\x4b\x00\xa9\x00\xaa\x00\xab\x00\x02\x01\x48\x00\x49\x00\xd9\x00\xea\x00\xeb\x00\xb2\x00\xdd\x00\xea\x00\xe9\x00\xea\x00\xeb\x00\xd8\x00\xed\x00\xee\x00\xdb\x00\xdc\x00\x4b\x00\xde\x00\x32\x00\xea\x00\xeb\x00\x6f\x00\xfd\x00\xee\x00\xea\x00\x18\x00\x0a\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x05\x01\xdf\x00\x23\x00\x23\x00\xe2\x00\x52\x00\xe4\x00\xf6\x00\x6f\x00\xd8\x00\xf9\x00\xfa\x00\xdb\x00\xdc\x00\x2e\x00\xde\x00\xff\x00\x05\x01\xf0\x00\x25\x00\x23\x00\xf3\x00\xf4\x00\x2f\x00\xea\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x6d\x00\x11\x00\x7f\x00\x80\x00\x77\x00\x78\x00\x25\x00\xf6\x00\x27\x00\x8f\x00\xf9\x00\xfa\x00\x3b\x00\x2c\x00\x2d\x00\x2e\x00\xff\x00\x4b\x00\x04\x01\x05\x01\x33\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x79\x00\xd9\x00\xf8\x00\x3b\x00\xea\x00\xdd\x00\x25\x00\x3f\x00\x27\x00\x41\x00\x42\x00\x43\x00\x06\x00\x07\x00\x09\x00\x2e\x00\x0b\x00\x8a\x00\xea\x00\xeb\x00\x33\x00\xda\x00\xee\x00\xac\x00\xd9\x00\x26\x00\xaf\x00\x28\x00\x3b\x00\x17\x00\x04\x01\x05\x01\x3f\x00\xea\x00\x41\x00\x42\x00\x43\x00\xea\x00\x33\x00\x34\x00\x35\x00\xea\x00\xeb\x00\x26\x00\x7f\x00\x80\x00\x09\x00\x0a\x00\xdb\x00\x09\x00\xf3\x00\xf4\x00\xac\x00\xea\x00\xd9\x00\xaf\x00\x33\x00\x34\x00\x35\x00\x04\x01\x05\x01\xde\x00\xe9\x00\xea\x00\xeb\x00\x56\x00\x57\x00\x58\x00\xf8\x00\xdb\x00\x79\x00\xea\x00\xeb\x00\xf8\x00\xea\x00\x26\x00\xed\x00\xee\x00\x26\x00\x04\x01\x05\x01\xf8\x00\xde\x00\xe9\x00\xea\x00\xeb\x00\xf8\x00\x8a\x00\x33\x00\x34\x00\x35\x00\x33\x00\x34\x00\x35\x00\x96\x00\x66\x00\x67\x00\xed\x00\xee\x00\xee\x00\x04\x01\x05\x01\x9e\x00\x9f\x00\xa0\x00\xa1\x00\x18\x00\xca\x00\xa4\x00\xa5\x00\xa6\x00\xce\x00\xf7\x00\xa9\x00\xaa\x00\xab\x00\x25\x00\x23\x00\x27\x00\x96\x00\x06\x00\x07\x00\xb2\x00\x55\x00\x56\x00\x57\x00\x58\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xd9\x00\x37\x00\xa4\x00\xa5\x00\xa6\x00\xdb\x00\x17\x00\xa9\x00\xaa\x00\xab\x00\x1b\x00\x3f\x00\xdb\x00\x41\x00\x42\x00\x43\x00\xb2\x00\xea\x00\xeb\x00\xe9\x00\xea\x00\xeb\x00\xe7\x00\x18\x00\xea\x00\xeb\x00\xe9\x00\xea\x00\xeb\x00\xd8\x00\xef\x00\xf0\x00\xdb\x00\xdc\x00\x23\x00\xde\x00\x5f\x00\x81\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x29\x00\x2a\x00\xd8\x00\x18\x00\x18\x00\xdb\x00\xdc\x00\xf6\x00\xde\x00\x79\x00\xf9\x00\xfa\x00\xf7\x00\xd9\x00\x23\x00\x23\x00\xff\x00\xdd\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x25\x00\x8a\x00\x27\x00\xd7\x00\x08\x01\xea\x00\xeb\x00\xf6\x00\xdc\x00\xee\x00\xf9\x00\xfa\x00\x8d\x00\x8e\x00\x1d\x00\x90\x00\xff\x00\xea\x00\xeb\x00\xea\x00\x23\x00\x96\x00\xed\x00\xee\x00\xec\x00\x3e\x00\x3f\x00\x06\x00\x41\x00\x42\x00\x43\x00\xa0\x00\x25\x00\xa3\x00\x27\x00\xa4\x00\xfd\x00\xa6\x00\x0d\x00\x0e\x00\xa9\x00\xaa\x00\xab\x00\x01\x01\x17\x00\x04\x01\x05\x01\xd9\x00\xb2\x00\xb2\x00\xb4\x00\xdd\x00\xd9\x00\xf8\x00\x55\x00\x56\x00\x57\x00\x58\x00\x3f\x00\x27\x00\x41\x00\x42\x00\x43\x00\x18\x00\xea\x00\xeb\x00\x2e\x00\x1b\x00\xee\x00\xea\x00\xeb\x00\xa3\x00\x5a\x00\x5b\x00\xea\x00\xeb\x00\xea\x00\xeb\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xb2\x00\xd8\x00\xb4\x00\x07\x00\xdb\x00\xdc\x00\xfc\x00\xde\x00\xfc\x00\x0d\x00\x0e\x00\x1d\x00\xea\x00\x06\x00\x07\x00\xed\x00\xee\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x97\x00\x47\x00\x48\x00\x96\x00\x4a\x00\x4b\x00\x17\x00\xf6\x00\x1b\x00\x4f\x00\xf9\x00\xfa\x00\x23\x00\xa0\x00\x04\x01\x05\x01\xff\x00\xa4\x00\x29\x00\xa6\x00\x06\x00\x07\x00\xa9\x00\xaa\x00\xab\x00\x2c\x00\x18\x00\x8e\x00\x18\x00\x90\x00\xca\x00\xb2\x00\x25\x00\x1a\x00\x27\x00\x96\x00\xb2\x00\x17\x00\xb4\x00\x23\x00\x23\x00\x1a\x00\x23\x00\x29\x00\xea\x00\xa0\x00\x29\x00\xed\x00\xee\x00\xa4\x00\x23\x00\xa6\x00\x27\x00\x75\x00\xa9\x00\xaa\x00\xab\x00\x3e\x00\x3f\x00\x2e\x00\x41\x00\x42\x00\x43\x00\xb2\x00\x81\x00\x57\x00\x58\x00\xd6\x00\xd7\x00\xd8\x00\x04\x01\x05\x01\xdb\x00\xdc\x00\x23\x00\xde\x00\xd9\x00\xf7\x00\x27\x00\xac\x00\xdd\x00\x20\x00\xaf\x00\x2c\x00\x23\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x70\x00\xea\x00\xeb\x00\x73\x00\x74\x00\xee\x00\xdd\x00\xf6\x00\x81\x00\xd8\x00\xf9\x00\xfa\x00\xdb\x00\xdc\x00\xea\x00\xde\x00\xff\x00\xed\x00\xee\x00\xea\x00\xeb\x00\x58\x00\x59\x00\xee\x00\x1a\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x25\x00\x23\x00\x27\x00\xdb\x00\xfb\x00\x1a\x00\x1a\x00\xf6\x00\x04\x01\x05\x01\xf9\x00\xfa\x00\x39\x00\x3a\x00\x23\x00\x23\x00\xff\x00\xe9\x00\xea\x00\xeb\x00\x6e\x00\x96\x00\xac\x00\x1a\x00\xae\x00\xf7\x00\x3f\x00\xac\x00\x41\x00\x42\x00\x43\x00\xa0\x00\x23\x00\x03\x00\x35\x00\xa4\x00\x01\x00\xa6\x00\x08\x00\x09\x00\xa9\x00\xaa\x00\xab\x00\x08\x00\x09\x00\xf7\x00\x5b\x00\x2a\x00\x5d\x00\xb2\x00\x2d\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x6e\x00\x69\x00\x6a\x00\x6b\x00\x31\x00\xdf\x00\x01\x00\x34\x00\xe2\x00\xac\x00\xe4\x00\xae\x00\xd9\x00\x08\x00\x09\x00\xfe\x00\xdd\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\xf0\x00\x0d\x00\x0e\x00\xf3\x00\xf4\x00\xe7\x00\xd8\x00\xea\x00\xeb\x00\xdb\x00\xdc\x00\xee\x00\xde\x00\xef\x00\xf0\x00\xf1\x00\x01\x01\xf3\x00\xf4\x00\xf5\x00\x0d\x00\x0e\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x39\x00\x3a\x00\xf0\x00\x96\x00\xb3\x00\xf3\x00\xf4\x00\xf6\x00\xd9\x00\x11\x00\xf9\x00\xfa\x00\xdd\x00\xa0\x00\x58\x00\x59\x00\xff\x00\xa4\x00\xac\x00\xa6\x00\xae\x00\xa2\x00\xa9\x00\xaa\x00\xab\x00\xea\x00\xeb\x00\xb3\x00\x1b\x00\xee\x00\x1d\x00\xb2\x00\xca\x00\x1b\x00\x5b\x00\x1d\x00\x5d\x00\xdb\x00\x50\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xdb\x00\x69\x00\x6a\x00\x6b\x00\xe9\x00\xea\x00\xeb\x00\x52\x00\xde\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\xe9\x00\xea\x00\xeb\x00\x4f\x00\xdc\x00\xe9\x00\xea\x00\xeb\x00\xd8\x00\xed\x00\xee\x00\xdb\x00\xdc\x00\x3a\x00\xde\x00\x1e\x00\x1f\x00\x20\x00\xea\x00\x98\x00\xec\x00\xed\x00\xee\x00\x30\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x03\x01\x3a\x00\x70\x00\x71\x00\xe9\x00\xea\x00\xeb\x00\xf6\x00\xed\x00\xee\x00\xf9\x00\xfa\x00\x34\x00\x04\x01\x05\x01\x5b\x00\xff\x00\x5d\x00\xf3\x00\xf4\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x91\x00\x69\x00\x6a\x00\x6b\x00\x2f\x00\x2a\x00\x5b\x00\x2c\x00\x5d\x00\xf3\x00\xf4\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x8b\x00\x69\x00\x6a\x00\x6b\x00\xd9\x00\xe9\x00\xea\x00\xeb\x00\xdd\x00\xed\x00\xee\x00\x4d\x00\x3c\x00\xe0\x00\x97\x00\x2c\x00\xe3\x00\x2e\x00\xe5\x00\x9b\x00\xe7\x00\xea\x00\xeb\x00\x97\x00\xdc\x00\xee\x00\x7b\x00\x7c\x00\xef\x00\xf0\x00\xf1\x00\x75\x00\xf3\x00\xf4\x00\xf5\x00\xea\x00\xeb\x00\x81\x00\xea\x00\xee\x00\xec\x00\xed\x00\xee\x00\x5b\x00\x5c\x00\x5d\x00\x29\x00\x2a\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x44\x00\x45\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\xe7\x00\x01\x01\x04\x01\x05\x01\x53\x00\x54\x00\x55\x00\x56\x00\xef\x00\xf0\x00\xf1\x00\xee\x00\xf3\x00\xf4\x00\xf5\x00\x1c\x00\x2a\x00\x5b\x00\x2c\x00\x5d\x00\xea\x00\xeb\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x5a\x00\x5b\x00\x6a\x00\x6b\x00\x4c\x00\xdc\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xb5\x00\xb6\x00\xb7\x00\x4c\x00\xde\x00\xea\x00\x72\x00\xec\x00\xed\x00\xee\x00\xdc\x00\x87\x00\x88\x00\xe7\x00\x44\x00\x45\x00\xb5\x00\xb6\x00\xb7\x00\xed\x00\xee\x00\xef\x00\xf0\x00\x0a\x00\xea\x00\x0c\x00\xec\x00\xed\x00\xee\x00\x0d\x00\x0e\x00\x04\x01\x05\x01\x7a\x00\x7b\x00\x7c\x00\x28\x00\x5b\x00\x2a\x00\x5d\x00\xf8\x00\x03\x01\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x04\x01\x05\x01\x6a\x00\x6b\x00\xf1\x00\xf0\x00\xf3\x00\xf4\x00\xf5\x00\x2c\x00\x3b\x00\x2e\x00\x44\x00\x45\x00\x0d\x00\x0e\x00\xdc\x00\x42\x00\x43\x00\xc8\x00\xc9\x00\xca\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x99\x00\x9a\x00\x9b\x00\xea\x00\x36\x00\xec\x00\xed\x00\xee\x00\x5b\x00\x28\x00\x5d\x00\x2a\x00\x51\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xde\x00\x03\x00\x6a\x00\x6b\x00\xdc\x00\x28\x00\x01\x00\x2a\x00\x04\x01\x05\x01\x0a\x00\xe9\x00\xea\x00\xeb\x00\xb8\x00\xed\x00\xee\x00\x28\x00\xea\x00\x2a\x00\xec\x00\xed\x00\xee\x00\x06\x00\x07\x00\x0d\x00\x0e\x00\x0a\x00\x17\x00\x0c\x00\xf8\x00\x28\x00\xea\x00\x2a\x00\xf8\x00\xed\x00\xee\x00\x03\x01\x17\x00\x18\x00\x17\x00\x99\x00\x9a\x00\x9b\x00\x04\x01\x05\x01\xd1\x00\x28\x00\x1f\x00\x2a\x00\x93\x00\x94\x00\x95\x00\x96\x00\x3b\x00\x17\x00\x18\x00\x28\x00\x04\x01\x05\x01\xf8\x00\x42\x00\x43\x00\xa0\x00\xde\x00\x0f\x00\x10\x00\xa4\x00\xdc\x00\xa6\x00\xef\x00\xf0\x00\xa9\x00\xaa\x00\xab\x00\xe9\x00\xea\x00\xeb\x00\x51\x00\xed\x00\xee\x00\xb2\x00\xea\x00\xf8\x00\xec\x00\xed\x00\xee\x00\x52\x00\x41\x00\x42\x00\x43\x00\x51\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x03\x01\xb5\x00\xb6\x00\xb7\x00\xd3\x00\xd4\x00\x51\x00\x04\x01\x05\x01\x0d\x00\x0e\x00\x6b\x00\xdb\x00\x51\x00\x28\x00\xdc\x00\x2a\x00\x36\x00\xd8\x00\x0d\x00\x0e\x00\xdb\x00\xdc\x00\x28\x00\xde\x00\x2a\x00\xe9\x00\xea\x00\xeb\x00\xea\x00\x7e\x00\xec\x00\xed\x00\xee\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x26\x00\x94\x00\x95\x00\x96\x00\x0c\x00\x0d\x00\x0e\x00\xf6\x00\x0c\x00\x0d\x00\x0e\x00\x0d\x00\x0e\x00\xa0\x00\x04\x01\x05\x01\x28\x00\xa4\x00\x2a\x00\xa6\x00\xd3\x00\xd4\x00\xa9\x00\xaa\x00\xab\x00\xf8\x00\x5a\x00\x5b\x00\xdb\x00\x0d\x00\x0e\x00\xb2\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x1b\x00\xa0\x00\xe9\x00\xea\x00\xeb\x00\xa4\x00\x28\x00\xa6\x00\x2a\x00\xf8\x00\xa9\x00\xaa\x00\xab\x00\xee\x00\x5a\x00\x5b\x00\x92\x00\x93\x00\x94\x00\xb2\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x28\x00\xd8\x00\x2a\x00\xee\x00\xdb\x00\xdc\x00\x28\x00\xde\x00\x2a\x00\x01\x01\x09\x00\x0a\x00\x0b\x00\x0c\x00\xb5\x00\xb6\x00\xb7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x8e\x00\x8f\x00\x90\x00\xac\x00\x28\x00\xd8\x00\x2a\x00\xf6\x00\xdb\x00\xdc\x00\x1a\x00\xde\x00\x23\x00\xb8\x00\x25\x00\x26\x00\xa2\x00\x28\x00\x29\x00\x0d\x00\x0e\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x33\x00\x34\x00\x35\x00\x5b\x00\x28\x00\x5d\x00\x2a\x00\xf6\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xb6\x00\xb7\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\xf8\x00\x09\x00\x0a\x00\x4f\x00\x50\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x5b\x00\x01\x01\x5d\x00\x05\x00\x06\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x0d\x00\x0e\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\xea\x00\x25\x00\x26\x00\xed\x00\xee\x00\x25\x00\x26\x00\x6e\x00\x28\x00\x29\x00\x28\x00\x28\x00\x2a\x00\x2a\x00\xb3\x00\x33\x00\x34\x00\x35\x00\x64\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x04\x01\x05\x01\xea\x00\x29\x00\x2a\x00\xed\x00\xee\x00\x5b\x00\xac\x00\x5d\x00\x0d\x00\x0e\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x0d\x00\x0e\x00\x6a\x00\x6b\x00\x28\x00\x6d\x00\x2a\x00\x19\x00\x04\x01\x05\x01\x28\x00\x28\x00\x2a\x00\x2a\x00\xf7\x00\x28\x00\xac\x00\x2a\x00\x18\x00\x5b\x00\x09\x00\x5d\x00\x0d\x00\x0e\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x0d\x00\x0e\x00\x6a\x00\x6b\x00\xdc\x00\x6d\x00\x0d\x00\x0e\x00\x09\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x2c\x00\xe7\x00\x08\x00\x09\x00\xea\x00\x2e\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\x82\x00\xf3\x00\xf4\x00\xf5\x00\x05\x00\x06\x00\xdc\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x29\x00\x2a\x00\xe7\x00\x04\x01\x05\x01\xea\x00\x18\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\x65\x00\xf3\x00\xf4\x00\xf5\x00\x2c\x00\x5b\x00\x7d\x00\x5d\x00\x29\x00\x2a\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x04\x01\x05\x01\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x4c\x00\x4d\x00\x5b\x00\x65\x00\x5d\x00\x29\x00\xdc\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x06\x00\x07\x00\xe7\x00\x6b\x00\x18\x00\xea\x00\xde\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\x04\x00\x05\x00\x29\x00\x2a\x00\xe7\x00\xe9\x00\xea\x00\xeb\x00\x17\x00\xed\x00\xee\x00\xdc\x00\xef\x00\xf0\x00\xf1\x00\x95\x00\xf3\x00\xf4\x00\xf5\x00\x04\x01\x05\x01\x29\x00\x2a\x00\x06\x00\x07\x00\xea\x00\x23\x00\xec\x00\xed\x00\xee\x00\x5b\x00\x03\x01\x5d\x00\x29\x00\x2a\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x8a\x00\x8b\x00\x6a\x00\x6b\x00\x18\x00\x6d\x00\x4c\x00\x4d\x00\x04\x01\x05\x01\x06\x00\x07\x00\x1b\x00\x2a\x00\x2a\x00\x5b\x00\x18\x00\x5d\x00\x1d\x00\x4c\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x4c\x00\x69\x00\x6a\x00\x6b\x00\x68\x00\x1c\x00\x29\x00\x18\x00\x5b\x00\x17\x00\x5d\x00\x1d\x00\xdc\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x98\x00\x69\x00\x6a\x00\x6b\x00\x23\x00\xea\x00\x06\x00\xec\x00\xed\x00\xee\x00\x18\x00\x1d\x00\xdc\x00\x1d\x00\x2e\x00\x1c\x00\x29\x00\x0d\x00\x18\x00\xac\x00\x18\x00\x28\x00\x49\x00\x23\x00\x69\x00\x2a\x00\xea\x00\x26\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\x95\x00\x5d\x00\x23\x00\x1c\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x95\x00\x69\x00\x6a\x00\x6b\x00\x18\x00\x7d\x00\x04\x01\x05\x01\x5b\x00\x29\x00\x5d\x00\x1c\x00\x1c\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xdc\x00\x69\x00\x6a\x00\x6b\x00\x65\x00\xe0\x00\x6d\x00\x7c\x00\xe3\x00\x23\x00\xe5\x00\x1b\x00\xe7\x00\x5f\x00\xea\x00\x2c\x00\xec\x00\xed\x00\xee\x00\x25\x00\xef\x00\xf0\x00\xf1\x00\x25\x00\xf3\x00\xf4\x00\xf5\x00\x65\x00\xdc\x00\x7d\x00\x7d\x00\x1c\x00\x65\x00\x2c\x00\x1c\x00\x29\x00\xdb\x00\x1c\x00\x1c\x00\xde\x00\x04\x01\x05\x01\xea\x00\x23\x00\xec\x00\xed\x00\xee\x00\x1d\x00\x2c\x00\xdc\x00\xe9\x00\xea\x00\xeb\x00\x7d\x00\xed\x00\xee\x00\x23\x00\x20\x00\x67\x00\x18\x00\x0d\x00\x2a\x00\x17\x00\xea\x00\x23\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\x7d\x00\x5d\x00\x18\x00\x95\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x1b\x00\x69\x00\x6a\x00\x6b\x00\x95\x00\x18\x00\x04\x01\x05\x01\x5b\x00\x23\x00\x5d\x00\x20\x00\xdc\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x33\x00\x69\x00\x6a\x00\x6b\x00\x1b\x00\xea\x00\xe7\x00\xec\x00\xed\x00\xee\x00\x18\x00\x10\x00\xdc\x00\x69\x00\xef\x00\xf0\x00\xf1\x00\x29\x00\xf3\x00\xf4\x00\xf5\x00\x0d\x00\x20\x00\x29\x00\x23\x00\x95\x00\xea\x00\x2a\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\x7d\x00\x5d\x00\x95\x00\x95\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x18\x00\x69\x00\x6a\x00\x6b\x00\x29\x00\x7d\x00\x04\x01\x05\x01\x5b\x00\x7d\x00\x5d\x00\x2c\x00\x7d\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x69\x00\x69\x00\x6a\x00\x6b\x00\x7d\x00\x65\x00\x23\x00\x6e\x00\x5b\x00\x60\x00\x5d\x00\x18\x00\x18\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x06\x00\x69\x00\x6a\x00\x6b\x00\x10\x00\x2c\x00\x23\x00\xdc\x00\x2c\x00\x2c\x00\x1d\x00\x1c\x00\x43\x00\x2d\x00\x1b\x00\xe0\x00\x2c\x00\x95\x00\xe3\x00\x2a\x00\xe5\x00\xea\x00\xe7\x00\xec\x00\xed\x00\xee\x00\x95\x00\x95\x00\xdc\x00\x0a\x00\xef\x00\xf0\x00\xf1\x00\x1f\x00\xf3\x00\xf4\x00\xf5\x00\x10\x00\x23\x00\x95\x00\x23\x00\x2c\x00\xea\x00\x2a\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\x0d\x00\x5d\x00\x95\x00\x4e\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x18\x00\x69\x00\x6a\x00\x6b\x00\x23\x00\x29\x00\x04\x01\x05\x01\x5b\x00\x1b\x00\x5d\x00\x61\x00\xdc\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x2a\x00\x69\x00\x6a\x00\x6b\x00\x10\x00\xea\x00\x10\x00\xec\x00\xed\x00\xee\x00\x17\x00\x48\x00\xdc\x00\x4e\x00\x1d\x00\x1d\x00\x25\x00\x28\x00\x1b\x00\x7a\x00\xe0\x00\x1d\x00\x1d\x00\xe3\x00\x1c\x00\xe5\x00\xea\x00\xe7\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\xdc\x00\x18\x00\xef\x00\xf0\x00\xf1\x00\x49\x00\xf3\x00\xf4\x00\xf5\x00\x10\x00\x1f\x00\x72\x00\x17\x00\x68\x00\xea\x00\x0d\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\x25\x00\x5d\x00\x2a\x00\x23\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x1d\x00\x69\x00\x6a\x00\x6b\x00\x25\x00\x7e\x00\x04\x01\x05\x01\x5b\x00\x25\x00\x5d\x00\x23\x00\x06\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x75\x00\x69\x00\x6a\x00\x6b\x00\x53\x00\x95\x00\x95\x00\xdc\x00\x18\x00\x23\x00\x18\x00\x18\x00\x18\x00\x18\x00\x20\x00\xe0\x00\x23\x00\x22\x00\xe3\x00\x2e\x00\xe5\x00\xea\x00\xe7\x00\xec\x00\xed\x00\xee\x00\x1c\x00\x18\x00\xdc\x00\x43\x00\xef\x00\xf0\x00\xf1\x00\x43\x00\xf3\x00\xf4\x00\xf5\x00\x2c\x00\x43\x00\x20\x00\x1b\x00\x28\x00\xea\x00\x4e\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\x77\x00\x5d\x00\x6e\x00\x0d\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x2e\x00\x69\x00\x6a\x00\x6b\x00\x95\x00\x95\x00\x04\x01\x05\x01\x5b\x00\x18\x00\x5d\x00\x18\x00\x18\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x18\x00\x69\x00\x6a\x00\x6b\x00\x18\x00\x23\x00\x20\x00\x20\x00\x5b\x00\x18\x00\x5d\x00\x22\x00\xdc\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x1d\x00\x69\x00\x6a\x00\x6b\x00\x75\x00\xea\x00\x1c\x00\xec\x00\xed\x00\xee\x00\x6e\x00\x1c\x00\xdc\x00\x96\x00\x96\x00\x95\x00\x29\x00\x95\x00\x10\x00\x10\x00\x10\x00\x96\x00\x1c\x00\x1c\x00\x1c\x00\x2d\x00\xea\x00\x1c\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\x2d\x00\x5d\x00\x96\x00\x85\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x75\x00\x00\x00\x6a\x00\x6b\x00\x00\x00\x6d\x00\x04\x01\x05\x01\x5b\x00\x96\x00\x5d\x00\x75\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x75\x00\x69\x00\x6a\x00\x6b\x00\x6d\x00\x1c\x00\xff\xff\xdc\x00\x5b\x00\xff\xff\x75\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xdc\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\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\xdc\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\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\xff\xff\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xdc\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xdc\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\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xea\x00\x6a\x00\x6b\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\x6a\x00\x6b\x00\xff\xff\xff\xff\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\x6a\x00\x6b\x00\xff\xff\xff\xff\xff\xff\xdc\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xdc\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\xea\x00\x00\x01\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\xff\xff\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\x00\x01\x6a\x00\x6b\x00\xff\xff\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xdc\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\x6a\x00\x6b\x00\xff\xff\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xdc\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\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\xdc\x00\xff\xff\xff\xff\x5e\x00\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xea\x00\x6a\x00\x6b\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\x6a\x00\x6b\x00\xff\xff\xff\xff\x04\x01\x05\x01\xdc\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\xdc\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\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\x6a\x00\x6b\x00\xff\xff\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\x6a\x00\x6b\x00\xff\xff\xea\x00\xff\xff\xff\xff\xed\x00\xee\x00\xff\xff\xff\xff\xdc\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\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\xdc\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\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xea\x00\x6a\x00\x6b\x00\xed\x00\xee\x00\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\x6a\x00\x6b\x00\xff\xff\xff\xff\x04\x01\x05\x01\xdc\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\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\xdc\x00\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\x04\x01\x05\x01\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\x5b\x00\xff\xff\x5d\x00\x04\x01\x05\x01\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xdc\x00\xff\xff\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\x5b\x00\xdc\x00\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xff\xff\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x04\x01\x05\x01\xdc\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xdc\x00\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\xff\xff\xea\x00\xdc\x00\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xdc\x00\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x04\x01\x05\x01\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x04\x01\x05\x01\xff\xff\xea\x00\xff\xff\xff\xff\xed\x00\xee\x00\xff\xff\xff\xff\xdc\x00\xff\xff\xff\xff\x04\x01\x05\x01\xff\xff\xff\xff\xff\xff\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\xff\xff\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x04\x01\x05\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xdc\x00\xff\xff\xff\xff\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\xff\xff\xff\xff\xff\xff\xff\xff\x04\x01\x05\x01\xea\x00\xff\xff\xec\x00\xed\x00\xee\x00\x5e\x00\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xea\x00\xff\xff\x6b\x00\xed\x00\xee\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x04\x01\x05\x01\xe3\x00\xff\xff\xff\xff\xff\xff\xe7\x00\xff\xff\xff\xff\xea\x00\x7d\x00\x7e\x00\xed\x00\xee\x00\xef\x00\xf0\x00\x04\x01\x05\x01\xff\xff\x5e\x00\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\x04\x01\x05\x01\x06\x01\x07\x01\xe7\x00\xff\xff\xe9\x00\xea\x00\xeb\x00\xff\xff\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\x7d\x00\x7e\x00\xea\x00\xde\x00\xff\xff\xed\x00\xee\x00\xff\xff\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xe9\x00\xea\x00\xeb\x00\x03\x01\xed\x00\xee\x00\xb2\x00\xff\xff\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\x04\x01\x05\x01\xff\xff\xff\xff\xff\xff\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x03\x01\xff\xff\xff\xff\xff\xff\xff\xff\xe9\x00\xea\x00\xeb\x00\xff\xff\xed\x00\xee\x00\x25\x00\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\xde\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\x33\x00\x34\x00\x35\x00\xff\xff\xea\x00\xff\xff\x03\x01\xed\x00\xee\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x04\x01\x05\x01\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xea\x00\xff\xff\xff\xff\xed\x00\xee\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\x19\x00\xff\xff\x1b\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\x04\x01\x05\x01\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\x6d\x00\xff\xff\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\xff\xff\x76\x00\xff\xff\x78\x00\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x90\x00\x91\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\x18\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x26\x00\x19\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\x6d\x00\xff\xff\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\xff\xff\x76\x00\xff\xff\x78\x00\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x90\x00\x91\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\xff\xff\x76\x00\xff\xff\x78\x00\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x90\x00\x91\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\x1b\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\x63\x00\x64\x00\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\x6f\x00\x70\x00\x71\x00\xff\xff\xff\xff\x74\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x91\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\x63\x00\x64\x00\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\x6f\x00\x70\x00\x71\x00\xff\xff\xff\xff\x74\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x91\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\x19\x00\xff\xff\x1b\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\x6f\x00\x70\x00\x71\x00\xff\xff\xff\xff\x74\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x91\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\x19\x00\xff\xff\x1b\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\x63\x00\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x74\x00\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x91\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\x6f\x00\x70\x00\x71\x00\xff\xff\xff\xff\x74\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x91\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\x63\x00\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x74\x00\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x91\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\xff\xff\x74\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\x91\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\x24\x00\xff\xff\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2e\x00\xff\xff\xff\xff\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xe9\x00\xea\x00\xeb\x00\xff\xff\xed\x00\xee\x00\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xde\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\xe9\x00\xea\x00\xeb\x00\x03\x01\xed\x00\xee\x00\x01\x00\xff\xff\x69\x00\xff\xff\x6b\x00\x06\x00\x07\x00\xff\xff\x09\x00\x0a\x00\xff\xff\x0c\x00\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\x03\x01\xff\xff\x17\x00\x7e\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\x25\x00\x8c\x00\x8d\x00\x28\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\x2e\x00\xff\xff\xff\xff\x31\x00\x32\x00\x33\x00\x34\x00\xe9\x00\xea\x00\xeb\x00\xff\xff\xed\x00\xee\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x03\x01\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\x09\x00\x0a\x00\x6b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\xff\xff\x28\x00\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\x2e\x00\xff\xff\xff\xff\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\x0a\x00\x6b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\x28\x00\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\x1c\x00\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\x68\x00\xff\xff\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\x72\x00\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\x72\x00\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\x85\x00\x86\x00\x87\x00\x88\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xe9\x00\xea\x00\xeb\x00\xff\xff\xed\x00\xee\x00\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\x03\x01\x06\x00\x07\x00\xff\xff\x69\x00\x0a\x00\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\x32\x00\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xde\x00\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe9\x00\xea\x00\xeb\x00\xff\xff\xed\x00\xee\x00\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x03\x01\xff\xff\x68\x00\xff\xff\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x72\x00\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0d\x00\x7e\x00\x7f\x00\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\x1f\x00\xde\x00\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe9\x00\xea\x00\xeb\x00\xff\xff\xed\x00\xee\x00\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\x03\x01\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\x69\x00\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\xff\xff\x0a\x00\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x6b\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\xff\xff\x19\x00\x1a\x00\x7e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\x26\x00\xff\xff\x28\x00\x8c\x00\x8d\x00\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\x89\x00\x01\x00\x02\x00\x03\x00\x04\x00\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\x89\x00\x01\x00\x02\x00\x03\x00\x04\x00\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\x89\x00\x01\x00\x02\x00\x03\x00\x04\x00\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\xff\xff\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\x89\x00\x01\x00\x02\x00\x03\x00\x04\x00\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\xff\xff\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\x89\x00\x01\x00\x02\x00\x03\x00\x04\x00\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\x89\x00\x01\x00\x02\x00\x03\x00\x04\x00\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\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\x24\x00\x25\x00\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\x89\x00\x01\x00\x02\x00\x03\x00\x04\x00\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\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\x25\x00\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\x1b\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\x79\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\x7a\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\x1b\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\x7a\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\x79\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\x1c\x00\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x74\x00\xff\xff\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\x03\x00\x73\x00\x74\x00\x06\x00\x07\x00\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\x87\x00\x88\x00\x89\x00\xff\xff\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\x23\x00\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\x03\x00\xff\xff\xff\xff\x06\x00\x07\x00\x23\x00\xff\xff\x25\x00\x26\x00\xff\xff\x28\x00\x29\x00\x2a\x00\x23\x00\x2c\x00\x25\x00\x26\x00\xff\xff\x28\x00\x29\x00\x17\x00\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x33\x00\x34\x00\x35\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x75\x00\x03\x00\xff\xff\xff\xff\x06\x00\x07\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\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\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\xff\xff\xff\xff\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\x75\x00\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\xff\xff\x23\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\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\xff\xff\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\xff\xff\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\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\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x80\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x66\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x74\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2e\x00\xff\xff\x30\x00\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\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\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\xff\xff\x24\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\xff\xff\x44\x00\x45\x00\x46\x00\xff\xff\x48\x00\xff\xff\x4a\x00\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\x01\x00\x6b\x00\x03\x00\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\xff\xff\x0a\x00\xff\xff\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x17\x00\x18\x00\xff\xff\xff\xff\x01\x00\xff\xff\x03\x00\xff\xff\x1f\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\xff\xff\xff\xff\x35\x00\x01\x00\xff\xff\xff\xff\x1f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\x2e\x00\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\xff\xff\x35\x00\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\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\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\x68\x00\x69\x00\x01\x00\x6b\x00\x03\x00\x52\x00\xff\xff\x06\x00\x07\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x17\x00\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\x6b\x00\xff\xff\x1f\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\x7e\x00\x17\x00\xff\xff\xff\xff\xff\xff\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x26\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\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\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\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\x68\x00\x69\x00\x01\x00\x6b\x00\x03\x00\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x17\x00\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\x18\x00\xff\xff\x1f\x00\x06\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x23\x00\xff\xff\xff\xff\x26\x00\xff\xff\x28\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\x2e\x00\xff\xff\x35\x00\xff\xff\xff\xff\x33\x00\x34\x00\x35\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\x03\x00\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\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\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x68\x00\x69\x00\x06\x00\x6b\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\xff\xff\x17\x00\x18\x00\xff\xff\x7e\x00\x7f\x00\xff\xff\x01\x00\x68\x00\x69\x00\xff\xff\x6b\x00\x06\x00\xff\xff\xff\xff\xff\xff\xff\xff\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\x7e\x00\x7f\x00\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\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\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\x01\x00\x6b\x00\x03\x00\xff\xff\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\xff\xff\xff\xff\x7e\x00\x7f\x00\x17\x00\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\x1d\x00\x6b\x00\x01\x00\xff\xff\x03\x00\xff\xff\xff\xff\x06\x00\x07\x00\xff\xff\x27\x00\x75\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7b\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\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\x17\x00\xff\xff\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\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\x01\x00\xff\xff\x03\x00\xff\xff\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\x7e\x00\x7f\x00\xff\xff\xff\xff\x17\x00\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\x1d\x00\x6b\x00\x01\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\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\x17\x00\x68\x00\x69\x00\xff\xff\x6b\x00\x01\x00\xff\xff\x03\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x26\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\x17\x00\xff\xff\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\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\x01\x00\x6b\x00\xff\xff\xff\xff\xff\xff\x06\x00\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x7e\x00\x7f\x00\x17\x00\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\x03\x00\xff\xff\xff\xff\x6b\x00\xff\xff\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\xff\xff\x17\x00\xff\xff\x7e\x00\xff\xff\x01\x00\xff\xff\xff\xff\x68\x00\x69\x00\x06\x00\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\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\x03\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\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\x17\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\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\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\x1c\x00\x68\x00\x69\x00\x01\x00\x6b\x00\x03\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x29\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x17\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\x01\x00\x6b\x00\xff\xff\xff\xff\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\xff\xff\xff\xff\x7e\x00\x7f\x00\x17\x00\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\x01\x00\x6b\x00\xff\xff\xff\xff\xff\xff\x06\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\x7e\x00\x7f\x00\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x68\x00\x69\x00\xff\xff\x6b\x00\x06\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\x17\x00\x7e\x00\x7f\x00\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\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\x17\x00\xff\xff\x7e\x00\x7f\x00\xff\xff\x01\x00\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\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\x17\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\xff\xff\x7e\x00\x7f\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\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\x17\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\xff\xff\xff\xff\x68\x00\x69\x00\x06\x00\x6b\x00\xff\xff\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\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\x01\x00\xff\xff\xff\xff\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\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\xff\xff\x7e\x00\x7f\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\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\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\xff\xff\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\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\x01\x00\xff\xff\xff\xff\x7e\x00\x7f\x00\x06\x00\xff\xff\x08\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\x7f\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\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\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\xff\xff\xff\xff\xff\xff\xff\xff\x17\x00\xff\xff\x7e\x00\x7f\x00\xff\xff\xff\xff\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\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\x07\x00\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x01\x00\x17\x00\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\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\x17\x00\xff\xff\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\x7e\x00\x06\x00\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\x26\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\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\x6b\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\x17\x00\xff\xff\x2e\x00\xff\xff\x01\x00\xff\xff\xff\xff\xff\xff\x7e\x00\xff\xff\x6b\x00\x52\x00\x53\x00\x54\x00\x55\x00\x26\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x01\x00\x17\x00\xff\xff\xff\xff\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x01\x00\xff\xff\xff\xff\x7e\x00\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\x6b\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x01\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\xff\xff\x6b\x00\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\x6b\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\xff\xff\x6b\x00\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\xff\xff\xff\xff\x7e\x00\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\x55\x00\x6b\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\xff\xff\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\x7e\x00\xff\xff\x6b\x00\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xd8\x00\xc2\x00\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xcb\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xff\xff\xc2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xcb\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbe\x00\xbf\x00\xc0\x00\xff\xff\xc2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xcb\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xbf\x00\xc0\x00\xff\xff\xc2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xcb\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xc1\x00\xc2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xcb\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xc1\x00\xc2\x00\xff\xff\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xcb\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xb2\x00\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xff\xff\xff\xff\xcb\x00\xff\xff\xff\xff\xf6\x00\xff\xff\xd0\x00\xff\xff\xd2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xcb\x00\xff\xff\xa9\x00\xaa\x00\xab\x00\xd0\x00\xff\xff\xd2\x00\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xc1\x00\xc2\x00\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xcb\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xf6\x00\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xb2\x00\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xb2\x00\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xff\xff\xff\xff\xcb\x00\xff\xff\xff\xff\xf6\x00\xff\xff\xd0\x00\xff\xff\xd2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xcb\x00\xff\xff\xff\xff\xff\xff\xff\xff\xd0\x00\xff\xff\xd2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xc2\x00\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xcb\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xcb\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xcc\x00\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xf6\x00\xf7\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xff\xff\xff\xff\xff\xff\xb1\x00\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\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\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbb\x00\xbc\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xe1\x00\xff\xff\xe3\x00\xff\xff\xff\xff\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xff\xff\xf2\x00\xff\xff\xf4\x00\xf5\x00\xf6\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xc6\x00\xc7\x00\xff\xff\xff\xff\xff\xff\xcb\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xc7\x00\xff\xff\xb2\x00\xff\xff\xcb\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xcb\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb0\x00\xff\xff\xb2\x00\xff\xff\xcb\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb1\x00\xb2\x00\xff\xff\xcb\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb0\x00\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xcb\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xff\xff\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xff\xff\xf6\x00\xa4\x00\xa5\x00\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa4\x00\xff\xff\xa6\x00\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xff\xff\xb2\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\xa8\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xb2\x00\xff\xff\xff\xff\xb5\x00\xb6\x00\xb7\x00\xff\xff\xb9\x00\xba\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xff\xff\xff\xff\xb5\x00\xb6\x00\xb7\x00\xff\xff\xb9\x00\xba\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xb2\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\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xb2\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\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xb2\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\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xb2\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\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xb2\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\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xf6\x00\xff\xff\xb2\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\xa9\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\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\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xd8\x00\xff\xff\xff\xff\xdb\x00\xdc\x00\xff\xff\xde\x00\xf6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf6\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"# happyTable :: HappyAddr happyTable = HappyA# "\x00\x00\x12\x00\x0e\x00\x10\x00\xa4\x00\x0c\x00\xa5\x00\x14\x00\x3c\x05\x8d\x03\x8e\x03\x8f\x03\xc8\x04\x36\x05\xe0\x04\xad\x04\x49\x03\xb1\x00\x3b\x02\x43\x02\x31\x02\x16\x04\x9c\x00\xb1\x00\x3b\x02\xb1\x00\xce\x02\xa6\x02\xae\xff\xb1\x00\x0a\x02\x07\x05\xb1\x00\x0a\x02\x78\x02\xf9\x04\xb1\x00\x96\x04\xb1\x00\xce\x02\x3a\x02\xb1\x00\x87\x04\x74\x04\x4d\x04\xac\x00\xb1\x00\x81\x04\xac\x00\x3a\x02\xac\x00\xfa\x04\xfb\x04\xca\x01\x64\x04\x2a\x04\x3a\x02\xac\x00\x18\x03\x5f\x03\xad\x00\x61\x03\xd0\x01\xb1\x00\x81\x04\x3c\x02\xef\x00\xf6\x00\x0b\x05\x61\x03\x39\x04\x3e\x02\x01\x05\xb1\x00\x87\x04\xf5\x00\xfb\x00\xb1\x00\x96\x04\x3a\x02\x3a\x05\xfd\x03\x2f\xfd\x9a\x01\x5b\x03\xcb\x01\xb1\x00\xcc\x04\x93\x01\x89\x01\x4c\x04\x4d\x04\x66\x04\x67\x04\x93\x01\x39\x05\x95\x02\x96\x02\x97\x02\x98\x02\xbd\x00\x2c\x05\xbe\x00\x93\x04\xcb\x01\x3a\x04\xf0\x00\x6f\x03\x68\x04\xfe\x03\xa8\x02\x1b\x03\xa3\x04\xb1\x00\xcc\x04\xf0\x00\xf0\x00\x20\x03\x94\x01\x2b\x04\x5c\x03\x1a\x05\xd3\x03\x5a\x04\x94\x01\x38\x00\x69\x01\x17\x04\x30\x00\x26\x05\xc1\x00\x36\x05\xda\x04\xaa\x04\xcd\x04\x1c\x03\x85\x00\xf5\x04\x17\x00\x6a\x01\xaa\x00\x97\x04\xab\x00\x85\x00\x36\x02\x37\x02\x3a\x02\x68\x04\x2f\x00\x30\x00\x86\x00\x30\x00\xa9\x03\x97\x02\x98\x02\x7f\x01\x80\x01\x81\x01\xd7\x01\x2c\x03\xd8\x01\xce\x04\x32\x02\x88\x00\x2f\xfd\x38\x02\xda\x01\xdb\x01\x88\x04\x32\x02\x88\x00\x03\x03\xdc\x01\x2b\x00\x2c\x00\x2d\x00\x22\x05\x7c\x03\x1c\x03\x82\x04\xdd\x01\x60\x03\x98\x04\x62\x03\xde\x01\xac\x00\xdf\x01\xe0\x01\xe1\x01\x69\x04\xd7\x01\x65\x03\xd8\x01\x6a\x04\x2c\x00\x4e\x04\x83\x04\x7d\x03\xda\x01\xdb\x01\x89\x04\xf5\x02\x34\x05\xc9\x04\xdc\x01\x85\x00\x2c\x00\x88\x01\x1b\x03\xcf\x02\x89\x01\x90\x03\xdd\x01\x35\x05\xb7\x00\x2a\x04\xde\x01\x3d\x02\xdf\x01\xe0\x01\xe1\x01\x0b\x02\xd0\x02\x3f\x02\x0c\x02\x2b\x00\x2c\x00\x2d\x00\xae\x00\x2f\x00\x30\x00\xae\x00\xe1\x04\xae\x00\xce\x03\xfc\x04\x2e\x05\x2f\x05\x86\x04\xfd\x04\xae\x00\x2c\x00\x4e\x04\x99\x02\x0d\x00\x0d\x00\x0d\x00\x93\x01\x0d\x00\x0d\x00\x0d\x00\x91\x03\x2c\x00\x88\x01\x90\x03\x9d\x00\x89\x01\xb7\x00\x9d\x00\xd4\x03\x2c\x00\x88\x01\xd4\x03\x0f\x00\x13\x00\x11\x00\x38\x00\x39\x00\x2b\x00\x2c\x00\x2d\x00\xe2\x01\x2f\x00\x30\x00\x3a\x02\xd5\x03\xfe\x04\x94\x01\xd5\x03\xe3\x01\x1a\x00\xe4\x01\x1c\x00\x5a\x04\xfc\x04\x1d\x00\x1e\x00\x1f\x00\xfd\x04\x69\x04\x20\x00\x21\x00\x22\x00\x6a\x04\x91\x03\x66\x03\x97\x02\x98\x02\x99\x02\x23\x00\xc2\x01\x2c\x00\x88\x01\xe2\x01\xc3\x01\x89\x01\x2c\x00\x88\x01\x23\x05\xc4\x01\x89\x01\xe3\x01\x1a\x00\xe4\x01\x1c\x00\x2c\x00\x88\x01\x1d\x00\x1e\x00\x1f\x00\x5b\x04\x2b\x03\x20\x00\x21\x00\x22\x00\xfe\x04\xaa\x03\x98\x02\x69\x04\x2c\x00\xbc\x03\x23\x00\x6a\x04\x85\x00\x2b\x00\x2c\x00\x2d\x00\x26\x00\x5c\x04\x30\x00\x27\x00\x28\x00\xad\x04\x29\x00\x11\x05\x2c\x00\x88\x01\x3b\x04\x7b\x04\x89\x01\x85\x00\xd7\x04\xbd\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x1c\x05\x1d\x03\xd8\x04\x1b\x03\x1e\x03\xbb\x02\x1f\x03\x31\x00\x31\x02\x26\x00\xe5\x01\xe6\x01\x27\x00\x28\x00\xa7\x03\x29\x00\xe7\x01\x7e\x04\x20\x03\x95\x04\xd0\x01\x21\x03\xd3\x00\x2a\x05\x85\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xbc\x02\x04\x05\x2b\x05\xaf\x04\xa8\x04\xa9\x04\xd7\x01\x31\x00\xd8\x01\xef\x04\xe5\x01\xe6\x01\xd1\x01\xd9\x01\xda\x01\xdb\x01\xe7\x01\xad\x04\xbc\x04\x88\x00\xdc\x01\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x14\x05\x69\x04\x18\x05\xdd\x01\x85\x00\x6a\x04\xd7\x01\xde\x01\xd8\x01\xdf\x01\xe0\x01\xe1\x01\x38\x00\x39\x00\xd6\x00\x24\x03\xd7\x00\x15\x05\x2c\x00\x88\x01\xdc\x01\x2d\x04\x89\x01\xba\x01\x99\x02\xd9\x00\x0b\x03\xc1\x00\xdd\x01\x19\x04\x32\x04\x88\x00\xde\x01\x85\x00\xdf\x01\xe0\x01\xe1\x01\xd5\x03\xdb\x00\x57\x01\xdd\x00\x2c\x00\x88\x01\xd9\x00\xae\x04\xaf\x04\xd6\x00\xbd\x00\x2c\x03\xd6\x00\xfb\x02\xd3\x00\xba\x01\x85\x00\x99\x02\xdf\x02\xdb\x00\x57\x01\xdd\x00\x58\x02\x88\x00\x58\x04\x2b\x00\x2c\x00\x2d\x00\xad\x03\x9e\x02\x9f\x02\xde\x04\x2c\x03\xee\x03\x2c\x00\x88\x01\xa6\x04\x85\x00\xd9\x00\x2f\x00\x30\x00\xd9\x00\x32\x02\x88\x00\xb3\x04\xaa\x04\x2b\x00\x2c\x00\x2d\x00\xbd\x04\xef\x03\xdb\x00\x57\x01\xdd\x00\xdb\x00\x57\x01\xdd\x00\xe2\x01\x33\x01\x80\x00\x2f\x00\x30\x00\xf1\x03\x32\x02\x88\x00\xe3\x01\x1a\x00\xe4\x01\x1c\x00\x0b\x03\x75\x02\x1d\x00\x1e\x00\x1f\x00\x76\x02\x7c\x04\x20\x00\x21\x00\x22\x00\xd7\x01\xcd\x00\xd8\x01\xe2\x01\x38\x00\x39\x00\x23\x00\x9c\x02\x9d\x02\x9e\x02\x9f\x02\xe3\x01\x1a\x00\xe4\x01\x1c\x00\x02\x05\x7f\x04\x1d\x00\x1e\x00\x1f\x00\x2c\x03\x5a\x04\x20\x00\x21\x00\x22\x00\x3a\x02\xb5\x04\x56\x03\xdf\x01\xe0\x01\xe1\x01\x23\x00\x2c\x00\x88\x01\x2b\x00\x2c\x00\x2d\x00\xfe\x01\x5a\x02\x2c\x00\x73\x04\x2b\x00\x2c\x00\x2d\x00\x26\x00\xb9\x00\xba\x00\x27\x00\x28\x00\x28\x02\x29\x00\x46\x01\x9c\x04\x47\x01\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x38\x05\x3e\x04\x26\x00\xe8\x02\xb5\x01\x27\x00\x28\x00\x31\x00\x29\x00\x26\x03\xe5\x01\xe6\x01\x97\x01\x86\x01\xcd\x00\xcd\x00\xe7\x01\x87\x01\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xd7\x01\x27\x03\xd8\x01\x9b\x03\x98\x01\x2c\x00\x88\x01\x31\x00\x9c\x03\x89\x01\xe5\x01\xe6\x01\xb6\x04\xb7\x04\xf4\x04\xb8\x04\xe7\x01\x2c\x00\xbc\x03\x85\x00\xf5\x04\xe2\x01\x86\x00\x30\x00\x2e\x00\x4d\x02\x4e\x02\x38\x00\xdf\x01\xe0\x01\xe1\x01\x4f\x02\xd7\x01\x51\x04\xd8\x01\x1d\x00\xbd\x03\x1f\x00\xe7\x04\xe8\x04\x20\x00\x21\x00\x22\x00\x9e\x04\xae\x02\x34\x01\x88\x00\x86\x01\x04\x02\x23\x00\x05\x02\x87\x01\x27\x04\x06\x04\xa0\x02\x9d\x02\x9e\x02\x9f\x02\xb5\x04\x0e\x03\xdf\x01\xe0\x01\xe1\x01\x7c\x03\x2c\x00\x88\x01\xba\x01\x07\x02\x89\x01\x2c\x00\x88\x01\x03\x02\xe6\x04\x4c\x03\x2c\x00\x52\x03\x2c\x00\x52\x03\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x04\x02\x26\x00\x05\x02\x8d\x01\x27\x00\x28\x00\xbe\x03\x29\x00\x53\x03\xb1\x00\x8e\x01\x08\x04\x85\x00\x38\x00\x39\x00\x86\x00\x30\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x10\x04\x08\x02\x58\x00\xe2\x01\x59\x00\x5a\x00\x5a\x04\x31\x00\x3a\x02\x09\x02\xe5\x01\xe6\x01\xe4\x03\x4f\x02\x87\x00\x88\x00\xe7\x01\x1d\x00\xf6\x04\x1f\x00\x38\x00\x39\x00\x20\x00\x21\x00\x22\x00\x78\x02\x24\x02\x0c\x05\x22\x02\xb8\x04\x0f\x04\x23\x00\xd7\x01\x0d\x03\xd8\x01\xe2\x01\x04\x02\x4b\x03\x05\x02\xb8\x01\xe4\x03\xe1\x02\xcd\x00\x25\x02\x85\x00\x4f\x02\xe5\x03\xa3\x01\x30\x00\x1d\x00\xcd\x00\x1f\x00\x10\x03\x14\x04\x20\x00\x21\x00\x22\x00\x4d\x02\x4e\x02\xba\x01\xdf\x01\xe0\x01\xe1\x01\x23\x00\x15\x04\xac\x03\x9f\x02\x50\x02\x51\x02\x26\x00\x1a\x02\x88\x00\x27\x00\x52\x02\xc8\x01\x29\x00\x86\x01\x19\x04\xc9\x01\xba\x01\x87\x01\x5b\x02\xbb\x01\xca\x01\x28\x02\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xce\x03\x2c\x00\x88\x01\xcf\x03\xd0\x03\x89\x01\xaa\x02\x31\x00\x1b\x04\x26\x00\xe5\x01\xe6\x01\x27\x00\x28\x00\x85\x00\x29\x00\xe7\x01\x86\x00\x30\x00\x2c\x00\xab\x02\x84\x01\x9b\x02\x89\x01\xbd\x01\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xd7\x01\xcd\x00\xd8\x01\x57\x03\xac\x02\xcc\x00\x26\x02\x31\x00\x87\x00\x88\x00\xe5\x01\xe6\x01\xe2\x04\xe3\x04\xcd\x00\xb8\x01\xe7\x01\x2b\x00\x2c\x00\x2d\x00\x1c\x04\xe2\x01\xb2\x01\x27\x02\x09\x03\x2f\x04\x9a\x03\xcf\x00\xdf\x01\xe0\x01\xe1\x01\x4f\x02\x28\x02\xa6\x00\x37\x04\x1d\x00\x83\x01\x1f\x00\xa7\x00\xa8\x00\x20\x00\x21\x00\x22\x00\x82\x01\xa8\x00\x35\x04\x77\x00\x50\x03\x78\x00\x23\x00\x51\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x44\x04\xe4\x04\x82\x00\x83\x00\x91\x00\x1d\x03\x81\x01\x92\x00\x1e\x03\xb2\x01\x11\x04\xe6\x02\x86\x01\x82\x01\xa8\x00\x40\x04\x87\x01\x55\x04\x5f\x02\x60\x02\x61\x02\xd5\x04\x20\x03\xf1\x04\xf2\x04\x21\x03\xd3\x00\xd0\x00\x26\x00\x2c\x00\x88\x01\x27\x00\x28\x00\x89\x01\x29\x00\xb9\x00\xba\x00\xd1\x00\x5d\x04\xd2\x00\xd3\x00\xd4\x00\xf7\x04\xf8\x04\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xe5\x04\xe3\x04\xfa\x02\xe2\x01\x62\x04\xfb\x02\xd3\x00\x31\x00\x86\x01\x5f\x04\xe5\x01\xe6\x01\x87\x01\x4f\x02\x84\x01\x85\x01\xe7\x01\x1d\x00\xb2\x01\x1f\x00\xb3\x01\xa4\x03\x20\x00\x21\x00\x22\x00\x2c\x00\x88\x01\xa8\x03\x1a\x05\x89\x01\x1c\x05\x23\x00\xa5\x03\x3a\x02\x77\x00\x08\x04\x78\x00\x59\x03\xae\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x5c\x03\xe4\x04\x82\x00\x83\x00\x2b\x00\x2c\x00\x2d\x00\xaf\x03\xb7\x00\x08\x02\x58\x00\x64\x04\x59\x00\x5a\x00\x2b\x00\x2c\x00\x2d\x00\x09\x02\x84\x00\x62\x02\x2c\x00\x2d\x00\x26\x00\x2f\x00\x30\x00\x27\x00\x28\x00\x20\x05\x29\x00\x9f\x04\xa0\x04\xa1\x04\x85\x00\xbd\x02\x2e\x00\x86\x00\x30\x00\xc3\x03\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x63\x02\x0f\x05\x84\x04\x85\x04\xa2\x01\x2c\x00\x2d\x00\x31\x00\xa3\x01\x30\x00\xe5\x01\xe6\x01\xc7\x03\x87\x00\x88\x00\x77\x00\xe7\x01\x78\x00\xfb\x02\xd3\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xc8\x03\xe4\x04\x82\x00\x83\x00\xcc\x03\x73\xfe\x77\x00\x73\xfe\x78\x00\x2c\x04\xd3\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xd1\x03\xe4\x04\x82\x00\x83\x00\x86\x01\xc4\x01\x2c\x00\x2d\x00\x87\x01\xa3\x01\x30\x00\xd8\x03\x40\x03\x6d\x01\xdd\x03\x78\x02\x6e\x01\xf9\x03\x81\x03\xe1\x03\xe4\x00\x2c\x00\x88\x01\xe2\x03\x84\x00\x89\x01\x8e\x04\xe7\x03\xb9\x00\xba\x00\x70\x01\xea\x03\xd2\x00\xd3\x00\xd4\x00\x2c\x00\xf0\x03\xec\x03\x85\x00\xf1\x03\x2e\x00\x86\x00\x30\x00\x77\x00\x41\x03\x42\x03\x3d\x04\x3e\x04\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xd0\x04\x48\x04\xc5\x00\x83\x00\x43\x03\xc7\x00\xfe\x01\x02\x04\x87\x00\x88\x00\xda\x03\xdb\x03\xdc\x03\xdd\x03\xb9\x00\xba\x00\x63\x01\x01\x03\xd2\x00\xd3\x00\xd4\x00\x05\x03\x31\x03\x77\x00\x32\x03\x78\x00\x2c\x00\xbf\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xb2\x04\x4c\x03\x49\x04\x83\x00\x33\x03\x84\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xd3\x04\x00\x01\x01\x01\x3c\x03\xb7\x00\x85\x00\x3d\x03\x2e\x00\x86\x00\x30\x00\x84\x00\x78\x03\x61\x02\xb8\x00\x47\x04\x48\x04\xd8\x04\x00\x01\x01\x01\x2f\x00\x30\x00\xb9\x00\xba\x00\xbd\x00\x85\x00\xbe\x00\x2e\x00\x86\x00\x30\x00\xf9\x03\xfa\x03\x87\x00\x88\x00\xe5\x03\xe6\x03\xe7\x03\xd2\xfd\x77\x00\xd2\xfd\x78\x00\x13\x03\xbb\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x87\x00\x88\x00\x49\x04\x83\x00\x63\x01\xfa\x02\xd2\x00\xd3\x00\xd4\x00\xb9\x01\xbf\x04\xba\x01\x4b\x04\x48\x04\x03\x04\x04\x04\x84\x00\xc0\x04\xc1\x04\xf5\x03\xf6\x03\xf7\x03\x37\x05\x5e\x02\x5f\x02\x60\x02\x61\x02\x2d\x03\x2e\x03\x2f\x03\x85\x00\x44\x03\x2e\x00\x86\x00\x30\x00\x77\x00\xe4\xfd\x78\x00\xe4\xfd\x5d\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xb7\x00\x89\x03\x49\x04\x83\x00\x84\x00\xe6\xfd\x33\x00\xe6\xfd\x87\x00\x88\x00\x46\x02\x62\x02\x2c\x00\x2d\x00\x44\x02\x2f\x00\x30\x00\xe7\xfd\x85\x00\xe7\xfd\x2e\x00\x86\x00\x30\x00\x38\x00\x39\x00\x03\x04\x05\x04\xbd\x00\xd8\x03\xbe\x00\x49\x02\xee\xfd\x85\x00\xee\xfd\x4a\x02\x86\x00\x30\x00\x63\x02\x03\x03\x37\x02\xbf\x00\x32\x03\x2e\x03\x2f\x03\x87\x00\x88\x00\x6d\x02\xef\xfd\xc0\x00\xef\xfd\xc2\x04\xc3\x04\xc4\x04\xc5\x04\xbf\x04\x04\x03\x37\x02\xc1\x00\x87\x00\x88\x00\x6b\x02\xc0\x04\xc1\x04\x4f\x02\xb7\x00\x86\x03\x87\x03\x1d\x00\x84\x00\x1f\x00\x51\x03\xba\x00\x20\x00\x21\x00\x22\x00\x62\x02\x2c\x00\x2d\x00\xa4\x02\x2f\x00\x30\x00\x23\x00\x85\x00\x73\x02\x2e\x00\x86\x00\x30\x00\x5b\x00\xed\x04\xe0\x01\xe1\x01\xa6\x02\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x63\x02\x42\x02\x00\x01\x01\x01\x07\x03\xa7\x01\xa8\x02\x87\x00\x88\x00\xb1\x00\x70\x03\x6d\x00\xa8\x01\xa9\x02\xf0\xfd\x84\x00\xf0\xfd\xb2\x02\x26\x00\x7f\x03\x80\x03\x27\x00\x28\x00\xf1\xfd\x29\x00\xf1\xfd\x2b\x00\x2c\x00\x2d\x00\x85\x00\x73\x00\x2e\x00\x86\x00\x30\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xc5\x02\x16\x05\xc4\x04\xc5\x04\xb0\x00\xb1\x00\xb2\x00\x31\x00\xb3\x00\xb1\x00\xb2\x00\x82\x03\x83\x03\x4f\x02\x87\x00\x88\x00\xf2\xfd\x1d\x00\xf2\xfd\x1f\x00\xa6\x01\xa7\x01\x20\x00\x21\x00\x22\x00\xc4\x02\x8a\x04\x4c\x03\xa8\x01\x54\x02\x55\x02\x23\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xef\x02\xee\x04\x2b\x00\x2c\x00\x2d\x00\x1d\x00\xf3\xfd\x1f\x00\xf3\xfd\x91\x01\x20\x00\x21\x00\x22\x00\xf5\x02\x4b\x03\x4c\x03\xb4\x02\xb5\x02\xb6\x02\x23\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xf4\xfd\x26\x00\xf4\xfd\xf8\x02\x27\x00\x28\x00\xf5\xfd\x29\x00\xf5\xfd\x94\x01\xd6\x00\xbd\x00\xd7\x00\xbe\x00\xff\x00\x00\x01\x01\x01\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x7f\x01\x80\x01\x81\x01\xca\x00\xf6\xfd\x26\x00\xf6\xfd\x31\x00\x27\x00\x28\x00\x9b\x01\x29\x00\xbf\x02\x01\x02\x72\x01\xd9\x00\x0d\x02\xc1\x00\x0f\x05\xb1\x00\x56\x02\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xdb\x00\x57\x01\xdd\x00\x77\x00\xf8\xfd\x78\x00\xf8\xfd\x31\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x94\x02\x01\x01\xcd\x00\x83\x00\xce\x00\xc7\x00\x35\x02\xd6\x00\xbd\x00\xa1\x02\xa2\x02\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x77\x00\x40\x02\x78\x00\xf3\x02\x7d\x01\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xc2\x02\xc3\x02\xcd\x00\x83\x00\xce\x00\xc7\x00\x85\x00\x23\x03\xd9\x00\x86\x00\x30\x00\x72\x01\xd9\x00\xb6\x00\xc1\x00\x73\x01\xf7\xfd\xf9\xfd\xf7\xfd\xf9\xfd\xfd\x00\xdb\x00\x57\x01\xdd\x00\xdf\x00\xdb\x00\x57\x01\xdd\x00\x74\x01\x75\x01\x76\x01\x77\x01\x87\x00\x88\x00\x85\x00\x28\x05\x29\x05\x86\x00\x30\x00\x77\x00\xcf\x00\x78\x00\xb1\x00\xf1\x02\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xb1\x00\xf2\x02\xc5\x00\x83\x00\xfa\xfd\x2f\x02\xfa\xfd\x77\x01\x87\x00\x88\x00\xfb\xfd\x02\xfe\xfb\xfd\x02\xfe\x3b\x01\x03\xfe\xcf\x00\x03\xfe\x15\x00\x77\x00\x79\x01\x78\x00\xb1\x00\xf6\x02\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xb1\x00\x8f\x01\xc5\x00\x83\x00\x84\x00\x99\x04\xb1\x00\x90\x01\x7a\x01\x25\x05\x5e\x02\x5f\x02\x60\x02\x61\x02\x40\x04\x8f\x04\x41\x02\xa8\x00\x85\x00\x3c\x05\x2e\x00\x86\x00\x30\x00\xb9\x00\xba\x00\xd1\x00\x9a\x04\xd2\x00\xd3\x00\xd4\x00\x7c\x01\x7d\x01\x84\x00\x35\x03\x36\x03\x37\x03\x38\x03\x39\x03\x3a\x03\x3b\x03\x3c\x03\x13\x05\x14\x05\xd0\x00\x87\x00\x88\x00\x85\x00\x33\x05\x2e\x00\x86\x00\x30\x00\xb9\x00\xba\x00\xd1\x00\xee\x03\xd2\x00\xd3\x00\xd4\x00\x40\x04\x77\x00\xec\x03\xc4\x00\x29\x03\x2a\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x87\x00\x88\x00\xc5\x00\x83\x00\xc6\x00\xc7\x00\x8c\x03\x8d\x03\x77\x00\xee\x03\x45\x04\xce\x03\x84\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x96\x01\x97\x01\xfe\x01\x46\x04\x2e\x05\x85\x00\xb7\x00\x2e\x00\x86\x00\x30\x00\xb9\x00\xba\x00\x36\x00\x37\x00\xc5\x03\xc6\x03\xd0\x00\x62\x02\x2c\x00\x2d\x00\x04\x05\x2f\x00\x30\x00\x84\x00\xb9\x00\xba\x00\xd1\x00\xdc\x04\xd2\x00\xd3\x00\xd4\x00\x87\x00\x88\x00\x29\x03\x2a\x03\x96\x01\x97\x01\x85\x00\x06\x05\x2e\x00\x86\x00\x30\x00\x77\x00\x63\x02\x78\x00\x29\x03\x2a\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x48\x02\x49\x02\xc5\x00\x83\x00\x07\x05\xc9\x00\x6b\x03\x6c\x03\x87\x00\x88\x00\x96\x01\x97\x01\x3a\x02\x18\x05\x1b\x05\x77\x00\x1e\x05\x78\x00\xe0\x04\xda\x04\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xdd\x04\x3d\x05\x82\x00\x83\x00\xf1\x04\x77\xfd\xf7\x04\xa6\x04\x77\x00\xa4\x04\x78\x00\xa8\x04\x84\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xbd\x02\x1f\x05\x82\x00\x83\x00\x28\x02\x85\x00\x38\x00\x2e\x00\x86\x00\x30\x00\xb2\x04\xb5\x04\x84\x00\xbf\x04\xcc\x04\xcb\x04\xd2\x04\xd5\x04\x66\x04\xca\x00\x6e\x04\x70\x04\x72\x04\x6f\x04\xe9\x03\x73\x04\x85\x00\x76\x04\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x77\x04\x78\x00\x78\x04\x7e\x04\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x79\x04\x21\x05\x82\x00\x83\x00\x8d\x04\x81\x04\x87\x00\x88\x00\x77\x00\x8c\x04\x78\x00\x78\xfd\x91\x04\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x84\x00\x24\x05\x82\x00\x83\x00\xee\x03\x6d\x01\x17\x00\x9e\x04\x6e\x01\x13\x03\xd4\x01\x3a\x02\xe4\x00\x0a\x04\x85\x00\x78\x02\x2e\x00\x86\x00\x30\x00\x13\x04\xb9\x00\xba\x00\x70\x01\x14\x04\xd2\x00\xd3\x00\xd4\x00\xee\x03\x84\x00\xdf\x03\xec\x03\x1b\x04\xee\x03\x26\x04\xb0\x00\x2f\x04\x38\x01\x31\x04\x37\x04\x39\x01\x87\x00\x88\x00\x85\x00\x32\x04\x2e\x00\x86\x00\x30\x00\x43\x04\x40\x04\x84\x00\x2b\x00\x2c\x00\x2d\x00\x42\x04\x2f\x00\x30\x00\x44\x04\x4b\x04\x54\x04\x58\x04\x55\x04\x7f\x03\x5f\x04\x85\x00\x61\x04\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x98\x03\x78\x00\x62\x04\x99\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x3a\x02\x29\x05\x82\x00\x83\x00\x9a\x03\xa1\x03\x87\x00\x88\x00\x77\x00\xa2\x03\x78\x00\xa3\x03\x84\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xa4\x03\x08\x05\x82\x00\x83\x00\x0f\x02\x85\x00\xfe\x01\x2e\x00\x86\x00\x30\x00\xac\x03\xa4\x02\x84\x00\xb1\x03\xb9\x00\xba\x00\x63\x01\xb2\x03\xd2\x00\xd3\x00\xd4\x00\xb3\x03\xb4\x03\xb5\x03\xd4\xfe\xb6\x03\x85\x00\xc7\x03\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\xca\x03\x78\x00\xb7\x03\xb8\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xcc\x03\x0a\x05\x82\x00\x83\x00\xce\x03\xd3\x03\x87\x00\x88\x00\x77\x00\xdf\x03\x78\x00\x32\x03\xdf\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xe9\x03\xdd\x04\x82\x00\x83\x00\xec\x03\xee\x03\xf3\x03\x10\x02\x77\x00\xff\x03\x78\x00\xff\x02\x00\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x38\x00\xe9\x04\x82\x00\x83\x00\x07\x03\xb9\x01\x13\x03\x84\x00\x0f\x03\x0f\x03\x15\x03\xb0\x00\x24\x03\x1a\x03\x3a\x02\x6d\x01\x3f\x03\x46\x03\x6e\x01\x4f\x03\x81\x03\x85\x00\xe4\x00\x2e\x00\x86\x00\x30\x00\x47\x03\x48\x03\x84\x00\xbd\x00\xb9\x00\xba\x00\x70\x01\xa6\x02\xd2\x00\xd3\x00\xd4\x00\x64\x03\x63\x03\x66\x03\x68\x03\x69\x03\x85\x00\x6d\x03\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x74\x03\x78\x00\x6a\x03\x6e\x03\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x7b\x03\x26\x04\x82\x00\x83\x00\xd0\xfe\x7c\x03\x87\x00\x88\x00\x77\x00\x3a\x02\x78\x00\x4b\x01\x84\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x7f\x03\x3a\x04\x82\x00\x83\x00\x85\x03\x85\x00\x86\x03\x2e\x00\x86\x00\x30\x00\x89\x03\xaa\x00\x84\x00\x46\x02\x4c\x02\x4d\x02\x68\x02\x69\x02\x6f\x02\x73\x02\x6d\x01\x70\x02\x75\x02\x6e\x01\xcd\x01\xd4\x01\x85\x00\xe4\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x84\x00\xb1\x01\xb9\x00\xba\x00\x70\x01\x7c\x02\xd2\x00\xd3\x00\xd4\x00\xa4\x02\xa6\x02\xb7\x02\xb8\x02\xb9\x02\x85\x00\xc7\x02\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\xdb\x02\x78\x00\xeb\x02\xec\x02\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xed\x02\xc2\x03\x82\x00\x83\x00\xee\x02\xf1\x02\x87\x00\x88\x00\x77\x00\xef\x02\x78\x00\xf8\x02\x38\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xac\x00\x25\x03\x82\x00\x83\x00\x9d\x01\xfd\x02\x9b\x01\x84\x00\x43\xfd\xc0\x01\x40\xfd\xb0\x01\xb1\x01\xb2\x01\xc1\x01\x6d\x01\xc0\x01\xc7\x01\x6e\x01\xba\x01\x6f\x01\x85\x00\xe4\x00\x2e\x00\x86\x00\x30\x00\xcd\x01\xd3\x01\x84\x00\xd4\x01\xb9\x00\xba\x00\x70\x01\xd6\x01\xd2\x00\xd3\x00\xd4\x00\xd2\x01\xd7\x01\xc9\x00\x0f\x02\x01\x02\x85\x00\x03\x02\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x0a\x02\x78\x00\x10\x02\x19\x02\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x12\x02\x2a\x03\x82\x00\x83\x00\x17\x02\x18\x02\x87\x00\x88\x00\x77\x00\x3d\xfd\x78\x00\x1f\x02\x20\x02\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x21\x02\xa1\x01\x82\x00\x83\x00\x23\x02\x29\x02\x2a\x02\x2b\x02\x77\x00\x2d\x02\x78\x00\x2c\x02\x84\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x3b\x02\x3c\x01\x82\x00\x83\x00\xac\x00\x85\x00\x9f\x00\x2e\x00\x86\x00\x30\x00\x10\x02\xb0\x00\x84\x00\xff\xff\xff\xff\xb5\x00\xde\x00\xb6\x00\xed\x00\xee\x00\xef\x00\xff\xff\xf2\x00\xb0\x00\xf2\x00\x6b\x01\x85\x00\x6c\x01\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\xa2\xfd\x78\x00\xff\xff\x79\x01\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xac\x00\xff\xff\xc5\x00\x83\x00\xff\xff\x2d\x02\x87\x00\x88\x00\x77\x00\xff\xff\x78\x00\xac\x00\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x7c\x01\x81\x00\x82\x00\x83\x00\x17\x00\x9f\x00\x00\x00\x84\x00\xae\x02\x00\x00\xac\x00\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x00\x00\x84\x00\x00\x00\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\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x84\x00\x00\x00\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\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x00\x00\xb8\x03\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x00\x00\xb9\x03\x00\x00\x00\x00\x87\x00\x88\x00\x77\x00\x00\x00\xb8\x03\x00\x00\x84\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x00\x00\xb9\x03\x00\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x00\x00\x84\x00\x00\x00\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\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x85\x00\xca\x03\x83\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x3f\x03\x83\x00\x00\x00\x00\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x48\x03\x83\x00\x00\x00\x00\x00\x00\x00\x84\x00\x1b\x02\x00\x00\x00\x00\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x00\x00\x84\x00\x00\x00\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\x00\xcf\x04\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x00\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\xba\x03\x58\x03\x83\x00\x00\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x84\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x57\x02\x83\x00\x00\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x00\x00\x84\x00\x00\x00\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\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x84\x00\x00\x00\x00\x00\xab\x04\x00\x00\xac\x04\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x85\x00\x5b\x02\x83\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x5c\x02\x83\x00\x00\x00\x00\x00\x87\x00\x88\x00\x84\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe1\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x84\x00\x00\x00\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\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\xb9\x02\x83\x00\x00\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\xc0\x02\x83\x00\x00\x00\x85\x00\x00\x00\x00\x00\x86\x00\x30\x00\x00\x00\x00\x00\x84\x00\x00\x00\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\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x84\x00\x00\x00\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\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x85\x00\x19\x02\x83\x00\x86\x00\x30\x00\x87\x00\x88\x00\x77\x00\x00\x00\x78\x00\x00\x00\x00\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\xde\x00\x83\x00\x00\x00\x00\x00\x87\x00\x88\x00\x84\x00\x00\x00\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\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x84\x00\x77\x00\x00\x00\x0d\x05\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x87\x00\x88\x00\x77\x00\x00\x00\x10\x05\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x77\x00\x00\x00\xea\x04\x87\x00\x88\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x77\x00\x00\x00\x79\x04\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x00\x00\x1c\x02\x84\x00\x00\x00\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x77\x00\x84\x00\x4d\x03\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x00\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x77\x00\x00\x00\xc2\x00\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x87\x00\x88\x00\x84\x00\x1d\x02\x00\x00\x00\x00\x00\x00\x00\x00\xc3\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x00\x00\x84\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe1\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\xe2\x00\x00\x00\x85\x00\x84\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x87\x00\x88\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x00\x00\xe0\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x87\x00\x88\x00\x00\x00\x85\x00\x00\x00\x00\x00\x86\x00\x30\x00\x00\x00\x00\x00\x84\x00\x00\x00\x00\x00\x87\x00\x88\x00\x00\x00\x00\x00\x00\x00\x75\x03\x76\x03\x5f\x02\x60\x02\x61\x02\x00\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x87\x00\x88\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x00\x00\x00\x00\x00\x34\x04\x5e\x02\x5f\x02\x60\x02\x61\x02\x00\x00\x00\x00\x00\x00\x00\x00\x87\x00\x88\x00\x85\x00\x00\x00\x2e\x00\x86\x00\x30\x00\x1d\x04\x00\x00\x1e\x04\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\x85\x00\x00\x00\x1f\x04\x86\x00\x30\x00\x55\x04\x5f\x02\x60\x02\x61\x02\x56\x04\x87\x00\x88\x00\xe3\x00\x00\x00\x00\x00\x00\x00\xe4\x00\x00\x00\x00\x00\x85\x00\x20\x04\x21\x04\x86\x00\x30\x00\xb9\x00\xba\x00\x87\x00\x88\x00\x00\x00\x1d\x04\x00\x00\x91\x04\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x80\x00\x00\x00\xb7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x87\x00\x88\x00\xe5\x00\xe6\x00\xfe\x01\x00\x00\x62\x02\x2c\x00\x2d\x00\x00\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x92\x04\x21\x04\x85\x00\xb7\x00\x00\x00\x86\x00\x30\x00\x00\x00\x44\x01\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x62\x02\x2c\x00\x2d\x00\x63\x02\x2f\x00\x30\x00\x23\x00\x00\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x00\x00\x87\x00\x88\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x63\x02\x00\x00\x00\x00\x00\x00\x00\x00\x62\x02\x2c\x00\x2d\x00\x00\x00\x2f\x00\x30\x00\x72\x01\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x22\x04\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\xdb\x00\x57\x01\xdd\x00\x00\x00\x85\x00\x00\x00\x63\x02\x23\x04\x30\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x87\x00\x88\x00\x22\x04\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x85\x00\x00\x00\x00\x00\x23\x04\x30\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x3a\x02\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x87\x00\x88\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xea\x01\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\x00\x00\x69\x00\xeb\x01\xec\x01\xed\x01\xee\x01\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x17\x00\x00\x00\xef\x01\xf0\x01\xf1\x01\xf2\x01\xa2\x00\x70\x00\x00\x00\xf3\x01\x00\x00\x71\x00\x00\x00\x00\x00\xf4\x01\x00\x00\x00\x00\x73\x00\x74\x00\xf5\x01\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\xfa\x01\x75\x00\x76\x00\x77\x00\xfb\x01\xfc\x01\xd6\x00\xbd\x00\xd7\x00\xbe\x00\xfd\x01\xfe\x01\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\xd9\x00\x45\x00\xc1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\xdb\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xea\x01\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\x00\x00\x69\x00\xeb\x01\xec\x01\xed\x01\xee\x01\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x17\x00\x00\x00\xef\x01\xf0\x01\xf1\x01\xf2\x01\xa2\x00\x70\x00\x00\x00\xf3\x01\x00\x00\x71\x00\x00\x00\x00\x00\xf4\x01\x00\x00\x00\x00\x73\x00\x74\x00\xf5\x01\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\xfa\x01\x75\x00\x76\x00\x77\x00\xfb\x01\xfc\x01\x00\x00\x00\x00\x00\x00\x00\x00\xfd\x01\xfe\x01\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xea\x01\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\x00\x00\x69\x00\xeb\x01\xec\x01\xed\x01\xee\x01\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\xef\x01\xf0\x01\xf1\x01\xf2\x01\xa2\x00\x70\x00\x00\x00\xf3\x01\x00\x00\x71\x00\x00\x00\x00\x00\xf4\x01\x00\x00\x00\x00\x73\x00\x74\x00\xf5\x01\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\xfa\x01\x75\x00\x76\x00\x77\x00\xfb\x01\xfc\x01\x00\x00\x00\x00\x00\x00\x00\x00\xfd\x01\xfe\x01\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x3a\x02\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\xba\x04\xbb\x04\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\xef\x01\xf0\x01\xf1\x01\x00\x00\x00\x00\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbc\x04\x00\x00\x00\x00\x73\x00\x74\x00\xf5\x01\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x01\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\xba\x04\xbb\x04\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\xef\x01\xf0\x01\xf1\x01\x00\x00\x00\x00\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbc\x04\x00\x00\x00\x00\x73\x00\x74\x00\xf5\x01\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x01\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x3a\x02\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\xef\x01\xf0\x01\xf1\x01\x00\x00\x00\x00\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\xf5\x01\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x01\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x3a\x02\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\xc7\x04\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x00\x00\x00\xf3\x01\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x04\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x01\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\xef\x01\xf0\x01\xf1\x01\x00\x00\x00\x00\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\xf5\x01\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x01\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\xe9\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\xc7\x04\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x00\x00\x00\xf3\x01\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x04\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x01\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x3c\x04\x5e\x02\x5f\x02\x60\x02\x61\x02\x00\x00\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\xf6\x01\xf7\x01\xf8\x01\xf9\x01\x9e\x03\x5e\x02\x5f\x02\x60\x02\x61\x02\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\xfe\x01\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\xd8\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\xcd\x00\x90\x00\x00\x00\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xda\x00\x00\x00\x00\x00\x91\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xe9\x03\x5e\x02\x5f\x02\x60\x02\x61\x02\x00\x00\x00\x00\x93\x00\x94\x00\xb7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x62\x02\x2c\x00\x2d\x00\x00\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\xb7\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x62\x02\x2c\x00\x2d\x00\x63\x02\x2f\x00\x30\x00\x33\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x38\x00\x39\x00\x00\x00\xe8\x00\xbd\x00\x00\x00\xbe\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x63\x02\x00\x00\x8c\x00\x73\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\xe9\x00\x9b\x00\x9c\x00\xc1\x00\x00\x00\xb7\x00\x00\x00\x00\x00\x00\x00\xea\x00\x00\x00\x00\x00\x91\x00\xeb\x00\xec\x00\x92\x00\x62\x02\x2c\x00\x2d\x00\x00\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x63\x02\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\xe8\x00\xbd\x00\x6d\x00\xbe\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\xe9\x00\x00\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\xea\x00\x00\x00\x00\x00\x91\x00\x00\x00\xec\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\xbd\x00\x6d\x00\xbe\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x31\x02\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\xcc\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\xcd\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x0a\x05\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\xec\x04\x00\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\xed\x04\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x9c\x04\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\xc2\x02\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x2f\x02\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\xc9\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x9f\x03\x5f\x02\x60\x02\x61\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xbc\x03\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\xb7\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x62\x02\x2c\x00\x2d\x00\x00\x00\x2f\x00\x30\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x63\x02\x38\x00\x39\x00\x00\x00\x9a\x00\x04\xff\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x04\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\xeb\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xbc\x03\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x74\x03\x5e\x02\x5f\x02\x60\x02\x61\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x5d\x02\x5e\x02\x5f\x02\x60\x02\x61\x02\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\xb7\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x62\x02\x2c\x00\x2d\x00\x00\x00\x2f\x00\x30\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x63\x02\x00\x00\xb0\x02\x00\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\xb1\x02\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x73\x00\xb2\x02\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x8e\x00\xb7\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x62\x02\x2c\x00\x2d\x00\x00\x00\x2f\x00\x30\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x63\x02\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x9a\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\x00\x00\x04\xff\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x04\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x25\x04\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x6d\x00\x00\x00\x8a\x00\x00\x00\x00\x00\x8b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x00\x00\x00\x8d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x91\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x94\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x00\x00\x00\x96\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x6d\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\xe3\x02\x73\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\xb8\x01\x48\x00\x56\x01\xd9\x00\x00\x00\xc1\x00\x9b\x00\x9c\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x00\x76\x00\x77\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\xea\x02\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\xb8\x01\x48\x00\x56\x01\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x00\x76\x00\x77\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\xb7\x01\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\xb8\x01\x48\x00\x56\x01\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x00\x76\x00\x77\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\xbf\x01\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\xb8\x01\x48\x00\x56\x01\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x00\x76\x00\x77\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\xcd\x00\x48\x00\x56\x01\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x00\x76\x00\x77\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x67\x01\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\xcd\x00\x48\x00\x56\x01\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x68\x01\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x00\x76\x00\x77\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x5b\x01\x47\x00\x00\x00\x00\x00\x48\x00\x56\x01\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x00\x76\x00\x77\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x56\x01\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x15\x02\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6f\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x72\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x02\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\xd7\x02\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x3a\x02\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x02\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\xd7\x02\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6f\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x72\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x02\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x12\x03\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x02\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\xfb\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x70\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x6e\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x35\x00\xa2\x00\x70\x00\x38\x00\x39\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x03\x75\x00\x76\x00\x77\x00\x00\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x00\x00\x00\x00\x94\x03\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x35\x00\x00\x00\x00\x00\x38\x00\x39\x00\xbf\x02\x00\x00\x72\x01\xd9\x00\x00\x00\xc1\x00\xc0\x02\x72\xfe\xbf\x02\x72\xfe\x72\x01\xd9\x00\x00\x00\xc1\x00\xc0\x02\x93\x03\xdb\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\x00\x57\x01\xdd\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x95\x03\x35\x00\x00\x00\x00\x00\x38\x00\x39\x00\x96\x03\x00\x00\x00\x00\x73\x00\x74\x00\x97\x03\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\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x03\x8b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x96\x03\x00\x00\x00\x00\x73\x00\x74\x00\x97\x03\x00\x00\x94\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\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\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\x00\x00\x8b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x73\x00\x74\x00\x01\x05\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x73\x00\x74\x00\x01\x05\x81\x02\x34\x00\x35\x00\x36\x00\x37\x00\x82\x02\x39\x00\x05\x01\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x01\x83\x02\x84\x02\x85\x02\x86\x02\x87\x02\x88\x02\x89\x02\x8a\x02\x8b\x02\x8c\x02\x8d\x02\x8e\x02\x8f\x02\x90\x02\x15\x01\x16\x01\x17\x01\x18\x01\x19\x01\x1a\x01\x1b\x01\x1c\x01\x91\x02\x92\x02\x1f\x01\x93\x02\x21\x01\x22\x01\x23\x01\x24\x01\x25\x01\x26\x01\x27\x01\x28\x01\x29\x01\x2a\x01\x2b\x01\x2c\x01\x2d\x01\x2e\x01\x2f\x01\x30\x01\x31\x01\x32\x01\x94\x02\x74\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x69\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcf\x01\x00\x00\x4a\x00\x4b\x00\x00\x00\x00\x00\xf5\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x00\x00\xf5\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x4b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x00\x00\xf5\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x47\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x00\x4b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x00\x00\x00\x00\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x00\x00\x55\x00\x56\x00\x57\x00\x00\x00\x58\x00\x00\x00\x59\x00\x5a\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x33\x00\x6d\x00\x35\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x65\x02\x78\x03\x00\x00\x00\x00\x33\x00\x00\x00\x35\x00\x00\x00\x66\x02\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x65\x02\x00\x00\x00\x00\x00\x00\x67\x02\x33\x00\x00\x00\x00\x00\x66\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd7\x03\x00\x00\x00\x00\x7a\x03\x00\x00\x00\x00\x00\x00\xd8\x03\x00\x00\x00\x00\x67\x02\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x33\x00\x6d\x00\x35\x00\x5b\x00\x00\x00\x38\x00\x39\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x65\x02\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x6d\x00\x00\x00\x66\x02\x00\x00\x00\x00\x00\x00\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x9b\x02\x00\x00\x00\x00\x00\x00\x67\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\x00\x57\x01\xdd\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x33\x00\x6d\x00\x35\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x00\xbd\x00\xd7\x00\xbe\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x65\x02\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\xd8\x00\x00\x00\x66\x02\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcd\x00\x00\x00\x00\x00\xd9\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x00\x00\x8b\x01\x31\x05\xda\x00\x00\x00\x67\x02\x00\x00\x00\x00\xdb\x00\x57\x01\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x35\x00\x00\x00\x00\x00\x38\x00\x39\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\xaa\x01\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x38\x00\x6d\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\x00\x00\x8b\x01\x6c\x04\x00\x00\x73\x00\x74\x00\x00\x00\x33\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8b\x01\x73\x00\x74\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x33\x00\x6d\x00\x35\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\x00\x00\x00\x00\x73\x00\x74\x00\xaa\x01\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\xab\x01\x6d\x00\x33\x00\x00\x00\x35\x00\x00\x00\x00\x00\x38\x00\x39\x00\x00\x00\xac\x01\x8c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8d\x01\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x3b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8b\x01\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\x6d\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x33\x00\x00\x00\x35\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\x73\x00\x74\x00\x00\x00\x00\x00\xaa\x01\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\xb1\x04\x6d\x00\x33\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\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x34\x02\x6b\x00\x6c\x00\x00\x00\x6d\x00\x33\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7b\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\xaa\x01\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\xac\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x33\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x38\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x73\x00\x74\x00\x8b\x01\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x35\x00\x00\x00\x00\x00\x6d\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\x00\x00\xaa\x01\x00\x00\x73\x00\x00\x00\x33\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x38\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8b\x01\x00\x00\x00\x00\x73\x00\x74\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\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x35\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\xaa\x01\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x55\x03\x6b\x00\x6c\x00\x33\x00\x6d\x00\x35\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x56\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\xaa\x01\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x33\x00\x6d\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\x00\x00\x00\x00\x73\x00\x74\x00\x29\x04\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x33\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x38\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\x73\x00\x74\x00\x8b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x38\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xae\x02\x73\x00\x74\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x50\x04\x00\x00\x73\x00\x74\x00\x00\x00\x33\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x29\x04\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x04\x00\x00\x00\x00\x73\x00\x74\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x9b\x02\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x38\x00\x6d\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\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x33\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\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\x02\x00\x00\x00\x00\x73\x00\x74\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x00\x00\x00\x00\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\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\x03\x01\x00\x00\x00\x00\x73\x00\x74\x00\x04\x01\x00\x00\x05\x01\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x74\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x6b\x00\x6c\x00\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x34\x02\x00\x00\x73\x00\x74\x00\x00\x00\x00\x00\x06\x01\x07\x01\x08\x01\x09\x01\x0a\x01\x0b\x01\x0c\x01\x0d\x01\x0e\x01\x0f\x01\x10\x01\x11\x01\x12\x01\x13\x01\x14\x01\x15\x01\x16\x01\x17\x01\x18\x01\x19\x01\x1a\x01\x1b\x01\x1c\x01\x1d\x01\x1e\x01\x1f\x01\x20\x01\x21\x01\x22\x01\x23\x01\x24\x01\x25\x01\x26\x01\x27\x01\x28\x01\x29\x01\x2a\x01\x2b\x01\x2c\x01\x2d\x01\x2e\x01\x2f\x01\x30\x01\x31\x01\x32\x01\x33\x01\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x00\x39\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x33\x00\x36\x01\x00\x00\x37\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x38\x01\x00\x00\x6d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x34\x02\x00\x00\x00\x00\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x73\x00\x38\x00\x39\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\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\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x6d\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x34\x02\x00\x00\x34\x04\x00\x00\x33\x00\x00\x00\x00\x00\x00\x00\x73\x00\x00\x00\x6d\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x35\x02\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x33\x00\x34\x02\x00\x00\x00\x00\x73\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\xcb\xfe\x00\x00\x00\x00\x73\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x6d\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x00\x00\x6d\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x00\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\x6d\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x73\x00\x00\x00\x6d\x00\x00\x00\xcb\xfe\xcb\xfe\xcb\xfe\xcb\xfe\x00\x00\xcb\xfe\xcb\xfe\xcb\xfe\xcb\xfe\xcb\xfe\xcb\xfe\xcb\xfe\xcb\xfe\xcb\xfe\x00\x00\x00\x00\x00\x00\x73\x00\x00\x00\x00\x00\x00\x00\x5b\x00\x97\x00\x98\x00\x99\x00\xcb\xfe\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x48\x01\x49\x01\xf3\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\xcb\xfe\x00\x00\x6d\x00\x23\x00\xc7\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x73\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\x00\x00\x00\x00\x00\x00\xd1\x02\xd2\x02\xd3\x02\xd4\x02\x26\x00\xd5\x02\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\xca\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xc7\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\xdb\x02\xd2\x02\xd3\x02\xd4\x02\x00\x00\xd5\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xc7\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\xd3\x02\xd4\x02\x00\x00\xd5\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xc7\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfb\x03\xd4\x02\x00\x00\xd5\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xc7\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdf\x03\xc9\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xc7\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6f\x03\xc9\x02\x00\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\xca\x02\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x23\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x00\x00\x00\x00\x00\x31\x00\x00\x00\x72\x03\x00\x00\x13\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x24\x00\x00\x00\x20\x00\x21\x00\x22\x00\x6c\x02\x00\x00\x13\x02\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x02\xc9\x02\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xca\x02\xa4\x01\x00\x00\x00\x00\xa5\x01\x1e\x00\x1f\x00\x31\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x23\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x23\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x00\x00\x00\x00\x00\x31\x00\x00\x00\x12\x02\x00\x00\x13\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\xc7\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x24\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x02\x00\x00\x13\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\xf3\x03\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\xca\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\xf7\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x24\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\xa4\x04\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x31\x00\xf9\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\xd2\x04\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x8d\x04\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x0a\x04\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x0b\x04\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x0c\x04\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x0e\x04\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x52\x04\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x9d\x03\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\xe0\x03\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xf4\x03\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x10\x03\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xac\x01\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\xc1\x00\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x3f\x01\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x40\x01\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xa2\x00\xa3\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x5e\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x5f\x01\x60\x01\x00\x00\x00\x00\x00\x00\x61\x01\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\x62\x01\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x63\x01\x52\x01\xd2\x00\x64\x01\x65\x01\x31\x00\x4b\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x4c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x4b\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x57\x01\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x58\x01\x59\x01\x4b\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x5b\x01\x5c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\xd8\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\xd9\x02\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdd\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\xd9\x02\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x4b\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\xde\x02\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4b\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\xe1\x02\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x4b\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\xe8\x02\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4b\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\xb5\x01\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x4b\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\xbd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x4f\x01\x00\x00\x50\x01\x00\x00\x00\x00\x51\x01\xe4\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb9\x00\xba\x00\x00\x00\x52\x01\x00\x00\x53\x01\x54\x01\x31\x00\x9f\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\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\x03\x16\x03\x00\x00\x00\x00\x00\x00\x17\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x9f\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x9f\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0d\x04\x00\x00\x23\x00\x00\x00\x17\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\xc0\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x9f\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x79\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7a\x02\x00\x00\x23\x00\x00\x00\xc1\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x9f\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\xe4\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe5\x02\x23\x00\x00\x00\xe3\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\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x41\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\x01\x00\x00\x23\x00\x00\x00\x9f\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x1e\x05\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x70\x04\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\xff\x03\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x01\x04\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x08\x03\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x71\x03\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x69\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x6a\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x70\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x71\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\xcc\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\xcd\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\xd7\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\xdc\x02\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x9d\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x9e\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x9f\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\xa0\x01\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\xfc\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\xfe\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x50\x04\x1a\x00\x3e\x01\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\xc5\x01\x1a\x00\x3e\x01\x1c\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x3d\x01\x1a\x00\x3e\x01\x1c\x00\x00\x00\x31\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\xa5\x01\x00\x00\x1f\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xcd\x01\xf3\x00\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x00\x00\x23\x00\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\x00\xf3\x00\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x7c\x02\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x23\x00\x00\x00\x00\x00\x7d\x02\x00\x01\x01\x01\x00\x00\x7e\x02\x8a\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7c\x02\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x7d\x02\x00\x01\x01\x01\x00\x00\x7e\x02\x7f\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xa7\x03\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xbc\x02\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf9\x02\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xfd\x02\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xad\x01\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xae\x01\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x23\x00\x00\x00\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\x01\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x10\x02\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x23\x00\x00\x00\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\x01\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x45\x01\x21\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x23\x00\x00\x00\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\x01\x21\x00\x22\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x26\x00\x00\x00\x00\x00\x27\x00\x28\x00\x00\x00\x29\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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 (11, 760) [ (11 , happyReduce_11), (12 , happyReduce_12), (13 , happyReduce_13), (14 , happyReduce_14), (15 , happyReduce_15), (16 , happyReduce_16), (17 , happyReduce_17), (18 , happyReduce_18), (19 , happyReduce_19), (20 , happyReduce_20), (21 , happyReduce_21), (22 , happyReduce_22), (23 , happyReduce_23), (24 , happyReduce_24), (25 , happyReduce_25), (26 , happyReduce_26), (27 , happyReduce_27), (28 , happyReduce_28), (29 , happyReduce_29), (30 , happyReduce_30), (31 , happyReduce_31), (32 , happyReduce_32), (33 , happyReduce_33), (34 , happyReduce_34), (35 , happyReduce_35), (36 , happyReduce_36), (37 , happyReduce_37), (38 , happyReduce_38), (39 , happyReduce_39), (40 , happyReduce_40), (41 , happyReduce_41), (42 , happyReduce_42), (43 , happyReduce_43), (44 , happyReduce_44), (45 , happyReduce_45), (46 , happyReduce_46), (47 , happyReduce_47), (48 , happyReduce_48), (49 , happyReduce_49), (50 , happyReduce_50), (51 , happyReduce_51), (52 , happyReduce_52), (53 , happyReduce_53), (54 , happyReduce_54), (55 , happyReduce_55), (56 , happyReduce_56), (57 , happyReduce_57), (58 , happyReduce_58), (59 , happyReduce_59), (60 , happyReduce_60), (61 , happyReduce_61), (62 , happyReduce_62), (63 , happyReduce_63), (64 , happyReduce_64), (65 , happyReduce_65), (66 , happyReduce_66), (67 , happyReduce_67), (68 , happyReduce_68), (69 , happyReduce_69), (70 , happyReduce_70), (71 , happyReduce_71), (72 , happyReduce_72), (73 , happyReduce_73), (74 , happyReduce_74), (75 , happyReduce_75), (76 , happyReduce_76), (77 , happyReduce_77), (78 , happyReduce_78), (79 , happyReduce_79), (80 , happyReduce_80), (81 , happyReduce_81), (82 , happyReduce_82), (83 , happyReduce_83), (84 , happyReduce_84), (85 , happyReduce_85), (86 , happyReduce_86), (87 , happyReduce_87), (88 , happyReduce_88), (89 , happyReduce_89), (90 , happyReduce_90), (91 , happyReduce_91), (92 , happyReduce_92), (93 , happyReduce_93), (94 , happyReduce_94), (95 , happyReduce_95), (96 , happyReduce_96), (97 , happyReduce_97), (98 , happyReduce_98), (99 , happyReduce_99), (100 , happyReduce_100), (101 , happyReduce_101), (102 , happyReduce_102), (103 , happyReduce_103), (104 , happyReduce_104), (105 , happyReduce_105), (106 , happyReduce_106), (107 , happyReduce_107), (108 , happyReduce_108), (109 , happyReduce_109), (110 , happyReduce_110), (111 , happyReduce_111), (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) ] happy_n_terms = 151 :: Int happy_n_nonterms = 268 :: Int happyReduce_11 = happySpecReduce_2 0# happyReduction_11 happyReduction_11 happy_x_2 happy_x_1 = case happyOut18 happy_x_1 of { happy_var_1 -> case happyOut15 happy_x_2 of { happy_var_2 -> happyIn14 (let (os,ss,l) = happy_var_1 in map (\x -> x os ss l) happy_var_2 )}} happyReduce_12 = happySpecReduce_2 1# happyReduction_12 happyReduction_12 happy_x_2 happy_x_1 = case happyOut22 happy_x_1 of { happy_var_1 -> case happyOut15 happy_x_2 of { happy_var_2 -> happyIn15 (happy_var_1 : happy_var_2 )}} happyReduce_13 = happySpecReduce_1 1# happyReduction_13 happyReduction_13 happy_x_1 = case happyOut22 happy_x_1 of { happy_var_1 -> happyIn15 ([happy_var_1] )} happyReduce_14 = happyMonadReduce 2# 2# happyReduction_14 happyReduction_14 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut18 happy_x_1 of { happy_var_1 -> case happyOut17 happy_x_2 of { happy_var_2 -> ( checkPageModule happy_var_2 happy_var_1)}} ) (\r -> happyReturn (happyIn16 r)) happyReduce_15 = happyMonadReduce 5# 2# happyReduction_15 happyReduction_15 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut18 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 XCodeTagOpen) -> case happyOut22 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 XCodeTagClose) -> case happyOut17 happy_x_5 of { happy_var_5 -> ( let (os,ss,l) = happy_var_1 in checkHybridModule happy_var_5 (happy_var_3 os ss l) happy_var_2 happy_var_4)}}}}} ) (\r -> happyReturn (happyIn16 r)) happyReduce_16 = happySpecReduce_2 2# happyReduction_16 happyReduction_16 happy_x_2 happy_x_1 = case happyOut18 happy_x_1 of { happy_var_1 -> case happyOut22 happy_x_2 of { happy_var_2 -> happyIn16 (let (os,ss,l) = happy_var_1 in happy_var_2 os ss l )}} happyReduce_17 = happyMonadReduce 9# 3# happyReduction_17 happyReduction_17 (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) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 XStdTagOpen) -> case happyOut195 happy_x_2 of { happy_var_2 -> case happyOut198 happy_x_3 of { happy_var_3 -> case happyOut200 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 XStdTagClose) -> case happyOut193 happy_x_6 of { happy_var_6 -> case happyOutTok happy_x_7 of { (Loc happy_var_7 XCloseTagOpen) -> case happyOut195 happy_x_8 of { happy_var_8 -> case happyOutTok happy_x_9 of { (Loc happy_var_9 XStdTagClose) -> ( do { n <- checkEqNames happy_var_2 happy_var_8; let { cn = reverse happy_var_6; as = reverse happy_var_3; }; return $ XTag (happy_var_1 <^^> happy_var_9 <** [happy_var_1,happy_var_5,happy_var_7,happy_var_9]) n as happy_var_4 cn })}}}}}}}}} ) (\r -> happyReturn (happyIn17 r)) happyReduce_18 = happyReduce 5# 3# happyReduction_18 happyReduction_18 (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 { (Loc happy_var_1 XStdTagOpen) -> case happyOut195 happy_x_2 of { happy_var_2 -> case happyOut198 happy_x_3 of { happy_var_3 -> case happyOut200 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 XEmptyTagClose) -> happyIn17 (XETag (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_5]) happy_var_2 (reverse happy_var_3) happy_var_4 ) `HappyStk` happyRest}}}}} happyReduce_19 = happySpecReduce_3 4# happyReduction_19 happyReduction_19 happy_x_3 happy_x_2 happy_x_1 = case happyOut261 happy_x_1 of { happy_var_1 -> case happyOut19 happy_x_2 of { happy_var_2 -> case happyOut262 happy_x_3 of { happy_var_3 -> happyIn18 (let (os,ss,ml) = happy_var_2 in (os,happy_var_1:ss++[happy_var_3],happy_var_1 <^^> happy_var_3) )}}} happyReduce_20 = happySpecReduce_3 5# happyReduction_20 happyReduction_20 happy_x_3 happy_x_2 happy_x_1 = case happyOut20 happy_x_1 of { happy_var_1 -> case happyOut28 happy_x_2 of { happy_var_2 -> case happyOut19 happy_x_3 of { happy_var_3 -> happyIn19 (let (os,ss,ml) = happy_var_3; ss' = reverse happy_var_2 ++ ss; l' = case happy_var_2 of [] -> ann happy_var_1 _ -> ann happy_var_1 <++> nIS (last happy_var_2); in (happy_var_1 : os, ss', Just $ l' <+?> ml) )}}} happyReduce_21 = happySpecReduce_0 5# happyReduction_21 happyReduction_21 = happyIn19 (([],[],Nothing) ) happyReduce_22 = happyReduce 4# 6# happyReduction_22 happyReduction_22 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 LANGUAGE) -> case happyOut21 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 PragmaEnd) -> happyIn20 (LanguagePragma (happy_var_1 <^^> happy_var_4 <** (happy_var_1:snd happy_var_2 ++ reverse happy_var_3 ++ [happy_var_4])) (fst happy_var_2) ) `HappyStk` happyRest}}}} happyReduce_23 = happySpecReduce_3 6# happyReduction_23 happyReduction_23 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 { (Loc happy_var_3 PragmaEnd) -> happyIn20 (let Loc l (OPTIONS (mc, s)) = happy_var_1 in OptionsPragma (l <^^> happy_var_3 <** (l:reverse happy_var_2 ++ [happy_var_3])) (readTool mc) s )}}} happyReduce_24 = happySpecReduce_3 6# happyReduction_24 happyReduction_24 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 ANN) -> case happyOut103 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> happyIn20 (AnnModulePragma (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_25 = happySpecReduce_3 7# happyReduction_25 happyReduction_25 happy_x_3 happy_x_2 happy_x_1 = case happyOut21 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut252 happy_x_3 of { happy_var_3 -> happyIn21 ((fst happy_var_1 ++ [happy_var_3], snd happy_var_1 ++ [happy_var_2]) )}}} happyReduce_26 = happySpecReduce_2 7# happyReduction_26 happyReduction_26 happy_x_2 happy_x_1 = case happyOut252 happy_x_2 of { happy_var_2 -> happyIn21 (([happy_var_2],[]) )} happyReduce_27 = happySpecReduce_2 8# happyReduction_27 happyReduction_27 happy_x_2 happy_x_1 = case happyOut23 happy_x_1 of { happy_var_1 -> case happyOut25 happy_x_2 of { happy_var_2 -> happyIn22 (let (is,ds,ss1,inf) = happy_var_2 in \os ss l -> Module (l <++> inf <** (ss ++ ss1)) happy_var_1 os is ds )}} happyReduce_28 = happyReduce 5# 9# happyReduction_28 happyReduction_28 (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 { (Loc happy_var_1 KW_Module) -> case happyOut271 happy_x_2 of { happy_var_2 -> case happyOut24 happy_x_3 of { happy_var_3 -> case happyOut29 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 KW_Where) -> happyIn23 (Just $ ModuleHead (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_5]) happy_var_2 happy_var_3 happy_var_4 ) `HappyStk` happyRest}}}}} happyReduce_29 = happySpecReduce_0 9# happyReduction_29 happyReduction_29 = happyIn23 (Nothing ) happyReduce_30 = happySpecReduce_3 10# happyReduction_30 happyReduction_30 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 DEPRECATED) -> case happyOutTok happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> happyIn24 (let Loc l (StringTok (s,_)) = happy_var_2 in Just $ DeprText (happy_var_1 <^^> happy_var_3 <** [happy_var_1,l,happy_var_3]) s )}}} happyReduce_31 = happySpecReduce_3 10# happyReduction_31 happyReduction_31 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 WARNING) -> case happyOutTok happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> happyIn24 (let Loc l (StringTok (s,_)) = happy_var_2 in Just $ WarnText (happy_var_1 <^^> happy_var_3 <** [happy_var_1,l,happy_var_3]) s )}}} happyReduce_32 = happySpecReduce_0 10# happyReduction_32 happyReduction_32 = happyIn24 (Nothing ) happyReduce_33 = happySpecReduce_3 11# happyReduction_33 happyReduction_33 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftCurly) -> case happyOut26 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightCurly) -> happyIn25 (let (is,ds,ss) = happy_var_2 in (is,ds,happy_var_1:ss ++ [happy_var_3], happy_var_1 <^^> happy_var_3) )}}} happyReduce_34 = happyReduce 4# 11# happyReduction_34 happyReduction_34 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut261 happy_x_1 of { happy_var_1 -> case happyOut26 happy_x_2 of { happy_var_2 -> case happyOut262 happy_x_3 of { happy_var_3 -> happyIn25 (let (is,ds,ss) = happy_var_2 in (is,ds,happy_var_1:ss ++ [happy_var_3], happy_var_1 <^^> happy_var_3) ) `HappyStk` happyRest}}} happyReduce_35 = happyReduce 4# 12# happyReduction_35 happyReduction_35 (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 happyOut37 happy_x_2 of { happy_var_2 -> case happyOut27 happy_x_3 of { happy_var_3 -> case happyOut58 happy_x_4 of { happy_var_4 -> happyIn26 ((reverse (fst happy_var_2), fst happy_var_4, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3 ++ snd happy_var_4) ) `HappyStk` happyRest}}}} happyReduce_36 = happySpecReduce_2 12# happyReduction_36 happyReduction_36 happy_x_2 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> case happyOut58 happy_x_2 of { happy_var_2 -> happyIn26 (([], fst happy_var_2, reverse happy_var_1 ++ snd happy_var_2) )}} happyReduce_37 = happySpecReduce_3 12# happyReduction_37 happyReduction_37 happy_x_3 happy_x_2 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> case happyOut37 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> happyIn26 ((reverse (fst happy_var_2), [], reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3) )}}} happyReduce_38 = happySpecReduce_1 12# happyReduction_38 happyReduction_38 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> happyIn26 (([], [], reverse happy_var_1) )} happyReduce_39 = happySpecReduce_2 13# happyReduction_39 happyReduction_39 happy_x_2 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 SemiColon) -> happyIn27 (happy_var_2 : happy_var_1 )}} happyReduce_40 = happySpecReduce_1 14# happyReduction_40 happyReduction_40 happy_x_1 = case happyOut27 happy_x_1 of { happy_var_1 -> happyIn28 (happy_var_1 )} happyReduce_41 = happySpecReduce_0 14# happyReduction_41 happyReduction_41 = happyIn28 ([] ) happyReduce_42 = happySpecReduce_1 15# happyReduction_42 happyReduction_42 happy_x_1 = case happyOut30 happy_x_1 of { happy_var_1 -> happyIn29 (Just happy_var_1 )} happyReduce_43 = happySpecReduce_0 15# happyReduction_43 happyReduction_43 = happyIn29 (Nothing ) happyReduce_44 = happyReduce 4# 16# happyReduction_44 happyReduction_44 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut32 happy_x_2 of { happy_var_2 -> case happyOut31 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> happyIn30 (ExportSpecList (happy_var_1 <^^> happy_var_4 <** (happy_var_1:reverse (snd happy_var_2) ++ happy_var_3 ++ [happy_var_4])) (reverse (fst happy_var_2)) ) `HappyStk` happyRest}}}} happyReduce_45 = happySpecReduce_3 16# happyReduction_45 happyReduction_45 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut31 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn30 (ExportSpecList (happy_var_1 <^^> happy_var_3 <** (happy_var_1:happy_var_2++[happy_var_3])) [] )}}} happyReduce_46 = happySpecReduce_1 17# happyReduction_46 happyReduction_46 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Comma) -> happyIn31 ([happy_var_1] )} happyReduce_47 = happySpecReduce_0 17# happyReduction_47 happyReduction_47 = happyIn31 ([ ] ) happyReduce_48 = happySpecReduce_3 18# happyReduction_48 happyReduction_48 happy_x_3 happy_x_2 happy_x_1 = case happyOut32 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut33 happy_x_3 of { happy_var_3 -> happyIn32 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) )}}} happyReduce_49 = happySpecReduce_1 18# happyReduction_49 happyReduction_49 happy_x_1 = case happyOut33 happy_x_1 of { happy_var_1 -> happyIn32 (([happy_var_1],[]) )} happyReduce_50 = happySpecReduce_1 19# happyReduction_50 happyReduction_50 happy_x_1 = case happyOut233 happy_x_1 of { happy_var_1 -> happyIn33 (EVar (ann happy_var_1) happy_var_1 )} happyReduce_51 = happyMonadReduce 2# 19# happyReduction_51 happyReduction_51 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Type) -> case happyOut36 happy_x_2 of { happy_var_2 -> ( do { checkEnabled ExplicitNamespaces; return (EAbs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1, srcInfoSpan (ann happy_var_2)]) (TypeNamespace (nIS happy_var_1 <** [happy_var_1])) happy_var_2) })}} ) (\r -> happyReturn (happyIn33 r)) happyReduce_52 = happySpecReduce_1 19# happyReduction_52 happyReduction_52 happy_x_1 = case happyOut273 happy_x_1 of { happy_var_1 -> happyIn33 (EAbs (ann happy_var_1) (NoNamespace (ann happy_var_1)) happy_var_1 )} happyReduce_53 = happySpecReduce_3 19# happyReduction_53 happyReduction_53 happy_x_3 happy_x_2 happy_x_1 = case happyOut273 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn33 (EThingWith (ann happy_var_1 <++> nIS happy_var_3 <** [happy_var_2,happy_var_3]) (NoWildcard noSrcSpan) happy_var_1 [] )}}} happyReduce_54 = happyMonadReduce 4# 19# happyReduction_54 happyReduction_54 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut273 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOut34 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> ( mkEThingWith (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2:reverse (snd happy_var_3) ++ [happy_var_4])) happy_var_1 (reverse $ fst happy_var_3))}}}} ) (\r -> happyReturn (happyIn33 r)) happyReduce_55 = happySpecReduce_2 19# happyReduction_55 happyReduction_55 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Module) -> case happyOut271 happy_x_2 of { happy_var_2 -> happyIn33 (EModuleContents (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_56 = happyMonadReduce 2# 19# happyReduction_56 happyReduction_56 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Pattern) -> case happyOut236 happy_x_2 of { happy_var_2 -> ( do { checkEnabled PatternSynonyms; return $ EAbs (nIS happy_var_1 <++> (ann happy_var_2) <** [happy_var_1]) (PatternNamespace (nIS happy_var_1)) happy_var_2 })}} ) (\r -> happyReturn (happyIn33 r)) happyReduce_57 = happySpecReduce_3 20# happyReduction_57 happyReduction_57 happy_x_3 happy_x_2 happy_x_1 = case happyOut34 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut35 happy_x_3 of { happy_var_3 -> happyIn34 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) )}}} happyReduce_58 = happySpecReduce_1 20# happyReduction_58 happyReduction_58 happy_x_1 = case happyOut35 happy_x_1 of { happy_var_1 -> happyIn34 (([happy_var_1],[]) )} happyReduce_59 = happySpecReduce_1 21# happyReduction_59 happyReduction_59 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 DotDot) -> happyIn35 (Left happy_var_1 )} happyReduce_60 = happySpecReduce_1 21# happyReduction_60 happyReduction_60 happy_x_1 = case happyOut50 happy_x_1 of { happy_var_1 -> happyIn35 (Right happy_var_1 )} happyReduce_61 = happySpecReduce_1 22# happyReduction_61 happyReduction_61 happy_x_1 = case happyOut233 happy_x_1 of { happy_var_1 -> happyIn36 (happy_var_1 )} happyReduce_62 = happySpecReduce_1 22# happyReduction_62 happyReduction_62 happy_x_1 = case happyOut251 happy_x_1 of { happy_var_1 -> happyIn36 (happy_var_1 )} happyReduce_63 = happySpecReduce_3 23# happyReduction_63 happyReduction_63 happy_x_3 happy_x_2 happy_x_1 = case happyOut37 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> case happyOut38 happy_x_3 of { happy_var_3 -> happyIn37 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) )}}} happyReduce_64 = happySpecReduce_1 23# happyReduction_64 happyReduction_64 happy_x_1 = case happyOut38 happy_x_1 of { happy_var_1 -> happyIn37 (([happy_var_1],[]) )} happyReduce_65 = happyReduce 8# 24# happyReduction_65 happyReduction_65 (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 { (Loc happy_var_1 KW_Import) -> case happyOut39 happy_x_2 of { happy_var_2 -> case happyOut40 happy_x_3 of { happy_var_3 -> case happyOut41 happy_x_4 of { happy_var_4 -> case happyOut42 happy_x_5 of { happy_var_5 -> case happyOut271 happy_x_6 of { happy_var_6 -> case happyOut43 happy_x_7 of { happy_var_7 -> case happyOut44 happy_x_8 of { happy_var_8 -> happyIn38 (let { (mmn,ss,ml) = happy_var_7 ; l = nIS happy_var_1 <++> ann happy_var_6 <+?> ml <+?> (fmap ann) happy_var_8 <** (happy_var_1:snd happy_var_2 ++ snd happy_var_3 ++ snd happy_var_4 ++ snd happy_var_5 ++ ss)} in ImportDecl l happy_var_6 (fst happy_var_4) (fst happy_var_2) (fst happy_var_3) (fst happy_var_5) mmn happy_var_8 ) `HappyStk` happyRest}}}}}}}} happyReduce_66 = happySpecReduce_2 25# happyReduction_66 happyReduction_66 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 SOURCE) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 PragmaEnd) -> happyIn39 ((True,[happy_var_1,happy_var_2]) )}} happyReduce_67 = happySpecReduce_0 25# happyReduction_67 happyReduction_67 = happyIn39 ((False,[]) ) happyReduce_68 = happyMonadReduce 1# 26# happyReduction_68 happyReduction_68 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Safe) -> ( do { checkEnabledOneOf [Safe, SafeImports, Trustworthy] ; return (True, [happy_var_1]) })} ) (\r -> happyReturn (happyIn40 r)) happyReduce_69 = happySpecReduce_0 26# happyReduction_69 happyReduction_69 = happyIn40 ((False, []) ) happyReduce_70 = happySpecReduce_1 27# happyReduction_70 happyReduction_70 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Qualified) -> happyIn41 ((True,[happy_var_1]) )} happyReduce_71 = happySpecReduce_0 27# happyReduction_71 happyReduction_71 = happyIn41 ((False, []) ) happyReduce_72 = happyMonadReduce 1# 28# happyReduction_72 happyReduction_72 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> ( do { checkEnabled PackageImports ; let { Loc l (StringTok (s,_)) = happy_var_1 } ; return $ (Just s,[l]) })} ) (\r -> happyReturn (happyIn42 r)) happyReduce_73 = happySpecReduce_0 28# happyReduction_73 happyReduction_73 = happyIn42 ((Nothing,[]) ) happyReduce_74 = happySpecReduce_2 29# happyReduction_74 happyReduction_74 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_As) -> case happyOut271 happy_x_2 of { happy_var_2 -> happyIn43 ((Just happy_var_2,[happy_var_1],Just (nIS happy_var_1 <++> ann happy_var_2)) )}} happyReduce_75 = happySpecReduce_0 29# happyReduction_75 happyReduction_75 = happyIn43 ((Nothing,[],Nothing) ) happyReduce_76 = happySpecReduce_1 30# happyReduction_76 happyReduction_76 happy_x_1 = case happyOut45 happy_x_1 of { happy_var_1 -> happyIn44 (Just happy_var_1 )} happyReduce_77 = happySpecReduce_0 30# happyReduction_77 happyReduction_77 = happyIn44 (Nothing ) happyReduce_78 = happyReduce 5# 31# happyReduction_78 happyReduction_78 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut46 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOut47 happy_x_3 of { happy_var_3 -> case happyOut31 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 RightParen) -> happyIn45 (let {(b,ml,s) = happy_var_1 ; l = (ml (happy_var_2 <^^> happy_var_5)) <** (s ++ happy_var_2:reverse (snd happy_var_3) ++ happy_var_4 ++ [happy_var_5])} in ImportSpecList l b (reverse (fst happy_var_3)) ) `HappyStk` happyRest}}}}} happyReduce_79 = happyReduce 4# 31# happyReduction_79 happyReduction_79 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut46 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOut31 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> happyIn45 (let {(b,ml,s) = happy_var_1 ; l = (ml (happy_var_2 <^^> happy_var_4)) <** (s ++ happy_var_2:happy_var_3 ++ [happy_var_4])} in ImportSpecList l b [] ) `HappyStk` happyRest}}}} happyReduce_80 = happySpecReduce_1 32# happyReduction_80 happyReduction_80 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Hiding) -> happyIn46 ((True,Just (nIS happy_var_1),[happy_var_1]) )} happyReduce_81 = happySpecReduce_0 32# happyReduction_81 happyReduction_81 = happyIn46 ((False,Nothing,[]) ) happyReduce_82 = happySpecReduce_3 33# happyReduction_82 happyReduction_82 happy_x_3 happy_x_2 happy_x_1 = case happyOut47 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut48 happy_x_3 of { happy_var_3 -> happyIn47 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) )}}} happyReduce_83 = happySpecReduce_1 33# happyReduction_83 happyReduction_83 happy_x_1 = case happyOut48 happy_x_1 of { happy_var_1 -> happyIn47 (([happy_var_1],[]) )} happyReduce_84 = happySpecReduce_1 34# happyReduction_84 happyReduction_84 happy_x_1 = case happyOut231 happy_x_1 of { happy_var_1 -> happyIn48 (IVar (ann happy_var_1) happy_var_1 )} happyReduce_85 = happyMonadReduce 2# 34# happyReduction_85 happyReduction_85 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Type) -> case happyOut231 happy_x_2 of { happy_var_2 -> ( do { checkEnabled ExplicitNamespaces; return (IAbs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1, srcInfoSpan (ann happy_var_2)]) (TypeNamespace (nIS happy_var_1 <** [happy_var_1])) happy_var_2) })}} ) (\r -> happyReturn (happyIn48 r)) happyReduce_86 = happyMonadReduce 2# 34# happyReduction_86 happyReduction_86 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Pattern) -> case happyOut235 happy_x_2 of { happy_var_2 -> ( do { checkEnabled PatternSynonyms; return (IAbs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1, srcInfoSpan (ann happy_var_2)]) (PatternNamespace (nIS happy_var_1 <** [happy_var_1])) happy_var_2) })}} ) (\r -> happyReturn (happyIn48 r)) happyReduce_87 = happySpecReduce_1 34# happyReduction_87 happyReduction_87 happy_x_1 = case happyOut272 happy_x_1 of { happy_var_1 -> happyIn48 (IAbs (ann happy_var_1) (NoNamespace (ann happy_var_1)) happy_var_1 )} happyReduce_88 = happyReduce 4# 34# happyReduction_88 happyReduction_88 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut272 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 DotDot) -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> happyIn48 (IThingAll (ann happy_var_1 <++> nIS happy_var_4 <** [happy_var_2,happy_var_3,happy_var_4]) happy_var_1 ) `HappyStk` happyRest}}}} happyReduce_89 = happySpecReduce_3 34# happyReduction_89 happyReduction_89 happy_x_3 happy_x_2 happy_x_1 = case happyOut272 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn48 (IThingWith (ann happy_var_1 <++> nIS happy_var_3 <** [happy_var_2,happy_var_3]) happy_var_1 [] )}}} happyReduce_90 = happyReduce 4# 34# happyReduction_90 happyReduction_90 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut272 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOut49 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> happyIn48 (IThingWith (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2:reverse (snd happy_var_3) ++ [happy_var_4])) happy_var_1 (reverse (fst happy_var_3)) ) `HappyStk` happyRest}}}} happyReduce_91 = happySpecReduce_3 35# happyReduction_91 happyReduction_91 happy_x_3 happy_x_2 happy_x_1 = case happyOut49 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut50 happy_x_3 of { happy_var_3 -> happyIn49 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) )}}} happyReduce_92 = happySpecReduce_1 35# happyReduction_92 happyReduction_92 happy_x_1 = case happyOut50 happy_x_1 of { happy_var_1 -> happyIn49 (([happy_var_1],[]) )} happyReduce_93 = happySpecReduce_1 36# happyReduction_93 happyReduction_93 happy_x_1 = case happyOut231 happy_x_1 of { happy_var_1 -> happyIn50 (VarName (ann happy_var_1) happy_var_1 )} happyReduce_94 = happySpecReduce_1 36# happyReduction_94 happyReduction_94 happy_x_1 = case happyOut235 happy_x_1 of { happy_var_1 -> happyIn50 (ConName (ann happy_var_1) happy_var_1 )} happyReduce_95 = happySpecReduce_3 37# happyReduction_95 happyReduction_95 happy_x_3 happy_x_2 happy_x_1 = case happyOut53 happy_x_1 of { happy_var_1 -> case happyOut52 happy_x_2 of { happy_var_2 -> case happyOut54 happy_x_3 of { happy_var_3 -> happyIn51 (let (ops,ss,l) = happy_var_3 in InfixDecl (ann happy_var_1 <++> l <** (snd happy_var_2 ++ reverse ss)) happy_var_1 (fst happy_var_2) (reverse ops) )}}} happyReduce_96 = happySpecReduce_0 38# happyReduction_96 happyReduction_96 = happyIn52 ((Nothing, []) ) happyReduce_97 = happyMonadReduce 1# 38# happyReduction_97 happyReduction_97 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> ( let Loc l (IntTok (i,_)) = happy_var_1 in checkPrec i >>= \i -> return (Just i, [l]))} ) (\r -> happyReturn (happyIn52 r)) happyReduce_98 = happySpecReduce_1 39# happyReduction_98 happyReduction_98 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Infix) -> happyIn53 (AssocNone $ nIS happy_var_1 )} happyReduce_99 = happySpecReduce_1 39# happyReduction_99 happyReduction_99 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_InfixL) -> happyIn53 (AssocLeft $ nIS happy_var_1 )} happyReduce_100 = happySpecReduce_1 39# happyReduction_100 happyReduction_100 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_InfixR) -> happyIn53 (AssocRight $ nIS happy_var_1 )} happyReduce_101 = happySpecReduce_3 40# happyReduction_101 happyReduction_101 happy_x_3 happy_x_2 happy_x_1 = case happyOut54 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut242 happy_x_3 of { happy_var_3 -> happyIn54 (let (ops,ss,l) = happy_var_1 in (happy_var_3 : ops, happy_var_2 : ss, l <++> ann happy_var_3) )}}} happyReduce_102 = happySpecReduce_1 40# happyReduction_102 happyReduction_102 happy_x_1 = case happyOut242 happy_x_1 of { happy_var_1 -> happyIn54 (([happy_var_1],[],ann happy_var_1) )} happyReduce_103 = happySpecReduce_0 41# happyReduction_103 happyReduction_103 = happyIn55 (Nothing ) happyReduce_104 = happySpecReduce_1 41# happyReduction_104 happyReduction_104 happy_x_1 = case happyOut56 happy_x_1 of { happy_var_1 -> happyIn55 (Just happy_var_1 )} happyReduce_105 = happyReduce 4# 42# happyReduction_105 happyReduction_105 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 Bar) -> case happyOut275 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightArrow) -> case happyOut57 happy_x_4 of { happy_var_4 -> happyIn56 (InjectivityInfo (nIS happy_var_1 <++> ann (last happy_var_4) <** [happy_var_1,happy_var_3]) happy_var_2 (reverse happy_var_4) ) `HappyStk` happyRest}}}} happyReduce_106 = happySpecReduce_2 43# happyReduction_106 happyReduction_106 happy_x_2 happy_x_1 = case happyOut57 happy_x_1 of { happy_var_1 -> case happyOut275 happy_x_2 of { happy_var_2 -> happyIn57 (happy_var_2 : happy_var_1 )}} happyReduce_107 = happySpecReduce_1 43# happyReduction_107 happyReduction_107 happy_x_1 = case happyOut275 happy_x_1 of { happy_var_1 -> happyIn57 ([happy_var_1] )} happyReduce_108 = happyMonadReduce 2# 44# happyReduction_108 happyReduction_108 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut59 happy_x_1 of { happy_var_1 -> case happyOut28 happy_x_2 of { happy_var_2 -> ( checkRevDecls (fst happy_var_1) >>= \ds -> return (ds, snd happy_var_1 ++ reverse happy_var_2))}} ) (\r -> happyReturn (happyIn58 r)) happyReduce_109 = happySpecReduce_3 45# happyReduction_109 happyReduction_109 happy_x_3 happy_x_2 happy_x_1 = case happyOut59 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> case happyOut60 happy_x_3 of { happy_var_3 -> happyIn59 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) )}}} happyReduce_110 = happySpecReduce_1 45# happyReduction_110 happyReduction_110 happy_x_1 = case happyOut60 happy_x_1 of { happy_var_1 -> happyIn59 (([happy_var_1],[]) )} happyReduce_111 = happyMonadReduce 1# 46# happyReduction_111 happyReduction_111 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut65 happy_x_1 of { happy_var_1 -> ( checkEnabled RoleAnnotations >> return happy_var_1)} ) (\r -> happyReturn (happyIn60 r)) happyReduce_112 = happyMonadReduce 4# 46# happyReduction_112 happyReduction_112 (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 { (Loc happy_var_1 KW_Type) -> case happyOut105 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Equals) -> case happyOut119 happy_x_4 of { happy_var_4 -> ( do { dh <- checkSimpleType happy_var_2; let {l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]}; return (TypeDecl l dh happy_var_4) })}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_113 = happyMonadReduce 6# 46# happyReduction_113 happyReduction_113 (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 { (Loc happy_var_1 KW_Type) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Family) -> case happyOut107 happy_x_3 of { happy_var_3 -> case happyOut62 happy_x_4 of { happy_var_4 -> case happyOut55 happy_x_5 of { happy_var_5 -> case happyOut69 happy_x_6 of { happy_var_6 -> ( do { dh <- checkSimpleType happy_var_3; let {l = nIS happy_var_1 <++> ann happy_var_3 <** [happy_var_1,happy_var_2]}; case happy_var_6 of { Nothing -> return (TypeFamDecl l dh happy_var_4 happy_var_5); Just (x,a) -> return (ClosedTypeFamDecl (l <** [a]) dh happy_var_4 happy_var_5 x); }})}}}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_114 = happyMonadReduce 5# 46# happyReduction_114 happyReduction_114 (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 { (Loc happy_var_1 KW_Type) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Instance) -> case happyOut104 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 Equals) -> case happyOut119 happy_x_5 of { happy_var_5 -> ( do { -- no checkSimpleType happy_var_4 since dtype may contain type patterns checkEnabled TypeFamilies ; let {l = nIS happy_var_1 <++> ann happy_var_5 <** [happy_var_1,happy_var_2,happy_var_4]}; return (TypeInsDecl l happy_var_3 happy_var_5) })}}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_115 = happyMonadReduce 4# 46# happyReduction_115 happyReduction_115 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut73 happy_x_1 of { happy_var_1 -> case happyOut120 happy_x_2 of { happy_var_2 -> case happyOut135 happy_x_3 of { happy_var_3 -> case happyOut143 happy_x_4 of { happy_var_4 -> ( do { (cs,dh) <- checkDataHeader happy_var_2; let { (qds,ss,minf) = happy_var_3; l = happy_var_1 <> happy_var_2 <+?> minf <+?> fmap ann happy_var_4 <** ss}; checkDataOrNew happy_var_1 qds; return (DataDecl l happy_var_1 cs dh (reverse qds) happy_var_4) })}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_116 = happyMonadReduce 5# 46# happyReduction_116 happyReduction_116 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut73 happy_x_1 of { happy_var_1 -> case happyOut120 happy_x_2 of { happy_var_2 -> case happyOut152 happy_x_3 of { happy_var_3 -> case happyOut131 happy_x_4 of { happy_var_4 -> case happyOut143 happy_x_5 of { happy_var_5 -> ( do { (cs,dh) <- checkDataHeader happy_var_2; let { (gs,ss,minf) = happy_var_4; l = ann happy_var_1 <+?> minf <+?> fmap ann happy_var_5 <** (snd happy_var_3 ++ ss)}; checkDataOrNewG happy_var_1 gs; case (gs, fst happy_var_3) of ([], Nothing) -> return (DataDecl l happy_var_1 cs dh [] happy_var_5) _ -> checkEnabled GADTs >> return (GDataDecl l happy_var_1 cs dh (fst happy_var_3) (reverse gs) happy_var_5) })}}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_117 = happyMonadReduce 4# 46# happyReduction_117 happyReduction_117 (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 { (Loc happy_var_1 KW_Data) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Family) -> case happyOut120 happy_x_3 of { happy_var_3 -> case happyOut61 happy_x_4 of { happy_var_4 -> ( do { (cs,dh) <- checkDataHeader happy_var_3; let {l = nIS happy_var_1 <++> ann happy_var_3 <+?> (fmap ann) happy_var_4 <** [happy_var_1,happy_var_2]}; return (DataFamDecl l cs dh happy_var_4) })}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_118 = happyMonadReduce 5# 46# happyReduction_118 happyReduction_118 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut73 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Instance) -> case happyOut119 happy_x_3 of { happy_var_3 -> case happyOut135 happy_x_4 of { happy_var_4 -> case happyOut143 happy_x_5 of { happy_var_5 -> ( do { -- (cs,c,t) <- checkDataHeader happy_var_4; checkEnabled TypeFamilies ; let { (qds,ss,minf) = happy_var_4 ; l = happy_var_1 <> happy_var_3 <+?> minf <+?> fmap ann happy_var_5 <** happy_var_2:ss }; checkDataOrNew happy_var_1 qds; return (DataInsDecl l happy_var_1 happy_var_3 (reverse qds) happy_var_5) })}}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_119 = happyMonadReduce 6# 46# happyReduction_119 happyReduction_119 (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 happyOut73 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Instance) -> case happyOut119 happy_x_3 of { happy_var_3 -> case happyOut152 happy_x_4 of { happy_var_4 -> case happyOut131 happy_x_5 of { happy_var_5 -> case happyOut143 happy_x_6 of { happy_var_6 -> ( do { -- (cs,c,t) <- checkDataHeader happy_var_4; checkEnabled TypeFamilies ; let {(gs,ss,minf) = happy_var_5; l = ann happy_var_1 <+?> minf <+?> fmap ann happy_var_6 <** (happy_var_2:snd happy_var_4 ++ ss)}; checkDataOrNewG happy_var_1 gs; return (GDataInsDecl l happy_var_1 happy_var_3 (fst happy_var_4) (reverse gs) happy_var_6) })}}}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_120 = happyMonadReduce 4# 46# happyReduction_120 happyReduction_120 (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 { (Loc happy_var_1 KW_Class) -> case happyOut120 happy_x_2 of { happy_var_2 -> case happyOut128 happy_x_3 of { happy_var_3 -> case happyOut153 happy_x_4 of { happy_var_4 -> ( do { (cs,dh) <- checkClassHeader happy_var_2; let {(fds,ss1,minf1) = happy_var_3;(mcs,ss2,minf2) = happy_var_4} ; let { l = nIS happy_var_1 <++> ann happy_var_2 <+?> minf1 <+?> minf2 <** (happy_var_1:ss1 ++ ss2)} ; return (ClassDecl l cs dh fds mcs) })}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_121 = happyMonadReduce 4# 46# happyReduction_121 happyReduction_121 (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 { (Loc happy_var_1 KW_Instance) -> case happyOut68 happy_x_2 of { happy_var_2 -> case happyOut120 happy_x_3 of { happy_var_3 -> case happyOut159 happy_x_4 of { happy_var_4 -> ( do { ih <- checkInstHeader happy_var_3; let {(mis,ss,minf) = happy_var_4}; return (InstDecl (nIS happy_var_1 <++> ann happy_var_3 <+?> minf <** (happy_var_1:ss)) happy_var_2 ih mis) })}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_122 = happyMonadReduce 4# 46# happyReduction_122 happyReduction_122 (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 { (Loc happy_var_1 KW_Deriving) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Instance) -> case happyOut68 happy_x_3 of { happy_var_3 -> case happyOut120 happy_x_4 of { happy_var_4 -> ( do { checkEnabled StandaloneDeriving ; ih <- checkInstHeader happy_var_4; let {l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_2]}; return (DerivDecl l happy_var_3 ih) })}}}} ) (\r -> happyReturn (happyIn60 r)) happyReduce_123 = happyReduce 4# 46# happyReduction_123 happyReduction_123 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Default) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOut74 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> happyIn60 (DefaultDecl (happy_var_1 <^^> happy_var_4 <** (happy_var_1:happy_var_2 : snd happy_var_3 ++ [happy_var_4])) (fst happy_var_3) ) `HappyStk` happyRest}}}} happyReduce_124 = happyMonadReduce 1# 46# happyReduction_124 happyReduction_124 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut172 happy_x_1 of { happy_var_1 -> ( do checkToplevel happy_var_1 checkExpr happy_var_1 >>= \e -> return (SpliceDecl (ann e) e))} ) (\r -> happyReturn (happyIn60 r)) happyReduce_125 = happyReduce 5# 46# happyReduction_125 happyReduction_125 (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 { (Loc happy_var_1 KW_Foreign) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Import) -> case happyOut90 happy_x_3 of { happy_var_3 -> case happyOut91 happy_x_4 of { happy_var_4 -> case happyOut92 happy_x_5 of { happy_var_5 -> happyIn60 (let (s,n,t,ss) = happy_var_5 in ForImp (nIS happy_var_1 <++> ann t <** (happy_var_1:happy_var_2:ss)) happy_var_3 happy_var_4 s n t ) `HappyStk` happyRest}}}}} happyReduce_126 = happyReduce 4# 46# happyReduction_126 happyReduction_126 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Foreign) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Export) -> case happyOut90 happy_x_3 of { happy_var_3 -> case happyOut92 happy_x_4 of { happy_var_4 -> happyIn60 (let (s,n,t,ss) = happy_var_4 in ForExp (nIS happy_var_1 <++> ann t <** (happy_var_1:happy_var_2:ss)) happy_var_3 s n t ) `HappyStk` happyRest}}}} happyReduce_127 = happySpecReduce_3 46# happyReduction_127 happyReduction_127 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 RULES) -> case happyOut93 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> happyIn60 (RulePragmaDecl (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) $ reverse happy_var_2 )}}} happyReduce_128 = happySpecReduce_3 46# happyReduction_128 happyReduction_128 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 DEPRECATED) -> case happyOut99 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> happyIn60 (DeprPragmaDecl (happy_var_1 <^^> happy_var_3 <** (happy_var_1:snd happy_var_2++[happy_var_3])) $ reverse (fst happy_var_2) )}}} happyReduce_129 = happySpecReduce_3 46# happyReduction_129 happyReduction_129 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 WARNING) -> case happyOut99 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> happyIn60 (WarnPragmaDecl (happy_var_1 <^^> happy_var_3 <** (happy_var_1:snd happy_var_2++[happy_var_3])) $ reverse (fst happy_var_2) )}}} happyReduce_130 = happySpecReduce_3 46# happyReduction_130 happyReduction_130 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 ANN) -> case happyOut103 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> happyIn60 (AnnPragma (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_131 = happySpecReduce_1 46# happyReduction_131 happyReduction_131 happy_x_1 = case happyOut77 happy_x_1 of { happy_var_1 -> happyIn60 (happy_var_1 )} happyReduce_132 = happySpecReduce_0 47# happyReduction_132 happyReduction_132 = happyIn61 (Nothing ) happyReduce_133 = happySpecReduce_2 47# happyReduction_133 happyReduction_133 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 DoubleColon) -> case happyOut146 happy_x_2 of { happy_var_2 -> happyIn61 ((Just $ KindSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2) )}} happyReduce_134 = happySpecReduce_0 48# happyReduction_134 happyReduction_134 = happyIn62 (Nothing ) happyReduce_135 = happySpecReduce_2 48# happyReduction_135 happyReduction_135 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 DoubleColon) -> case happyOut146 happy_x_2 of { happy_var_2 -> happyIn62 ((Just $ KindSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2) )}} happyReduce_136 = happySpecReduce_2 48# happyReduction_136 happyReduction_136 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Equals) -> case happyOut125 happy_x_2 of { happy_var_2 -> happyIn62 ((Just $ TyVarSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2) )}} happyReduce_137 = happySpecReduce_0 49# happyReduction_137 happyReduction_137 = happyIn63 ((Nothing, Nothing) ) happyReduce_138 = happySpecReduce_2 49# happyReduction_138 happyReduction_138 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 DoubleColon) -> case happyOut146 happy_x_2 of { happy_var_2 -> happyIn63 ((Just (KindSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2), Nothing) )}} happyReduce_139 = happySpecReduce_3 49# happyReduction_139 happyReduction_139 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Equals) -> case happyOut125 happy_x_2 of { happy_var_2 -> case happyOut56 happy_x_3 of { happy_var_3 -> happyIn63 ((Just (TyVarSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2), Just happy_var_3) )}}} happyReduce_140 = happySpecReduce_0 50# happyReduction_140 happyReduction_140 = happyIn64 ((Nothing, Nothing, Nothing) ) happyReduce_141 = happySpecReduce_2 50# happyReduction_141 happyReduction_141 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 DoubleColon) -> case happyOut146 happy_x_2 of { happy_var_2 -> happyIn64 ((Just (KindSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2), Nothing, Nothing) )}} happyReduce_142 = happySpecReduce_3 50# happyReduction_142 happyReduction_142 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Equals) -> case happyOut119 happy_x_2 of { happy_var_2 -> case happyOut55 happy_x_3 of { happy_var_3 -> happyIn64 ((Nothing, Just (happy_var_1, happy_var_2), happy_var_3) )}}} happyReduce_143 = happyMonadReduce 4# 51# happyReduction_143 happyReduction_143 (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 { (Loc happy_var_1 KW_Type) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Role) -> case happyOut117 happy_x_3 of { happy_var_3 -> case happyOut66 happy_x_4 of { happy_var_4 -> ( mkRoleAnnotDecl happy_var_1 happy_var_2 happy_var_3 (reverse happy_var_4))}}}} ) (\r -> happyReturn (happyIn65 r)) happyReduce_144 = happySpecReduce_0 52# happyReduction_144 happyReduction_144 = happyIn66 ([] ) happyReduce_145 = happySpecReduce_2 52# happyReduction_145 happyReduction_145 happy_x_2 happy_x_1 = case happyOut66 happy_x_1 of { happy_var_1 -> case happyOut67 happy_x_2 of { happy_var_2 -> happyIn66 (happy_var_2 : happy_var_1 )}} happyReduce_146 = happySpecReduce_1 53# happyReduction_146 happyReduction_146 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn67 (let (VarId v) = unLoc happy_var_1 in (Just v, nIS $ loc happy_var_1) )} happyReduce_147 = happySpecReduce_1 53# happyReduction_147 happyReduction_147 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Underscore) -> happyIn67 ((Nothing, nIS happy_var_1) )} happyReduce_148 = happySpecReduce_2 54# happyReduction_148 happyReduction_148 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 OVERLAP) -> happyIn68 (Just (Overlap (nIS happy_var_1)) )} happyReduce_149 = happySpecReduce_2 54# happyReduction_149 happyReduction_149 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 INCOHERENT) -> happyIn68 (Just (Incoherent (nIS happy_var_1)) )} happyReduce_150 = happySpecReduce_2 54# happyReduction_150 happyReduction_150 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 NO_OVERLAP) -> happyIn68 (Just (NoOverlap (nIS happy_var_1)) )} happyReduce_151 = happySpecReduce_0 54# happyReduction_151 happyReduction_151 = happyIn68 (Nothing ) happyReduce_152 = happySpecReduce_0 55# happyReduction_152 happyReduction_152 = happyIn69 (Nothing ) happyReduce_153 = happySpecReduce_2 55# happyReduction_153 happyReduction_153 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Where) -> case happyOut70 happy_x_2 of { happy_var_2 -> happyIn69 (Just (happy_var_2, happy_var_1) )}} happyReduce_154 = happySpecReduce_3 56# happyReduction_154 happyReduction_154 happy_x_3 happy_x_2 happy_x_1 = case happyOut71 happy_x_2 of { happy_var_2 -> happyIn70 (happy_var_2 )} happyReduce_155 = happySpecReduce_3 56# happyReduction_155 happyReduction_155 happy_x_3 happy_x_2 happy_x_1 = case happyOut71 happy_x_2 of { happy_var_2 -> happyIn70 (happy_var_2 )} happyReduce_156 = happySpecReduce_3 57# happyReduction_156 happyReduction_156 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 (happy_var_1 ++ [happy_var_3] )}} happyReduce_157 = happySpecReduce_2 57# happyReduction_157 happyReduction_157 happy_x_2 happy_x_1 = case happyOut71 happy_x_1 of { happy_var_1 -> happyIn71 (happy_var_1 )} happyReduce_158 = happySpecReduce_1 57# happyReduction_158 happyReduction_158 happy_x_1 = case happyOut72 happy_x_1 of { happy_var_1 -> happyIn71 ([happy_var_1] )} happyReduce_159 = happyMonadReduce 3# 58# happyReduction_159 happyReduction_159 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut119 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Equals) -> case happyOut119 happy_x_3 of { happy_var_3 -> ( do { checkEnabled TypeFamilies ; return (TypeEqn (ann happy_var_1 <++> ann happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3) })}}} ) (\r -> happyReturn (happyIn72 r)) happyReduce_160 = happySpecReduce_1 59# happyReduction_160 happyReduction_160 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Data) -> happyIn73 (DataType $ nIS happy_var_1 )} happyReduce_161 = happySpecReduce_1 59# happyReduction_161 happyReduction_161 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_NewType) -> happyIn73 (NewType $ nIS happy_var_1 )} happyReduce_162 = happyMonadReduce 1# 60# happyReduction_162 happyReduction_162 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut122 happy_x_1 of { happy_var_1 -> ( do { ts <- mapM checkType (fst happy_var_1); return $ (reverse ts, reverse (snd happy_var_1)) })} ) (\r -> happyReturn (happyIn74 r)) happyReduce_163 = happySpecReduce_1 60# happyReduction_163 happyReduction_163 happy_x_1 = case happyOut106 happy_x_1 of { happy_var_1 -> happyIn74 (([happy_var_1],[]) )} happyReduce_164 = happySpecReduce_0 60# happyReduction_164 happyReduction_164 = happyIn74 (([],[]) ) happyReduce_165 = happyMonadReduce 3# 61# happyReduction_165 happyReduction_165 (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 happyOut76 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> ( checkRevDecls (fst happy_var_2) >>= \ds -> return (ds, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3))}}} ) (\r -> happyReturn (happyIn75 r)) happyReduce_166 = happySpecReduce_1 61# happyReduction_166 happyReduction_166 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> happyIn75 (([],reverse happy_var_1) )} happyReduce_167 = happySpecReduce_3 62# happyReduction_167 happyReduction_167 happy_x_3 happy_x_2 happy_x_1 = case happyOut76 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> case happyOut77 happy_x_3 of { happy_var_3 -> happyIn76 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) )}}} happyReduce_168 = happySpecReduce_1 62# happyReduction_168 happyReduction_168 happy_x_1 = case happyOut77 happy_x_1 of { happy_var_1 -> happyIn76 (([happy_var_1],[]) )} happyReduce_169 = happySpecReduce_1 63# happyReduction_169 happyReduction_169 happy_x_1 = case happyOut79 happy_x_1 of { happy_var_1 -> happyIn77 (happy_var_1 )} happyReduce_170 = happySpecReduce_1 63# happyReduction_170 happyReduction_170 happy_x_1 = case happyOut51 happy_x_1 of { happy_var_1 -> happyIn77 (happy_var_1 )} happyReduce_171 = happySpecReduce_1 63# happyReduction_171 happyReduction_171 happy_x_1 = case happyOut164 happy_x_1 of { happy_var_1 -> happyIn77 (happy_var_1 )} happyReduce_172 = happySpecReduce_1 63# happyReduction_172 happyReduction_172 happy_x_1 = case happyOut263 happy_x_1 of { happy_var_1 -> happyIn77 (happy_var_1 )} happyReduce_173 = happySpecReduce_1 63# happyReduction_173 happyReduction_173 happy_x_1 = case happyOut269 happy_x_1 of { happy_var_1 -> happyIn77 (happy_var_1 )} happyReduce_174 = happySpecReduce_3 64# happyReduction_174 happyReduction_174 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftCurly) -> case happyOut75 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightCurly) -> happyIn78 (BDecls (happy_var_1 <^^> happy_var_3 <** (happy_var_1:snd happy_var_2++[happy_var_3])) (fst happy_var_2) )}}} happyReduce_175 = happySpecReduce_3 64# happyReduction_175 happyReduction_175 happy_x_3 happy_x_2 happy_x_1 = case happyOut261 happy_x_1 of { happy_var_1 -> case happyOut75 happy_x_2 of { happy_var_2 -> case happyOut262 happy_x_3 of { happy_var_3 -> happyIn78 (let l' = if null (fst happy_var_2) then nIS happy_var_3 else (ann . last $ fst happy_var_2) in BDecls (nIS happy_var_1 <++> l' <** (happy_var_1:snd happy_var_2++[happy_var_3])) (fst happy_var_2) )}}} happyReduce_176 = happySpecReduce_1 65# happyReduction_176 happyReduction_176 happy_x_1 = case happyOut80 happy_x_1 of { happy_var_1 -> happyIn79 (happy_var_1 )} happyReduce_177 = happySpecReduce_1 65# happyReduction_177 happyReduction_177 happy_x_1 = case happyOut81 happy_x_1 of { happy_var_1 -> happyIn79 (happy_var_1 )} happyReduce_178 = happyMonadReduce 3# 66# happyReduction_178 happyReduction_178 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut174 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DoubleColon) -> case happyOut119 happy_x_3 of { happy_var_3 -> ( do { v <- checkSigVar happy_var_1; return $ TypeSig (happy_var_1 <> happy_var_3 <** [happy_var_2]) [v] happy_var_3 })}}} ) (\r -> happyReturn (happyIn80 r)) happyReduce_179 = happyMonadReduce 5# 66# happyReduction_179 happyReduction_179 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut174 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut89 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 DoubleColon) -> case happyOut119 happy_x_5 of { happy_var_5 -> ( do { v <- checkSigVar happy_var_1; let {(vs,ss,_) = happy_var_3 ; l = happy_var_1 <> happy_var_5 <** (happy_var_2 : reverse ss ++ [happy_var_4]) } ; return $ TypeSig l (v : reverse vs) happy_var_5 })}}}}} ) (\r -> happyReturn (happyIn80 r)) happyReduce_180 = happyReduce 4# 67# happyReduction_180 happyReduction_180 (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 happyOut95 happy_x_2 of { happy_var_2 -> case happyOut233 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 PragmaEnd) -> happyIn81 (let Loc l (INLINE s) = happy_var_1 in InlineSig (l <^^> happy_var_4 <** [l,happy_var_4]) s happy_var_2 happy_var_3 ) `HappyStk` happyRest}}}} happyReduce_181 = happyReduce 4# 67# happyReduction_181 happyReduction_181 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 INLINE_CONLIKE) -> case happyOut95 happy_x_2 of { happy_var_2 -> case happyOut233 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 PragmaEnd) -> happyIn81 (InlineConlikeSig (happy_var_1 <^^> happy_var_4 <** [happy_var_1,happy_var_4]) happy_var_2 happy_var_3 ) `HappyStk` happyRest}}}} happyReduce_182 = happyReduce 6# 67# happyReduction_182 happyReduction_182 (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 { (Loc happy_var_1 SPECIALISE) -> case happyOut95 happy_x_2 of { happy_var_2 -> case happyOut233 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 DoubleColon) -> case happyOut82 happy_x_5 of { happy_var_5 -> case happyOutTok happy_x_6 of { (Loc happy_var_6 PragmaEnd) -> happyIn81 (SpecSig (happy_var_1 <^^> happy_var_6 <** (happy_var_1: happy_var_4 : snd happy_var_5 ++ [happy_var_6])) happy_var_2 happy_var_3 (fst happy_var_5) ) `HappyStk` happyRest}}}}}} happyReduce_183 = happyReduce 6# 67# happyReduction_183 happyReduction_183 (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 happyOut95 happy_x_2 of { happy_var_2 -> case happyOut233 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 DoubleColon) -> case happyOut82 happy_x_5 of { happy_var_5 -> case happyOutTok happy_x_6 of { (Loc happy_var_6 PragmaEnd) -> happyIn81 (let Loc l (SPECIALISE_INLINE s) = happy_var_1 in SpecInlineSig (l <^^> happy_var_6 <** (l:happy_var_4:snd happy_var_5++[happy_var_6])) s happy_var_2 happy_var_3 (fst happy_var_5) ) `HappyStk` happyRest}}}}}} happyReduce_184 = happyMonadReduce 4# 67# happyReduction_184 happyReduction_184 (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 { (Loc happy_var_1 SPECIALISE) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Instance) -> case happyOut120 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 PragmaEnd) -> ( do { ih <- checkInstHeader happy_var_3; let {l = happy_var_1 <^^> happy_var_4 <** [happy_var_1,happy_var_2,happy_var_4]}; return $ InstSig l ih })}}}} ) (\r -> happyReturn (happyIn81 r)) happyReduce_185 = happySpecReduce_3 67# happyReduction_185 happyReduction_185 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 MINIMAL) -> case happyOut84 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> happyIn81 (MinimalPragma (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_186 = happySpecReduce_1 68# happyReduction_186 happyReduction_186 happy_x_1 = case happyOut83 happy_x_1 of { happy_var_1 -> happyIn82 (([happy_var_1],[]) )} happyReduce_187 = happySpecReduce_3 68# happyReduction_187 happyReduction_187 happy_x_3 happy_x_2 happy_x_1 = case happyOut83 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut82 happy_x_3 of { happy_var_3 -> happyIn82 ((happy_var_1 : fst happy_var_3, happy_var_2 : snd happy_var_3) )}}} happyReduce_188 = happyMonadReduce 1# 69# happyReduction_188 happyReduction_188 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut120 happy_x_1 of { happy_var_1 -> ( checkType $ mkTyForall (ann happy_var_1) Nothing Nothing happy_var_1)} ) (\r -> happyReturn (happyIn83 r)) happyReduce_189 = happySpecReduce_1 70# happyReduction_189 happyReduction_189 happy_x_1 = case happyOut85 happy_x_1 of { happy_var_1 -> happyIn84 (Just happy_var_1 )} happyReduce_190 = happySpecReduce_0 70# happyReduction_190 happyReduction_190 = happyIn84 (Nothing ) happyReduce_191 = happySpecReduce_1 71# happyReduction_191 happyReduction_191 happy_x_1 = case happyOut86 happy_x_1 of { happy_var_1 -> happyIn85 (happy_var_1 )} happyReduce_192 = happySpecReduce_3 71# happyReduction_192 happyReduction_192 happy_x_3 happy_x_2 happy_x_1 = case happyOut86 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Bar) -> case happyOut85 happy_x_3 of { happy_var_3 -> happyIn85 (OrFormula (ann happy_var_1 <++> ann happy_var_3 <** [happy_var_2]) [happy_var_1,happy_var_3] )}}} happyReduce_193 = happySpecReduce_1 72# happyReduction_193 happyReduction_193 happy_x_1 = case happyOut87 happy_x_1 of { happy_var_1 -> happyIn86 (happy_var_1 )} happyReduce_194 = happySpecReduce_3 72# happyReduction_194 happyReduction_194 happy_x_3 happy_x_2 happy_x_1 = case happyOut87 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut86 happy_x_3 of { happy_var_3 -> happyIn86 (AndFormula (ann happy_var_1 <++> ann happy_var_3 <** [happy_var_2]) [happy_var_1,happy_var_3] )}}} happyReduce_195 = happySpecReduce_3 73# happyReduction_195 happyReduction_195 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut85 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn87 (ParenFormula (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_196 = happySpecReduce_1 73# happyReduction_196 happyReduction_196 happy_x_1 = case happyOut231 happy_x_1 of { happy_var_1 -> happyIn87 (VarFormula (ann happy_var_1) happy_var_1 )} happyReduce_197 = happySpecReduce_1 74# happyReduction_197 happyReduction_197 happy_x_1 = case happyOut78 happy_x_1 of { happy_var_1 -> happyIn88 (happy_var_1 )} happyReduce_198 = happySpecReduce_3 74# happyReduction_198 happyReduction_198 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftCurly) -> case happyOut227 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightCurly) -> happyIn88 (IPBinds (happy_var_1 <^^> happy_var_3 <** snd happy_var_2) (fst happy_var_2) )}}} happyReduce_199 = happySpecReduce_3 74# happyReduction_199 happyReduction_199 happy_x_3 happy_x_2 happy_x_1 = case happyOut261 happy_x_1 of { happy_var_1 -> case happyOut227 happy_x_2 of { happy_var_2 -> happyIn88 (let l' = ann . last $ fst happy_var_2 in IPBinds (nIS happy_var_1 <++> l' <** snd happy_var_2) (fst happy_var_2) )}} happyReduce_200 = happySpecReduce_3 75# happyReduction_200 happyReduction_200 happy_x_3 happy_x_2 happy_x_1 = case happyOut89 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut231 happy_x_3 of { happy_var_3 -> happyIn89 (let (ns,ss,l) = happy_var_1 in (happy_var_3 : ns, happy_var_2 : ss, l <++> ann happy_var_3) )}}} happyReduce_201 = happyMonadReduce 1# 75# happyReduction_201 happyReduction_201 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut233 happy_x_1 of { happy_var_1 -> ( do { n <- checkUnQual happy_var_1; return ([n],[],ann n) })} ) (\r -> happyReturn (happyIn89 r)) happyReduce_202 = happySpecReduce_1 76# happyReduction_202 happyReduction_202 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_StdCall) -> happyIn90 (StdCall (nIS happy_var_1) )} happyReduce_203 = happySpecReduce_1 76# happyReduction_203 happyReduction_203 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CCall) -> happyIn90 (CCall (nIS happy_var_1) )} happyReduce_204 = happySpecReduce_1 76# happyReduction_204 happyReduction_204 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CPlusPlus) -> happyIn90 (CPlusPlus (nIS happy_var_1) )} happyReduce_205 = happySpecReduce_1 76# happyReduction_205 happyReduction_205 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_DotNet) -> happyIn90 (DotNet (nIS happy_var_1) )} happyReduce_206 = happySpecReduce_1 76# happyReduction_206 happyReduction_206 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Jvm) -> happyIn90 (Jvm (nIS happy_var_1) )} happyReduce_207 = happySpecReduce_1 76# happyReduction_207 happyReduction_207 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Js) -> happyIn90 (Js (nIS happy_var_1) )} happyReduce_208 = happySpecReduce_1 76# happyReduction_208 happyReduction_208 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_JavaScript) -> happyIn90 (JavaScript (nIS happy_var_1) )} happyReduce_209 = happySpecReduce_1 76# happyReduction_209 happyReduction_209 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CApi) -> happyIn90 (CApi (nIS happy_var_1) )} happyReduce_210 = happySpecReduce_1 77# happyReduction_210 happyReduction_210 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Safe) -> happyIn91 (Just $ PlaySafe (nIS happy_var_1) False )} happyReduce_211 = happySpecReduce_1 77# happyReduction_211 happyReduction_211 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Unsafe) -> happyIn91 (Just $ PlayRisky (nIS happy_var_1) )} happyReduce_212 = happySpecReduce_1 77# happyReduction_212 happyReduction_212 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Threadsafe) -> happyIn91 (Just $ PlaySafe (nIS happy_var_1) True )} happyReduce_213 = happySpecReduce_1 77# happyReduction_213 happyReduction_213 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Interruptible) -> happyIn91 (Just $ PlayInterruptible (nIS happy_var_1) )} happyReduce_214 = happySpecReduce_0 77# happyReduction_214 happyReduction_214 = happyIn91 (Nothing ) happyReduce_215 = happyReduce 4# 78# happyReduction_215 happyReduction_215 (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 happyOut232 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 DoubleColon) -> case happyOut104 happy_x_4 of { happy_var_4 -> happyIn92 (let Loc l (StringTok (s,_)) = happy_var_1 in (Just s, happy_var_2, happy_var_4, [l,happy_var_3]) ) `HappyStk` happyRest}}}} happyReduce_216 = happySpecReduce_3 78# happyReduction_216 happyReduction_216 happy_x_3 happy_x_2 happy_x_1 = case happyOut232 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DoubleColon) -> case happyOut104 happy_x_3 of { happy_var_3 -> happyIn92 ((Nothing, happy_var_1, happy_var_3, [happy_var_2]) )}}} happyReduce_217 = happySpecReduce_3 79# happyReduction_217 happyReduction_217 happy_x_3 happy_x_2 happy_x_1 = case happyOut93 happy_x_1 of { happy_var_1 -> case happyOut94 happy_x_3 of { happy_var_3 -> happyIn93 (happy_var_3 : happy_var_1 )}} happyReduce_218 = happySpecReduce_2 79# happyReduction_218 happyReduction_218 happy_x_2 happy_x_1 = case happyOut93 happy_x_1 of { happy_var_1 -> happyIn93 (happy_var_1 )} happyReduce_219 = happySpecReduce_1 79# happyReduction_219 happyReduction_219 happy_x_1 = case happyOut94 happy_x_1 of { happy_var_1 -> happyIn93 ([happy_var_1] )} happyReduce_220 = happySpecReduce_0 79# happyReduction_220 happyReduction_220 = happyIn93 ([] ) happyReduce_221 = happyMonadReduce 6# 80# happyReduction_221 happyReduction_221 (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 happyOut95 happy_x_2 of { happy_var_2 -> case happyOut96 happy_x_3 of { happy_var_3 -> case happyOut172 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 Equals) -> case happyOut170 happy_x_6 of { happy_var_6 -> ( do { let {Loc l (StringTok (s,_)) = happy_var_1}; e <- checkRuleExpr happy_var_4; return $ Rule (nIS l <++> ann happy_var_6 <** l:snd happy_var_3 ++ [happy_var_5]) s happy_var_2 (fst happy_var_3) e happy_var_6 })}}}}}} ) (\r -> happyReturn (happyIn94 r)) happyReduce_222 = happySpecReduce_0 81# happyReduction_222 happyReduction_222 = happyIn95 (Nothing ) happyReduce_223 = happySpecReduce_3 81# happyReduction_223 happyReduction_223 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftSquare) -> case happyOutTok happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightSquare) -> happyIn95 (let Loc l (IntTok (i,_)) = happy_var_2 in Just $ ActiveFrom (happy_var_1 <^^> happy_var_3 <** [happy_var_1,l,happy_var_3]) (fromInteger i) )}}} happyReduce_224 = happyReduce 4# 81# happyReduction_224 happyReduction_224 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftSquare) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Tilde) -> case happyOutTok happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightSquare) -> happyIn95 (let Loc l (IntTok (i,_)) = happy_var_3 in Just $ ActiveUntil (happy_var_1 <^^> happy_var_4 <** [happy_var_1,happy_var_2,l,happy_var_4]) (fromInteger i) ) `HappyStk` happyRest}}}} happyReduce_225 = happySpecReduce_0 82# happyReduction_225 happyReduction_225 = happyIn96 ((Nothing,[]) ) happyReduce_226 = happySpecReduce_3 82# happyReduction_226 happyReduction_226 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Forall) -> case happyOut97 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Dot) -> happyIn96 ((Just happy_var_2,[happy_var_1,happy_var_3]) )}}} happyReduce_227 = happySpecReduce_1 83# happyReduction_227 happyReduction_227 happy_x_1 = case happyOut98 happy_x_1 of { happy_var_1 -> happyIn97 ([happy_var_1] )} happyReduce_228 = happySpecReduce_2 83# happyReduction_228 happyReduction_228 happy_x_2 happy_x_1 = case happyOut98 happy_x_1 of { happy_var_1 -> case happyOut97 happy_x_2 of { happy_var_2 -> happyIn97 (happy_var_1 : happy_var_2 )}} happyReduce_229 = happySpecReduce_1 84# happyReduction_229 happyReduction_229 happy_x_1 = case happyOut249 happy_x_1 of { happy_var_1 -> happyIn98 (RuleVar (ann happy_var_1) happy_var_1 )} happyReduce_230 = happyReduce 5# 84# happyReduction_230 happyReduction_230 (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 { (Loc happy_var_1 LeftParen) -> case happyOut249 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 DoubleColon) -> case happyOut119 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 RightParen) -> happyIn98 (TypedRuleVar (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_3,happy_var_5]) happy_var_2 happy_var_4 ) `HappyStk` happyRest}}}}} happyReduce_231 = happySpecReduce_3 85# happyReduction_231 happyReduction_231 happy_x_3 happy_x_2 happy_x_1 = case happyOut99 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 SemiColon) -> case happyOut100 happy_x_3 of { happy_var_3 -> happyIn99 ((fst happy_var_3 : fst happy_var_1, snd happy_var_1 ++ (happy_var_2:snd happy_var_3)) )}}} happyReduce_232 = happySpecReduce_2 85# happyReduction_232 happyReduction_232 happy_x_2 happy_x_1 = case happyOut99 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 SemiColon) -> happyIn99 ((fst happy_var_1, snd happy_var_1 ++ [happy_var_2]) )}} happyReduce_233 = happySpecReduce_1 85# happyReduction_233 happyReduction_233 happy_x_1 = case happyOut100 happy_x_1 of { happy_var_1 -> happyIn99 (([fst happy_var_1],snd happy_var_1) )} happyReduce_234 = happySpecReduce_0 85# happyReduction_234 happyReduction_234 = happyIn99 (([],[]) ) happyReduce_235 = happySpecReduce_2 86# happyReduction_235 happyReduction_235 happy_x_2 happy_x_1 = case happyOut101 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { happy_var_2 -> happyIn100 (let Loc l (StringTok (s,_)) = happy_var_2 in ((fst happy_var_1,s),snd happy_var_1 ++ [l]) )}} happyReduce_236 = happySpecReduce_1 87# happyReduction_236 happyReduction_236 happy_x_1 = case happyOut102 happy_x_1 of { happy_var_1 -> happyIn101 (([happy_var_1],[]) )} happyReduce_237 = happySpecReduce_3 87# happyReduction_237 happyReduction_237 happy_x_3 happy_x_2 happy_x_1 = case happyOut102 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut101 happy_x_3 of { happy_var_3 -> happyIn101 ((happy_var_1 : fst happy_var_3, happy_var_2 : snd happy_var_3) )}}} happyReduce_238 = happySpecReduce_1 88# happyReduction_238 happyReduction_238 happy_x_1 = case happyOut235 happy_x_1 of { happy_var_1 -> happyIn102 (happy_var_1 )} happyReduce_239 = happySpecReduce_1 88# happyReduction_239 happyReduction_239 happy_x_1 = case happyOut231 happy_x_1 of { happy_var_1 -> happyIn102 (happy_var_1 )} happyReduce_240 = happyMonadReduce 3# 89# happyReduction_240 happyReduction_240 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Type) -> case happyOut252 happy_x_2 of { happy_var_2 -> case happyOut183 happy_x_3 of { happy_var_3 -> ( checkExpr happy_var_3 >>= \e -> return (TypeAnn (nIS happy_var_1 <++> ann e <** [happy_var_1]) happy_var_2 e))}}} ) (\r -> happyReturn (happyIn103 r)) happyReduce_241 = happyMonadReduce 2# 89# happyReduction_241 happyReduction_241 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Module) -> case happyOut183 happy_x_2 of { happy_var_2 -> ( checkExpr happy_var_2 >>= \e -> return (ModuleAnn (nIS happy_var_1 <++> ann e <** [happy_var_1]) e))}} ) (\r -> happyReturn (happyIn103 r)) happyReduce_242 = happyMonadReduce 2# 89# happyReduction_242 happyReduction_242 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut102 happy_x_1 of { happy_var_1 -> case happyOut183 happy_x_2 of { happy_var_2 -> ( checkExpr happy_var_2 >>= \e -> return (Ann (happy_var_1 <> e) happy_var_1 e))}} ) (\r -> happyReturn (happyIn103 r)) happyReduce_243 = happyMonadReduce 1# 90# happyReduction_243 happyReduction_243 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut105 happy_x_1 of { happy_var_1 -> ( checkType happy_var_1)} ) (\r -> happyReturn (happyIn104 r)) happyReduce_244 = happySpecReduce_1 91# happyReduction_244 happyReduction_244 happy_x_1 = case happyOut110 happy_x_1 of { happy_var_1 -> happyIn105 (splitTilde happy_var_1 )} happyReduce_245 = happySpecReduce_3 91# happyReduction_245 happyReduction_245 happy_x_3 happy_x_2 happy_x_1 = case happyOut110 happy_x_1 of { happy_var_1 -> case happyOut118 happy_x_2 of { happy_var_2 -> case happyOut105 happy_x_3 of { happy_var_3 -> happyIn105 (TyInfix (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 )}}} happyReduce_246 = happySpecReduce_3 91# happyReduction_246 happyReduction_246 happy_x_3 happy_x_2 happy_x_1 = case happyOut110 happy_x_1 of { happy_var_1 -> case happyOut276 happy_x_2 of { happy_var_2 -> case happyOut105 happy_x_3 of { happy_var_3 -> happyIn105 (TyInfix (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 )}}} happyReduce_247 = happySpecReduce_3 91# happyReduction_247 happyReduction_247 happy_x_3 happy_x_2 happy_x_1 = case happyOut110 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightArrow) -> case happyOut120 happy_x_3 of { happy_var_3 -> happyIn105 (TyFun (happy_var_1 <> happy_var_3 <** [happy_var_2]) (splitTilde happy_var_1) happy_var_3 )}}} happyReduce_248 = happyMonadReduce 1# 92# happyReduction_248 happyReduction_248 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut107 happy_x_1 of { happy_var_1 -> ( checkType happy_var_1)} ) (\r -> happyReturn (happyIn106 r)) happyReduce_249 = happySpecReduce_3 93# happyReduction_249 happyReduction_249 happy_x_3 happy_x_2 happy_x_1 = case happyOut234 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DoubleColon) -> case happyOut105 happy_x_3 of { happy_var_3 -> happyIn107 (let l = (happy_var_1 <> happy_var_3 <** [happy_var_2]) in TyPred l $ IParam l happy_var_1 happy_var_3 )}}} happyReduce_250 = happySpecReduce_1 93# happyReduction_250 happyReduction_250 happy_x_1 = case happyOut105 happy_x_1 of { happy_var_1 -> happyIn107 (happy_var_1 )} happyReduce_251 = happyMonadReduce 1# 94# happyReduction_251 happyReduction_251 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut110 happy_x_1 of { happy_var_1 -> ( checkType (splitTilde happy_var_1))} ) (\r -> happyReturn (happyIn108 r)) happyReduce_252 = happyMonadReduce 1# 95# happyReduction_252 happyReduction_252 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut111 happy_x_1 of { happy_var_1 -> ( checkType happy_var_1)} ) (\r -> happyReturn (happyIn109 r)) happyReduce_253 = happySpecReduce_2 96# happyReduction_253 happyReduction_253 happy_x_2 happy_x_1 = case happyOut110 happy_x_1 of { happy_var_1 -> case happyOut111 happy_x_2 of { happy_var_2 -> happyIn110 (TyApp (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 )}} happyReduce_254 = happySpecReduce_1 96# happyReduction_254 happyReduction_254 happy_x_1 = case happyOut111 happy_x_1 of { happy_var_1 -> happyIn110 (happy_var_1 )} happyReduce_255 = happySpecReduce_1 97# happyReduction_255 happyReduction_255 happy_x_1 = case happyOut116 happy_x_1 of { happy_var_1 -> happyIn111 (TyCon (ann happy_var_1) happy_var_1 )} happyReduce_256 = happyMonadReduce 1# 97# happyReduction_256 happyReduction_256 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut274 happy_x_1 of { happy_var_1 -> ( checkTyVar happy_var_1)} ) (\r -> happyReturn (happyIn111 r)) happyReduce_257 = happySpecReduce_2 97# happyReduction_257 happyReduction_257 happy_x_2 happy_x_1 = case happyOut113 happy_x_1 of { happy_var_1 -> case happyOut111 happy_x_2 of { happy_var_2 -> happyIn111 (let (mstrict, mupack) = happy_var_1 in bangType mstrict mupack happy_var_2 )}} happyReduce_258 = happySpecReduce_3 97# happyReduction_258 happyReduction_258 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut122 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn111 (TyTuple (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse (happy_var_3:snd happy_var_2))) Boxed (reverse (fst happy_var_2)) )}}} happyReduce_259 = happySpecReduce_3 97# happyReduction_259 happyReduction_259 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOut123 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightHashParen) -> happyIn111 (TyTuple (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse (happy_var_3:snd happy_var_2))) Unboxed (reverse (fst happy_var_2)) )}}} happyReduce_260 = happySpecReduce_3 97# happyReduction_260 happyReduction_260 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftSquare) -> case happyOut107 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightSquare) -> happyIn111 (TyList (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_261 = happySpecReduce_3 97# happyReduction_261 happyReduction_261 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 ParArrayLeftSquare) -> case happyOut107 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 ParArrayRightSquare) -> happyIn111 (TyParArray (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_262 = happySpecReduce_3 97# happyReduction_262 happyReduction_262 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut120 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn111 (TyParen (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_263 = happyReduce 5# 97# happyReduction_263 happyReduction_263 (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 { (Loc happy_var_1 LeftParen) -> case happyOut120 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 DoubleColon) -> case happyOut146 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 RightParen) -> happyIn111 (TyKind (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_3,happy_var_5]) happy_var_2 happy_var_4 ) `HappyStk` happyRest}}}}} happyReduce_264 = happySpecReduce_3 97# happyReduction_264 happyReduction_264 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THParenEscape) -> case happyOut170 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn111 (let l = (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) in TySplice l $ ParenSplice l happy_var_2 )}}} happyReduce_265 = happySpecReduce_1 97# happyReduction_265 happyReduction_265 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn111 (let Loc l (THIdEscape s) = happy_var_1 in TySplice (nIS l) $ IdSplice (nIS l) s )} happyReduce_266 = happySpecReduce_1 97# happyReduction_266 happyReduction_266 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Underscore) -> happyIn111 (TyWildCard (nIS happy_var_1) Nothing )} happyReduce_267 = happySpecReduce_1 97# happyReduction_267 happyReduction_267 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn111 (let Loc l (THQuasiQuote (n,q)) = happy_var_1 in TyQuasiQuote (nIS l) n q )} happyReduce_268 = happyMonadReduce 1# 97# happyReduction_268 happyReduction_268 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut112 happy_x_1 of { happy_var_1 -> ( checkEnabled DataKinds >> return (TyPromoted (ann happy_var_1) happy_var_1))} ) (\r -> happyReturn (happyIn111 r)) happyReduce_269 = happyMonadReduce 4# 98# happyReduction_269 happyReduction_269 (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 { (Loc happy_var_1 THVarQuote) -> case happyOut123 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightSquare) -> ( PromotedList (happy_var_1 <^^> happy_var_4 <** (happy_var_1:reverse(happy_var_4:snd happy_var_3))) True . reverse <$> mapM checkType (fst happy_var_3))}}} ) (\r -> happyReturn (happyIn112 r)) happyReduce_270 = happySpecReduce_3 98# happyReduction_270 happyReduction_270 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THVarQuote) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightSquare) -> happyIn112 (PromotedList (happy_var_1 <^^> happy_var_3 <** [happy_var_1, happy_var_3]) True [] )}} happyReduce_271 = happyMonadReduce 3# 98# happyReduction_271 happyReduction_271 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftSquare) -> case happyOut122 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightSquare) -> ( PromotedList (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse(happy_var_3:snd happy_var_2))) False . reverse <$> mapM checkType (fst happy_var_2))}}} ) (\r -> happyReturn (happyIn112 r)) happyReduce_272 = happyMonadReduce 4# 98# happyReduction_272 happyReduction_272 (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 { (Loc happy_var_1 THVarQuote) -> case happyOut123 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> ( PromotedTuple (happy_var_1 <^^> happy_var_4 <** (happy_var_1:reverse(happy_var_4:snd happy_var_3))) . reverse <$> mapM checkType (fst happy_var_3))}}} ) (\r -> happyReturn (happyIn112 r)) happyReduce_273 = happySpecReduce_3 98# happyReduction_273 happyReduction_273 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THVarQuote) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn112 (PromotedUnit (happy_var_1 <^^> happy_var_3 ) )}} happyReduce_274 = happySpecReduce_2 98# happyReduction_274 happyReduction_274 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THVarQuote) -> case happyOut245 happy_x_2 of { happy_var_2 -> happyIn112 (PromotedCon ((noInfoSpan happy_var_1 <++> ann happy_var_2) <** [happy_var_1]) True happy_var_2 )}} happyReduce_275 = happySpecReduce_2 98# happyReduction_275 happyReduction_275 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THVarQuote) -> case happyOut273 happy_x_2 of { happy_var_2 -> happyIn112 (PromotedCon ((noInfoSpan happy_var_1 <++> ann happy_var_2) <** [happy_var_1]) True happy_var_2 )}} happyReduce_276 = happySpecReduce_1 98# happyReduction_276 happyReduction_276 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn112 (let Loc l (IntTok (i,raw)) = happy_var_1 in PromotedInteger (nIS l) i raw )} happyReduce_277 = happySpecReduce_1 98# happyReduction_277 happyReduction_277 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn112 (let Loc l (StringTok (s,raw)) = happy_var_1 in PromotedString (nIS l) s raw )} happyReduce_278 = happySpecReduce_1 99# happyReduction_278 happyReduction_278 happy_x_1 = case happyOut114 happy_x_1 of { happy_var_1 -> happyIn113 ((Just happy_var_1, Nothing) )} happyReduce_279 = happySpecReduce_1 99# happyReduction_279 happyReduction_279 happy_x_1 = case happyOut115 happy_x_1 of { happy_var_1 -> happyIn113 ((Nothing, Just happy_var_1) )} happyReduce_280 = happySpecReduce_2 99# happyReduction_280 happyReduction_280 happy_x_2 happy_x_1 = case happyOut115 happy_x_1 of { happy_var_1 -> case happyOut114 happy_x_2 of { happy_var_2 -> happyIn113 ((Just happy_var_2, Just happy_var_1) )}} happyReduce_281 = happySpecReduce_1 100# happyReduction_281 happyReduction_281 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Exclamation) -> happyIn114 ((BangedTy, happy_var_1) )} happyReduce_282 = happySpecReduce_1 100# happyReduction_282 happyReduction_282 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Tilde) -> happyIn114 ((LazyTy, happy_var_1) )} happyReduce_283 = happySpecReduce_2 101# happyReduction_283 happyReduction_283 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 UNPACK) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 PragmaEnd) -> happyIn115 ((Unpack ((nIS happy_var_1 <++> nIS happy_var_2) <** [happy_var_1,happy_var_2])) )}} happyReduce_284 = happySpecReduce_2 101# happyReduction_284 happyReduction_284 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 NOUNPACK) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 PragmaEnd) -> happyIn115 ((NoUnpack ((nIS happy_var_1 <++> nIS happy_var_2) <** [happy_var_1,happy_var_2])) )}} happyReduce_285 = happySpecReduce_1 102# happyReduction_285 happyReduction_285 happy_x_1 = case happyOut117 happy_x_1 of { happy_var_1 -> happyIn116 (happy_var_1 )} happyReduce_286 = happySpecReduce_2 102# happyReduction_286 happyReduction_286 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightParen) -> happyIn116 (unit_tycon_name (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) )}} happyReduce_287 = happySpecReduce_3 102# happyReduction_287 happyReduction_287 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightArrow) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn116 (fun_tycon_name (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_2,happy_var_3]) )}}} happyReduce_288 = happySpecReduce_2 102# happyReduction_288 happyReduction_288 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftSquare) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightSquare) -> happyIn116 (list_tycon_name (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) )}} happyReduce_289 = happySpecReduce_3 102# happyReduction_289 happyReduction_289 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut186 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn116 (tuple_tycon_name (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse happy_var_2 ++ [happy_var_3])) Boxed (length happy_var_2) )}}} happyReduce_290 = happySpecReduce_2 102# happyReduction_290 happyReduction_290 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightHashParen) -> happyIn116 (unboxed_singleton_tycon_name (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) )}} happyReduce_291 = happySpecReduce_3 102# happyReduction_291 happyReduction_291 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOut186 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightHashParen) -> happyIn116 (tuple_tycon_name (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse happy_var_2 ++ [happy_var_3])) Unboxed (length happy_var_2) )}}} happyReduce_292 = happySpecReduce_1 103# happyReduction_292 happyReduction_292 happy_x_1 = case happyOut251 happy_x_1 of { happy_var_1 -> happyIn117 (happy_var_1 )} happyReduce_293 = happySpecReduce_3 103# happyReduction_293 happyReduction_293 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut245 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn117 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 )}}} happyReduce_294 = happySpecReduce_3 103# happyReduction_294 happyReduction_294 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut255 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn117 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 )}}} happyReduce_295 = happySpecReduce_1 104# happyReduction_295 happyReduction_295 happy_x_1 = case happyOut241 happy_x_1 of { happy_var_1 -> happyIn118 (happy_var_1 )} happyReduce_296 = happyMonadReduce 1# 105# happyReduction_296 happyReduction_296 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut120 happy_x_1 of { happy_var_1 -> ( checkType happy_var_1)} ) (\r -> happyReturn (happyIn119 r)) happyReduce_297 = happyReduce 4# 106# happyReduction_297 happyReduction_297 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Forall) -> case happyOut124 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Dot) -> case happyOut120 happy_x_4 of { happy_var_4 -> happyIn120 (mkTyForall (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) (Just (reverse (fst happy_var_2))) Nothing happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_298 = happySpecReduce_2 106# happyReduction_298 happyReduction_298 happy_x_2 happy_x_1 = case happyOut121 happy_x_1 of { happy_var_1 -> case happyOut120 happy_x_2 of { happy_var_2 -> happyIn120 (mkTyForall (happy_var_1 <> happy_var_2) Nothing (Just happy_var_1) happy_var_2 )}} happyReduce_299 = happySpecReduce_1 106# happyReduction_299 happyReduction_299 happy_x_1 = case happyOut107 happy_x_1 of { happy_var_1 -> happyIn120 (happy_var_1 )} happyReduce_300 = happyMonadReduce 2# 107# happyReduction_300 happyReduction_300 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut110 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DoubleArrow) -> ( checkPContext $ (amap (\l -> l <++> nIS happy_var_2 <** (srcInfoPoints l ++ [happy_var_2]))) (splitTilde happy_var_1))}} ) (\r -> happyReturn (happyIn121 r)) happyReduce_301 = happySpecReduce_3 108# happyReduction_301 happyReduction_301 happy_x_3 happy_x_2 happy_x_1 = case happyOut123 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut120 happy_x_3 of { happy_var_3 -> happyIn122 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) )}}} happyReduce_302 = happySpecReduce_1 109# happyReduction_302 happyReduction_302 happy_x_1 = case happyOut120 happy_x_1 of { happy_var_1 -> happyIn123 (([happy_var_1],[]) )} happyReduce_303 = happySpecReduce_3 109# happyReduction_303 happyReduction_303 happy_x_3 happy_x_2 happy_x_1 = case happyOut123 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut120 happy_x_3 of { happy_var_3 -> happyIn123 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) )}}} happyReduce_304 = happySpecReduce_2 110# happyReduction_304 happyReduction_304 happy_x_2 happy_x_1 = case happyOut124 happy_x_1 of { happy_var_1 -> case happyOut125 happy_x_2 of { happy_var_2 -> happyIn124 ((happy_var_2 : fst happy_var_1, Just (snd happy_var_1 ann happy_var_2)) )}} happyReduce_305 = happySpecReduce_0 110# happyReduction_305 happyReduction_305 = happyIn124 (([],Nothing) ) happyReduce_306 = happySpecReduce_1 111# happyReduction_306 happyReduction_306 happy_x_1 = case happyOut274 happy_x_1 of { happy_var_1 -> happyIn125 (UnkindedVar (ann happy_var_1) happy_var_1 )} happyReduce_307 = happyReduce 5# 111# happyReduction_307 happyReduction_307 (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 { (Loc happy_var_1 LeftParen) -> case happyOut274 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 DoubleColon) -> case happyOut146 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 RightParen) -> happyIn125 (KindedVar (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_3,happy_var_5]) happy_var_2 happy_var_4 ) `HappyStk` happyRest}}}}} happyReduce_308 = happySpecReduce_2 112# happyReduction_308 happyReduction_308 happy_x_2 happy_x_1 = case happyOut126 happy_x_1 of { happy_var_1 -> case happyOut274 happy_x_2 of { happy_var_2 -> happyIn126 ((happy_var_2 : fst happy_var_1, Just (snd happy_var_1 ann happy_var_2)) )}} happyReduce_309 = happySpecReduce_0 112# happyReduction_309 happyReduction_309 = happyIn126 (([], Nothing) ) happyReduce_310 = happySpecReduce_2 113# happyReduction_310 happyReduction_310 happy_x_2 happy_x_1 = case happyOut126 happy_x_1 of { happy_var_1 -> case happyOut274 happy_x_2 of { happy_var_2 -> happyIn127 ((happy_var_2 : fst happy_var_1, snd happy_var_1 ann happy_var_2) )}} happyReduce_311 = happySpecReduce_0 114# happyReduction_311 happyReduction_311 = happyIn128 (([],[], Nothing) ) happyReduce_312 = happyMonadReduce 2# 114# happyReduction_312 happyReduction_312 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 Bar) -> case happyOut129 happy_x_2 of { happy_var_2 -> ( do { checkEnabled FunctionalDependencies ; let {(fds,ss,l) = happy_var_2} ; return (reverse fds, happy_var_1 : reverse ss, Just (nIS happy_var_1 <++> l)) })}} ) (\r -> happyReturn (happyIn128 r)) happyReduce_313 = happySpecReduce_3 115# happyReduction_313 happyReduction_313 happy_x_3 happy_x_2 happy_x_1 = case happyOut129 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut130 happy_x_3 of { happy_var_3 -> happyIn129 (let (fds,ss,l) = happy_var_1 in (happy_var_3 : fds, happy_var_2 : ss, l <++> ann happy_var_3) )}}} happyReduce_314 = happySpecReduce_1 115# happyReduction_314 happyReduction_314 happy_x_1 = case happyOut130 happy_x_1 of { happy_var_1 -> happyIn129 (([happy_var_1],[],ann happy_var_1) )} happyReduce_315 = happySpecReduce_3 116# happyReduction_315 happyReduction_315 happy_x_3 happy_x_2 happy_x_1 = case happyOut126 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightArrow) -> case happyOut127 happy_x_3 of { happy_var_3 -> happyIn130 (FunDep (snd happy_var_1 nIS happy_var_2 <++> snd happy_var_3 <** [happy_var_2]) (reverse (fst happy_var_1)) (reverse (fst happy_var_3)) )}}} happyReduce_316 = happyMonadReduce 4# 117# happyReduction_316 happyReduction_316 (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 { (Loc happy_var_1 KW_Where) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOut132 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightCurly) -> ( return (fst happy_var_3, happy_var_1 : happy_var_2 : snd happy_var_3 ++ [happy_var_4], Just $ happy_var_1 <^^> happy_var_4))}}}} ) (\r -> happyReturn (happyIn131 r)) happyReduce_317 = happyMonadReduce 4# 117# happyReduction_317 happyReduction_317 (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 { (Loc happy_var_1 KW_Where) -> case happyOut261 happy_x_2 of { happy_var_2 -> case happyOut132 happy_x_3 of { happy_var_3 -> case happyOut262 happy_x_4 of { happy_var_4 -> ( return (fst happy_var_3, happy_var_1 : happy_var_2 : snd happy_var_3 ++ [happy_var_4], Just $ happy_var_1 <^^> happy_var_4))}}}} ) (\r -> happyReturn (happyIn131 r)) happyReduce_318 = happyMonadReduce 0# 117# happyReduction_318 happyReduction_318 (happyRest) tk = happyThen (( checkEnabled EmptyDataDecls >> return ([],[],Nothing)) ) (\r -> happyReturn (happyIn131 r)) happyReduce_319 = happySpecReduce_3 118# happyReduction_319 happyReduction_319 happy_x_3 happy_x_2 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> case happyOut133 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> happyIn132 ((fst happy_var_2, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3) )}}} happyReduce_320 = happySpecReduce_3 119# happyReduction_320 happyReduction_320 happy_x_3 happy_x_2 happy_x_1 = case happyOut133 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> case happyOut134 happy_x_3 of { happy_var_3 -> happyIn133 ((happy_var_3 ++ fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) )}}} happyReduce_321 = happySpecReduce_1 119# happyReduction_321 happyReduction_321 happy_x_1 = case happyOut134 happy_x_1 of { happy_var_1 -> happyIn133 ((happy_var_1,[]) )} happyReduce_322 = happyMonadReduce 3# 120# happyReduction_322 happyReduction_322 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut236 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DoubleColon) -> case happyOut119 happy_x_3 of { happy_var_3 -> ( do { c <- checkUnQual happy_var_1; return [GadtDecl (happy_var_1 <> happy_var_3 <** [happy_var_2]) c Nothing happy_var_3] })}}} ) (\r -> happyReturn (happyIn134 r)) happyReduce_323 = happyMonadReduce 7# 120# happyReduction_323 happyReduction_323 (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 happyOut236 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DoubleColon) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 LeftCurly) -> case happyOut141 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 RightCurly) -> case happyOutTok happy_x_6 of { (Loc happy_var_6 RightArrow) -> case happyOut119 happy_x_7 of { happy_var_7 -> ( do { c <- checkUnQual happy_var_1; return [GadtDecl (happy_var_1 <> happy_var_7 <** [happy_var_2,happy_var_3,happy_var_5,happy_var_6] ++ snd happy_var_4) c (Just (reverse $ fst happy_var_4)) happy_var_7] })}}}}}}} ) (\r -> happyReturn (happyIn134 r)) happyReduce_324 = happySpecReduce_2 121# happyReduction_324 happyReduction_324 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Equals) -> case happyOut136 happy_x_2 of { happy_var_2 -> happyIn135 (let (ds,ss,l) = happy_var_2 in (ds, happy_var_1 : reverse ss, Just $ nIS happy_var_1 <++> l) )}} happyReduce_325 = happySpecReduce_3 122# happyReduction_325 happyReduction_325 happy_x_3 happy_x_2 happy_x_1 = case happyOut136 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Bar) -> case happyOut137 happy_x_3 of { happy_var_3 -> happyIn136 (let (ds,ss,l) = happy_var_1 in (happy_var_3 : ds, happy_var_2 : ss, l <++> ann happy_var_3) )}}} happyReduce_326 = happySpecReduce_1 122# happyReduction_326 happyReduction_326 happy_x_1 = case happyOut137 happy_x_1 of { happy_var_1 -> happyIn136 (([happy_var_1],[],ann happy_var_1) )} happyReduce_327 = happyMonadReduce 3# 123# happyReduction_327 happyReduction_327 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut138 happy_x_1 of { happy_var_1 -> case happyOut121 happy_x_2 of { happy_var_2 -> case happyOut139 happy_x_3 of { happy_var_3 -> ( do { checkEnabled ExistentialQuantification ; ctxt <- checkContext (Just happy_var_2) ; let {(mtvs,ss,ml) = happy_var_1} ; return $ QualConDecl (ml ann happy_var_3 <** ss) mtvs ctxt happy_var_3 })}}} ) (\r -> happyReturn (happyIn137 r)) happyReduce_328 = happySpecReduce_2 123# happyReduction_328 happyReduction_328 happy_x_2 happy_x_1 = case happyOut138 happy_x_1 of { happy_var_1 -> case happyOut139 happy_x_2 of { happy_var_2 -> happyIn137 (let (mtvs, ss, ml) = happy_var_1 in QualConDecl (ml ann happy_var_2 <** ss) mtvs Nothing happy_var_2 )}} happyReduce_329 = happyMonadReduce 3# 124# happyReduction_329 happyReduction_329 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Forall) -> case happyOut124 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Dot) -> ( checkEnabled ExistentialQuantification >> return (Just (fst happy_var_2), [happy_var_1,happy_var_3], Just $ happy_var_1 <^^> happy_var_3))}}} ) (\r -> happyReturn (happyIn138 r)) happyReduce_330 = happySpecReduce_0 124# happyReduction_330 happyReduction_330 = happyIn138 ((Nothing, [], Nothing) ) happyReduce_331 = happySpecReduce_1 125# happyReduction_331 happyReduction_331 happy_x_1 = case happyOut140 happy_x_1 of { happy_var_1 -> happyIn139 (let (n,ts,l) = happy_var_1 in ConDecl l n ts )} happyReduce_332 = happySpecReduce_3 125# happyReduction_332 happyReduction_332 happy_x_3 happy_x_2 happy_x_1 = case happyOut108 happy_x_1 of { happy_var_1 -> case happyOut240 happy_x_2 of { happy_var_2 -> case happyOut108 happy_x_3 of { happy_var_3 -> happyIn139 (InfixConDecl (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 )}}} happyReduce_333 = happyMonadReduce 3# 125# happyReduction_333 happyReduction_333 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut236 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightCurly) -> ( do { c <- checkUnQual happy_var_1; return $ RecDecl (ann happy_var_1 <++> nIS happy_var_3 <** [happy_var_2,happy_var_3]) c [] })}}} ) (\r -> happyReturn (happyIn139 r)) happyReduce_334 = happyMonadReduce 4# 125# happyReduction_334 happyReduction_334 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut236 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOut141 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightCurly) -> ( do { c <- checkUnQual happy_var_1; return $ RecDecl (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2:reverse (snd happy_var_3) ++ [happy_var_4])) c (reverse (fst happy_var_3)) })}}}} ) (\r -> happyReturn (happyIn139 r)) happyReduce_335 = happyMonadReduce 1# 126# happyReduction_335 happyReduction_335 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut110 happy_x_1 of { happy_var_1 -> ( do { (c,ts) <- splitTyConApp happy_var_1; return (c, ts, ann happy_var_1) })} ) (\r -> happyReturn (happyIn140 r)) happyReduce_336 = happySpecReduce_3 127# happyReduction_336 happyReduction_336 happy_x_3 happy_x_2 happy_x_1 = case happyOut141 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut142 happy_x_3 of { happy_var_3 -> happyIn141 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) )}}} happyReduce_337 = happySpecReduce_1 127# happyReduction_337 happyReduction_337 happy_x_1 = case happyOut142 happy_x_1 of { happy_var_1 -> happyIn141 (([happy_var_1],[]) )} happyReduce_338 = happySpecReduce_3 128# happyReduction_338 happyReduction_338 happy_x_3 happy_x_2 happy_x_1 = case happyOut89 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DoubleColon) -> case happyOut119 happy_x_3 of { happy_var_3 -> happyIn142 (let (ns,ss,l) = happy_var_1 in FieldDecl (l <++> ann happy_var_3 <** (reverse ss ++ [happy_var_2])) (reverse ns) happy_var_3 )}}} happyReduce_339 = happySpecReduce_0 129# happyReduction_339 happyReduction_339 = happyIn143 (Nothing ) happyReduce_340 = happySpecReduce_2 129# happyReduction_340 happyReduction_340 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Deriving) -> case happyOut145 happy_x_2 of { happy_var_2 -> happyIn143 (let l = nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1] in Just $ Deriving l [IRule (ann happy_var_2) Nothing Nothing happy_var_2] )}} happyReduce_341 = happySpecReduce_3 129# happyReduction_341 happyReduction_341 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Deriving) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn143 (Just $ Deriving (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_2,happy_var_3]) [] )}}} happyReduce_342 = happyReduce 4# 129# happyReduction_342 happyReduction_342 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Deriving) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOut144 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> happyIn143 (-- Distinguish deriving (Show) from deriving Show (#189) case fst happy_var_3 of [ts] -> Just $ Deriving (happy_var_1 <^^> happy_var_4 <** [happy_var_1]) [IParen (happy_var_2 <^^> happy_var_4 <** [happy_var_2,happy_var_4]) ts] tss -> Just $ Deriving (happy_var_1 <^^> happy_var_4 <** happy_var_1:happy_var_2: reverse (snd happy_var_3) ++ [happy_var_4]) (reverse tss) ) `HappyStk` happyRest}}}} happyReduce_343 = happyMonadReduce 1# 130# happyReduction_343 happyReduction_343 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut123 happy_x_1 of { happy_var_1 -> ( checkDeriving (fst happy_var_1) >>= \ds -> return (ds, snd happy_var_1))} ) (\r -> happyReturn (happyIn144 r)) happyReduce_344 = happySpecReduce_1 131# happyReduction_344 happyReduction_344 happy_x_1 = case happyOut251 happy_x_1 of { happy_var_1 -> happyIn145 (IHCon (ann happy_var_1) happy_var_1 )} happyReduce_345 = happyMonadReduce 1# 132# happyReduction_345 happyReduction_345 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut147 happy_x_1 of { happy_var_1 -> ( checkEnabled KindSignatures >> return happy_var_1)} ) (\r -> happyReturn (happyIn146 r)) happyReduce_346 = happySpecReduce_1 133# happyReduction_346 happyReduction_346 happy_x_1 = case happyOut148 happy_x_1 of { happy_var_1 -> happyIn147 (happy_var_1 )} happyReduce_347 = happySpecReduce_3 133# happyReduction_347 happyReduction_347 happy_x_3 happy_x_2 happy_x_1 = case happyOut148 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightArrow) -> case happyOut147 happy_x_3 of { happy_var_3 -> happyIn147 (KindFn (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_348 = happySpecReduce_1 134# happyReduction_348 happyReduction_348 happy_x_1 = case happyOut149 happy_x_1 of { happy_var_1 -> happyIn148 (happy_var_1 )} happyReduce_349 = happySpecReduce_2 134# happyReduction_349 happyReduction_349 happy_x_2 happy_x_1 = case happyOut148 happy_x_1 of { happy_var_1 -> case happyOut149 happy_x_2 of { happy_var_2 -> happyIn148 (KindApp (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 )}} happyReduce_350 = happySpecReduce_1 135# happyReduction_350 happyReduction_350 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Star) -> happyIn149 (KindStar (nIS happy_var_1) )} happyReduce_351 = happySpecReduce_3 135# happyReduction_351 happyReduction_351 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut147 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn149 (KindParen (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_352 = happyMonadReduce 1# 135# happyReduction_352 happyReduction_352 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut150 happy_x_1 of { happy_var_1 -> ( checkKind happy_var_1 >> return happy_var_1)} ) (\r -> happyReturn (happyIn149 r)) happyReduce_353 = happyMonadReduce 1# 135# happyReduction_353 happyReduction_353 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut247 happy_x_1 of { happy_var_1 -> ( checkEnabled PolyKinds >> return (KindVar (ann happy_var_1) happy_var_1))} ) (\r -> happyReturn (happyIn149 r)) happyReduce_354 = happySpecReduce_1 136# happyReduction_354 happyReduction_354 happy_x_1 = case happyOut273 happy_x_1 of { happy_var_1 -> happyIn150 (KindVar (ann happy_var_1) happy_var_1 )} happyReduce_355 = happySpecReduce_2 136# happyReduction_355 happyReduction_355 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightParen) -> happyIn150 (let l = happy_var_1 <^^> happy_var_2 in KindVar l (unit_tycon_name l) )}} happyReduce_356 = happyReduce 5# 136# happyReduction_356 happyReduction_356 (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 { (Loc happy_var_1 LeftParen) -> case happyOut146 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Comma) -> case happyOut151 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 RightParen) -> happyIn150 (KindTuple (happy_var_1 <^^> happy_var_5 <** (happy_var_1:happy_var_3:reverse (happy_var_5:snd happy_var_4))) (happy_var_2:reverse (fst happy_var_4)) ) `HappyStk` happyRest}}}}} happyReduce_357 = happySpecReduce_3 136# happyReduction_357 happyReduction_357 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftSquare) -> case happyOut146 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightSquare) -> happyIn150 (KindList ((happy_var_1 <^^> happy_var_3) <** [happy_var_1, happy_var_3]) happy_var_2 )}}} happyReduce_358 = happySpecReduce_1 137# happyReduction_358 happyReduction_358 happy_x_1 = case happyOut147 happy_x_1 of { happy_var_1 -> happyIn151 (([happy_var_1], []) )} happyReduce_359 = happySpecReduce_3 137# happyReduction_359 happyReduction_359 happy_x_3 happy_x_2 happy_x_1 = case happyOut147 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut151 happy_x_3 of { happy_var_3 -> happyIn151 ((happy_var_1 : (fst happy_var_3), happy_var_2 : (snd happy_var_3)) )}}} happyReduce_360 = happySpecReduce_0 138# happyReduction_360 happyReduction_360 = happyIn152 ((Nothing,[]) ) happyReduce_361 = happySpecReduce_2 138# happyReduction_361 happyReduction_361 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 DoubleColon) -> case happyOut146 happy_x_2 of { happy_var_2 -> happyIn152 ((Just happy_var_2,[happy_var_1]) )}} happyReduce_362 = happyMonadReduce 4# 139# happyReduction_362 happyReduction_362 (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 { (Loc happy_var_1 KW_Where) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOut154 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightCurly) -> ( checkClassBody (fst happy_var_3) >>= \vs -> return (Just vs, happy_var_1:happy_var_2: snd happy_var_3 ++ [happy_var_4], Just (happy_var_1 <^^> happy_var_4)))}}}} ) (\r -> happyReturn (happyIn153 r)) happyReduce_363 = happyMonadReduce 4# 139# happyReduction_363 happyReduction_363 (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 { (Loc happy_var_1 KW_Where) -> case happyOut261 happy_x_2 of { happy_var_2 -> case happyOut154 happy_x_3 of { happy_var_3 -> case happyOut262 happy_x_4 of { happy_var_4 -> ( do { vs <- checkClassBody (fst happy_var_3); let { l' = if null (fst happy_var_3) then nIS happy_var_4 else (ann . last $ fst happy_var_3) }; return (Just vs, happy_var_1:happy_var_2: snd happy_var_3 ++ [happy_var_4], Just (nIS happy_var_1 <++> l')) })}}}} ) (\r -> happyReturn (happyIn153 r)) happyReduce_364 = happySpecReduce_0 139# happyReduction_364 happyReduction_364 = happyIn153 ((Nothing,[],Nothing) ) happyReduce_365 = happyMonadReduce 3# 140# happyReduction_365 happyReduction_365 (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 happyOut155 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> ( checkRevClsDecls (fst happy_var_2) >>= \cs -> return (cs, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3))}}} ) (\r -> happyReturn (happyIn154 r)) happyReduce_366 = happySpecReduce_1 140# happyReduction_366 happyReduction_366 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> happyIn154 (([],reverse happy_var_1) )} happyReduce_367 = happySpecReduce_3 141# happyReduction_367 happyReduction_367 happy_x_3 happy_x_2 happy_x_1 = case happyOut155 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> case happyOut156 happy_x_3 of { happy_var_3 -> happyIn155 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) )}}} happyReduce_368 = happySpecReduce_1 141# happyReduction_368 happyReduction_368 happy_x_1 = case happyOut156 happy_x_1 of { happy_var_1 -> happyIn155 (([happy_var_1],[]) )} happyReduce_369 = happySpecReduce_1 142# happyReduction_369 happyReduction_369 happy_x_1 = case happyOut77 happy_x_1 of { happy_var_1 -> happyIn156 (ClsDecl (ann happy_var_1) happy_var_1 )} happyReduce_370 = happyMonadReduce 1# 142# happyReduction_370 happyReduction_370 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut158 happy_x_1 of { happy_var_1 -> ( checkEnabled TypeFamilies >> return happy_var_1)} ) (\r -> happyReturn (happyIn156 r)) happyReduce_371 = happyMonadReduce 2# 142# happyReduction_371 happyReduction_371 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Default) -> case happyOut79 happy_x_2 of { happy_var_2 -> ( checkEnabled DefaultSignatures >> checkDefSigDef happy_var_2 >>= \(n,t,l) -> return (ClsDefSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1,l]) n t))}} ) (\r -> happyReturn (happyIn156 r)) happyReduce_372 = happySpecReduce_0 143# happyReduction_372 happyReduction_372 = happyIn157 ([] ) happyReduce_373 = happySpecReduce_1 143# happyReduction_373 happyReduction_373 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Family) -> happyIn157 ([happy_var_1] )} happyReduce_374 = happyMonadReduce 4# 144# happyReduction_374 happyReduction_374 (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 { (Loc happy_var_1 KW_Data) -> case happyOut107 happy_x_3 of { happy_var_3 -> case happyOut61 happy_x_4 of { happy_var_4 -> ( do { (cs,dh) <- checkDataHeader happy_var_3; return (ClsDataFam (nIS happy_var_1 <++> ann happy_var_3 <+?> (fmap ann) happy_var_4 <** [happy_var_1]) cs dh happy_var_4) })}}} ) (\r -> happyReturn (happyIn158 r)) happyReduce_375 = happyMonadReduce 3# 144# happyReduction_375 happyReduction_375 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Type) -> case happyOut107 happy_x_2 of { happy_var_2 -> case happyOut64 happy_x_3 of { happy_var_3 -> ( mkAssocType happy_var_1 happy_var_2 happy_var_3)}}} ) (\r -> happyReturn (happyIn158 r)) happyReduce_376 = happyMonadReduce 4# 144# happyReduction_376 happyReduction_376 (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 { (Loc happy_var_1 KW_Type) -> case happyOut107 happy_x_3 of { happy_var_3 -> case happyOut63 happy_x_4 of { happy_var_4 -> ( do { dh <- checkSimpleType happy_var_3; return (ClsTyFam (nIS happy_var_1 <++> ann happy_var_3 <+?> (fmap ann) (fst happy_var_4) <+?> (fmap ann) (snd happy_var_4) <** [happy_var_1]) dh (fst happy_var_4) (snd happy_var_4)) })}}} ) (\r -> happyReturn (happyIn158 r)) happyReduce_377 = happySpecReduce_3 144# happyReduction_377 happyReduction_377 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Type) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Instance) -> case happyOut72 happy_x_3 of { happy_var_3 -> happyIn158 (ClsTyDef (nIS happy_var_1 <++> ann happy_var_3 <** [happy_var_1,happy_var_2]) happy_var_3 )}}} happyReduce_378 = happyMonadReduce 4# 145# happyReduction_378 happyReduction_378 (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 { (Loc happy_var_1 KW_Where) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOut160 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightCurly) -> ( checkInstBody (fst happy_var_3) >>= \vs -> return (Just vs, happy_var_1:happy_var_2: snd happy_var_3 ++ [happy_var_4], Just (happy_var_1 <^^> happy_var_4)))}}}} ) (\r -> happyReturn (happyIn159 r)) happyReduce_379 = happyMonadReduce 4# 145# happyReduction_379 happyReduction_379 (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 { (Loc happy_var_1 KW_Where) -> case happyOut261 happy_x_2 of { happy_var_2 -> case happyOut160 happy_x_3 of { happy_var_3 -> case happyOut262 happy_x_4 of { happy_var_4 -> ( checkInstBody (fst happy_var_3) >>= \vs -> return (Just vs, happy_var_1:happy_var_2: snd happy_var_3 ++ [happy_var_4], Just (happy_var_1 <^^> happy_var_4)))}}}} ) (\r -> happyReturn (happyIn159 r)) happyReduce_380 = happySpecReduce_0 145# happyReduction_380 happyReduction_380 = happyIn159 ((Nothing, [], Nothing) ) happyReduce_381 = happyMonadReduce 3# 146# happyReduction_381 happyReduction_381 (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 happyOut161 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> ( checkRevInstDecls (fst happy_var_2) >>= \is -> return (is, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3))}}} ) (\r -> happyReturn (happyIn160 r)) happyReduce_382 = happySpecReduce_1 146# happyReduction_382 happyReduction_382 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> happyIn160 (([],reverse happy_var_1) )} happyReduce_383 = happySpecReduce_3 147# happyReduction_383 happyReduction_383 happy_x_3 happy_x_2 happy_x_1 = case happyOut161 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> case happyOut162 happy_x_3 of { happy_var_3 -> happyIn161 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) )}}} happyReduce_384 = happySpecReduce_1 147# happyReduction_384 happyReduction_384 happy_x_1 = case happyOut162 happy_x_1 of { happy_var_1 -> happyIn161 (([happy_var_1],[]) )} happyReduce_385 = happySpecReduce_1 148# happyReduction_385 happyReduction_385 happy_x_1 = case happyOut164 happy_x_1 of { happy_var_1 -> happyIn162 (InsDecl (ann happy_var_1) happy_var_1 )} happyReduce_386 = happyMonadReduce 1# 148# happyReduction_386 happyReduction_386 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut163 happy_x_1 of { happy_var_1 -> ( checkEnabled TypeFamilies >> return happy_var_1)} ) (\r -> happyReturn (happyIn162 r)) happyReduce_387 = happySpecReduce_1 148# happyReduction_387 happyReduction_387 happy_x_1 = case happyOut81 happy_x_1 of { happy_var_1 -> happyIn162 (InsDecl (ann happy_var_1) happy_var_1 )} happyReduce_388 = happyMonadReduce 1# 148# happyReduction_388 happyReduction_388 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut80 happy_x_1 of { happy_var_1 -> ( checkEnabled InstanceSigs >> return (InsDecl (ann happy_var_1) happy_var_1))} ) (\r -> happyReturn (happyIn162 r)) happyReduce_389 = happyMonadReduce 4# 149# happyReduction_389 happyReduction_389 (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 { (Loc happy_var_1 KW_Type) -> case happyOut104 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Equals) -> case happyOut119 happy_x_4 of { happy_var_4 -> ( do { -- no checkSimpleType happy_var_4 since dtype may contain type patterns return (InsType (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) happy_var_2 happy_var_4) })}}}} ) (\r -> happyReturn (happyIn163 r)) happyReduce_390 = happyMonadReduce 4# 149# happyReduction_390 happyReduction_390 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut73 happy_x_1 of { happy_var_1 -> case happyOut119 happy_x_2 of { happy_var_2 -> case happyOut135 happy_x_3 of { happy_var_3 -> case happyOut143 happy_x_4 of { happy_var_4 -> ( do { -- (cs,c,t) <- checkDataHeader happy_var_4; let {(ds,ss,minf) = happy_var_3}; checkDataOrNew happy_var_1 ds; return (InsData (happy_var_1 <> happy_var_2 <+?> minf <+?> fmap ann happy_var_4 <** ss ) happy_var_1 happy_var_2 (reverse ds) happy_var_4) })}}}} ) (\r -> happyReturn (happyIn163 r)) happyReduce_391 = happyMonadReduce 5# 149# happyReduction_391 happyReduction_391 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut73 happy_x_1 of { happy_var_1 -> case happyOut119 happy_x_2 of { happy_var_2 -> case happyOut152 happy_x_3 of { happy_var_3 -> case happyOut131 happy_x_4 of { happy_var_4 -> case happyOut143 happy_x_5 of { happy_var_5 -> ( do { -- (cs,c,t) <- checkDataHeader happy_var_4; let { (gs,ss,minf) = happy_var_4 } ; checkDataOrNewG happy_var_1 gs; return $ InsGData (ann happy_var_1 <+?> minf <+?> fmap ann happy_var_5 <** (snd happy_var_3 ++ ss)) happy_var_1 happy_var_2 (fst happy_var_3) (reverse gs) happy_var_5 })}}}}} ) (\r -> happyReturn (happyIn163 r)) happyReduce_392 = happyMonadReduce 4# 150# happyReduction_392 happyReduction_392 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut174 happy_x_1 of { happy_var_1 -> case happyOut166 happy_x_2 of { happy_var_2 -> case happyOut167 happy_x_3 of { happy_var_3 -> case happyOut165 happy_x_4 of { happy_var_4 -> ( checkValDef ((happy_var_1 <> happy_var_3 <+?> (fmap ann) (fst happy_var_4)) <** (snd happy_var_4)) happy_var_1 happy_var_2 happy_var_3 (fst happy_var_4))}}}} ) (\r -> happyReturn (happyIn164 r)) happyReduce_393 = happyMonadReduce 4# 150# happyReduction_393 happyReduction_393 (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 { (Loc happy_var_1 Exclamation) -> case happyOut183 happy_x_2 of { happy_var_2 -> case happyOut167 happy_x_3 of { happy_var_3 -> case happyOut165 happy_x_4 of { happy_var_4 -> ( do { checkEnabled BangPatterns ; let { l = nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1] }; p <- checkPattern (BangPat l happy_var_2); return $ PatBind (p <> happy_var_3 <+?> (fmap ann) (fst happy_var_4) <** snd happy_var_4) p happy_var_3 (fst happy_var_4) })}}}} ) (\r -> happyReturn (happyIn164 r)) happyReduce_394 = happySpecReduce_2 151# happyReduction_394 happyReduction_394 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Where) -> case happyOut88 happy_x_2 of { happy_var_2 -> happyIn165 ((Just happy_var_2, [happy_var_1]) )}} happyReduce_395 = happySpecReduce_0 151# happyReduction_395 happyReduction_395 = happyIn165 ((Nothing, []) ) happyReduce_396 = happyMonadReduce 2# 152# happyReduction_396 happyReduction_396 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 DoubleColon) -> case happyOut119 happy_x_2 of { happy_var_2 -> ( checkEnabled ScopedTypeVariables >> return (Just (happy_var_2, happy_var_1)))}} ) (\r -> happyReturn (happyIn166 r)) happyReduce_397 = happySpecReduce_0 152# happyReduction_397 happyReduction_397 = happyIn166 (Nothing ) happyReduce_398 = happySpecReduce_2 153# happyReduction_398 happyReduction_398 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Equals) -> case happyOut170 happy_x_2 of { happy_var_2 -> happyIn167 (UnGuardedRhs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_399 = happySpecReduce_1 153# happyReduction_399 happyReduction_399 happy_x_1 = case happyOut168 happy_x_1 of { happy_var_1 -> happyIn167 (GuardedRhss (snd happy_var_1) (reverse $ fst happy_var_1) )} happyReduce_400 = happySpecReduce_2 154# happyReduction_400 happyReduction_400 happy_x_2 happy_x_1 = case happyOut168 happy_x_1 of { happy_var_1 -> case happyOut169 happy_x_2 of { happy_var_2 -> happyIn168 ((happy_var_2 : fst happy_var_1, snd happy_var_1 <++> ann happy_var_2) )}} happyReduce_401 = happySpecReduce_1 154# happyReduction_401 happyReduction_401 happy_x_1 = case happyOut169 happy_x_1 of { happy_var_1 -> happyIn168 (([happy_var_1],ann happy_var_1) )} happyReduce_402 = happyMonadReduce 4# 155# happyReduction_402 happyReduction_402 (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 { (Loc happy_var_1 Bar) -> case happyOut207 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Equals) -> case happyOut170 happy_x_4 of { happy_var_4 -> ( do { checkPatternGuards (fst happy_var_2); return $ GuardedRhs (nIS happy_var_1 <++> ann happy_var_4 <** (happy_var_1:snd happy_var_2 ++ [happy_var_3])) (reverse (fst happy_var_2)) happy_var_4 })}}}} ) (\r -> happyReturn (happyIn169 r)) happyReduce_403 = happyMonadReduce 1# 156# happyReduction_403 happyReduction_403 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut171 happy_x_1 of { happy_var_1 -> ( checkExpr happy_var_1)} ) (\r -> happyReturn (happyIn170 r)) happyReduce_404 = happySpecReduce_3 157# happyReduction_404 happyReduction_404 happy_x_3 happy_x_2 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DoubleColon) -> case happyOut119 happy_x_3 of { happy_var_3 -> happyIn171 (ExpTypeSig (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_405 = happySpecReduce_1 157# happyReduction_405 happyReduction_405 happy_x_1 = case happyOut172 happy_x_1 of { happy_var_1 -> happyIn171 (happy_var_1 )} happyReduce_406 = happySpecReduce_2 157# happyReduction_406 happyReduction_406 happy_x_2 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> case happyOut243 happy_x_2 of { happy_var_2 -> happyIn171 (PostOp (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 )}} happyReduce_407 = happySpecReduce_3 157# happyReduction_407 happyReduction_407 happy_x_3 happy_x_2 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftArrowTail) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn171 (LeftArrApp (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_408 = happySpecReduce_3 157# happyReduction_408 happyReduction_408 happy_x_3 happy_x_2 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightArrowTail) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn171 (RightArrApp (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_409 = happySpecReduce_3 157# happyReduction_409 happyReduction_409 happy_x_3 happy_x_2 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftDblArrowTail) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn171 (LeftArrHighApp (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_410 = happySpecReduce_3 157# happyReduction_410 happyReduction_410 happy_x_3 happy_x_2 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightDblArrowTail) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn171 (RightArrHighApp (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_411 = happySpecReduce_1 158# happyReduction_411 happyReduction_411 happy_x_1 = case happyOut173 happy_x_1 of { happy_var_1 -> happyIn172 (happy_var_1 )} happyReduce_412 = happySpecReduce_1 158# happyReduction_412 happyReduction_412 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> happyIn172 (happy_var_1 )} happyReduce_413 = happySpecReduce_3 159# happyReduction_413 happyReduction_413 happy_x_3 happy_x_2 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> case happyOut243 happy_x_2 of { happy_var_2 -> case happyOut175 happy_x_3 of { happy_var_3 -> happyIn173 (InfixApp (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 )}}} happyReduce_414 = happySpecReduce_1 159# happyReduction_414 happyReduction_414 happy_x_1 = case happyOut175 happy_x_1 of { happy_var_1 -> happyIn173 (happy_var_1 )} happyReduce_415 = happySpecReduce_3 160# happyReduction_415 happyReduction_415 happy_x_3 happy_x_2 happy_x_1 = case happyOut174 happy_x_1 of { happy_var_1 -> case happyOut243 happy_x_2 of { happy_var_2 -> case happyOut178 happy_x_3 of { happy_var_3 -> happyIn174 (InfixApp (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 )}}} happyReduce_416 = happySpecReduce_1 160# happyReduction_416 happyReduction_416 happy_x_1 = case happyOut178 happy_x_1 of { happy_var_1 -> happyIn174 (happy_var_1 )} happyReduce_417 = happyReduce 4# 161# happyReduction_417 happyReduction_417 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 Backslash) -> case happyOut181 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightArrow) -> case happyOut171 happy_x_4 of { happy_var_4 -> happyIn175 (Lambda (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) (reverse happy_var_2) happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_418 = happyReduce 4# 161# happyReduction_418 happyReduction_418 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Let) -> case happyOut88 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 KW_In) -> case happyOut171 happy_x_4 of { happy_var_4 -> happyIn175 (Let (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) happy_var_2 happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_419 = happyReduce 8# 161# happyReduction_419 happyReduction_419 (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 { (Loc happy_var_1 KW_If) -> case happyOut171 happy_x_2 of { happy_var_2 -> case happyOut176 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 KW_Then) -> case happyOut171 happy_x_5 of { happy_var_5 -> case happyOut176 happy_x_6 of { happy_var_6 -> case happyOutTok happy_x_7 of { (Loc happy_var_7 KW_Else) -> case happyOut171 happy_x_8 of { happy_var_8 -> happyIn175 (If (nIS happy_var_1 <++> ann happy_var_8 <** (happy_var_1:happy_var_3 ++ happy_var_4:happy_var_6 ++ [happy_var_7])) happy_var_2 happy_var_5 happy_var_8 ) `HappyStk` happyRest}}}}}}}} happyReduce_420 = happyMonadReduce 2# 161# happyReduction_420 happyReduction_420 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_If) -> case happyOut218 happy_x_2 of { happy_var_2 -> ( checkEnabled MultiWayIf >> let (alts, inf, ss) = happy_var_2 in return (MultiIf (nIS happy_var_1 <++> inf <** (happy_var_1:ss)) alts))}} ) (\r -> happyReturn (happyIn175 r)) happyReduce_421 = happyReduce 4# 161# happyReduction_421 happyReduction_421 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Proc) -> case happyOut182 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightArrow) -> case happyOut171 happy_x_4 of { happy_var_4 -> happyIn175 (Proc (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) happy_var_2 happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_422 = happySpecReduce_1 161# happyReduction_422 happyReduction_422 happy_x_1 = case happyOut179 happy_x_1 of { happy_var_1 -> happyIn175 (happy_var_1 )} happyReduce_423 = happyMonadReduce 1# 162# happyReduction_423 happyReduction_423 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 SemiColon) -> ( checkEnabled DoAndIfThenElse >> return [happy_var_1])} ) (\r -> happyReturn (happyIn176 r)) happyReduce_424 = happySpecReduce_0 162# happyReduction_424 happyReduction_424 = happyIn176 ([] ) happyReduce_425 = happySpecReduce_1 163# happyReduction_425 happyReduction_425 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 SemiColon) -> happyIn177 ([happy_var_1] )} happyReduce_426 = happySpecReduce_0 163# happyReduction_426 happyReduction_426 = happyIn177 ([] ) happyReduce_427 = happyReduce 4# 164# happyReduction_427 happyReduction_427 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Case) -> case happyOut171 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 KW_Of) -> case happyOut210 happy_x_4 of { happy_var_4 -> happyIn178 (let (als, inf, ss) = happy_var_4 in Case (nIS happy_var_1 <++> inf <** (happy_var_1:happy_var_3:ss)) happy_var_2 als ) `HappyStk` happyRest}}}} happyReduce_428 = happyMonadReduce 3# 164# happyReduction_428 happyReduction_428 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 Backslash) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Case) -> case happyOut210 happy_x_3 of { happy_var_3 -> ( do { checkEnabled LambdaCase ; let { (als, inf, ss) = happy_var_3 } ; return (LCase (nIS happy_var_1 <++> inf <** (happy_var_1:happy_var_2:ss)) als) })}}} ) (\r -> happyReturn (happyIn178 r)) happyReduce_429 = happySpecReduce_2 164# happyReduction_429 happyReduction_429 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Minus) -> case happyOut180 happy_x_2 of { happy_var_2 -> happyIn178 (NegApp (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_430 = happySpecReduce_2 164# happyReduction_430 happyReduction_430 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Do) -> case happyOut221 happy_x_2 of { happy_var_2 -> happyIn178 (let (sts, inf, ss) = happy_var_2 in Do (nIS happy_var_1 <++> inf <** happy_var_1:ss) sts )}} happyReduce_431 = happySpecReduce_2 164# happyReduction_431 happyReduction_431 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_MDo) -> case happyOut221 happy_x_2 of { happy_var_2 -> happyIn178 (let (sts, inf, ss) = happy_var_2 in MDo (nIS happy_var_1 <++> inf <** happy_var_1:ss) sts )}} happyReduce_432 = happySpecReduce_1 164# happyReduction_432 happyReduction_432 happy_x_1 = case happyOut180 happy_x_1 of { happy_var_1 -> happyIn178 (happy_var_1 )} happyReduce_433 = happyReduce 4# 165# happyReduction_433 happyReduction_433 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 CORE) -> case happyOutTok happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> case happyOut171 happy_x_4 of { happy_var_4 -> happyIn179 (let Loc l (StringTok (s,_)) = happy_var_2 in CorePragma (nIS happy_var_1 <++> ann happy_var_4 <** [l,happy_var_3]) s happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_434 = happyReduce 4# 165# happyReduction_434 happyReduction_434 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 SCC) -> case happyOutTok happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 PragmaEnd) -> case happyOut171 happy_x_4 of { happy_var_4 -> happyIn179 (let Loc l (StringTok (s,_)) = happy_var_2 in SCCPragma (nIS happy_var_1 <++> ann happy_var_4 <** [l,happy_var_3]) s happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_435 = happyReduce 11# 165# happyReduction_435 happyReduction_435 (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 { (Loc happy_var_1 GENERATED) -> case happyOutTok happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 Colon) -> case happyOutTok happy_x_5 of { happy_var_5 -> case happyOutTok happy_x_6 of { (Loc happy_var_6 Minus) -> case happyOutTok happy_x_7 of { happy_var_7 -> case happyOutTok happy_x_8 of { (Loc happy_var_8 Colon) -> case happyOutTok happy_x_9 of { happy_var_9 -> case happyOutTok happy_x_10 of { (Loc happy_var_10 PragmaEnd) -> case happyOut171 happy_x_11 of { happy_var_11 -> happyIn179 (let { Loc l0 (StringTok (s,_)) = happy_var_2; Loc l1 (IntTok (i1,_)) = happy_var_3; Loc l2 (IntTok (i2,_)) = happy_var_5; Loc l3 (IntTok (i3,_)) = happy_var_7; Loc l4 (IntTok (i4,_)) = happy_var_9} in GenPragma (nIS happy_var_1 <++> ann happy_var_11 <** [happy_var_1,l0,l1,happy_var_4,l2,happy_var_6,l3,happy_var_8,l4,happy_var_10]) s (fromInteger i1, fromInteger i2) (fromInteger i3, fromInteger i4) happy_var_11 ) `HappyStk` happyRest}}}}}}}}}}} happyReduce_436 = happySpecReduce_2 166# happyReduction_436 happyReduction_436 happy_x_2 happy_x_1 = case happyOut180 happy_x_1 of { happy_var_1 -> case happyOut183 happy_x_2 of { happy_var_2 -> happyIn180 (App (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 )}} happyReduce_437 = happySpecReduce_1 166# happyReduction_437 happyReduction_437 happy_x_1 = case happyOut183 happy_x_1 of { happy_var_1 -> happyIn180 (happy_var_1 )} happyReduce_438 = happySpecReduce_2 167# happyReduction_438 happyReduction_438 happy_x_2 happy_x_1 = case happyOut181 happy_x_1 of { happy_var_1 -> case happyOut182 happy_x_2 of { happy_var_2 -> happyIn181 (happy_var_2 : happy_var_1 )}} happyReduce_439 = happySpecReduce_1 167# happyReduction_439 happyReduction_439 happy_x_1 = case happyOut182 happy_x_1 of { happy_var_1 -> happyIn181 ([happy_var_1] )} happyReduce_440 = happyMonadReduce 1# 168# happyReduction_440 happyReduction_440 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut183 happy_x_1 of { happy_var_1 -> ( checkPattern happy_var_1)} ) (\r -> happyReturn (happyIn182 r)) happyReduce_441 = happyMonadReduce 2# 168# happyReduction_441 happyReduction_441 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 Exclamation) -> case happyOut183 happy_x_2 of { happy_var_2 -> ( checkPattern (BangPat (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2))}} ) (\r -> happyReturn (happyIn182 r)) happyReduce_442 = happyMonadReduce 3# 169# happyReduction_442 happyReduction_442 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut233 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 At) -> case happyOut183 happy_x_3 of { happy_var_3 -> ( do { n <- checkUnQual happy_var_1; return (AsPat (happy_var_1 <> happy_var_3 <** [happy_var_2]) n happy_var_3) })}}} ) (\r -> happyReturn (happyIn183 r)) happyReduce_443 = happyMonadReduce 3# 169# happyReduction_443 happyReduction_443 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut233 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RPCAt) -> case happyOut183 happy_x_3 of { happy_var_3 -> ( do { n <- checkUnQual happy_var_1; return (CAsRP (happy_var_1 <> happy_var_3 <** [happy_var_2]) n happy_var_3) })}}} ) (\r -> happyReturn (happyIn183 r)) happyReduce_444 = happySpecReduce_2 169# happyReduction_444 happyReduction_444 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Tilde) -> case happyOut183 happy_x_2 of { happy_var_2 -> happyIn183 (IrrPat (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_445 = happySpecReduce_2 169# happyReduction_445 happyReduction_445 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 TApp) -> case happyOut109 happy_x_2 of { happy_var_2 -> happyIn183 (TypeApp (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_446 = happySpecReduce_1 169# happyReduction_446 happyReduction_446 happy_x_1 = case happyOut184 happy_x_1 of { happy_var_1 -> happyIn183 (happy_var_1 )} happyReduce_447 = happyMonadReduce 3# 170# happyReduction_447 happyReduction_447 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut184 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightCurly) -> ( liftM (amap (const (ann happy_var_1 <++> nIS happy_var_3 <** [happy_var_2,happy_var_3]))) $ mkRecConstrOrUpdate happy_var_1 [])}}} ) (\r -> happyReturn (happyIn184 r)) happyReduce_448 = happyMonadReduce 4# 170# happyReduction_448 happyReduction_448 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut184 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOut225 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightCurly) -> ( liftM (amap (const (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2:snd happy_var_3 ++ [happy_var_4])))) $ mkRecConstrOrUpdate happy_var_1 (fst happy_var_3))}}}} ) (\r -> happyReturn (happyIn184 r)) happyReduce_449 = happySpecReduce_1 170# happyReduction_449 happyReduction_449 happy_x_1 = case happyOut185 happy_x_1 of { happy_var_1 -> happyIn184 (happy_var_1 )} happyReduce_450 = happySpecReduce_1 171# happyReduction_450 happyReduction_450 happy_x_1 = case happyOut234 happy_x_1 of { happy_var_1 -> happyIn185 (IPVar (ann happy_var_1) happy_var_1 )} happyReduce_451 = happySpecReduce_1 171# happyReduction_451 happyReduction_451 happy_x_1 = case happyOut246 happy_x_1 of { happy_var_1 -> happyIn185 (happy_var_1 )} happyReduce_452 = happySpecReduce_1 171# happyReduction_452 happyReduction_452 happy_x_1 = case happyOut233 happy_x_1 of { happy_var_1 -> happyIn185 (Var (ann happy_var_1) happy_var_1 )} happyReduce_453 = happySpecReduce_1 171# happyReduction_453 happyReduction_453 happy_x_1 = case happyOut230 happy_x_1 of { happy_var_1 -> happyIn185 (happy_var_1 )} happyReduce_454 = happySpecReduce_1 171# happyReduction_454 happyReduction_454 happy_x_1 = case happyOut260 happy_x_1 of { happy_var_1 -> happyIn185 (Lit (ann happy_var_1) happy_var_1 )} happyReduce_455 = happySpecReduce_3 171# happyReduction_455 happyReduction_455 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut187 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn185 (Paren (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_456 = happySpecReduce_3 171# happyReduction_456 happyReduction_456 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut187 happy_x_2 of { happy_var_2 -> case happyOut188 happy_x_3 of { happy_var_3 -> happyIn185 (TupleSection (happy_var_1 <^^> head (snd happy_var_3) <** happy_var_1:reverse (snd happy_var_3)) Boxed (Just happy_var_2 : fst happy_var_3) )}}} happyReduce_457 = happyReduce 4# 171# happyReduction_457 happyReduction_457 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut186 happy_x_2 of { happy_var_2 -> case happyOut187 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightParen) -> happyIn185 (TupleSection (happy_var_1 <^^> happy_var_4 <** happy_var_1:reverse (happy_var_4:happy_var_2)) Boxed (replicate (length happy_var_2) Nothing ++ [Just happy_var_3]) ) `HappyStk` happyRest}}}} happyReduce_458 = happyReduce 4# 171# happyReduction_458 happyReduction_458 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut186 happy_x_2 of { happy_var_2 -> case happyOut187 happy_x_3 of { happy_var_3 -> case happyOut188 happy_x_4 of { happy_var_4 -> happyIn185 (TupleSection (happy_var_1 <^^> head (snd happy_var_4) <** happy_var_1:reverse (snd happy_var_4 ++ happy_var_2)) Boxed (replicate (length happy_var_2) Nothing ++ Just happy_var_3 : fst happy_var_4) ) `HappyStk` happyRest}}}} happyReduce_459 = happySpecReduce_3 171# happyReduction_459 happyReduction_459 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOut187 happy_x_2 of { happy_var_2 -> case happyOut189 happy_x_3 of { happy_var_3 -> happyIn185 (TupleSection (happy_var_1 <^^> head (snd happy_var_3) <** happy_var_1:reverse (snd happy_var_3)) Unboxed (Just happy_var_2 : fst happy_var_3) )}}} happyReduce_460 = happySpecReduce_3 171# happyReduction_460 happyReduction_460 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOut187 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightHashParen) -> happyIn185 (TupleSection (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) Unboxed [Just happy_var_2] )}}} happyReduce_461 = happyReduce 4# 171# happyReduction_461 happyReduction_461 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOut186 happy_x_2 of { happy_var_2 -> case happyOut187 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightHashParen) -> happyIn185 (TupleSection (happy_var_1 <^^> happy_var_4 <** happy_var_1:reverse (happy_var_4:happy_var_2)) Unboxed (replicate (length happy_var_2) Nothing ++ [Just happy_var_3]) ) `HappyStk` happyRest}}}} happyReduce_462 = happyReduce 4# 171# happyReduction_462 happyReduction_462 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOut186 happy_x_2 of { happy_var_2 -> case happyOut187 happy_x_3 of { happy_var_3 -> case happyOut189 happy_x_4 of { happy_var_4 -> happyIn185 (TupleSection (happy_var_1 <^^> head (snd happy_var_4) <** happy_var_1:reverse (snd happy_var_4 ++ happy_var_2)) Unboxed (replicate (length happy_var_2) Nothing ++ Just happy_var_3 : fst happy_var_4) ) `HappyStk` happyRest}}}} happyReduce_463 = happySpecReduce_3 171# happyReduction_463 happyReduction_463 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftSquare) -> case happyOut201 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightSquare) -> happyIn185 (amap (\l -> l <** [happy_var_3]) $ happy_var_2 (happy_var_1 <^^> happy_var_3 <** [happy_var_1]) )}}} happyReduce_464 = happySpecReduce_3 171# happyReduction_464 happyReduction_464 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 ParArrayLeftSquare) -> case happyOut209 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 ParArrayRightSquare) -> happyIn185 (amap (\l -> l <** [happy_var_3]) $ happy_var_2 (happy_var_1 <^^> happy_var_3 <** [happy_var_1]) )}}} happyReduce_465 = happySpecReduce_1 171# happyReduction_465 happyReduction_465 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Underscore) -> happyIn185 (WildCard (nIS happy_var_1) )} happyReduce_466 = happyMonadReduce 3# 171# happyReduction_466 happyReduction_466 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut191 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> ( checkEnabled RegularPatterns >> return (Paren (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2))}}} ) (\r -> happyReturn (happyIn185 r)) happyReduce_467 = happySpecReduce_3 171# happyReduction_467 happyReduction_467 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 RPGuardOpen) -> case happyOut190 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RPGuardClose) -> happyIn185 (SeqRP (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse (snd happy_var_2) ++ [happy_var_3])) $ reverse (fst happy_var_2) )}}} happyReduce_468 = happyReduce 5# 171# happyReduction_468 happyReduction_468 (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 { (Loc happy_var_1 RPGuardOpen) -> case happyOut171 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Bar) -> case happyOut207 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 RPGuardClose) -> happyIn185 (GuardRP (happy_var_1 <^^> happy_var_5 <** (happy_var_1:happy_var_3 : snd happy_var_4 ++ [happy_var_5])) happy_var_2 $ (reverse $ fst happy_var_4) ) `HappyStk` happyRest}}}}} happyReduce_469 = happySpecReduce_1 171# happyReduction_469 happyReduction_469 happy_x_1 = case happyOut192 happy_x_1 of { happy_var_1 -> happyIn185 (happy_var_1 )} happyReduce_470 = happySpecReduce_1 171# happyReduction_470 happyReduction_470 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn185 (let Loc l (THIdEscape s) = happy_var_1 in SpliceExp (nIS l) $ IdSplice (nIS l) s )} happyReduce_471 = happySpecReduce_3 171# happyReduction_471 happyReduction_471 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THParenEscape) -> case happyOut170 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn185 (let l = (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) in SpliceExp l $ ParenSplice l happy_var_2 )}}} happyReduce_472 = happySpecReduce_3 171# happyReduction_472 happyReduction_472 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THExpQuote) -> case happyOut170 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 THCloseQuote) -> happyIn185 (let l = (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) in BracketExp l $ ExpBracket l happy_var_2 )}}} happyReduce_473 = happyMonadReduce 3# 171# happyReduction_473 happyReduction_473 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 THPatQuote) -> case happyOut172 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 THCloseQuote) -> ( do { p <- checkPattern happy_var_2; let {l = (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) }; return $ BracketExp l $ PatBracket l p })}}} ) (\r -> happyReturn (happyIn185 r)) happyReduce_474 = happySpecReduce_3 171# happyReduction_474 happyReduction_474 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THTypQuote) -> case happyOut119 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 THCloseQuote) -> happyIn185 (let l = happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3] in BracketExp l $ TypeBracket l happy_var_2 )}}} happyReduce_475 = happyReduce 5# 171# happyReduction_475 happyReduction_475 (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 { (Loc happy_var_1 THDecQuote) -> case happyOut261 happy_x_2 of { happy_var_2 -> case happyOut58 happy_x_3 of { happy_var_3 -> case happyOut262 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 THCloseQuote) -> happyIn185 (let l = happy_var_1 <^^> happy_var_5 <** (happy_var_1:snd happy_var_3 ++ [happy_var_5]) in BracketExp l $ DeclBracket (happy_var_1 <^^> happy_var_5 <** (happy_var_2:snd happy_var_3 ++ [happy_var_4,happy_var_5])) (fst happy_var_3) ) `HappyStk` happyRest}}}}} happyReduce_476 = happySpecReduce_3 171# happyReduction_476 happyReduction_476 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THVarQuote) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftParen) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn185 (let {l1 = happy_var_1 <^^> happy_var_3 <** [happy_var_1]; l2 = happy_var_2 <^^> happy_var_3 <** [happy_var_2,happy_var_3];} in VarQuote l1 (unit_con_name l2) )}}} happyReduce_477 = happySpecReduce_2 171# happyReduction_477 happyReduction_477 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THVarQuote) -> case happyOut233 happy_x_2 of { happy_var_2 -> happyIn185 (VarQuote (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_478 = happySpecReduce_2 171# happyReduction_478 happyReduction_478 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THVarQuote) -> case happyOut236 happy_x_2 of { happy_var_2 -> happyIn185 (VarQuote (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_479 = happySpecReduce_2 171# happyReduction_479 happyReduction_479 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THTyQuote) -> case happyOut274 happy_x_2 of { happy_var_2 -> happyIn185 (TypQuote (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) (UnQual (ann happy_var_2) happy_var_2) )}} happyReduce_480 = happySpecReduce_2 171# happyReduction_480 happyReduction_480 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 THTyQuote) -> case happyOut116 happy_x_2 of { happy_var_2 -> happyIn185 (TypQuote (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_481 = happySpecReduce_1 171# happyReduction_481 happyReduction_481 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn185 (let Loc l (THQuasiQuote (n,q)) = happy_var_1 in QuasiQuote (nIS l) n q )} happyReduce_482 = happySpecReduce_2 172# happyReduction_482 happyReduction_482 happy_x_2 happy_x_1 = case happyOut186 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> happyIn186 (happy_var_2 : happy_var_1 )}} happyReduce_483 = happySpecReduce_1 172# happyReduction_483 happyReduction_483 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Comma) -> happyIn186 ([happy_var_1] )} happyReduce_484 = happySpecReduce_1 173# happyReduction_484 happyReduction_484 happy_x_1 = case happyOut171 happy_x_1 of { happy_var_1 -> happyIn187 (happy_var_1 )} happyReduce_485 = happySpecReduce_2 173# happyReduction_485 happyReduction_485 happy_x_2 happy_x_1 = case happyOut244 happy_x_1 of { happy_var_1 -> case happyOut172 happy_x_2 of { happy_var_2 -> happyIn187 (PreOp (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 )}} happyReduce_486 = happyMonadReduce 3# 173# happyReduction_486 happyReduction_486 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut171 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightArrow) -> case happyOut217 happy_x_3 of { happy_var_3 -> ( do {checkEnabled ViewPatterns; return $ ViewPat (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3})}}} ) (\r -> happyReturn (happyIn187 r)) happyReduce_487 = happySpecReduce_3 174# happyReduction_487 happyReduction_487 happy_x_3 happy_x_2 happy_x_1 = case happyOut186 happy_x_1 of { happy_var_1 -> case happyOut187 happy_x_2 of { happy_var_2 -> case happyOut188 happy_x_3 of { happy_var_3 -> happyIn188 (let (mes, ss) = happy_var_3 in (replicate (length happy_var_1 - 1) Nothing ++ Just happy_var_2 : mes, ss ++ happy_var_1) )}}} happyReduce_488 = happySpecReduce_3 174# happyReduction_488 happyReduction_488 happy_x_3 happy_x_2 happy_x_1 = case happyOut186 happy_x_1 of { happy_var_1 -> case happyOut187 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn188 ((replicate (length happy_var_1 - 1) Nothing ++ [Just happy_var_2], happy_var_3 : happy_var_1) )}}} happyReduce_489 = happySpecReduce_2 174# happyReduction_489 happyReduction_489 happy_x_2 happy_x_1 = case happyOut186 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightParen) -> happyIn188 ((replicate (length happy_var_1) Nothing, happy_var_2 : happy_var_1) )}} happyReduce_490 = happySpecReduce_3 175# happyReduction_490 happyReduction_490 happy_x_3 happy_x_2 happy_x_1 = case happyOut186 happy_x_1 of { happy_var_1 -> case happyOut187 happy_x_2 of { happy_var_2 -> case happyOut189 happy_x_3 of { happy_var_3 -> happyIn189 (let (mes, ss) = happy_var_3 in (replicate (length happy_var_1 - 1) Nothing ++ Just happy_var_2 : mes, ss ++ happy_var_1) )}}} happyReduce_491 = happySpecReduce_3 175# happyReduction_491 happyReduction_491 happy_x_3 happy_x_2 happy_x_1 = case happyOut186 happy_x_1 of { happy_var_1 -> case happyOut187 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightHashParen) -> happyIn189 ((replicate (length happy_var_1 - 1) Nothing ++ [Just happy_var_2], happy_var_3 : happy_var_1) )}}} happyReduce_492 = happySpecReduce_2 175# happyReduction_492 happyReduction_492 happy_x_2 happy_x_1 = case happyOut186 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightHashParen) -> happyIn189 ((replicate (length happy_var_1) Nothing, happy_var_2 : happy_var_1) )}} happyReduce_493 = happySpecReduce_3 176# happyReduction_493 happyReduction_493 happy_x_3 happy_x_2 happy_x_1 = case happyOut190 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn190 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) )}}} happyReduce_494 = happySpecReduce_1 176# happyReduction_494 happyReduction_494 happy_x_1 = case happyOut171 happy_x_1 of { happy_var_1 -> happyIn190 (([happy_var_1],[]) )} happyReduce_495 = happySpecReduce_3 177# happyReduction_495 happyReduction_495 happy_x_3 happy_x_2 happy_x_1 = case happyOut171 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Bar) -> case happyOut191 happy_x_3 of { happy_var_3 -> happyIn191 (EitherRP (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_496 = happySpecReduce_3 177# happyReduction_496 happyReduction_496 happy_x_3 happy_x_2 happy_x_1 = case happyOut171 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Bar) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn191 (EitherRP (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_497 = happyMonadReduce 10# 178# happyReduction_497 happyReduction_497 (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) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 XStdTagOpen) -> case happyOut195 happy_x_2 of { happy_var_2 -> case happyOut198 happy_x_3 of { happy_var_3 -> case happyOut200 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 XStdTagClose) -> case happyOut193 happy_x_6 of { happy_var_6 -> case happyOut177 happy_x_7 of { happy_var_7 -> case happyOutTok happy_x_8 of { (Loc happy_var_8 XCloseTagOpen) -> case happyOut195 happy_x_9 of { happy_var_9 -> case happyOutTok happy_x_10 of { (Loc happy_var_10 XStdTagClose) -> ( do { n <- checkEqNames happy_var_2 happy_var_9; let { cn = reverse happy_var_6; as = reverse happy_var_3; l = happy_var_1 <^^> happy_var_10 <** [happy_var_1,happy_var_5] ++ happy_var_7 ++ [happy_var_8,srcInfoSpan (ann happy_var_9),happy_var_10] }; return $ XTag l n as happy_var_4 cn })}}}}}}}}}} ) (\r -> happyReturn (happyIn192 r)) happyReduce_498 = happyReduce 5# 178# happyReduction_498 happyReduction_498 (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 { (Loc happy_var_1 XStdTagOpen) -> case happyOut195 happy_x_2 of { happy_var_2 -> case happyOut198 happy_x_3 of { happy_var_3 -> case happyOut200 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 XEmptyTagClose) -> happyIn192 (XETag (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_5]) happy_var_2 (reverse happy_var_3) happy_var_4 ) `HappyStk` happyRest}}}}} happyReduce_499 = happySpecReduce_3 178# happyReduction_499 happyReduction_499 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 XCodeTagOpen) -> case happyOut171 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 XCodeTagClose) -> happyIn192 (XExpTag (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 )}}} happyReduce_500 = happyReduce 5# 178# happyReduction_500 happyReduction_500 (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 { (Loc happy_var_1 XChildTagOpen) -> case happyOut193 happy_x_2 of { happy_var_2 -> case happyOut177 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 XCloseTagOpen) -> case happyOutTok happy_x_5 of { (Loc happy_var_5 XCodeTagClose) -> happyIn192 (XChildTag (happy_var_1 <^^> happy_var_5 <** (happy_var_1:happy_var_3++[happy_var_4,happy_var_5])) (reverse happy_var_2) ) `HappyStk` happyRest}}}}} happyReduce_501 = happySpecReduce_2 179# happyReduction_501 happyReduction_501 happy_x_2 happy_x_1 = case happyOut193 happy_x_1 of { happy_var_1 -> case happyOut194 happy_x_2 of { happy_var_2 -> happyIn193 (happy_var_2 : happy_var_1 )}} happyReduce_502 = happySpecReduce_0 179# happyReduction_502 happyReduction_502 = happyIn193 ([] ) happyReduce_503 = happySpecReduce_1 180# happyReduction_503 happyReduction_503 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn194 (let Loc l (XPCDATA pcd) = happy_var_1 in XPcdata (nIS l) pcd )} happyReduce_504 = happySpecReduce_3 180# happyReduction_504 happyReduction_504 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 XRPatOpen) -> case happyOut190 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 XRPatClose) -> happyIn194 (XRPats (happy_var_1 <^^> happy_var_3 <** (snd happy_var_2 ++ [happy_var_1,happy_var_3])) $ reverse (fst happy_var_2) )}}} happyReduce_505 = happySpecReduce_1 180# happyReduction_505 happyReduction_505 happy_x_1 = case happyOut192 happy_x_1 of { happy_var_1 -> happyIn194 (happy_var_1 )} happyReduce_506 = happySpecReduce_3 181# happyReduction_506 happyReduction_506 happy_x_3 happy_x_2 happy_x_1 = case happyOut196 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Colon) -> case happyOut196 happy_x_3 of { happy_var_3 -> happyIn195 (let {Loc l1 s1 = happy_var_1; Loc l2 s2 = happy_var_3} in XDomName (nIS l1 <++> nIS l2 <** [l1,happy_var_2,l2]) s1 s2 )}}} happyReduce_507 = happySpecReduce_1 181# happyReduction_507 happyReduction_507 happy_x_1 = case happyOut196 happy_x_1 of { happy_var_1 -> happyIn195 (let Loc l str = happy_var_1 in XName (nIS l) str )} happyReduce_508 = happySpecReduce_1 182# happyReduction_508 happyReduction_508 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn196 (let Loc l (VarId s) = happy_var_1 in Loc l s )} happyReduce_509 = happySpecReduce_1 182# happyReduction_509 happyReduction_509 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn196 (let Loc l (ConId s) = happy_var_1 in Loc l s )} happyReduce_510 = happySpecReduce_1 182# happyReduction_510 happyReduction_510 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn196 (let Loc l (DVarId s) = happy_var_1 in Loc l $ mkDVar s )} happyReduce_511 = happySpecReduce_1 182# happyReduction_511 happyReduction_511 happy_x_1 = case happyOut197 happy_x_1 of { happy_var_1 -> happyIn196 (happy_var_1 )} happyReduce_512 = happySpecReduce_1 183# happyReduction_512 happyReduction_512 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Type) -> happyIn197 (Loc happy_var_1 "type" )} happyReduce_513 = happySpecReduce_1 183# happyReduction_513 happyReduction_513 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Class) -> happyIn197 (Loc happy_var_1 "class" )} happyReduce_514 = happySpecReduce_1 183# happyReduction_514 happyReduction_514 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Data) -> happyIn197 (Loc happy_var_1 "data" )} happyReduce_515 = happySpecReduce_1 183# happyReduction_515 happyReduction_515 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Foreign) -> happyIn197 (Loc happy_var_1 "foreign" )} happyReduce_516 = happySpecReduce_1 183# happyReduction_516 happyReduction_516 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Export) -> happyIn197 (Loc happy_var_1 "export" )} happyReduce_517 = happySpecReduce_1 183# happyReduction_517 happyReduction_517 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Safe) -> happyIn197 (Loc happy_var_1 "safe" )} happyReduce_518 = happySpecReduce_1 183# happyReduction_518 happyReduction_518 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Unsafe) -> happyIn197 (Loc happy_var_1 "unsafe" )} happyReduce_519 = happySpecReduce_1 183# happyReduction_519 happyReduction_519 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Interruptible) -> happyIn197 (Loc happy_var_1 "interruptible" )} happyReduce_520 = happySpecReduce_1 183# happyReduction_520 happyReduction_520 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Threadsafe) -> happyIn197 (Loc happy_var_1 "threadsafe" )} happyReduce_521 = happySpecReduce_1 183# happyReduction_521 happyReduction_521 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_StdCall) -> happyIn197 (Loc happy_var_1 "stdcall" )} happyReduce_522 = happySpecReduce_1 183# happyReduction_522 happyReduction_522 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CCall) -> happyIn197 (Loc happy_var_1 "ccall" )} happyReduce_523 = happySpecReduce_1 183# happyReduction_523 happyReduction_523 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CPlusPlus) -> happyIn197 (Loc happy_var_1 "cplusplus" )} happyReduce_524 = happySpecReduce_1 183# happyReduction_524 happyReduction_524 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_DotNet) -> happyIn197 (Loc happy_var_1 "dotnet" )} happyReduce_525 = happySpecReduce_1 183# happyReduction_525 happyReduction_525 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Jvm) -> happyIn197 (Loc happy_var_1 "jvm" )} happyReduce_526 = happySpecReduce_1 183# happyReduction_526 happyReduction_526 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Js) -> happyIn197 (Loc happy_var_1 "js" )} happyReduce_527 = happySpecReduce_1 183# happyReduction_527 happyReduction_527 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_JavaScript) -> happyIn197 (Loc happy_var_1 "javascript" )} happyReduce_528 = happySpecReduce_1 183# happyReduction_528 happyReduction_528 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CApi) -> happyIn197 (Loc happy_var_1 "capi" )} happyReduce_529 = happySpecReduce_1 183# happyReduction_529 happyReduction_529 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_As) -> happyIn197 (Loc happy_var_1 "as" )} happyReduce_530 = happySpecReduce_1 183# happyReduction_530 happyReduction_530 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_By) -> happyIn197 (Loc happy_var_1 "by" )} happyReduce_531 = happySpecReduce_1 183# happyReduction_531 happyReduction_531 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Case) -> happyIn197 (Loc happy_var_1 "case" )} happyReduce_532 = happySpecReduce_1 183# happyReduction_532 happyReduction_532 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Default) -> happyIn197 (Loc happy_var_1 "default" )} happyReduce_533 = happySpecReduce_1 183# happyReduction_533 happyReduction_533 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Deriving) -> happyIn197 (Loc happy_var_1 "deriving" )} happyReduce_534 = happySpecReduce_1 183# happyReduction_534 happyReduction_534 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Do) -> happyIn197 (Loc happy_var_1 "do" )} happyReduce_535 = happySpecReduce_1 183# happyReduction_535 happyReduction_535 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Else) -> happyIn197 (Loc happy_var_1 "else" )} happyReduce_536 = happySpecReduce_1 183# happyReduction_536 happyReduction_536 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Family) -> happyIn197 (Loc happy_var_1 "family" )} happyReduce_537 = happySpecReduce_1 183# happyReduction_537 happyReduction_537 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Forall) -> happyIn197 (Loc happy_var_1 "forall" )} happyReduce_538 = happySpecReduce_1 183# happyReduction_538 happyReduction_538 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Group) -> happyIn197 (Loc happy_var_1 "group" )} happyReduce_539 = happySpecReduce_1 183# happyReduction_539 happyReduction_539 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Hiding) -> happyIn197 (Loc happy_var_1 "hiding" )} happyReduce_540 = happySpecReduce_1 183# happyReduction_540 happyReduction_540 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_If) -> happyIn197 (Loc happy_var_1 "if" )} happyReduce_541 = happySpecReduce_1 183# happyReduction_541 happyReduction_541 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Import) -> happyIn197 (Loc happy_var_1 "import" )} happyReduce_542 = happySpecReduce_1 183# happyReduction_542 happyReduction_542 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_In) -> happyIn197 (Loc happy_var_1 "in" )} happyReduce_543 = happySpecReduce_1 183# happyReduction_543 happyReduction_543 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Infix) -> happyIn197 (Loc happy_var_1 "infix" )} happyReduce_544 = happySpecReduce_1 183# happyReduction_544 happyReduction_544 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_InfixL) -> happyIn197 (Loc happy_var_1 "infixl" )} happyReduce_545 = happySpecReduce_1 183# happyReduction_545 happyReduction_545 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_InfixR) -> happyIn197 (Loc happy_var_1 "infixr" )} happyReduce_546 = happySpecReduce_1 183# happyReduction_546 happyReduction_546 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Instance) -> happyIn197 (Loc happy_var_1 "instance" )} happyReduce_547 = happySpecReduce_1 183# happyReduction_547 happyReduction_547 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Let) -> happyIn197 (Loc happy_var_1 "let" )} happyReduce_548 = happySpecReduce_1 183# happyReduction_548 happyReduction_548 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_MDo) -> happyIn197 (Loc happy_var_1 "mdo" )} happyReduce_549 = happySpecReduce_1 183# happyReduction_549 happyReduction_549 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Module) -> happyIn197 (Loc happy_var_1 "module" )} happyReduce_550 = happySpecReduce_1 183# happyReduction_550 happyReduction_550 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_NewType) -> happyIn197 (Loc happy_var_1 "newtype" )} happyReduce_551 = happySpecReduce_1 183# happyReduction_551 happyReduction_551 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Of) -> happyIn197 (Loc happy_var_1 "of" )} happyReduce_552 = happySpecReduce_1 183# happyReduction_552 happyReduction_552 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Proc) -> happyIn197 (Loc happy_var_1 "proc" )} happyReduce_553 = happySpecReduce_1 183# happyReduction_553 happyReduction_553 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Rec) -> happyIn197 (Loc happy_var_1 "rec" )} happyReduce_554 = happySpecReduce_1 183# happyReduction_554 happyReduction_554 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Then) -> happyIn197 (Loc happy_var_1 "then" )} happyReduce_555 = happySpecReduce_1 183# happyReduction_555 happyReduction_555 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Using) -> happyIn197 (Loc happy_var_1 "using" )} happyReduce_556 = happySpecReduce_1 183# happyReduction_556 happyReduction_556 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Where) -> happyIn197 (Loc happy_var_1 "where" )} happyReduce_557 = happySpecReduce_1 183# happyReduction_557 happyReduction_557 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Qualified) -> happyIn197 (Loc happy_var_1 "qualified" )} happyReduce_558 = happySpecReduce_2 184# happyReduction_558 happyReduction_558 happy_x_2 happy_x_1 = case happyOut198 happy_x_1 of { happy_var_1 -> case happyOut199 happy_x_2 of { happy_var_2 -> happyIn198 (happy_var_2 : happy_var_1 )}} happyReduce_559 = happySpecReduce_0 184# happyReduction_559 happyReduction_559 = happyIn198 ([] ) happyReduce_560 = happySpecReduce_3 185# happyReduction_560 happyReduction_560 happy_x_3 happy_x_2 happy_x_1 = case happyOut195 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Equals) -> case happyOut183 happy_x_3 of { happy_var_3 -> happyIn199 (XAttr (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_561 = happySpecReduce_1 186# happyReduction_561 happyReduction_561 happy_x_1 = case happyOut183 happy_x_1 of { happy_var_1 -> happyIn200 (Just happy_var_1 )} happyReduce_562 = happySpecReduce_0 186# happyReduction_562 happyReduction_562 = happyIn200 (Nothing ) happyReduce_563 = happySpecReduce_1 187# happyReduction_563 happyReduction_563 happy_x_1 = case happyOut187 happy_x_1 of { happy_var_1 -> happyIn201 (\l -> List l [happy_var_1] )} happyReduce_564 = happySpecReduce_1 187# happyReduction_564 happyReduction_564 happy_x_1 = case happyOut202 happy_x_1 of { happy_var_1 -> happyIn201 (\l -> let (ps,ss) = happy_var_1 in List (l <** reverse ss) (reverse ps) )} happyReduce_565 = happySpecReduce_2 187# happyReduction_565 happyReduction_565 happy_x_2 happy_x_1 = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DotDot) -> happyIn201 (\l -> EnumFrom (l <** [happy_var_2]) happy_var_1 )}} happyReduce_566 = happyReduce 4# 187# happyReduction_566 happyReduction_566 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut171 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 DotDot) -> happyIn201 (\l -> EnumFromThen (l <** [happy_var_2,happy_var_4]) happy_var_1 happy_var_3 ) `HappyStk` happyRest}}}} happyReduce_567 = happySpecReduce_3 187# happyReduction_567 happyReduction_567 happy_x_3 happy_x_2 happy_x_1 = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DotDot) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn201 (\l -> EnumFromTo (l <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_568 = happyReduce 5# 187# happyReduction_568 happyReduction_568 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut171 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 DotDot) -> case happyOut171 happy_x_5 of { happy_var_5 -> happyIn201 (\l -> EnumFromThenTo (l <** [happy_var_2,happy_var_4]) happy_var_1 happy_var_3 happy_var_5 ) `HappyStk` happyRest}}}}} happyReduce_569 = happySpecReduce_3 187# happyReduction_569 happyReduction_569 happy_x_3 happy_x_2 happy_x_1 = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Bar) -> case happyOut203 happy_x_3 of { happy_var_3 -> happyIn201 (\l -> let (stss, ss) = happy_var_3 in ParComp (l <** (happy_var_2:ss)) happy_var_1 (reverse stss) )}}} happyReduce_570 = happySpecReduce_3 188# happyReduction_570 happyReduction_570 happy_x_3 happy_x_2 happy_x_1 = case happyOut202 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut187 happy_x_3 of { happy_var_3 -> happyIn202 (let (es, ss) = happy_var_1 in (happy_var_3 : es, happy_var_2 : ss) )}}} happyReduce_571 = happySpecReduce_3 188# happyReduction_571 happyReduction_571 happy_x_3 happy_x_2 happy_x_1 = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut187 happy_x_3 of { happy_var_3 -> happyIn202 (([happy_var_3,happy_var_1], [happy_var_2]) )}}} happyReduce_572 = happySpecReduce_3 189# happyReduction_572 happyReduction_572 happy_x_3 happy_x_2 happy_x_1 = case happyOut203 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Bar) -> case happyOut204 happy_x_3 of { happy_var_3 -> happyIn203 (let { (stss, ss1) = happy_var_1; (sts, ss2) = happy_var_3 } in (reverse sts : stss, ss1 ++ [happy_var_2] ++ reverse ss2) )}}} happyReduce_573 = happySpecReduce_1 189# happyReduction_573 happyReduction_573 happy_x_1 = case happyOut204 happy_x_1 of { happy_var_1 -> happyIn203 (let (sts, ss) = happy_var_1 in ([reverse sts], reverse ss) )} happyReduce_574 = happySpecReduce_3 190# happyReduction_574 happyReduction_574 happy_x_3 happy_x_2 happy_x_1 = case happyOut204 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut205 happy_x_3 of { happy_var_3 -> happyIn204 (let (sts, ss) = happy_var_1 in (happy_var_3 : sts, happy_var_2 : ss) )}}} happyReduce_575 = happySpecReduce_1 190# happyReduction_575 happyReduction_575 happy_x_1 = case happyOut205 happy_x_1 of { happy_var_1 -> happyIn204 (([happy_var_1],[]) )} happyReduce_576 = happySpecReduce_1 191# happyReduction_576 happyReduction_576 happy_x_1 = case happyOut206 happy_x_1 of { happy_var_1 -> happyIn205 (happy_var_1 )} happyReduce_577 = happySpecReduce_1 191# happyReduction_577 happyReduction_577 happy_x_1 = case happyOut208 happy_x_1 of { happy_var_1 -> happyIn205 (QualStmt (ann happy_var_1) happy_var_1 )} happyReduce_578 = happySpecReduce_2 192# happyReduction_578 happyReduction_578 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Then) -> case happyOut170 happy_x_2 of { happy_var_2 -> happyIn206 (ThenTrans (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_579 = happyReduce 4# 192# happyReduction_579 happyReduction_579 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Then) -> case happyOut170 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 KW_By) -> case happyOut170 happy_x_4 of { happy_var_4 -> happyIn206 (ThenBy (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) happy_var_2 happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_580 = happyReduce 4# 192# happyReduction_580 happyReduction_580 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Then) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Group) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 KW_By) -> case happyOut170 happy_x_4 of { happy_var_4 -> happyIn206 (GroupBy (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_2,happy_var_3]) happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_581 = happyReduce 4# 192# happyReduction_581 happyReduction_581 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Then) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Group) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 KW_Using) -> case happyOut170 happy_x_4 of { happy_var_4 -> happyIn206 (GroupUsing (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_2,happy_var_3]) happy_var_4 ) `HappyStk` happyRest}}}} happyReduce_582 = happyReduce 6# 192# happyReduction_582 happyReduction_582 (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 { (Loc happy_var_1 KW_Then) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 KW_Group) -> case happyOutTok happy_x_3 of { (Loc happy_var_3 KW_By) -> case happyOut170 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 KW_Using) -> case happyOut170 happy_x_6 of { happy_var_6 -> happyIn206 (GroupByUsing (nIS happy_var_1 <++> ann happy_var_6 <** [happy_var_1,happy_var_2,happy_var_3,happy_var_5]) happy_var_4 happy_var_6 ) `HappyStk` happyRest}}}}}} happyReduce_583 = happySpecReduce_3 193# happyReduction_583 happyReduction_583 happy_x_3 happy_x_2 happy_x_1 = case happyOut207 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut208 happy_x_3 of { happy_var_3 -> happyIn207 (let (sts, ss) = happy_var_1 in (happy_var_3 : sts, happy_var_2 : ss) )}}} happyReduce_584 = happySpecReduce_1 193# happyReduction_584 happyReduction_584 happy_x_1 = case happyOut208 happy_x_1 of { happy_var_1 -> happyIn207 (([happy_var_1],[]) )} happyReduce_585 = happySpecReduce_3 194# happyReduction_585 happyReduction_585 happy_x_3 happy_x_2 happy_x_1 = case happyOut217 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftArrow) -> case happyOut170 happy_x_3 of { happy_var_3 -> happyIn208 (Generator (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_586 = happySpecReduce_1 194# happyReduction_586 happyReduction_586 happy_x_1 = case happyOut170 happy_x_1 of { happy_var_1 -> happyIn208 (Qualifier (ann happy_var_1) happy_var_1 )} happyReduce_587 = happySpecReduce_2 194# happyReduction_587 happyReduction_587 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Let) -> case happyOut88 happy_x_2 of { happy_var_2 -> happyIn208 (LetStmt (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_588 = happySpecReduce_0 195# happyReduction_588 happyReduction_588 = happyIn209 (\l -> ParArray l [] ) happyReduce_589 = happySpecReduce_1 195# happyReduction_589 happyReduction_589 happy_x_1 = case happyOut187 happy_x_1 of { happy_var_1 -> happyIn209 (\l -> ParArray l [happy_var_1] )} happyReduce_590 = happySpecReduce_1 195# happyReduction_590 happyReduction_590 happy_x_1 = case happyOut202 happy_x_1 of { happy_var_1 -> happyIn209 (\l -> let (ps,ss) = happy_var_1 in ParArray (l <** reverse ss) (reverse ps) )} happyReduce_591 = happySpecReduce_3 195# happyReduction_591 happyReduction_591 happy_x_3 happy_x_2 happy_x_1 = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 DotDot) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn209 (\l -> ParArrayFromTo (l <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_592 = happyReduce 5# 195# happyReduction_592 happyReduction_592 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut171 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 DotDot) -> case happyOut171 happy_x_5 of { happy_var_5 -> happyIn209 (\l -> ParArrayFromThenTo (l <** [happy_var_2,happy_var_4]) happy_var_1 happy_var_3 happy_var_5 ) `HappyStk` happyRest}}}}} happyReduce_593 = happySpecReduce_3 195# happyReduction_593 happyReduction_593 happy_x_3 happy_x_2 happy_x_1 = case happyOut187 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Bar) -> case happyOut203 happy_x_3 of { happy_var_3 -> happyIn209 (\l -> let (stss, ss) = happy_var_3 in ParArrayComp (l <** (happy_var_2:ss)) happy_var_1 (reverse stss) )}}} happyReduce_594 = happySpecReduce_3 196# happyReduction_594 happyReduction_594 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftCurly) -> case happyOut211 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightCurly) -> happyIn210 ((fst happy_var_2, happy_var_1 <^^> happy_var_3, happy_var_1:snd happy_var_2 ++ [happy_var_3]) )}}} happyReduce_595 = happySpecReduce_3 196# happyReduction_595 happyReduction_595 happy_x_3 happy_x_2 happy_x_1 = case happyOut261 happy_x_1 of { happy_var_1 -> case happyOut211 happy_x_2 of { happy_var_2 -> case happyOut262 happy_x_3 of { happy_var_3 -> happyIn210 (let l' = ann . last $ fst happy_var_2 in (fst happy_var_2, nIS happy_var_1 <++> l', happy_var_1:snd happy_var_2 ++ [happy_var_3]) )}}} happyReduce_596 = happySpecReduce_3 197# happyReduction_596 happyReduction_596 happy_x_3 happy_x_2 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> case happyOut212 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> happyIn211 ((reverse $ fst happy_var_2, happy_var_1 ++ snd happy_var_2 ++ happy_var_3) )}}} happyReduce_597 = happySpecReduce_3 198# happyReduction_597 happyReduction_597 happy_x_3 happy_x_2 happy_x_1 = case happyOut212 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> case happyOut213 happy_x_3 of { happy_var_3 -> happyIn212 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ happy_var_2) )}}} happyReduce_598 = happySpecReduce_1 198# happyReduction_598 happyReduction_598 happy_x_1 = case happyOut213 happy_x_1 of { happy_var_1 -> happyIn212 (([happy_var_1],[]) )} happyReduce_599 = happySpecReduce_3 199# happyReduction_599 happyReduction_599 happy_x_3 happy_x_2 happy_x_1 = case happyOut217 happy_x_1 of { happy_var_1 -> case happyOut214 happy_x_2 of { happy_var_2 -> case happyOut165 happy_x_3 of { happy_var_3 -> happyIn213 (Alt (happy_var_1 <> happy_var_2 <+?> (fmap ann) (fst happy_var_3) <** snd happy_var_3) happy_var_1 happy_var_2 (fst happy_var_3) )}}} happyReduce_600 = happySpecReduce_2 200# happyReduction_600 happyReduction_600 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 RightArrow) -> case happyOut170 happy_x_2 of { happy_var_2 -> happyIn214 (UnGuardedRhs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_601 = happySpecReduce_1 200# happyReduction_601 happyReduction_601 happy_x_1 = case happyOut215 happy_x_1 of { happy_var_1 -> happyIn214 (GuardedRhss (snd happy_var_1) (reverse $ fst happy_var_1) )} happyReduce_602 = happySpecReduce_2 201# happyReduction_602 happyReduction_602 happy_x_2 happy_x_1 = case happyOut215 happy_x_1 of { happy_var_1 -> case happyOut216 happy_x_2 of { happy_var_2 -> happyIn215 ((happy_var_2 : fst happy_var_1, snd happy_var_1 <++> ann happy_var_2) )}} happyReduce_603 = happySpecReduce_1 201# happyReduction_603 happyReduction_603 happy_x_1 = case happyOut216 happy_x_1 of { happy_var_1 -> happyIn215 (([happy_var_1], ann happy_var_1) )} happyReduce_604 = happyMonadReduce 4# 202# happyReduction_604 happyReduction_604 (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 { (Loc happy_var_1 Bar) -> case happyOut207 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightArrow) -> case happyOut170 happy_x_4 of { happy_var_4 -> ( do { checkPatternGuards (fst happy_var_2); let {l = nIS happy_var_1 <++> ann happy_var_4 <** (happy_var_1:snd happy_var_2 ++ [happy_var_3])}; return (GuardedRhs l (reverse (fst happy_var_2)) happy_var_4) })}}}} ) (\r -> happyReturn (happyIn216 r)) happyReduce_605 = happyMonadReduce 1# 203# happyReduction_605 happyReduction_605 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut171 happy_x_1 of { happy_var_1 -> ( checkPattern happy_var_1)} ) (\r -> happyReturn (happyIn217 r)) happyReduce_606 = happyMonadReduce 2# 203# happyReduction_606 happyReduction_606 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 Exclamation) -> case happyOut183 happy_x_2 of { happy_var_2 -> ( checkPattern (BangPat (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2))}} ) (\r -> happyReturn (happyIn217 r)) happyReduce_607 = happySpecReduce_3 204# happyReduction_607 happyReduction_607 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftCurly) -> case happyOut219 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightCurly) -> happyIn218 ((fst happy_var_2, happy_var_1 <^^> happy_var_3, happy_var_1:snd happy_var_2 ++ [happy_var_3]) )}}} happyReduce_608 = happySpecReduce_3 204# happyReduction_608 happyReduction_608 happy_x_3 happy_x_2 happy_x_1 = case happyOut261 happy_x_1 of { happy_var_1 -> case happyOut219 happy_x_2 of { happy_var_2 -> case happyOut262 happy_x_3 of { happy_var_3 -> happyIn218 (let l' = ann . last $ fst happy_var_2 in (fst happy_var_2, nIS happy_var_1 <++> l', happy_var_1:snd happy_var_2 ++ [happy_var_3]) )}}} happyReduce_609 = happySpecReduce_3 205# happyReduction_609 happyReduction_609 happy_x_3 happy_x_2 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> case happyOut220 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> happyIn219 ((reverse $ fst happy_var_2, happy_var_1 ++ snd happy_var_2 ++ happy_var_3) )}}} happyReduce_610 = happySpecReduce_3 206# happyReduction_610 happyReduction_610 happy_x_3 happy_x_2 happy_x_1 = case happyOut220 happy_x_1 of { happy_var_1 -> case happyOut28 happy_x_2 of { happy_var_2 -> case happyOut216 happy_x_3 of { happy_var_3 -> happyIn220 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ happy_var_2) )}}} happyReduce_611 = happySpecReduce_1 206# happyReduction_611 happyReduction_611 happy_x_1 = case happyOut216 happy_x_1 of { happy_var_1 -> happyIn220 (([happy_var_1], []) )} happyReduce_612 = happySpecReduce_3 207# happyReduction_612 happyReduction_612 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftCurly) -> case happyOut222 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightCurly) -> happyIn221 ((fst happy_var_2, happy_var_1 <^^> happy_var_3, happy_var_1:snd happy_var_2 ++ [happy_var_3]) )}}} happyReduce_613 = happySpecReduce_3 207# happyReduction_613 happyReduction_613 happy_x_3 happy_x_2 happy_x_1 = case happyOut261 happy_x_1 of { happy_var_1 -> case happyOut222 happy_x_2 of { happy_var_2 -> case happyOut262 happy_x_3 of { happy_var_3 -> happyIn221 (let l' = ann . last $ fst happy_var_2 in (fst happy_var_2, nIS happy_var_1 <++> l', happy_var_1:snd happy_var_2 ++ [happy_var_3]) )}}} happyReduce_614 = happySpecReduce_2 208# happyReduction_614 happyReduction_614 happy_x_2 happy_x_1 = case happyOut224 happy_x_1 of { happy_var_1 -> case happyOut223 happy_x_2 of { happy_var_2 -> happyIn222 ((happy_var_1 : fst happy_var_2, snd happy_var_2) )}} happyReduce_615 = happySpecReduce_2 208# happyReduction_615 happyReduction_615 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 SemiColon) -> case happyOut222 happy_x_2 of { happy_var_2 -> happyIn222 ((fst happy_var_2, happy_var_1 : snd happy_var_2) )}} happyReduce_616 = happySpecReduce_0 208# happyReduction_616 happyReduction_616 = happyIn222 (([],[]) ) happyReduce_617 = happySpecReduce_2 209# happyReduction_617 happyReduction_617 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 SemiColon) -> case happyOut222 happy_x_2 of { happy_var_2 -> happyIn223 ((fst happy_var_2, happy_var_1 : snd happy_var_2) )}} happyReduce_618 = happySpecReduce_0 209# happyReduction_618 happyReduction_618 = happyIn223 (([],[]) ) happyReduce_619 = happySpecReduce_2 210# happyReduction_619 happyReduction_619 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Let) -> case happyOut88 happy_x_2 of { happy_var_2 -> happyIn224 (LetStmt (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 )}} happyReduce_620 = happySpecReduce_3 210# happyReduction_620 happyReduction_620 happy_x_3 happy_x_2 happy_x_1 = case happyOut217 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftArrow) -> case happyOut170 happy_x_3 of { happy_var_3 -> happyIn224 (Generator (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_621 = happySpecReduce_1 210# happyReduction_621 happyReduction_621 happy_x_1 = case happyOut170 happy_x_1 of { happy_var_1 -> happyIn224 (Qualifier (ann happy_var_1) happy_var_1 )} happyReduce_622 = happySpecReduce_2 210# happyReduction_622 happyReduction_622 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Rec) -> case happyOut221 happy_x_2 of { happy_var_2 -> happyIn224 (let (stms,inf,ss) = happy_var_2 in RecStmt (nIS happy_var_1 <++> inf <** happy_var_1:ss) stms )}} happyReduce_623 = happySpecReduce_3 211# happyReduction_623 happyReduction_623 happy_x_3 happy_x_2 happy_x_1 = case happyOut226 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut225 happy_x_3 of { happy_var_3 -> happyIn225 (let (fbs, ss) = happy_var_3 in (happy_var_1 : fbs, happy_var_2 : ss) )}}} happyReduce_624 = happySpecReduce_1 211# happyReduction_624 happyReduction_624 happy_x_1 = case happyOut226 happy_x_1 of { happy_var_1 -> happyIn225 (([happy_var_1],[]) )} happyReduce_625 = happyMonadReduce 1# 211# happyReduction_625 happyReduction_625 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOutTok happy_x_1 of { (Loc happy_var_1 DotDot) -> ( do { checkEnabled RecordWildCards `atSrcLoc` (getPointLoc happy_var_1); return ([FieldWildcard (nIS happy_var_1)], []) })} ) (\r -> happyReturn (happyIn225 r)) happyReduce_626 = happySpecReduce_3 212# happyReduction_626 happyReduction_626 happy_x_3 happy_x_2 happy_x_1 = case happyOut233 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Equals) -> case happyOut171 happy_x_3 of { happy_var_3 -> happyIn226 (FieldUpdate (happy_var_1 <>happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_627 = happyMonadReduce 1# 212# happyReduction_627 happyReduction_627 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut233 happy_x_1 of { happy_var_1 -> ( checkEnabled NamedFieldPuns >> checkQualOrUnQual happy_var_1 >>= return . FieldPun (ann happy_var_1))} ) (\r -> happyReturn (happyIn226 r)) happyReduce_628 = happySpecReduce_3 213# happyReduction_628 happyReduction_628 happy_x_3 happy_x_2 happy_x_1 = case happyOut28 happy_x_1 of { happy_var_1 -> case happyOut228 happy_x_2 of { happy_var_2 -> case happyOut28 happy_x_3 of { happy_var_3 -> happyIn227 ((reverse (fst happy_var_2), reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3) )}}} happyReduce_629 = happySpecReduce_3 214# happyReduction_629 happyReduction_629 happy_x_3 happy_x_2 happy_x_1 = case happyOut228 happy_x_1 of { happy_var_1 -> case happyOut27 happy_x_2 of { happy_var_2 -> case happyOut229 happy_x_3 of { happy_var_3 -> happyIn228 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) )}}} happyReduce_630 = happySpecReduce_1 214# happyReduction_630 happyReduction_630 happy_x_1 = case happyOut229 happy_x_1 of { happy_var_1 -> happyIn228 (([happy_var_1],[]) )} happyReduce_631 = happySpecReduce_3 215# happyReduction_631 happyReduction_631 happy_x_3 happy_x_2 happy_x_1 = case happyOut234 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Equals) -> case happyOut170 happy_x_3 of { happy_var_3 -> happyIn229 (IPBind (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 )}}} happyReduce_632 = happySpecReduce_2 216# happyReduction_632 happyReduction_632 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightParen) -> happyIn230 (p_unit_con (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) )}} happyReduce_633 = happySpecReduce_2 216# happyReduction_633 happyReduction_633 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftSquare) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightSquare) -> happyIn230 (List (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) [] )}} happyReduce_634 = happySpecReduce_3 216# happyReduction_634 happyReduction_634 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut186 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn230 (p_tuple_con (happy_var_1 <^^> happy_var_3 <** happy_var_1:reverse (happy_var_3:happy_var_2)) Boxed (length happy_var_2) )}}} happyReduce_635 = happySpecReduce_2 216# happyReduction_635 happyReduction_635 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 RightHashParen) -> happyIn230 (p_unboxed_singleton_con (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) )}} happyReduce_636 = happySpecReduce_3 216# happyReduction_636 happyReduction_636 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftHashParen) -> case happyOut186 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightHashParen) -> happyIn230 (p_tuple_con (happy_var_1 <^^> happy_var_3 <** happy_var_1:reverse (happy_var_3:happy_var_2)) Unboxed (length happy_var_2) )}}} happyReduce_637 = happySpecReduce_1 216# happyReduction_637 happyReduction_637 happy_x_1 = case happyOut236 happy_x_1 of { happy_var_1 -> happyIn230 (Con (ann happy_var_1) happy_var_1 )} happyReduce_638 = happySpecReduce_1 217# happyReduction_638 happyReduction_638 happy_x_1 = case happyOut249 happy_x_1 of { happy_var_1 -> happyIn231 (happy_var_1 )} happyReduce_639 = happySpecReduce_3 217# happyReduction_639 happyReduction_639 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut257 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn231 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 )}}} happyReduce_640 = happySpecReduce_1 218# happyReduction_640 happyReduction_640 happy_x_1 = case happyOut248 happy_x_1 of { happy_var_1 -> happyIn232 (happy_var_1 )} happyReduce_641 = happySpecReduce_3 218# happyReduction_641 happyReduction_641 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut257 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn232 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 )}}} happyReduce_642 = happySpecReduce_1 219# happyReduction_642 happyReduction_642 happy_x_1 = case happyOut247 happy_x_1 of { happy_var_1 -> happyIn233 (happy_var_1 )} happyReduce_643 = happySpecReduce_3 219# happyReduction_643 happyReduction_643 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut255 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn233 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 )}}} happyReduce_644 = happySpecReduce_1 220# happyReduction_644 happyReduction_644 happy_x_1 = case happyOut250 happy_x_1 of { happy_var_1 -> happyIn234 (happy_var_1 )} happyReduce_645 = happySpecReduce_1 221# happyReduction_645 happyReduction_645 happy_x_1 = case happyOut252 happy_x_1 of { happy_var_1 -> happyIn235 (happy_var_1 )} happyReduce_646 = happySpecReduce_3 221# happyReduction_646 happyReduction_646 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut254 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn235 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 )}}} happyReduce_647 = happySpecReduce_1 222# happyReduction_647 happyReduction_647 happy_x_1 = case happyOut251 happy_x_1 of { happy_var_1 -> happyIn236 (happy_var_1 )} happyReduce_648 = happySpecReduce_3 222# happyReduction_648 happyReduction_648 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 LeftParen) -> case happyOut245 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 RightParen) -> happyIn236 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 )}}} happyReduce_649 = happySpecReduce_1 223# happyReduction_649 happyReduction_649 happy_x_1 = case happyOut257 happy_x_1 of { happy_var_1 -> happyIn237 (happy_var_1 )} happyReduce_650 = happySpecReduce_3 223# happyReduction_650 happyReduction_650 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 BackQuote) -> case happyOut249 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 BackQuote) -> happyIn237 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 )}}} happyReduce_651 = happySpecReduce_1 224# happyReduction_651 happyReduction_651 happy_x_1 = case happyOut255 happy_x_1 of { happy_var_1 -> happyIn238 (happy_var_1 )} happyReduce_652 = happySpecReduce_3 224# happyReduction_652 happyReduction_652 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 BackQuote) -> case happyOut247 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 BackQuote) -> happyIn238 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 )}}} happyReduce_653 = happySpecReduce_1 225# happyReduction_653 happyReduction_653 happy_x_1 = case happyOut256 happy_x_1 of { happy_var_1 -> happyIn239 (happy_var_1 )} happyReduce_654 = happySpecReduce_3 225# happyReduction_654 happyReduction_654 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 BackQuote) -> case happyOut247 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 BackQuote) -> happyIn239 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 )}}} happyReduce_655 = happySpecReduce_1 226# happyReduction_655 happyReduction_655 happy_x_1 = case happyOut254 happy_x_1 of { happy_var_1 -> happyIn240 (happy_var_1 )} happyReduce_656 = happySpecReduce_3 226# happyReduction_656 happyReduction_656 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 BackQuote) -> case happyOut252 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 BackQuote) -> happyIn240 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 )}}} happyReduce_657 = happySpecReduce_1 227# happyReduction_657 happyReduction_657 happy_x_1 = case happyOut245 happy_x_1 of { happy_var_1 -> happyIn241 (happy_var_1 )} happyReduce_658 = happySpecReduce_3 227# happyReduction_658 happyReduction_658 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 BackQuote) -> case happyOut251 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 BackQuote) -> happyIn241 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 )}}} happyReduce_659 = happySpecReduce_1 228# happyReduction_659 happyReduction_659 happy_x_1 = case happyOut237 happy_x_1 of { happy_var_1 -> happyIn242 (VarOp (ann happy_var_1) happy_var_1 )} happyReduce_660 = happySpecReduce_1 228# happyReduction_660 happyReduction_660 happy_x_1 = case happyOut240 happy_x_1 of { happy_var_1 -> happyIn242 (ConOp (ann happy_var_1) happy_var_1 )} happyReduce_661 = happySpecReduce_1 229# happyReduction_661 happyReduction_661 happy_x_1 = case happyOut238 happy_x_1 of { happy_var_1 -> happyIn243 (QVarOp (ann happy_var_1) happy_var_1 )} happyReduce_662 = happySpecReduce_1 229# happyReduction_662 happyReduction_662 happy_x_1 = case happyOut241 happy_x_1 of { happy_var_1 -> happyIn243 (QConOp (ann happy_var_1) happy_var_1 )} happyReduce_663 = happySpecReduce_1 230# happyReduction_663 happyReduction_663 happy_x_1 = case happyOut239 happy_x_1 of { happy_var_1 -> happyIn244 (QVarOp (ann happy_var_1) happy_var_1 )} happyReduce_664 = happySpecReduce_1 230# happyReduction_664 happyReduction_664 happy_x_1 = case happyOut241 happy_x_1 of { happy_var_1 -> happyIn244 (QConOp (ann happy_var_1) happy_var_1 )} happyReduce_665 = happySpecReduce_1 231# happyReduction_665 happyReduction_665 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Colon) -> happyIn245 (list_cons_name (nIS happy_var_1) )} happyReduce_666 = happySpecReduce_1 231# happyReduction_666 happyReduction_666 happy_x_1 = case happyOut253 happy_x_1 of { happy_var_1 -> happyIn245 (happy_var_1 )} happyReduce_667 = happySpecReduce_1 232# happyReduction_667 happyReduction_667 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn246 (let Loc l (LabelVarId v) = happy_var_1 in OverloadedLabel (nIS l) v )} happyReduce_668 = happySpecReduce_1 233# happyReduction_668 happyReduction_668 happy_x_1 = case happyOut249 happy_x_1 of { happy_var_1 -> happyIn247 (UnQual (ann happy_var_1) happy_var_1 )} happyReduce_669 = happySpecReduce_1 233# happyReduction_669 happyReduction_669 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn247 (let {Loc l (QVarId q) = happy_var_1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Ident nis (snd q)) )} happyReduce_670 = happySpecReduce_1 234# happyReduction_670 happyReduction_670 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn248 (let Loc l (VarId v) = happy_var_1 in Ident (nIS l) v )} happyReduce_671 = happySpecReduce_1 234# happyReduction_671 happyReduction_671 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_As) -> happyIn248 (as_name (nIS happy_var_1) )} happyReduce_672 = happySpecReduce_1 234# happyReduction_672 happyReduction_672 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Qualified) -> happyIn248 (qualified_name (nIS happy_var_1) )} happyReduce_673 = happySpecReduce_1 234# happyReduction_673 happyReduction_673 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Hiding) -> happyIn248 (hiding_name (nIS happy_var_1) )} happyReduce_674 = happySpecReduce_1 234# happyReduction_674 happyReduction_674 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Export) -> happyIn248 (export_name (nIS happy_var_1) )} happyReduce_675 = happySpecReduce_1 234# happyReduction_675 happyReduction_675 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_StdCall) -> happyIn248 (stdcall_name (nIS happy_var_1) )} happyReduce_676 = happySpecReduce_1 234# happyReduction_676 happyReduction_676 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CCall) -> happyIn248 (ccall_name (nIS happy_var_1) )} happyReduce_677 = happySpecReduce_1 234# happyReduction_677 happyReduction_677 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CPlusPlus) -> happyIn248 (cplusplus_name (nIS happy_var_1) )} happyReduce_678 = happySpecReduce_1 234# happyReduction_678 happyReduction_678 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_DotNet) -> happyIn248 (dotnet_name (nIS happy_var_1) )} happyReduce_679 = happySpecReduce_1 234# happyReduction_679 happyReduction_679 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Jvm) -> happyIn248 (jvm_name (nIS happy_var_1) )} happyReduce_680 = happySpecReduce_1 234# happyReduction_680 happyReduction_680 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Js) -> happyIn248 (js_name (nIS happy_var_1) )} happyReduce_681 = happySpecReduce_1 234# happyReduction_681 happyReduction_681 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_JavaScript) -> happyIn248 (javascript_name (nIS happy_var_1) )} happyReduce_682 = happySpecReduce_1 234# happyReduction_682 happyReduction_682 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_CApi) -> happyIn248 (capi_name (nIS happy_var_1) )} happyReduce_683 = happySpecReduce_1 235# happyReduction_683 happyReduction_683 happy_x_1 = case happyOut248 happy_x_1 of { happy_var_1 -> happyIn249 (happy_var_1 )} happyReduce_684 = happySpecReduce_1 235# happyReduction_684 happyReduction_684 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Safe) -> happyIn249 (safe_name (nIS happy_var_1) )} happyReduce_685 = happySpecReduce_1 235# happyReduction_685 happyReduction_685 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Unsafe) -> happyIn249 (unsafe_name (nIS happy_var_1) )} happyReduce_686 = happySpecReduce_1 235# happyReduction_686 happyReduction_686 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Interruptible) -> happyIn249 (interruptible_name (nIS happy_var_1) )} happyReduce_687 = happySpecReduce_1 235# happyReduction_687 happyReduction_687 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Threadsafe) -> happyIn249 (threadsafe_name (nIS happy_var_1) )} happyReduce_688 = happySpecReduce_1 235# happyReduction_688 happyReduction_688 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Forall) -> happyIn249 (forall_name (nIS happy_var_1) )} happyReduce_689 = happySpecReduce_1 235# happyReduction_689 happyReduction_689 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Family) -> happyIn249 (family_name (nIS happy_var_1) )} happyReduce_690 = happySpecReduce_1 235# happyReduction_690 happyReduction_690 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Role) -> happyIn249 (role_name (nIS happy_var_1) )} happyReduce_691 = happySpecReduce_1 236# happyReduction_691 happyReduction_691 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn250 (let Loc l (IDupVarId i) = happy_var_1 in IPDup (nIS l) i )} happyReduce_692 = happySpecReduce_1 236# happyReduction_692 happyReduction_692 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn250 (let Loc l (ILinVarId i) = happy_var_1 in IPLin (nIS l) i )} happyReduce_693 = happySpecReduce_1 237# happyReduction_693 happyReduction_693 happy_x_1 = case happyOut252 happy_x_1 of { happy_var_1 -> happyIn251 (UnQual (ann happy_var_1) happy_var_1 )} happyReduce_694 = happySpecReduce_1 237# happyReduction_694 happyReduction_694 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn251 (let {Loc l (QConId q) = happy_var_1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Ident nis (snd q)) )} happyReduce_695 = happySpecReduce_1 238# happyReduction_695 happyReduction_695 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn252 (let Loc l (ConId c) = happy_var_1 in Ident (nIS l) c )} happyReduce_696 = happySpecReduce_1 239# happyReduction_696 happyReduction_696 happy_x_1 = case happyOut254 happy_x_1 of { happy_var_1 -> happyIn253 (UnQual (ann happy_var_1) happy_var_1 )} happyReduce_697 = happySpecReduce_1 239# happyReduction_697 happyReduction_697 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn253 (let {Loc l (QConSym q) = happy_var_1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Symbol nis (snd q)) )} happyReduce_698 = happySpecReduce_1 240# happyReduction_698 happyReduction_698 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn254 (let Loc l (ConSym c) = happy_var_1 in Symbol (nIS l) c )} happyReduce_699 = happySpecReduce_1 241# happyReduction_699 happyReduction_699 happy_x_1 = case happyOut257 happy_x_1 of { happy_var_1 -> happyIn255 (UnQual (ann happy_var_1) happy_var_1 )} happyReduce_700 = happySpecReduce_1 241# happyReduction_700 happyReduction_700 happy_x_1 = case happyOut259 happy_x_1 of { happy_var_1 -> happyIn255 (happy_var_1 )} happyReduce_701 = happySpecReduce_1 242# happyReduction_701 happyReduction_701 happy_x_1 = case happyOut258 happy_x_1 of { happy_var_1 -> happyIn256 (UnQual (ann happy_var_1) happy_var_1 )} happyReduce_702 = happySpecReduce_1 242# happyReduction_702 happyReduction_702 happy_x_1 = case happyOut259 happy_x_1 of { happy_var_1 -> happyIn256 (happy_var_1 )} happyReduce_703 = happySpecReduce_1 243# happyReduction_703 happyReduction_703 happy_x_1 = case happyOut258 happy_x_1 of { happy_var_1 -> happyIn257 (happy_var_1 )} happyReduce_704 = happySpecReduce_1 243# happyReduction_704 happyReduction_704 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Minus) -> happyIn257 (minus_name (nIS happy_var_1) )} happyReduce_705 = happySpecReduce_1 244# happyReduction_705 happyReduction_705 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn258 (let Loc l (VarSym v) = happy_var_1 in Symbol (nIS l) v )} happyReduce_706 = happySpecReduce_1 244# happyReduction_706 happyReduction_706 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Exclamation) -> happyIn258 (bang_name (nIS happy_var_1) )} happyReduce_707 = happySpecReduce_1 244# happyReduction_707 happyReduction_707 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Dot) -> happyIn258 (dot_name (nIS happy_var_1) )} happyReduce_708 = happySpecReduce_1 244# happyReduction_708 happyReduction_708 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Star) -> happyIn258 (star_name (nIS happy_var_1) )} happyReduce_709 = happySpecReduce_1 245# happyReduction_709 happyReduction_709 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn259 (let {Loc l (QVarSym q) = happy_var_1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Symbol nis (snd q)) )} happyReduce_710 = happySpecReduce_1 246# happyReduction_710 happyReduction_710 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (IntTok (i,raw)) = happy_var_1 in Int (nIS l) i raw )} happyReduce_711 = happySpecReduce_1 246# happyReduction_711 happyReduction_711 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (Character (c,raw)) = happy_var_1 in Char (nIS l) c raw )} happyReduce_712 = happySpecReduce_1 246# happyReduction_712 happyReduction_712 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (FloatTok (r,raw)) = happy_var_1 in Frac (nIS l) r raw )} happyReduce_713 = happySpecReduce_1 246# happyReduction_713 happyReduction_713 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (StringTok (s,raw)) = happy_var_1 in String (nIS l) s raw )} happyReduce_714 = happySpecReduce_1 246# happyReduction_714 happyReduction_714 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (IntTokHash (i,raw)) = happy_var_1 in PrimInt (nIS l) i raw )} happyReduce_715 = happySpecReduce_1 246# happyReduction_715 happyReduction_715 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (WordTokHash (w,raw)) = happy_var_1 in PrimWord (nIS l) w raw )} happyReduce_716 = happySpecReduce_1 246# happyReduction_716 happyReduction_716 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (FloatTokHash (f,raw)) = happy_var_1 in PrimFloat (nIS l) f raw )} happyReduce_717 = happySpecReduce_1 246# happyReduction_717 happyReduction_717 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (DoubleTokHash (d,raw)) = happy_var_1 in PrimDouble (nIS l) d raw )} happyReduce_718 = happySpecReduce_1 246# happyReduction_718 happyReduction_718 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (CharacterHash (c,raw)) = happy_var_1 in PrimChar (nIS l) c raw )} happyReduce_719 = happySpecReduce_1 246# happyReduction_719 happyReduction_719 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn260 (let Loc l (StringHash (s,raw)) = happy_var_1 in PrimString (nIS l) s raw )} happyReduce_720 = happyMonadReduce 0# 247# happyReduction_720 happyReduction_720 (happyRest) tk = happyThen (( pushCurrentContext >> getSrcLoc >>= \s -> return $ mkSrcSpan s s {- >>= \x -> trace (show x) (return x) -}) ) (\r -> happyReturn (happyIn261 r)) happyReduce_721 = happySpecReduce_1 248# happyReduction_721 happyReduction_721 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 VRightCurly) -> happyIn262 (happy_var_1 {- >>= \x -> trace (show x ++ show x ++ show x) (return x) -} )} happyReduce_722 = happyMonadReduce 1# 248# happyReduction_722 happyReduction_722 (happy_x_1 `HappyStk` happyRest) tk = happyThen (( popContext >> getSrcLoc >>= \s -> return $ mkSrcSpan s s {- >>= \x -> trace (show x ++ show x) (return x) -}) ) (\r -> happyReturn (happyIn262 r)) happyReduce_723 = happyMonadReduce 1# 249# happyReduction_723 happyReduction_723 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut264 happy_x_1 of { happy_var_1 -> ( checkEnabled PatternSynonyms >> return happy_var_1)} ) (\r -> happyReturn (happyIn263 r)) happyReduce_724 = happyReduce 4# 250# happyReduction_724 happyReduction_724 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Pattern) -> case happyOut265 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Equals) -> case happyOut217 happy_x_4 of { happy_var_4 -> happyIn264 (let l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3] in PatSyn l happy_var_2 happy_var_4 ImplicitBidirectional ) `HappyStk` happyRest}}}} happyReduce_725 = happyReduce 4# 250# happyReduction_725 happyReduction_725 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Pattern) -> case happyOut265 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 LeftArrow) -> case happyOut217 happy_x_4 of { happy_var_4 -> happyIn264 (let l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3] in PatSyn l happy_var_2 happy_var_4 Unidirectional ) `HappyStk` happyRest}}}} happyReduce_726 = happyReduce 5# 250# happyReduction_726 happyReduction_726 (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 { (Loc happy_var_1 KW_Pattern) -> case happyOut265 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 LeftArrow) -> case happyOut217 happy_x_4 of { happy_var_4 -> case happyOut268 happy_x_5 of { happy_var_5 -> happyIn264 (let l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1, happy_var_3] in PatSyn l happy_var_2 happy_var_4 happy_var_5 ) `HappyStk` happyRest}}}}} happyReduce_727 = happySpecReduce_2 251# happyReduction_727 happyReduction_727 happy_x_2 happy_x_1 = case happyOut235 happy_x_1 of { happy_var_1 -> case happyOut266 happy_x_2 of { happy_var_2 -> happyIn265 (let l = case happy_var_2 of [] -> ann happy_var_1 (_:_) -> ann happy_var_1 <++> (ann $ last happy_var_2) in PApp l (UnQual (ann happy_var_1) happy_var_1) happy_var_2 )}} happyReduce_728 = happySpecReduce_3 251# happyReduction_728 happyReduction_728 happy_x_3 happy_x_2 happy_x_1 = case happyOut249 happy_x_1 of { happy_var_1 -> case happyOut253 happy_x_2 of { happy_var_2 -> case happyOut249 happy_x_3 of { happy_var_3 -> happyIn265 (PInfixApp (ann happy_var_1 <++> ann happy_var_3) (PVar (ann happy_var_1) happy_var_1) happy_var_2 (PVar (ann happy_var_3) happy_var_3) )}}} happyReduce_729 = happyReduce 4# 251# happyReduction_729 happyReduction_729 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut235 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOut267 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightCurly) -> happyIn265 (let { (ss, ns) = happy_var_3 ; qnames = (map (\n -> UnQual (ann n) n) ns) } in PRec (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2 : ss ++ [happy_var_4])) (UnQual (ann happy_var_1) happy_var_1) (map (\q -> PFieldPun (ann q) q) qnames) ) `HappyStk` happyRest}}}} happyReduce_730 = happySpecReduce_0 252# happyReduction_730 happyReduction_730 = happyIn266 ([] ) happyReduce_731 = happySpecReduce_2 252# happyReduction_731 happyReduction_731 happy_x_2 happy_x_1 = case happyOut249 happy_x_1 of { happy_var_1 -> case happyOut266 happy_x_2 of { happy_var_2 -> happyIn266 (PVar (ann happy_var_1) happy_var_1 : happy_var_2 )}} happyReduce_732 = happySpecReduce_1 253# happyReduction_732 happyReduction_732 happy_x_1 = case happyOut249 happy_x_1 of { happy_var_1 -> happyIn267 (([], [happy_var_1] ) )} happyReduce_733 = happySpecReduce_3 253# happyReduction_733 happyReduction_733 happy_x_3 happy_x_2 happy_x_1 = case happyOut249 happy_x_1 of { happy_var_1 -> case happyOutTok happy_x_2 of { (Loc happy_var_2 Comma) -> case happyOut267 happy_x_3 of { happy_var_3 -> happyIn267 (let (ss, ns) = happy_var_3 in (happy_var_2 : ss, happy_var_1 : ns) )}}} happyReduce_734 = happyMonadReduce 4# 254# happyReduction_734 happyReduction_734 (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 { (Loc happy_var_1 KW_Where) -> case happyOutTok happy_x_2 of { (Loc happy_var_2 LeftCurly) -> case happyOut75 happy_x_3 of { happy_var_3 -> case happyOutTok happy_x_4 of { (Loc happy_var_4 RightCurly) -> ( checkExplicitPatSyn happy_var_1 happy_var_2 happy_var_3 happy_var_4)}}}} ) (\r -> happyReturn (happyIn268 r)) happyReduce_735 = happyMonadReduce 4# 254# happyReduction_735 happyReduction_735 (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 { (Loc happy_var_1 KW_Where) -> case happyOut261 happy_x_2 of { happy_var_2 -> case happyOut75 happy_x_3 of { happy_var_3 -> case happyOut262 happy_x_4 of { happy_var_4 -> ( checkExplicitPatSyn happy_var_1 happy_var_2 happy_var_3 happy_var_4)}}}} ) (\r -> happyReturn (happyIn268 r)) happyReduce_736 = happyMonadReduce 4# 255# happyReduction_736 happyReduction_736 (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 { (Loc happy_var_1 KW_Pattern) -> case happyOut235 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 DoubleColon) -> case happyOut270 happy_x_4 of { happy_var_4 -> ( do { checkEnabled PatternSynonyms ; let {(qtvs, ps, prov, req, ty) = happy_var_4} ; let {sig = PatSynSig (nIS happy_var_1 <++> ann ty <** [happy_var_1, happy_var_3] ++ ps) happy_var_2 qtvs prov req ty} ; return sig })}}}} ) (\r -> happyReturn (happyIn269 r)) happyReduce_737 = happyReduce 4# 256# happyReduction_737 happyReduction_737 (happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Forall) -> case happyOut124 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 Dot) -> case happyOut270 happy_x_4 of { happy_var_4 -> happyIn270 (let (qtvs, ps, prov, req, ty) = happy_var_4 in (Just (reverse (fst happy_var_2) ++ fromMaybe [] qtvs), (happy_var_1 : happy_var_3 : ps), prov, req, ty) ) `HappyStk` happyRest}}}} happyReduce_738 = happyMonadReduce 3# 256# happyReduction_738 happyReduction_738 (happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut121 happy_x_1 of { happy_var_1 -> case happyOut121 happy_x_2 of { happy_var_2 -> case happyOut107 happy_x_3 of { happy_var_3 -> ( do { c1 <- checkContext (Just happy_var_1) ; c2 <- checkContext (Just happy_var_2) ; t <- checkType happy_var_3 ; return $ (Nothing, [], c1, c2, t) })}}} ) (\r -> happyReturn (happyIn270 r)) happyReduce_739 = happyMonadReduce 2# 256# happyReduction_739 happyReduction_739 (happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut121 happy_x_1 of { happy_var_1 -> case happyOut107 happy_x_2 of { happy_var_2 -> ( do { c1 <- checkContext (Just happy_var_1); t <- checkType happy_var_2; return (Nothing, [], c1, Nothing, t) })}} ) (\r -> happyReturn (happyIn270 r)) happyReduce_740 = happyMonadReduce 1# 256# happyReduction_740 happyReduction_740 (happy_x_1 `HappyStk` happyRest) tk = happyThen (case happyOut107 happy_x_1 of { happy_var_1 -> ( checkType happy_var_1 >>= \t -> return (Nothing, [], Nothing, Nothing, t))} ) (\r -> happyReturn (happyIn270 r)) happyReduce_741 = happySpecReduce_1 257# happyReduction_741 happyReduction_741 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn271 (let Loc l (ConId n) = happy_var_1 in ModuleName (nIS l) n )} happyReduce_742 = happySpecReduce_1 257# happyReduction_742 happyReduction_742 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn271 (let Loc l (QConId n) = happy_var_1 in ModuleName (nIS l) (fst n ++ '.':snd n) )} happyReduce_743 = happySpecReduce_1 258# happyReduction_743 happyReduction_743 happy_x_1 = case happyOut235 happy_x_1 of { happy_var_1 -> happyIn272 (happy_var_1 )} happyReduce_744 = happySpecReduce_1 259# happyReduction_744 happyReduction_744 happy_x_1 = case happyOut236 happy_x_1 of { happy_var_1 -> happyIn273 (happy_var_1 )} happyReduce_745 = happySpecReduce_1 260# happyReduction_745 happyReduction_745 happy_x_1 = case happyOut275 happy_x_1 of { happy_var_1 -> happyIn274 (happy_var_1 )} happyReduce_746 = happySpecReduce_1 261# happyReduction_746 happyReduction_746 happy_x_1 = case happyOut248 happy_x_1 of { happy_var_1 -> happyIn275 (happy_var_1 )} happyReduce_747 = happySpecReduce_1 261# happyReduction_747 happyReduction_747 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Safe) -> happyIn275 (safe_name (nIS happy_var_1) )} happyReduce_748 = happySpecReduce_1 261# happyReduction_748 happyReduction_748 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Unsafe) -> happyIn275 (unsafe_name (nIS happy_var_1) )} happyReduce_749 = happySpecReduce_1 261# happyReduction_749 happyReduction_749 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 KW_Threadsafe) -> happyIn275 (threadsafe_name (nIS happy_var_1) )} happyReduce_750 = happySpecReduce_3 262# happyReduction_750 happyReduction_750 happy_x_3 happy_x_2 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 BackQuote) -> case happyOut274 happy_x_2 of { happy_var_2 -> case happyOutTok happy_x_3 of { (Loc happy_var_3 BackQuote) -> happyIn276 (UnQual (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 )}}} happyReduce_751 = happySpecReduce_1 262# happyReduction_751 happyReduction_751 happy_x_1 = case happyOut277 happy_x_1 of { happy_var_1 -> happyIn276 (UnQual (ann happy_var_1) happy_var_1 )} happyReduce_752 = happySpecReduce_1 263# happyReduction_752 happyReduction_752 happy_x_1 = case happyOutTok happy_x_1 of { happy_var_1 -> happyIn277 (let Loc l (VarSym x) = happy_var_1 in Symbol (nIS l) x )} happyReduce_753 = happySpecReduce_1 263# happyReduction_753 happyReduction_753 happy_x_1 = case happyOutTok happy_x_1 of { (Loc happy_var_1 Minus) -> happyIn277 (Symbol (nIS happy_var_1) "-" )} happyReduce_754 = happyReduce 5# 264# happyReduction_754 happyReduction_754 (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 { (Loc happy_var_1 LeftCurly) -> case happyOut28 happy_x_2 of { happy_var_2 -> case happyOut37 happy_x_3 of { happy_var_3 -> case happyOut28 happy_x_4 of { happy_var_4 -> case happyOutTok happy_x_5 of { (Loc happy_var_5 RightCurly) -> happyIn278 (let (ids, ss) = happy_var_3 in (ids, happy_var_1 : reverse happy_var_2 ++ ss ++ reverse happy_var_4 ++ [happy_var_5], happy_var_1 <^^> happy_var_5) ) `HappyStk` happyRest}}}}} happyReduce_755 = happyReduce 5# 264# happyReduction_755 happyReduction_755 (happy_x_5 `HappyStk` happy_x_4 `HappyStk` happy_x_3 `HappyStk` happy_x_2 `HappyStk` happy_x_1 `HappyStk` happyRest) = case happyOut261 happy_x_1 of { happy_var_1 -> case happyOut28 happy_x_2 of { happy_var_2 -> case happyOut37 happy_x_3 of { happy_var_3 -> case happyOut28 happy_x_4 of { happy_var_4 -> case happyOut262 happy_x_5 of { happy_var_5 -> happyIn278 (let (ids, ss) = happy_var_3 in (ids, happy_var_1 : reverse happy_var_2 ++ ss ++ reverse happy_var_4 ++ [happy_var_5], happy_var_1 <^^> happy_var_5) ) `HappyStk` happyRest}}}}} happyReduce_756 = happySpecReduce_3 265# happyReduction_756 happyReduction_756 happy_x_3 happy_x_2 happy_x_1 = case happyOut18 happy_x_1 of { happy_var_1 -> case happyOut271 happy_x_3 of { happy_var_3 -> happyIn279 ((happy_var_1, Just happy_var_3) )}} happyReduce_757 = happySpecReduce_1 265# happyReduction_757 happyReduction_757 happy_x_1 = case happyOut18 happy_x_1 of { happy_var_1 -> happyIn279 ((happy_var_1, Nothing) )} happyReduce_758 = happySpecReduce_2 266# happyReduction_758 happyReduction_758 happy_x_2 happy_x_1 = case happyOut18 happy_x_1 of { happy_var_1 -> case happyOut23 happy_x_2 of { happy_var_2 -> happyIn280 ((happy_var_1, happy_var_2) )}} happyReduce_759 = happySpecReduce_3 267# happyReduction_759 happyReduction_759 happy_x_3 happy_x_2 happy_x_1 = case happyOut18 happy_x_1 of { happy_var_1 -> case happyOut23 happy_x_2 of { happy_var_2 -> case happyOut278 happy_x_3 of { happy_var_3 -> happyIn281 ((happy_var_1, happy_var_2, Just happy_var_3) )}}} happyReduce_760 = happySpecReduce_2 267# happyReduction_760 happyReduction_760 happy_x_2 happy_x_1 = case happyOut18 happy_x_1 of { happy_var_1 -> case happyOut23 happy_x_2 of { happy_var_2 -> happyIn281 ((happy_var_1, happy_var_2, Nothing) )}} happyNewToken action sts stk = lexer(\tk -> let cont i = happyDoAction i tk action sts stk in case tk of { Loc _ EOF -> happyDoAction 150# tk action sts stk; Loc _ (VarId _) -> cont 1#; Loc _ (LabelVarId _) -> cont 2#; Loc _ (QVarId _) -> cont 3#; Loc _ (IDupVarId _) -> cont 4#; Loc _ (ILinVarId _) -> cont 5#; Loc _ (ConId _) -> cont 6#; Loc _ (QConId _) -> cont 7#; Loc _ (DVarId _) -> cont 8#; Loc _ (VarSym _) -> cont 9#; Loc _ (ConSym _) -> cont 10#; Loc _ (QVarSym _) -> cont 11#; Loc _ (QConSym _) -> cont 12#; Loc _ (IntTok _) -> cont 13#; Loc _ (FloatTok _) -> cont 14#; Loc _ (Character _) -> cont 15#; Loc _ (StringTok _) -> cont 16#; Loc _ (IntTokHash _) -> cont 17#; Loc _ (WordTokHash _) -> cont 18#; Loc _ (FloatTokHash _) -> cont 19#; Loc _ (DoubleTokHash _) -> cont 20#; Loc _ (CharacterHash _) -> cont 21#; Loc _ (StringHash _) -> cont 22#; Loc happy_dollar_dollar LeftParen -> cont 23#; Loc happy_dollar_dollar RightParen -> cont 24#; Loc happy_dollar_dollar LeftHashParen -> cont 25#; Loc happy_dollar_dollar RightHashParen -> cont 26#; Loc happy_dollar_dollar SemiColon -> cont 27#; Loc happy_dollar_dollar LeftCurly -> cont 28#; Loc happy_dollar_dollar RightCurly -> cont 29#; Loc happy_dollar_dollar VRightCurly -> cont 30#; Loc happy_dollar_dollar LeftSquare -> cont 31#; Loc happy_dollar_dollar RightSquare -> cont 32#; Loc happy_dollar_dollar ParArrayLeftSquare -> cont 33#; Loc happy_dollar_dollar ParArrayRightSquare -> cont 34#; Loc happy_dollar_dollar Comma -> cont 35#; Loc happy_dollar_dollar Underscore -> cont 36#; Loc happy_dollar_dollar BackQuote -> cont 37#; Loc happy_dollar_dollar Dot -> cont 38#; Loc happy_dollar_dollar DotDot -> cont 39#; Loc happy_dollar_dollar Colon -> cont 40#; Loc happy_dollar_dollar DoubleColon -> cont 41#; Loc happy_dollar_dollar Equals -> cont 42#; Loc happy_dollar_dollar Backslash -> cont 43#; Loc happy_dollar_dollar Bar -> cont 44#; Loc happy_dollar_dollar LeftArrow -> cont 45#; Loc happy_dollar_dollar RightArrow -> cont 46#; Loc happy_dollar_dollar At -> cont 47#; Loc happy_dollar_dollar TApp -> cont 48#; Loc happy_dollar_dollar Tilde -> cont 49#; Loc happy_dollar_dollar DoubleArrow -> cont 50#; Loc happy_dollar_dollar Minus -> cont 51#; Loc happy_dollar_dollar Exclamation -> cont 52#; Loc happy_dollar_dollar Star -> cont 53#; Loc happy_dollar_dollar LeftArrowTail -> cont 54#; Loc happy_dollar_dollar RightArrowTail -> cont 55#; Loc happy_dollar_dollar LeftDblArrowTail -> cont 56#; Loc happy_dollar_dollar RightDblArrowTail -> cont 57#; Loc happy_dollar_dollar RPGuardOpen -> cont 58#; Loc happy_dollar_dollar RPGuardClose -> cont 59#; Loc happy_dollar_dollar RPCAt -> cont 60#; Loc _ (THIdEscape _) -> cont 61#; Loc happy_dollar_dollar THParenEscape -> cont 62#; Loc happy_dollar_dollar THExpQuote -> cont 63#; Loc happy_dollar_dollar THPatQuote -> cont 64#; Loc happy_dollar_dollar THTypQuote -> cont 65#; Loc happy_dollar_dollar THDecQuote -> cont 66#; Loc happy_dollar_dollar THCloseQuote -> cont 67#; Loc happy_dollar_dollar THVarQuote -> cont 68#; Loc happy_dollar_dollar THTyQuote -> cont 69#; Loc _ (THQuasiQuote _) -> cont 70#; Loc _ (XPCDATA _) -> cont 71#; Loc happy_dollar_dollar XStdTagOpen -> cont 72#; Loc happy_dollar_dollar XCloseTagOpen -> cont 73#; Loc happy_dollar_dollar XCodeTagOpen -> cont 74#; Loc happy_dollar_dollar XChildTagOpen -> cont 75#; Loc happy_dollar_dollar XStdTagClose -> cont 76#; Loc happy_dollar_dollar XEmptyTagClose -> cont 77#; Loc happy_dollar_dollar XCodeTagClose -> cont 78#; Loc happy_dollar_dollar XRPatOpen -> cont 79#; Loc happy_dollar_dollar XRPatClose -> cont 80#; Loc happy_dollar_dollar KW_Foreign -> cont 81#; Loc happy_dollar_dollar KW_Export -> cont 82#; Loc happy_dollar_dollar KW_Safe -> cont 83#; Loc happy_dollar_dollar KW_Unsafe -> cont 84#; Loc happy_dollar_dollar KW_Threadsafe -> cont 85#; Loc happy_dollar_dollar KW_Interruptible -> cont 86#; Loc happy_dollar_dollar KW_StdCall -> cont 87#; Loc happy_dollar_dollar KW_CCall -> cont 88#; Loc happy_dollar_dollar KW_CPlusPlus -> cont 89#; Loc happy_dollar_dollar KW_DotNet -> cont 90#; Loc happy_dollar_dollar KW_Jvm -> cont 91#; Loc happy_dollar_dollar KW_Js -> cont 92#; Loc happy_dollar_dollar KW_JavaScript -> cont 93#; Loc happy_dollar_dollar KW_CApi -> cont 94#; Loc happy_dollar_dollar KW_As -> cont 95#; Loc happy_dollar_dollar KW_By -> cont 96#; Loc happy_dollar_dollar KW_Case -> cont 97#; Loc happy_dollar_dollar KW_Class -> cont 98#; Loc happy_dollar_dollar KW_Data -> cont 99#; Loc happy_dollar_dollar KW_Default -> cont 100#; Loc happy_dollar_dollar KW_Deriving -> cont 101#; Loc happy_dollar_dollar KW_Do -> cont 102#; Loc happy_dollar_dollar KW_Else -> cont 103#; Loc happy_dollar_dollar KW_Family -> cont 104#; Loc happy_dollar_dollar KW_Forall -> cont 105#; Loc happy_dollar_dollar KW_Group -> cont 106#; Loc happy_dollar_dollar KW_Hiding -> cont 107#; Loc happy_dollar_dollar KW_If -> cont 108#; Loc happy_dollar_dollar KW_Import -> cont 109#; Loc happy_dollar_dollar KW_In -> cont 110#; Loc happy_dollar_dollar KW_Infix -> cont 111#; Loc happy_dollar_dollar KW_InfixL -> cont 112#; Loc happy_dollar_dollar KW_InfixR -> cont 113#; Loc happy_dollar_dollar KW_Instance -> cont 114#; Loc happy_dollar_dollar KW_Let -> cont 115#; Loc happy_dollar_dollar KW_MDo -> cont 116#; Loc happy_dollar_dollar KW_Module -> cont 117#; Loc happy_dollar_dollar KW_NewType -> cont 118#; Loc happy_dollar_dollar KW_Of -> cont 119#; Loc happy_dollar_dollar KW_Proc -> cont 120#; Loc happy_dollar_dollar KW_Rec -> cont 121#; Loc happy_dollar_dollar KW_Then -> cont 122#; Loc happy_dollar_dollar KW_Type -> cont 123#; Loc happy_dollar_dollar KW_Using -> cont 124#; Loc happy_dollar_dollar KW_Where -> cont 125#; Loc happy_dollar_dollar KW_Qualified -> cont 126#; Loc happy_dollar_dollar KW_Role -> cont 127#; Loc happy_dollar_dollar KW_Pattern -> cont 128#; Loc _ (INLINE _) -> cont 129#; Loc happy_dollar_dollar INLINE_CONLIKE -> cont 130#; Loc happy_dollar_dollar SPECIALISE -> cont 131#; Loc _ (SPECIALISE_INLINE _) -> cont 132#; Loc happy_dollar_dollar SOURCE -> cont 133#; Loc happy_dollar_dollar RULES -> cont 134#; Loc happy_dollar_dollar CORE -> cont 135#; Loc happy_dollar_dollar SCC -> cont 136#; Loc happy_dollar_dollar GENERATED -> cont 137#; Loc happy_dollar_dollar DEPRECATED -> cont 138#; Loc happy_dollar_dollar WARNING -> cont 139#; Loc happy_dollar_dollar UNPACK -> cont 140#; Loc happy_dollar_dollar NOUNPACK -> cont 141#; Loc _ (OPTIONS _) -> cont 142#; Loc happy_dollar_dollar LANGUAGE -> cont 143#; Loc happy_dollar_dollar ANN -> cont 144#; Loc happy_dollar_dollar MINIMAL -> cont 145#; Loc happy_dollar_dollar NO_OVERLAP -> cont 146#; Loc happy_dollar_dollar OVERLAP -> cont 147#; Loc happy_dollar_dollar INCOHERENT -> cont 148#; Loc happy_dollar_dollar PragmaEnd -> cont 149#; _ -> happyError' tk }) happyError_ 150# 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' :: () => (Loc Token) -> P a happyError' tk = parseError tk mparseModule = happySomeParser where happySomeParser = happyThen (happyParse 0#) (\x -> happyReturn (happyOut16 x)) mparseExp = happySomeParser where happySomeParser = happyThen (happyParse 1#) (\x -> happyReturn (happyOut170 x)) mparsePat = happySomeParser where happySomeParser = happyThen (happyParse 2#) (\x -> happyReturn (happyOut217 x)) mparseDeclAux = happySomeParser where happySomeParser = happyThen (happyParse 3#) (\x -> happyReturn (happyOut25 x)) mparseType = happySomeParser where happySomeParser = happyThen (happyParse 4#) (\x -> happyReturn (happyOut119 x)) mparseStmt = happySomeParser where happySomeParser = happyThen (happyParse 5#) (\x -> happyReturn (happyOut224 x)) mparseImportDecl = happySomeParser where happySomeParser = happyThen (happyParse 6#) (\x -> happyReturn (happyOut38 x)) ngparseModulePragmas = happySomeParser where happySomeParser = happyThen (happyParse 7#) (\x -> happyReturn (happyOut18 x)) ngparseModuleHeadAndImports = happySomeParser where happySomeParser = happyThen (happyParse 8#) (\x -> happyReturn (happyOut281 x)) ngparsePragmasAndModuleHead = happySomeParser where happySomeParser = happyThen (happyParse 9#) (\x -> happyReturn (happyOut280 x)) ngparsePragmasAndModuleName = happySomeParser where happySomeParser = happyThen (happyParse 10#) (\x -> happyReturn (happyOut279 x)) happySeq = happyDontSeq type L = SrcSpanInfo -- just for convenience type S = SrcSpan parseError :: Loc Token -> P a parseError t = fail $ "Parse error: " ++ showToken (unLoc t) (<>) :: (Annotated a, Annotated b) => a SrcSpanInfo -> b SrcSpanInfo -> SrcSpanInfo a <> b = ann a <++> ann b infixl 6 <> nIS = noInfoSpan iS = infoSpan mparseDecl :: P (Decl SrcSpanInfo) mparseDecl = do (is, ds, _, _) <- mparseDeclAux when (not $ null is) $ fail $ "Expected single declaration, found import declaration" checkSingleDecl ds {-# LINE 1 "templates/GenericTemplate.hs" #-} {-# LINE 1 "templates/GenericTemplate.hs" #-} {-# LINE 1 "" #-} {-# LINE 19 "" #-} {-# LINE 1 "/Users/matt/Downloads/ghc-7.10.1.app/Contents/lib/ghc-7.10.1/include/ghcversion.h" #-} {-# LINE 20 "" #-} {-# 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" #-} 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. haskell-src-exts-1.18.2/src/0000755000000000000000000000000012746233113013753 5ustar0000000000000000haskell-src-exts-1.18.2/src/Language/0000755000000000000000000000000012746233113015476 5ustar0000000000000000haskell-src-exts-1.18.2/src/Language/Haskell/0000755000000000000000000000000012746233113017061 5ustar0000000000000000haskell-src-exts-1.18.2/src/Language/Haskell/Exts.hs0000644000000000000000000001674712746233113020357 0ustar0000000000000000----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts -- Copyright : (c) Niklas Broberg 2004-2009 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- An umbrella module for the various functionality -- of the package. Also provides some convenient -- functionality for dealing directly with source files. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts ( -- * Re-exported modules module Language.Haskell.Exts.Syntax , module Language.Haskell.Exts.Build , module Language.Haskell.Exts.Lexer , module Language.Haskell.Exts.Pretty , module Language.Haskell.Exts.Fixity , module Language.Haskell.Exts.ExactPrint , module Language.Haskell.Exts.SrcLoc , module Language.Haskell.Exts.Comments , module Language.Haskell.Exts.Extension , module Language.Haskell.Exts.Parser -- * Parsing of Haskell source files , parseFile , parseFileWithMode , parseFileWithExts , parseFileWithComments , parseFileWithCommentsAndPragmas , parseFileContents , parseFileContentsWithMode , parseFileContentsWithExts , parseFileContentsWithComments -- * Read extensions declared in LANGUAGE pragmas , readExtensions ) where import Language.Haskell.Exts.Build import Language.Haskell.Exts.Comments import Language.Haskell.Exts.Parser import Language.Haskell.Exts.Syntax import Language.Haskell.Exts.Lexer ( lexTokenStream, lexTokenStreamWithMode, Token(..) ) import Language.Haskell.Exts.Pretty import Language.Haskell.Exts.Fixity import Language.Haskell.Exts.ExactPrint import Language.Haskell.Exts.SrcLoc import Language.Haskell.Exts.Extension import Data.List import Data.Maybe (fromMaybe) import Language.Preprocessor.Unlit import System.IO -- | Parse a source file on disk, using the default parse mode. parseFile :: FilePath -> IO (ParseResult (Module SrcSpanInfo)) parseFile fp = parseFileWithMode (defaultParseMode { parseFilename = fp }) fp -- | Parse a source file on disk, with an extra set of extensions to know about -- on top of what the file itself declares. parseFileWithExts :: [Extension] -> FilePath -> IO (ParseResult (Module SrcSpanInfo)) parseFileWithExts exts fp = parseFileWithMode (defaultParseMode { extensions = exts, parseFilename = fp }) fp -- | Parse a source file on disk, supplying a custom parse mode. parseFileWithMode :: ParseMode -> FilePath -> IO (ParseResult (Module SrcSpanInfo)) parseFileWithMode p fp = readUTF8File fp >>= return . parseFileContentsWithMode p parseFileWithComments :: ParseMode -> FilePath -> IO (ParseResult (Module SrcSpanInfo, [Comment])) parseFileWithComments p fp = readUTF8File fp >>= return . parseFileContentsWithComments p -- | Parse a source file on disk, supplying a custom parse mode, and retaining comments -- as well as unknown pragmas. parseFileWithCommentsAndPragmas :: ParseMode -> FilePath -> IO (ParseResult (Module SrcSpanInfo, [Comment], [UnknownPragma])) parseFileWithCommentsAndPragmas p fp = readUTF8File fp >>= return . parseFileContentsWithCommentsAndPragmas p -- | Parse a source file from a string using a custom parse mode retaining comments -- as well as unknown pragmas. parseFileContentsWithCommentsAndPragmas :: ParseMode -> String -> ParseResult (Module SrcSpanInfo, [Comment], [UnknownPragma]) parseFileContentsWithCommentsAndPragmas pmode str = separatePragmas parseResult where parseResult = parseFileContentsWithComments pmode str -- | Parse a source file from a string using the default parse mode. parseFileContents :: String -> ParseResult (Module SrcSpanInfo) parseFileContents = parseFileContentsWithMode defaultParseMode -- | Parse a source file from a string, with an extra set of extensions to know about -- on top of what the file itself declares. parseFileContentsWithExts :: [Extension] -> String -> ParseResult (Module SrcSpanInfo) parseFileContentsWithExts exts = parseFileContentsWithMode (defaultParseMode { extensions = exts }) -- | Parse a source file from a string using a custom parse mode. parseFileContentsWithMode :: ParseMode -> String -> ParseResult (Module SrcSpanInfo) parseFileContentsWithMode p@(ParseMode fn oldLang exts ign _ _ _) rawStr = let md = delit fn $ ppContents rawStr (bLang, extraExts) = case (ign, readExtensions md) of (False, Just (mLang, es)) -> (fromMaybe oldLang mLang, es) _ -> (oldLang, []) in -- trace (fn ++ ": " ++ show extraExts) $ parseModuleWithMode (p { baseLanguage = bLang, extensions = exts ++ extraExts }) md parseFileContentsWithComments :: ParseMode -> String -> ParseResult (Module SrcSpanInfo, [Comment]) parseFileContentsWithComments p@(ParseMode fn oldLang exts ign _ _ _) rawStr = let md = delit fn $ ppContents rawStr (bLang, extraExts) = case (ign, readExtensions md) of (False, Just (mLang, es)) -> (fromMaybe oldLang mLang, es) _ -> (oldLang, []) in parseModuleWithComments (p { baseLanguage = bLang, extensions = exts ++ extraExts }) md -- | Gather the extensions declared in LANGUAGE pragmas -- at the top of the file. Returns 'Nothing' if the -- parse of the pragmas fails. readExtensions :: String -> Maybe (Maybe Language, [Extension]) readExtensions str = case getTopPragmas str of ParseOk pgms -> extractLang $ concatMap getExts pgms _ -> Nothing where getExts :: ModulePragma l -> [Either Language Extension] getExts (LanguagePragma _ ns) = map readExt ns getExts _ = [] readExt (Ident _ e) = case classifyLanguage e of UnknownLanguage _ -> Right $ classifyExtension e lang -> Left lang readExt Symbol {} = error "readExt: Symbol" extractLang = extractLang' Nothing [] extractLang' lacc eacc [] = Just (lacc, eacc) extractLang' Nothing eacc (Left l : rest) = extractLang' (Just l) eacc rest extractLang' (Just l1) eacc (Left l2:rest) | l1 == l2 = extractLang' (Just l1) eacc rest | otherwise = Nothing extractLang' lacc eacc (Right ext : rest) = extractLang' lacc (ext:eacc) rest ppContents :: String -> String ppContents = unlines . f . lines where f (('#':_):rest) = rest f x = x delit :: String -> String -> String delit fn = if ".lhs" `isSuffixOf` fn then unlit fn else id readUTF8File :: FilePath -> IO String readUTF8File fp = do h <- openFile fp ReadMode hSetEncoding h utf8 hGetContents h -- | Converts a parse result with comments to a parse result with comments and -- unknown pragmas. separatePragmas :: ParseResult (Module SrcSpanInfo, [Comment]) -> ParseResult (Module SrcSpanInfo, [Comment], [UnknownPragma]) separatePragmas r = case r of ParseOk (m, comments) -> let (pragmas, comments') = partition pragLike comments in ParseOk (m, comments', map commentToPragma pragmas) where commentToPragma (Comment _ l s) = UnknownPragma l $ init $ drop 1 s pragLike (Comment b _ s) = b && pcond s pcond s = length s > 1 && take 1 s == "#" && last s == '#' ParseFailed l s -> ParseFailed l s haskell-src-exts-1.18.2/src/Language/Haskell/Exts/0000755000000000000000000000000012746233113020004 5ustar0000000000000000haskell-src-exts-1.18.2/src/Language/Haskell/Exts/Build.hs0000644000000000000000000002211512746233113021400 0ustar0000000000000000----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Build -- Copyright : (c) The GHC Team, 1997-2000, -- (c) Niklas Broberg 2004 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : experimental -- Portability : portable -- -- This module contains combinators to use when building -- Haskell source trees programmatically, as opposed to -- parsing them from a string. The contents here are quite -- experimental and will likely receive a lot of attention -- when the rest has stabilised. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.Build ( -- * Syntax building functions name, -- :: String -> Name () sym, -- :: String -> Name () var, -- :: Name () -> Exp () op, -- :: Name () -> QOp qvar, -- :: Module -> Name () -> Exp () pvar, -- :: Name () -> Pat () app, -- :: Exp () -> Exp () -> Exp () infixApp, -- :: Exp () -> QOp -> Exp () -> Exp () appFun, -- :: Exp () -> [Exp] -> Exp () pApp, -- :: Name () -> [Pat] -> Pat () tuple, -- :: [Exp] -> Exp () pTuple, -- :: [Pat] -> Pat () varTuple, -- :: [Name] -> Exp () pvarTuple, -- :: [Name] -> Pat () function, -- :: String -> Exp () strE, -- :: String -> Exp () charE, -- :: Char -> Exp () intE, -- :: Integer -> Exp () strP, -- :: String -> Pat () charP, -- :: Char -> Pat () intP, -- :: Integer -> Pat () doE, -- :: [Stmt] -> Exp () lamE, -- :: SrcLoc -> [Pat] -> Exp () -> Exp () letE, -- :: [Decl] -> Exp () -> Exp () caseE, -- :: Exp () -> [Alt] -> Exp () alt, -- :: SrcLoc -> Pat () -> Exp () -> Alt altGW, -- :: SrcLoc -> Pat () -> [Stmt] -> Exp () -> Binds -> Alt listE, -- :: [Exp] -> Exp () eList, -- :: Exp () peList, -- :: Pat () paren, -- :: Exp () -> Exp () pParen, -- :: Pat () -> Pat () qualStmt, -- :: Exp () -> Stmt genStmt, -- :: SrcLoc -> Pat () -> Exp () -> Stmt letStmt, -- :: [Decl] -> Stmt binds, -- :: [Decl] -> Binds noBinds, -- :: Binds wildcard, -- :: Pat () genNames, -- :: String -> Int -> [Name] -- * More advanced building sfun, -- :: SrcLoc -> Name () -> [Name] -> Rhs -> Binds -> Decl () simpleFun, -- :: SrcLoc -> Name () -> Name () -> Exp () -> Decl () patBind, -- :: SrcLoc -> Pat () -> Exp () -> Decl () patBindWhere, -- :: SrcLoc -> Pat () -> Exp () -> [Decl] -> Decl () nameBind, -- :: SrcLoc -> Name () -> Exp () -> Decl () metaFunction, -- :: String -> [Exp] -> Exp () metaConPat -- :: String -> [Pat] -> Pat () ) where import Language.Haskell.Exts.Syntax ----------------------------------------------------------------------------- -- Help functions for Abstract syntax -- | An identifier with the given string as its name. -- The string should be a valid Haskell identifier. name :: String -> Name () name = Ident () -- | A symbol identifier. The string should be a valid -- Haskell symbol identifier. sym :: String -> Name () sym = Symbol () -- | A local variable as expression. var :: Name () -> Exp () var = Var () . UnQual () -- | Use the given identifier as an operator. op :: Name () -> QOp () op = QVarOp () . UnQual () -- | A qualified variable as expression. qvar :: ModuleName () -> Name () -> Exp () qvar m n = Var () $ Qual () m n -- | A pattern variable. pvar :: Name () -> Pat () pvar = PVar () -- | Application of expressions by juxtaposition. app :: Exp () -> Exp () -> Exp () app = App () -- | Apply an operator infix. infixApp :: Exp () -> QOp () -> Exp () -> Exp () infixApp = InfixApp () -- | Apply a function to a list of arguments. appFun :: Exp () -> [Exp ()] -> Exp () appFun f [] = f appFun f (a:as) = appFun (app f a) as -- | A constructor pattern, with argument patterns. pApp :: Name () -> [Pat ()] -> Pat () pApp n ps = PApp () (UnQual () n) ps -- | A tuple expression. tuple :: [Exp ()] -> Exp () tuple = Tuple () Boxed -- | A tuple pattern. pTuple :: [Pat ()] -> Pat () pTuple = PTuple () Boxed -- | A tuple expression consisting of variables only. varTuple :: [Name ()] -> Exp () varTuple ns = tuple $ map var ns -- | A tuple pattern consisting of variables only. pvarTuple :: [Name ()] -> Pat () pvarTuple ns = pTuple $ map pvar ns -- | A function with a given name. function :: String -> Exp () function = var . Ident () -- | A literal string expression. strE :: String -> Exp () strE s = Lit () (String () s s) -- | A literal character expression. charE :: Char -> Exp () charE c = Lit () (Char () c [c]) -- | A literal integer expression. intE :: Integer -> Exp () intE n = Lit () (Int () n (show n)) -- | A literal string pattern. strP :: String -> Pat () strP s = PLit () (Signless ()) (String () s s) -- | A literal character pattern. charP :: Char -> Pat () charP x = PLit () (Signless ()) (Char () x [x]) -- | A literal integer pattern. intP :: Integer -> Pat () intP x = PLit () (if x >= 0 then Signless () else Negative ()) (Int () (abs x) (show x)) -- | A do block formed by the given statements. -- The last statement in the list should be -- a 'Qualifier' expression. doE :: [Stmt ()] -> Exp () doE = Do () -- | Lambda abstraction, given a list of argument -- patterns and an expression body. lamE :: [Pat ()] -> Exp () -> Exp () lamE = Lambda () -- | A @let@ ... @in@ block. letE :: [Decl ()] -> Exp () -> Exp () letE ds e = Let () (binds ds) e -- | A @case@ expression. caseE :: Exp () -> [Alt ()] -> Exp () caseE = Case () -- | An unguarded alternative in a @case@ expression. alt :: Pat () -> Exp () -> Alt () alt p e = Alt () p (unGAlt e) noBinds -- | An alternative with a single guard in a @case@ expression. altGW :: Pat () -> [Stmt ()] -> Exp () -> Binds () -> Alt () altGW p gs e w = Alt () p (gAlt gs e) (Just w) -- | An unguarded righthand side of a @case@ alternative. unGAlt :: Exp () -> Rhs () unGAlt = UnGuardedRhs () -- | An list of guarded righthand sides for a @case@ alternative. gAlts :: [([Stmt ()],Exp ())] -> Rhs () gAlts as = GuardedRhss () $ map (\(gs,e) -> GuardedRhs () gs e) as -- | A single guarded righthand side for a @case@ alternative. gAlt :: [Stmt ()] -> Exp () -> Rhs () gAlt gs e = gAlts [(gs,e)] -- | A list expression. listE :: [Exp ()] -> Exp () listE = List () -- | The empty list expression. eList :: Exp () eList = List () [] -- | The empty list pattern. peList :: Pat () peList = PList () [] -- | Put parentheses around an expression. paren :: Exp () -> Exp () paren = Paren () -- | Put parentheses around a pattern. pParen :: Pat () -> Pat () pParen = PParen () -- | A qualifier expression statement. qualStmt :: Exp () -> Stmt () qualStmt = Qualifier () -- | A generator statement: /pat/ @<-@ /exp/ genStmt :: Pat () -> Exp () -> Stmt () genStmt = Generator () -- | A @let@ binding group as a statement. letStmt :: [Decl ()] -> Stmt () letStmt ds = LetStmt () $ binds ds -- | Hoist a set of declarations to a binding group. binds :: [Decl ()] -> Binds () binds = BDecls () -- | An empty binding group. noBinds :: Maybe (Binds ()) noBinds = Nothing -- | The wildcard pattern: @_@ wildcard :: Pat () wildcard = PWildCard () -- | Generate k names by appending numbers 1 through k to a given string. genNames :: String -> Int -> [Name ()] genNames s k = [ Ident () $ s ++ show i | i <- [1..k] ] ------------------------------------------------------------------------------- -- Some more specialised help functions -- | A function with a single clause sfun :: Name () -> [Name ()] -> (Rhs ()) -> Maybe (Binds ()) -> Decl () sfun f pvs rhs bs = FunBind () [Match () f (map pvar pvs) rhs bs] -- | A function with a single clause, a single argument, no guards -- and no where declarations simpleFun :: Name () -> Name () -> Exp () -> Decl () simpleFun f a e = let rhs = UnGuardedRhs () e in sfun f [a] rhs noBinds -- | A pattern bind where the pattern is a variable, and where -- there are no guards and no 'where' clause. patBind :: Pat () -> Exp () -> Decl () patBind p e = let rhs = UnGuardedRhs () e in PatBind () p rhs noBinds -- | A pattern bind where the pattern is a variable, and where -- there are no guards, but with a 'where' clause. patBindWhere :: Pat () -> Exp () -> [Decl ()] -> Decl () patBindWhere p e ds = let rhs = UnGuardedRhs () e in PatBind () p rhs (if null ds then Nothing else Just (binds ds)) -- | Bind an identifier to an expression. nameBind :: Name () -> Exp () -> Decl () nameBind n e = patBind (pvar n) e -- | Apply function of a given name to a list of arguments. metaFunction :: String -> [Exp ()] -> Exp () metaFunction s' es' = mf s' (reverse es') where mf s [] = var $ name s mf s (e:es) = app (mf s es) e -- | Apply a constructor of a given name to a list of pattern -- arguments, forming a constructor pattern. metaConPat :: String -> [Pat ()] -> Pat () metaConPat s ps = pApp (name s) ps haskell-src-exts-1.18.2/src/Language/Haskell/Exts/Comments.hs0000644000000000000000000001402512746233113022127 0ustar0000000000000000{-# LANGUAGE DeriveDataTypeable #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Comments -- Copyright : (c) JP Moresmau 2015 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : experimental -- Portability : portable -- -- This module processes comments along with an annotated AST, -- to be able to associate Haddock comments with the actual item -- they refer to. -- -- Example: -- -- @ -- let -- parse1Result :: ParseResult (Module SrcSpanInfo,[Comment]) -- parse1Result = -- parseFileContentsWithComments -- (defaultParseMode { parseFilename = file }) -- contents -- withC :: ParseResult (Module (SrcSpanInfo,[Comment])) -- withC = case parse1Result of -- ParseOk res -> ParseOk $ associateHaddock res -- ParseFailed sloc msg -> ParseFailed sloc msg -- @ -- -- In this code sample, parse1Result is what you get when you parse a file: -- a 'Module' annotated wth 'SrcSpanInfo', and a list of comments -- After passing the result to 'associateHaddock', you get a 'Module' -- annotated with both a 'SrcSpanInfo' and the list of 'Comment' related to the -- specific AST node. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.Comments ( associateHaddock , Comment(..), UnknownPragma(..) ) where import Language.Haskell.Exts.Syntax import Language.Haskell.Exts.SrcLoc import Data.Char (isSpace) import Data.Traversable import Data.Data -- | A Haskell comment. The 'Bool' is 'True' if the comment is multi-line, i.e. @{- -}@. data Comment = Comment Bool SrcSpan String deriving (Eq,Show,Typeable,Data) -- | An unknown pragma. data UnknownPragma = UnknownPragma SrcSpan String deriving (Eq,Show,Typeable,Data) -- | Associates an AST with Source Span Information -- with relevant Haddock comments associateHaddock ::(Annotated ast,Traversable ast) => (ast SrcSpanInfo,[Comment]) -> ast (SrcSpanInfo,[Comment]) associateHaddock (ast,[]) = fmap (\src->(src,[])) ast associateHaddock (ast,comments) = let (ca,assocs1) = mapAccumL associate1 (newAccumulator comments) ast in snd $ mapAccumL merge (lastPost ca) assocs1 -- | Merge existing association with post comment associations merge :: [(SrcSpanInfo,[Comment])] -> (SrcSpanInfo,[Comment]) -> ([(SrcSpanInfo,[Comment])], (SrcSpanInfo,[Comment])) merge [] ret = ([],ret) merge (x:xs) (src,cmts) = if fst x == src then (xs,(src,cmts ++ snd x)) else (x:xs,(src,cmts)) -- | Ensure that if file ends with comment we process it lastPost :: CommentAccumulator -> [(SrcSpanInfo, [Comment])] lastPost (CommentAccumulator (Post cmt : rest) past assocs) = let (toMerge, _) = span isNone rest psrc = matchPreviousSrc past in (assocs ++ [(psrc, cmt : map hcComment toMerge)]) lastPost (CommentAccumulator _ _ assocs) = assocs -- | Accumulate comments mappings, either directly with the source -- or in another association list for later processing associate1 :: CommentAccumulator -> SrcSpanInfo -> (CommentAccumulator,(SrcSpanInfo,[Comment])) associate1 ca@(CommentAccumulator [] _ _) src = (ca,(src,[])) associate1 (CommentAccumulator (hc@(Pre cmt):rest) _ assocs) src = if isBefore hc src then let (toMerge,next) = getToMerge src rest newAssoc = (src,cmt : map hcComment toMerge) in (CommentAccumulator next [] assocs,newAssoc) else (CommentAccumulator (hc:rest) [] assocs,(src,[])) associate1 (CommentAccumulator (hc@(Post cmt):rest) past assocs) src = if isBefore hc src then let (toMerge,next) = getToMerge src rest newAssocs = if null past then assocs else assocs++[(matchPreviousSrc past,cmt : map hcComment toMerge)] in associate1 (CommentAccumulator next [] newAssocs) src else (CommentAccumulator (hc:rest) (src:past) assocs,(src,[])) associate1 (CommentAccumulator (_:rest) past assocs) src = (CommentAccumulator rest (src:past) assocs,(src,[])) -- | The comment accumulator data CommentAccumulator = CommentAccumulator [HaddockComment] -- The Haddock comments to process [SrcSpanInfo] -- The past src infos to resolve post comments [(SrcSpanInfo,[Comment])] -- The additional associations between src and comments -- | Create a new accumulator newAccumulator :: [Comment] -> CommentAccumulator newAccumulator comments = CommentAccumulator (commentsToHaddock comments) [] [] -- | Get comments to merge getToMerge :: SrcSpanInfo -- ^ Stop before src -> [HaddockComment] -- ^ All remaining comments -> ([HaddockComment],[HaddockComment]) -- ^ Comments to merge, left overs getToMerge src = span (\hc-> isNone hc && isBefore hc src) -- | Get the biggest src that ends where the first one does matchPreviousSrc :: [SrcSpanInfo] -> SrcSpanInfo matchPreviousSrc [] = error "Language.Haskell.Exts.Annotated.Comments.matchPreviousSrc: empty list" matchPreviousSrc srcs = let end = srcSpanEnd $ srcInfoSpan $ head srcs in last $ filter ((end ==) . srcSpanEnd . srcInfoSpan) srcs -- | Is a Haddock comment before a given location isBefore :: HaddockComment -> SrcSpanInfo -> Bool isBefore hc src= let (Comment _ csrc _) = hcComment hc in csrc < srcInfoSpan src -- | Represents a Haddock Comment data HaddockComment = -- | Comment before declaration Pre { hcComment::Comment } -- | Comment after declaration | Post { hcComment::Comment } -- | Non Haddock comment | None { hcComment::Comment } -- | Is a comment not haddock? isNone :: HaddockComment -> Bool isNone (None _) = True isNone _ = False -- | Comments to Haddock Comments commentsToHaddock :: [Comment] -> [HaddockComment] commentsToHaddock = map commentToHaddock -- | Comment to Haddock Comment commentToHaddock :: Comment -> HaddockComment commentToHaddock c@(Comment _ _ txt) = case dropWhile isSpace txt of ('|':_) -> Pre c ('^':_) -> Post c _ -> None c haskell-src-exts-1.18.2/src/Language/Haskell/Exts/ExactPrint.hs0000644000000000000000000023434512746233113022434 0ustar0000000000000000{-# LANGUAGE DeriveFunctor #-} {-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Annotated.ExactPrint -- Copyright : (c) Niklas Broberg 2009 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- Exact-printer for Haskell abstract syntax. The input is a (semi-concrete) -- abstract syntax tree, annotated with exact source information to enable -- printing the tree exactly as it was parsed. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.ExactPrint ( exactPrint , ExactP ) where import Language.Haskell.Exts.Syntax import Language.Haskell.Exts.SrcLoc import Language.Haskell.Exts.Comments import Control.Monad (when, liftM, ap, unless) #if __GLASGOW_HASKELL__ < 710 import Control.Applicative (Applicative(..)) #endif import Control.Arrow ((***), (&&&)) import Prelude hiding (exp) import Data.List (intersperse) -- import Debug.Trace (trace) ------------------------------------------------------ -- The EP monad and basic combinators type Pos = (Int,Int) pos :: (SrcInfo loc) => loc -> Pos pos ss = (startLine ss, startColumn ss) newtype EP x = EP (Pos -> [Comment] -> (x, Pos, [Comment], ShowS)) instance Functor EP where fmap = liftM instance Applicative EP where pure = return (<*>) = ap instance Monad EP where return x = EP $ \l cs -> (x, l, cs, id) EP m >>= k = EP $ \l0 c0 -> let (a, l1, c1, s1) = m l0 c0 EP f = k a (b, l2, c2, s2) = f l1 c1 in (b, l2, c2, s1 . s2) runEP :: EP () -> [Comment] -> String runEP (EP f) cs = let (_,_,_,s) = f (1,1) cs in s "" getPos :: EP Pos getPos = EP (\l cs -> (l,l,cs,id)) setPos :: Pos -> EP () setPos l = EP (\_ cs -> ((),l,cs,id)) printString :: String -> EP () printString str = EP (\(l,c) cs -> let (l', c') = foldl go (l, c) str go (cl, _) '\n' = (cl + 1, 1) go (cl, cc) _ = (cl, cc + 1) in ((), (l', c'), cs, showString str)) getComment :: EP (Maybe Comment) getComment = EP $ \l cs -> let x = case cs of c:_ -> Just c _ -> Nothing in (x, l, cs, id) dropComment :: EP () dropComment = EP $ \l cs -> let cs' = case cs of (_:cs1) -> cs1 _ -> cs in ((), l, cs', id) newLine :: EP () newLine = do (l,_) <- getPos printString "\n" setPos (l+1,1) padUntil :: Pos -> EP () padUntil (l,c) = do (l1,c1) <- getPos case {- trace (show ((l,c), (l1,c1))) -} () of _ {-()-} | l1 >= l && c1 <= c -> printString $ replicate (c - c1) ' ' | l1 < l -> newLine >> padUntil (l,c) | otherwise -> return () mPrintComments :: Pos -> EP () mPrintComments p = do mc <- getComment case mc of Nothing -> return () Just (Comment multi s str) -> when (pos s < p) $ do dropComment padUntil (pos s) printComment multi str setPos (srcSpanEndLine s, srcSpanEndColumn s) mPrintComments p printComment :: Bool -> String -> EP () printComment b str | b = printString $ "{-" ++ str ++ "-}" | otherwise = printString $ "--" ++ str printWhitespace :: Pos -> EP () printWhitespace p = mPrintComments p >> padUntil p printStringAt :: Pos -> String -> EP () printStringAt p str = printWhitespace p >> printString str errorEP :: String -> EP a errorEP = fail ------------------------------------------------------------------------------ -- Printing of source elements -- | Print an AST exactly as specified by the annotations on the nodes in the tree. exactPrint :: (ExactP ast) => ast SrcSpanInfo -> [Comment] -> String exactPrint ast = runEP (exactPC ast) exactPC :: (ExactP ast) => ast SrcSpanInfo -> EP () exactPC ast = let p = pos (ann ast) in mPrintComments p >> padUntil p >> exactP ast printSeq :: [(Pos, EP ())] -> EP () printSeq [] = return () printSeq ((p,pr):xs) = printWhitespace p >> pr >> printSeq xs printStrs :: SrcInfo loc => [(loc, String)] -> EP () printStrs = printSeq . map (pos *** printString) printPoints :: SrcSpanInfo -> [String] -> EP () printPoints l = printStrs . zip (srcInfoPoints l) printInterleaved, printInterleaved' :: (ExactP ast, SrcInfo loc) => [(loc, String)] -> [ast SrcSpanInfo] -> EP () printInterleaved sistrs asts = printSeq $ interleave (map (pos *** printString ) sistrs) (map (pos . ann &&& exactP) asts) printInterleaved' sistrs (a:asts) = exactPC a >> printInterleaved sistrs asts printInterleaved' _ _ = internalError "printInterleaved'" printStreams :: [(Pos, EP ())] -> [(Pos, EP ())] -> EP () printStreams [] ys = printSeq ys printStreams xs [] = printSeq xs printStreams (x@(p1,ep1):xs) (y@(p2,ep2):ys) | p1 <= p2 = printWhitespace p1 >> ep1 >> printStreams xs (y:ys) | otherwise = printWhitespace p2 >> ep2 >> printStreams (x:xs) ys interleave :: [a] -> [a] -> [a] interleave [] ys = ys interleave xs [] = xs interleave (x:xs) (y:ys) = x:y: interleave xs ys maybeEP :: (a -> EP ()) -> Maybe a -> EP () maybeEP = maybe (return ()) bracketList :: (ExactP ast) => (String, String, String) -> [SrcSpan] -> [ast SrcSpanInfo] -> EP () bracketList (a,b,c) poss asts = printInterleaved (pList poss (a,b,c)) asts pList :: [a] -> (b, b, b) -> [(a, b)] pList (p:ps) (a,b,c) = (p,a) : pList' ps (b,c) pList _ _ = internalError "pList" pList' :: [a] -> (b, b) -> [(a, b)] pList' [] _ = [] pList' [p] (_,c) = [(p,c)] pList' (p:ps) (b,c) = (p, b) : pList' ps (b,c) parenList, squareList, squareColonList, curlyList, parenHashList :: (ExactP ast) => [SrcSpan] -> [ast SrcSpanInfo] -> EP () parenList = bracketList ("(",",",")") squareList = bracketList ("[",",","]") squareColonList = bracketList ("[:",",",":]") curlyList = bracketList ("{",",","}") parenHashList = bracketList ("(#",",","#)") layoutList :: (ExactP ast) => [SrcSpan] -> [ast SrcSpanInfo] -> EP () layoutList poss asts = printStreams (map (pos *** printString) $ lList poss) (map (pos . ann &&& exactP) asts) lList :: [SrcSpan] -> [(SrcSpan, String)] lList (p:ps) = (if isNullSpan p then (p,"") else (p,"{")) : lList' ps lList _ = internalError "lList" lList' :: [SrcSpan] -> [(SrcSpan, String)] lList' [] = [] lList' [p] = [if isNullSpan p then (p,"") else (p,"}")] lList' (p:ps) = (if isNullSpan p then (p,"") else (p,";")) : lList' ps printSemi :: SrcSpan -> EP () printSemi p = do printWhitespace (pos p) unless (isNullSpan p) $ printString ";" -------------------------------------------------- -- Exact printing class Annotated ast => ExactP ast where exactP :: ast SrcSpanInfo -> EP () instance ExactP Literal where exactP lit = case lit of Char _ _ rw -> printString ('\'':rw ++ "\'") String _ _ rw -> printString ('\"':rw ++ "\"") Int _ _ rw -> printString rw Frac _ _ rw -> printString rw PrimInt _ _ rw -> printString (rw ++ "#" ) PrimWord _ _ rw -> printString (rw ++ "##") PrimFloat _ _ rw -> printString (rw ++ "#" ) PrimDouble _ _ rw -> printString (rw ++ "##") PrimChar _ _ rw -> printString ('\'':rw ++ "\'#" ) PrimString _ _ rw -> printString ('\"':rw ++ "\"#" ) instance ExactP Sign where exactP sg = case sg of Signless _ -> return () Negative l -> printStringAt (pos l) "-" instance ExactP ModuleName where exactP (ModuleName _ str) = printString str instance ExactP SpecialCon where exactP sc = case sc of UnitCon l -> printPoints l ["(",")"] ListCon l -> printPoints l ["[","]"] FunCon l -> case srcInfoPoints l of [_,b,_] -> printStringAt (pos b) "->" _ -> errorEP "ExactP: SpecialCon is given wrong number of srcInfoPoints" TupleCon l b n -> printPoints l $ case b of Unboxed -> "(#": replicate (n-1) "," ++ ["#)"] _ -> "(" : replicate (n-1) "," ++ [")"] Cons _ -> printString ":" UnboxedSingleCon l -> printPoints l ["(#","#)"] isSymbolName :: Name l -> Bool isSymbolName (Symbol _ _) = True isSymbolName _ = False isSymbolQName :: QName l -> Bool isSymbolQName (UnQual _ n) = isSymbolName n isSymbolQName (Qual _ _ n) = isSymbolName n isSymbolQName (Special _ Cons{}) = True isSymbolQName (Special _ FunCon{}) = True isSymbolQName _ = False instance ExactP QName where exactP qn | isSymbolQName qn = case srcInfoPoints (ann qn) of [_,b,c] -> do printString "(" printWhitespace (pos b) epQName qn printStringAt (pos c) ")" _ -> errorEP "ExactP: QName is given wrong number of srcInfoPoints" | otherwise = epQName qn epQName :: QName SrcSpanInfo -> EP () epQName qn = case qn of Qual _ mn n -> exactP mn >> printString "." >> exactP n UnQual _ n -> exactP n Special _ sc -> exactP sc epInfixQName :: QName SrcSpanInfo -> EP () epInfixQName qn | isSymbolQName qn = printWhitespace (pos (ann qn)) >> epQName qn | otherwise = case srcInfoPoints (ann qn) of [a,b,c] -> do printStringAt (pos a) "`" printWhitespace (pos b) epQName qn printStringAt (pos c) "`" _ -> errorEP "ExactP: QName (epInfixName) is given wrong number of srcInfoPoints" instance ExactP Name where exactP n = case n of Ident _ str -> printString str Symbol l str -> case srcInfoPoints l of [_,b,c] -> do printString "(" printWhitespace (pos b) printString str printStringAt (pos c) ")" [] -> printString str _ -> errorEP "ExactP: Name is given wrong number of srcInfoPoints" epInfixName :: Name SrcSpanInfo -> EP () epInfixName n | isSymbolName n = printWhitespace (pos (ann n)) >> exactP n | otherwise = case srcInfoPoints (ann n) of [a,b,c] -> do printStringAt (pos a) "`" printWhitespace (pos b) exactP n printStringAt (pos c) "`" _ -> errorEP "ExactP: Name (epInfixName) is given wrong number of srcInfoPoints" instance ExactP IPName where exactP ipn = case ipn of IPDup _ str -> printString $ '?':str IPLin _ str -> printString $ '%':str instance ExactP QOp where exactP qop = case qop of QVarOp _ qn -> epInfixQName qn QConOp _ qn -> epInfixQName qn instance ExactP Op where exactP op = case op of VarOp _ n -> epInfixName n ConOp _ n -> epInfixName n instance ExactP CName where exactP cn = case cn of VarName _ n -> exactP n ConName _ n -> exactP n instance ExactP Namespace where exactP ns = case ns of NoNamespace _ -> return () TypeNamespace l -> printStringAt (pos l) "type" PatternNamespace l -> printStringAt (pos l) "pattern" instance ExactP ExportSpec where exactP espec = case espec of EVar _ qn -> exactPC qn EAbs _ ns qn -> exactP ns >> exactPC qn EThingWith l wc qn cns -> let names = case wc of NoWildcard {} -> cns EWildcard wcl n -> let (before,after) = splitAt n cns wildcardName = VarName wcl (Ident wcl "..") in before ++ [wildcardName] ++ after k = length (srcInfoPoints l) in exactP qn >> printInterleaved (zip (srcInfoPoints l) $ "(":replicate (k-2) "," ++ [")"]) names EModuleContents _ mn -> printString "module" >> exactPC mn instance ExactP ExportSpecList where exactP (ExportSpecList l ess) = let k = length (srcInfoPoints l) in printInterleaved (zip (srcInfoPoints l) $ "(": replicate (k-2) "," ++ [")"]) ess instance ExactP ImportSpecList where exactP (ImportSpecList l hid ispecs) = do let pts = srcInfoPoints l pts1 <- if hid then do let (x:pts') = pts printStringAt (pos x) "hiding" return pts' else return pts let k = length pts1 printInterleaved (zip pts1 $ "(": replicate (k-2) "," ++ [")"]) ispecs instance ExactP ImportSpec where exactP ispec = case ispec of IVar _ qn -> exactPC qn IAbs _ ns n -> exactP ns >> exactPC n IThingAll l n -> exactP n >> printPoints l ["(","..",")"] IThingWith l n cns -> let k = length (srcInfoPoints l) in exactP n >> printInterleaved (zip (srcInfoPoints l) $ "(":replicate (k-2) "," ++ [")"]) cns instance ExactP ImportDecl where exactP (ImportDecl l mn qf src safe mpkg mas mispecs) = do printString "import" case srcInfoPoints l of (_:pts) -> do pts1 <- if src then case pts of x:y:pts' -> do printStringAt (pos x) "{-# SOURCE" printStringAt (pos y) "#-}" return pts' _ -> errorEP "ExactP: ImportDecl is given too few srcInfoPoints" else return pts pts2 <- if safe then case pts1 of x:pts' -> do printStringAt (pos x) "safe" return pts' _ -> errorEP "ExactP: ImportDecl is given too few srcInfoPoints" else return pts1 pts3 <- if qf then case pts2 of x:pts' -> do printStringAt (pos x) "qualified" return pts' _ -> errorEP "ExactP: ImportDecl is given too few srcInfoPoints" else return pts2 pts4 <- case mpkg of Just pkg -> case pts3 of x:pts' -> do printStringAt (pos x) $ show pkg return pts' _ -> errorEP "ExactP: ImportDecl is given too few srcInfoPoints" _ -> return pts3 exactPC mn _ <- case mas of Just as -> case pts4 of x:pts' -> do printStringAt (pos x) "as" exactPC as return pts' _ -> errorEP "ExactP: ImportDecl is given too few srcInfoPoints" _ -> return pts4 case mispecs of Nothing -> return () Just ispecs -> exactPC ispecs _ -> errorEP "ExactP: ImportDecl is given too few srcInfoPoints" instance ExactP Module where exactP mdl = case mdl of Module l mmh oss ids decls -> do let (oPts, pts) = splitAt (max (length oss + 1) 2) (srcInfoPoints l) layoutList oPts oss maybeEP exactPC mmh printStreams (map (pos *** printString) $ lList pts) (map (pos . ann &&& exactPC) ids ++ map (pos . ann &&& exactPC) (sepFunBinds decls)) XmlPage l _mn oss xn attrs mat es -> do let (oPts, pPts) = splitAt (max (length oss + 1) 2) $ srcInfoPoints l case pPts of [a,b,c,d,e] -> do layoutList oPts oss printStringAt (pos a) "<" exactPC xn mapM_ exactPC attrs maybeEP exactPC mat printStringAt (pos b) ">" mapM_ exactPC es printStringAt (pos c) "" _ -> errorEP "ExactP: Module: XmlPage is given wrong number of srcInfoPoints" XmlHybrid l mmh oss ids decls xn attrs mat es -> do let (oPts, pts) = splitAt (max (length oss + 1) 2) (srcInfoPoints l) layoutList oPts oss maybeEP exactPC mmh let (dPts, pPts) = splitAt (length pts - 5) pts case pPts of [a,b,c,d,e] -> do printStreams (map (\(p,s) -> (pos p, printString s)) $ lList dPts) (map (\i -> (pos $ ann i, exactPC i)) ids ++ map (\d' -> (pos $ ann d', exactPC d')) (sepFunBinds decls)) printStringAt (pos a) "<" exactPC xn mapM_ exactPC attrs maybeEP exactPC mat printStringAt (pos b) ">" mapM_ exactPC es printStringAt (pos c) "" _ -> errorEP "ExactP: Module: XmlHybrid is given wrong number of srcInfoPoints" instance ExactP ModuleHead where exactP (ModuleHead l mn mwt mess) = case srcInfoPoints l of [a,b] -> do printStringAt (pos a) "module" exactPC mn maybeEP exactPC mwt maybeEP exactPC mess printStringAt (pos b) "where" _ -> errorEP "ExactP: ModuleHead is given wrong number of srcInfoPoints" instance ExactP ModulePragma where exactP op = case op of LanguagePragma l ns -> let pts = srcInfoPoints l k = length ns - 1 -- number of commas m = length pts - k - 2 -- number of virtual semis, likely 0 in printInterleaved (zip pts ("{-# LANGUAGE":replicate k "," ++ replicate m "" ++ ["#-}"])) ns OptionsPragma l mt str -> let k = length (srcInfoPoints l) -- We strip out a leading space in the lexer unless the pragma -- starts with a newline. addSpace xs@('\n':_) = xs addSpace xs = ' ':xs opstr = "{-# OPTIONS" ++ case mt of { Just t -> "_" ++ show t ; _ -> "" } ++ addSpace str in printPoints l $ opstr : replicate (k-2) "" ++ ["#-}"] AnnModulePragma l ann' -> case srcInfoPoints l of [_,b] -> do printString "{-# ANN" exactPC ann' printStringAt (pos b) "#-}" _ -> errorEP "ExactP: ModulePragma: AnnPragma is given wrong number of srcInfoPoints" instance ExactP WarningText where exactP (DeprText l str) = printPoints l ["{-# DEPRECATED", str, "#-}"] exactP (WarnText l str) = printPoints l ["{-# WARNING", str, "#-}"] instance ExactP Assoc where exactP a = case a of AssocNone _ -> printString "infix" AssocLeft _ -> printString "infixl" AssocRight _ -> printString "infixr" instance ExactP DataOrNew where exactP (DataType _) = printString "data" exactP (NewType _) = printString "newtype" instance ExactP TypeEqn where exactP (TypeEqn l t1 t2) = case srcInfoPoints l of [a] -> do exactPC t1 printStringAt (pos a) "=" exactPC t2 _ -> errorEP "ExactP: TypeEqn is given wrong number of srcInfoPoints" instance ExactP InjectivityInfo where exactP (InjectivityInfo l to from) = case srcInfoPoints l of a:b:_ -> do printStringAt (pos a) "|" exactPC to printStringAt (pos b) "->" mapM_ exactPC from _ -> errorEP "ExactP: InjectivityInfo given wrong number of srcInfoPoints" instance ExactP ResultSig where exactP (KindSig l k) = case srcInfoPoints l of a:_ -> do printStringAt (pos a) "::" exactPC k _ -> errorEP "ExactP: ResultSig given wrong number of srcInfoPoints" exactP (TyVarSig l tv) = case srcInfoPoints l of a:_ -> do printStringAt (pos a) "=" exactPC tv _ -> errorEP "ExactP: ResultSig given wrong number of srcInfoPoints" instance ExactP Decl where exactP decl = case decl of TypeDecl l dh t -> case srcInfoPoints l of [a,b] -> do printStringAt (pos a) "type" exactPC dh printStringAt (pos b) "=" exactPC t _ -> errorEP "ExactP: Decl: TypeDecl is given wrong number of srcInfoPoints" TypeFamDecl l dh mk mi -> case srcInfoPoints l of a:b:_ -> do printStringAt (pos a) "type" printStringAt (pos b) "family" exactPC dh maybeEP exactPC mk maybeEP exactPC mi _ -> errorEP "ExactP: Decl: TypeFamDecl is given wrong number of srcInfoPoints" ClosedTypeFamDecl l dh mk mi eqns -> case srcInfoPoints l of a:b:c:_ -> do printStringAt (pos a) "type" printStringAt (pos b) "family" exactPC dh maybeEP exactPC mk maybeEP exactPC mi printStringAt (pos c) "where" mapM_ exactP eqns _ -> errorEP "ExactP: Decl: ClosedTypeFamDecl is given wrong number of srcInfoPoints" DataDecl l dn mctxt dh constrs mder -> do exactP dn maybeEP exactPC mctxt exactPC dh -- the next line works for empty data types since the srcInfoPoints will be empty then printInterleaved (zip (srcInfoPoints l) ("=": repeat "|")) constrs maybeEP exactPC mder GDataDecl l dn mctxt dh mk gds mder -> do let pts = srcInfoPoints l exactP dn maybeEP exactPC mctxt exactPC dh pts1 <- case mk of Nothing -> return pts Just kd -> case pts of p:pts' -> do printStringAt (pos p) "::" exactPC kd return pts' _ -> errorEP "ExactP: Decl: GDataDecl is given too few srcInfoPoints" case pts1 of x:pts' -> do printStringAt (pos x) "where" layoutList pts' gds maybeEP exactPC mder _ -> errorEP "ExactP: Decl: GDataDecl is given too few srcInfoPoints" DataFamDecl l mctxt dh mk -> do printString "data" maybeEP exactPC mctxt exactPC dh maybeEP (\kd -> printStringAt (pos (head (srcInfoPoints l))) "::" >> exactPC kd) mk TypeInsDecl l t1 t2 -> case srcInfoPoints l of [_,b,c] -> do printString "type" printStringAt (pos b) "instance" exactPC t1 printStringAt (pos c) "=" exactPC t2 _ -> errorEP "ExactP: Decl: TypeInsDecl is given wrong number of srcInfoPoints" DataInsDecl l dn t constrs mder -> case srcInfoPoints l of p:pts -> do exactP dn printStringAt (pos p) "instance" exactPC t printInterleaved (zip pts ("=": repeat "|")) constrs maybeEP exactPC mder _ -> errorEP "ExactP: Decl: DataInsDecl is given too few srcInfoPoints" GDataInsDecl l dn t mk gds mder -> case srcInfoPoints l of p:pts -> do exactP dn printStringAt (pos p) "instance" exactPC t pts1 <- case mk of Nothing -> return pts Just kd -> case pts of p':pts' -> do printStringAt (pos p') "::" exactPC kd return pts' _ -> errorEP "ExactP: Decl: GDataInsDecl is given too few srcInfoPoints" case pts1 of x:pts' -> do printStringAt (pos x) "where" layoutList pts' gds maybeEP exactPC mder _ -> errorEP "ExactP: Decl: GDataInsDecl is given too few srcInfoPoints" _ -> errorEP "ExactP: Decl: GDataInsDecl is given too few srcInfoPoints" ClassDecl l mctxt dh fds mcds -> case srcInfoPoints l of _:pts -> do printString "class" maybeEP exactPC mctxt exactPC dh _ <- case fds of [] -> return pts _ -> do let (pts1, pts2) = splitAt (length fds) pts printInterleaved (zip pts1 ("|":repeat ",")) fds return pts2 maybeEP (\cds -> case pts of p:pts' -> do printStringAt (pos p) "where" layoutList pts' $ sepClassFunBinds cds _ -> errorEP "ExactP: Decl: ClassDecl is given too few srcInfoPoints" ) mcds _ -> errorEP "ExactP: Decl: ClassDecl is given too few srcInfoPoints" InstDecl l movlp ih mids -> case srcInfoPoints l of _:pts -> do printString "instance" maybeEP exactPC movlp exactPC ih maybeEP (\ids -> do let (p:pts') = pts printStringAt (pos p) "where" layoutList pts' $ sepInstFunBinds ids ) mids _ -> errorEP "ExactP: Decl: InstDecl is given too few srcInfoPoints" DerivDecl l movlp ih -> case srcInfoPoints l of [_,b] -> do printString "deriving" printStringAt (pos b) "instance" maybeEP exactPC movlp exactPC ih _ -> errorEP "ExactP: Decl: DerivDecl is given wrong number of srcInfoPoints" InfixDecl l assoc mprec ops -> do let pts = srcInfoPoints l exactP assoc pts1 <- case mprec of Nothing -> return pts Just prec -> case pts of p:pts' -> do printStringAt (pos p) (show prec) return pts' _ -> errorEP "ExactP: Decl: InfixDecl is given too few srcInfoPoints" printInterleaved' (zip pts1 (repeat ",")) ops DefaultDecl l ts -> case srcInfoPoints l of _:pts -> do printString "default" printInterleaved (zip (init pts) ("(":repeat ",")) ts printStringAt (pos (last pts)) ")" _ -> errorEP "ExactP: Decl: DefaultDecl is given too few srcInfoPoints" SpliceDecl _ spl -> exactP spl TypeSig l ns t -> do let pts = srcInfoPoints l printInterleaved' (zip pts (replicate (length pts - 1) "," ++ ["::"])) ns exactPC t PatSynSig l n dh c1 c2 t -> do case srcInfoPoints l of (pat:dc:pts1) -> do printStringAt (pos pat) "pattern" exactPC n printStringAt (pos dc) "::" case dh of Nothing -> return () Just tvs -> case pts1 of (a:b:_) -> do printStringAt (pos a) "forall" mapM_ exactPC tvs printStringAt (pos b) "." _ -> errorEP "ExactP: Decl: PatSynSig: Forall: is given too few srcInfoPoints" maybeEP exactPC c1 maybeEP exactPC c2 exactPC t _ -> errorEP "ExactP: Decl: PatSynSig: is given too few srcInfoPoints" FunBind _ ms -> mapM_ exactPC ms PatBind l p rhs mbs -> do let pts = srcInfoPoints l exactP p exactPC rhs maybeEP (\bs -> printStringAt (pos (head pts)) "where" >> exactPC bs) mbs PatSyn l lhs rhs dir -> case srcInfoPoints l of [pat,sepPos] -> do let sep = case dir of ImplicitBidirectional -> "=" ExplicitBidirectional _ _ -> "<-" Unidirectional -> "<-" printStringAt (pos pat) "pattern" exactPC lhs printStringAt (pos sepPos) sep exactPC rhs case dir of ExplicitBidirectional bl ds -> do case srcInfoPoints bl of (w:pts) -> do printStringAt (pos w) "where" layoutList pts ds _ -> errorEP "ExactP: Decl: PaySyn: ExplicitBidirectional is given too few srcInfoPoints" _ -> return () _ -> errorEP "ExactP: Decl: PatSyn is given too few srcInfoPoints" ForImp l cc msf mstr n t -> case srcInfoPoints l of _:b:pts -> do printString "foreign" printStringAt (pos b) "import" exactPC cc maybeEP exactPC msf pts1 <- case mstr of Nothing -> return pts Just str -> case pts of x:pts' -> do printStringAt (pos x) (show str) return pts' _ -> errorEP "ExactP: Decl: ForImp is given too few srcInfoPoints" case pts1 of y:_ -> do exactPC n printStringAt (pos y) "::" exactPC t _ -> errorEP "ExactP: Decl: ForImp is given too few srcInfoPoints" _ -> errorEP "ExactP: Decl: ForImp is given too few srcInfoPoints" ForExp l cc mstr n t -> case srcInfoPoints l of _:b:pts -> do printString "foreign" printStringAt (pos b) "export" exactPC cc pts1 <- case mstr of Nothing -> return pts Just str -> case pts of x:pts' -> do printStringAt (pos x) (show str) return pts' _ -> errorEP "ExactP: Decl: ForExp is given too few srcInfoPoints" case pts1 of y:_ -> do exactPC n printStringAt (pos y) "::" exactPC t _ -> errorEP "ExactP: Decl: ForExp is given too few srcInfoPoints" _ -> errorEP "ExactP: Decl: ForExp is given too few srcInfoPoints" RulePragmaDecl l rs -> case srcInfoPoints l of [_,b] -> do printString "{-# RULES" mapM_ exactPC rs printStringAt (pos b) "#-}" _ -> errorEP "ExactP: Decl: RulePragmaDecl is given too few srcInfoPoints" DeprPragmaDecl l nstrs -> case srcInfoPoints l of _:pts -> do printString "{-# DEPRECATED" printWarndeprs (map pos (init pts)) nstrs printStringAt (pos (last pts)) "#-}" _ -> errorEP "ExactP: Decl: DeprPragmaDecl is given too few srcInfoPoints" WarnPragmaDecl l nstrs -> case srcInfoPoints l of _:pts -> do printString "{-# WARNING" printWarndeprs (map pos (init pts)) nstrs printStringAt (pos (last pts)) "#-}" _ -> errorEP "ExactP: Decl: WarnPragmaDecl is given too few srcInfoPoints" InlineSig l inl mact qn -> case srcInfoPoints l of [_,b] -> do printString $ if inl then "{-# INLINE" else "{-# NOINLINE" maybeEP exactPC mact exactPC qn printStringAt (pos b) "#-}" _ -> errorEP "ExactP: Decl: InlineSig is given wrong number of srcInfoPoints" InlineConlikeSig l mact qn -> case srcInfoPoints l of [_,b] -> do printString "{-# INLINE CONLIKE" maybeEP exactPC mact exactPC qn printStringAt (pos b) "#-}" _ -> errorEP "ExactP: Decl: InlineConlikeSig is given wrong number of srcInfoPoints" SpecSig l mact qn ts -> case srcInfoPoints l of _:pts -> do printString "{-# SPECIALISE" maybeEP exactPC mact exactPC qn printInterleaved (zip pts ("::" : replicate (length pts - 2) "," ++ ["#-}"])) ts _ -> errorEP "ExactP: Decl: SpecSig is given too few srcInfoPoints" SpecInlineSig l b mact qn ts -> case srcInfoPoints l of _:pts -> do printString $ "{-# SPECIALISE " ++ if b then "INLINE" else "NOINLINE" maybeEP exactPC mact exactPC qn printInterleaved (zip pts ("::" : replicate (length pts - 2) "," ++ ["#-}"])) ts _ -> errorEP "ExactP: Decl: SpecInlineSig is given too few srcInfoPoints" InstSig l ih -> case srcInfoPoints l of [_,b,c] -> do printString "{-# SPECIALISE" printStringAt (pos b) "instance" exactPC ih printStringAt (pos c) "#-}" _ -> errorEP "ExactP: Decl: InstSig is given wrong number of srcInfoPoints" AnnPragma l ann' -> case srcInfoPoints l of [_,b] -> do printString "{-# ANN" exactPC ann' printStringAt (pos b) "#-}" _ -> errorEP "ExactP: Decl: AnnPragma is given wrong number of srcInfoPoints" MinimalPragma l b -> case srcInfoPoints l of [_,b'] -> do printString "{-# MINIMAL" maybeEP exactPC b printStringAt (pos b') "#-}" _ -> errorEP "ExactP: Decl: MinimalPragma is given wrong number of srcInfoPoints" RoleAnnotDecl l ty roles -> case srcInfoPoints l of (t:r:_) -> do printStringAt (pos t) "type" printStringAt (pos r) "role" exactPC ty mapM_ exactPC roles _ -> errorEP "ExactP: Decl: RoleAnnotDecl is given wrong number of srcInfoPoints" instance ExactP Role where exactP r = case r of RoleWildcard l -> printStringAt (pos l) "_" Representational l -> printStringAt (pos l) "representational" Phantom l -> printStringAt (pos l) "phantom" Nominal l -> printStringAt (pos l) "nominal" instance ExactP Annotation where exactP ann' = case ann' of Ann _ n e -> do exactP n exactPC e TypeAnn _ n e -> do printString "type" exactPC n exactPC e ModuleAnn _ e -> do printString "module" exactPC e instance ExactP BooleanFormula where exactP b' = case b' of VarFormula _ n -> exactPC n AndFormula l bs -> let pts = srcInfoPoints l in printStreams (zip (map pos pts) (repeat $ printString ",")) (map (pos . ann &&& exactPC) bs) OrFormula l bs -> let pts = srcInfoPoints l in printStreams (zip (map pos pts) (repeat $ printString "|")) (map (pos . ann &&& exactPC) bs) ParenFormula l b -> case srcInfoPoints l of [a'',b''] -> printStringAt (pos a'') "(" >> exactPC b >> printStringAt (pos b'') ")" _ -> errorEP "ExactP: BooleanFormula: ParenFormula is given wrong number of srcInfoPoints" printWarndeprs :: [Pos] -> [([Name SrcSpanInfo], String)] -> EP () printWarndeprs _ [] = return () printWarndeprs ps' ((ns',str'):nsts') = printWd ps' ns' str' nsts' where printWd :: [Pos] -> [Name SrcSpanInfo] -> String -> [([Name SrcSpanInfo], String)] -> EP () printWd (p:ps) [] str nsts = printStringAt p (show str) >> printWarndeprs ps nsts printWd ps [n] str nsts = exactPC n >> printWd ps [] str nsts printWd (p:ps) (n:ns) str nsts = exactPC n >> printStringAt p "," >> printWd ps ns str nsts printWd _ _ _ _ = internalError "printWd" sepFunBinds :: [Decl SrcSpanInfo] -> [Decl SrcSpanInfo] sepFunBinds [] = [] sepFunBinds (FunBind _ ms:ds) = map (\m -> FunBind (ann m) [m]) ms ++ sepFunBinds ds sepFunBinds (d:ds) = d : sepFunBinds ds sepClassFunBinds :: [ClassDecl SrcSpanInfo] -> [ClassDecl SrcSpanInfo] sepClassFunBinds [] = [] sepClassFunBinds (ClsDecl _ (FunBind _ ms):ds) = map (\m -> ClsDecl (ann m) $ FunBind (ann m) [m]) ms ++ sepClassFunBinds ds sepClassFunBinds (d:ds) = d : sepClassFunBinds ds sepInstFunBinds :: [InstDecl SrcSpanInfo] -> [InstDecl SrcSpanInfo] sepInstFunBinds [] = [] sepInstFunBinds (InsDecl _ (FunBind _ ms):ds) = map (\m -> InsDecl (ann m) $ FunBind (ann m) [m]) ms ++ sepInstFunBinds ds sepInstFunBinds (d:ds) = d : sepInstFunBinds ds instance ExactP DeclHead where exactP dh' = case dh' of DHead _ n -> exactP n DHInfix _ tva n -> exactP tva >> epInfixName n DHParen l dh -> case srcInfoPoints l of [_,b] -> printString "(" >> exactPC dh >> printStringAt (pos b) ")" _ -> errorEP "ExactP: DeclHead: DeclParen is given wrong number of srcInfoPoints" DHApp _ dh t -> exactP dh >> exactPC t instance ExactP InstRule where exactP ih' = case ih' of IRule l mtvs mctxt qn -> do let pts = srcInfoPoints l _ <- case mtvs of Nothing -> return pts Just tvs -> case pts of [a,b] -> do printStringAt (pos a) "forall" mapM_ exactPC tvs printStringAt (pos b) "." return pts _ -> errorEP "ExactP: InstRule: IRule is given too few srcInfoPoints" maybeEP exactPC mctxt exactPC qn IParen l ih -> case srcInfoPoints l of [a,b] -> printStringAt (pos a) "(" >> exactPC ih >> printStringAt (pos b) ")" _ -> errorEP "ExactP: InstRule: IParen is given wrong number of srcInfoPoints" instance ExactP InstHead where exactP doih' = case doih' of IHCon _ qn -> exactPC qn IHInfix _ ta qn -> exactPC ta >> epInfixQName qn IHParen l doih -> case srcInfoPoints l of [a,b] -> printStringAt (pos a) "(" >> exactPC doih >> printStringAt (pos b) ")" _ -> errorEP "ExactP: OrInstHead: IHParen is given wrong number of srcInfoPoints" IHApp _ doih t -> exactPC doih >> exactPC t instance ExactP TyVarBind where exactP (KindedVar l n k) = case srcInfoPoints l of [_,b,c] -> do printString "(" exactPC n printStringAt (pos b) "::" exactPC k printStringAt (pos c) ")" _ -> errorEP "ExactP: TyVarBind: KindedVar is given wrong number of srcInfoPoints" exactP (UnkindedVar l n) = case srcInfoPoints l of [a,_,c] -> do printStringAt (pos a) "(" exactPC n printStringAt (pos c) ")" [] -> exactPC n _ -> errorEP "ExactP: TyVarBind: UnkindedVar is given wrong number of srcInfoPoints" instance ExactP Kind where exactP kd' = case kd' of KindStar _ -> printString "*" KindFn l k1 k2 -> case srcInfoPoints l of [a] -> do exactP k1 printStringAt (pos a) "->" exactPC k2 _ -> errorEP "ExactP: Kind: KindFn is given wrong number of srcInfoPoints" KindParen l kd -> case srcInfoPoints l of [_,b] -> do printString "(" exactPC kd printStringAt (pos b) ")" _ -> errorEP "ExactP: Kind: KindParen is given wrong number of srcInfoPoints" KindVar _ n -> epQName n KindApp _ k1 k2 -> do exactP k1 exactPC k2 KindTuple l ks -> let o = "(" e = ")" pts = srcInfoPoints l in printInterleaved (zip pts (o: replicate (length pts - 2) "," ++ [e])) ks KindList l k -> case srcInfoPoints l of [_, close] -> do printString "[" exactPC k printStringAt (pos close) "]" _ -> errorEP "ExactP: Kind: KindList is given wrong number of srcInfoPoints" instance ExactP Type where exactP t' = case t' of TyForall l mtvs mctxt t -> do let pts = srcInfoPoints l _ <- case mtvs of Nothing -> return pts Just tvs -> case pts of _:b:pts' -> do printString "forall" mapM_ exactPC tvs printStringAt (pos b) "." return pts' _ -> errorEP "ExactP: Type: TyForall is given too few srcInfoPoints" maybeEP exactPC mctxt exactPC t TyFun l t1 t2 -> case srcInfoPoints l of [a] -> do exactP t1 printStringAt (pos a) "->" exactPC t2 _ -> errorEP "ExactP: Type: TyFun is given wrong number of srcInfoPoints" TyTuple l bx ts -> case bx of Boxed -> parenList (srcInfoPoints l) ts Unboxed -> parenHashList (srcInfoPoints l) ts TyList l t -> case srcInfoPoints l of [_,b] -> do printString "[" exactPC t printStringAt (pos b) "]" _ -> errorEP "ExactP: Type: TyList is given wrong number of srcInfoPoints" TyParArray l t -> case srcInfoPoints l of [_,b] -> do printString "[:" exactPC t printStringAt (pos b) ":]" _ -> errorEP "ExactP: Type: TyParArray is given wrong number of srcInfoPoints" TyApp _ t1 t2 -> exactP t1 >> exactPC t2 TyVar _ n -> exactP n TyCon _ qn -> exactP qn TyParen l t -> case srcInfoPoints l of [_,b] -> do printString "(" exactPC t printStringAt (pos b) ")" _ -> errorEP "ExactP: Type: TyParen is given wrong number of srcInfoPoints" TyInfix _ t1 qn t2 -> exactP t1 >> epInfixQName qn >> exactPC t2 TyKind l t kd -> case srcInfoPoints l of [_,b,c] -> do printString "(" exactPC t printStringAt (pos b) "::" exactPC kd printStringAt (pos c) ")" _ -> errorEP "ExactP: Type: TyKind is given wrong number of srcInfoPoints" TyPromoted _ p -> exactPC p TyEquals l t0 t1 -> case srcInfoPoints l of a:_ -> exactPC t0 >> printStringAt (pos a) "~" >> exactPC t1 _ -> errorEP "ExactP: Type: TyEquals is given wrong number of srcInfoPoints" TySplice _ sp -> exactP sp TyBang _ b u t -> exactPC u >> exactPC b >> exactPC t TyWildCard _ mn -> printString "_" >> maybeEP exactPC mn TyQuasiQuote _ name qt -> do let qtLines = lines qt printString $ "[" ++ name ++ "|" sequence_ (intersperse newLine $ map printString qtLines) printString "|]" instance ExactP Promoted where exactP (PromotedInteger _ _ rw) = printString rw exactP (PromotedString _ _ rw) = printString ('\"':rw ++ "\"") exactP (PromotedCon l True qn) = case srcInfoPoints l of [a] -> printStringAt (pos a) "'" >> epQName qn _ -> errorEP "ExactP: Promoted: PromotedCon is given wrong number of srcInfoPoints" exactP (PromotedCon _ False qn) = epQName qn exactP (PromotedList l b pl) = let o | b = "'[" | otherwise = "[" e = "]" pts = srcInfoPoints l in printInterleaved (zip pts (o: replicate (length pts - 2) "," ++ [e])) pl exactP (PromotedTuple l pl) = let o = "'(" e = ")" pts = srcInfoPoints l in printInterleaved (zip pts (o: replicate (length pts - 2) "," ++ [e])) pl exactP (PromotedUnit l) = case srcInfoPoints l of [_,b] -> do printString "(" printStringAt (pos b) ")" _ -> errorEP "ExactP: Promoted: PromotedUnit is given wrong number of srcInfoPoints" instance ExactP Context where exactP ctxt = do printContext ctxt printStringAt (pos . last . srcInfoPoints . ann $ ctxt) "=>" printContext :: Context SrcSpanInfo -> EP () printContext ctxt = do let l = ann ctxt pts = init $ srcInfoPoints l case ctxt of CxSingle _ asst -> exactP asst CxEmpty _ -> case pts of [a,b] -> do printStringAt (pos a) "(" printStringAt (pos b) ")" _ -> errorEP "ExactP: Context: CxEmpty is given wrong number of srcInfoPoints" CxTuple _ assts -> parenList pts assts instance ExactP Asst where exactP asst = case asst of ClassA _ qn ts -> exactP qn >> mapM_ exactPC ts AppA _ n ns -> exactPC n >> mapM_ exactPC ns InfixA _ ta qn tb -> exactP ta >> epInfixQName qn >> exactPC tb IParam l ipn t -> case srcInfoPoints l of [a] -> do exactP ipn printStringAt (pos a) "::" exactPC t _ -> errorEP "ExactP: Asst: IParam is given wrong number of srcInfoPoints" EqualP l t1 t2 -> case srcInfoPoints l of [a] -> do exactP t1 printStringAt (pos a) "~" exactPC t2 _ -> internalError "Asst -> EqualP" ParenA l asst' -> case take 2 $ srcInfoPoints l of [a,b] -> do printStringAt (pos a) "(" exactPC asst' printStringAt (pos b) ")" _ -> errorEP "ExactP: Asst: ParenA is given wrong number of srcInfoPoints" WildCardA _ mn -> printString "_" >> maybeEP exactPC mn instance ExactP Deriving where exactP (Deriving l ihs) = case srcInfoPoints l of _:pts -> do printString "deriving" case pts of [] -> exactPC $ head ihs _ -> parenList pts ihs _ -> errorEP "ExactP: Deriving is given too few srcInfoPoints" instance ExactP ClassDecl where exactP cdecl = case cdecl of ClsDecl _ d -> exactP d ClsDataFam l mctxt dh mk -> case srcInfoPoints l of _:pts -> do printString "data" maybeEP exactPC mctxt exactPC dh maybeEP (\kd -> printStringAt (pos (head pts)) "::" >> exactPC kd) mk _ -> errorEP "ExactP: ClassDecl: ClsDataFam is given too few srcInfoPoints" ClsTyFam l dh mk mi -> case srcInfoPoints l of _:_ -> do printString "type" exactPC dh maybeEP exactPC mk maybeEP exactPC mi _ -> errorEP "ExactP: ClassDecl: ClsTyFam is given too few srcInfoPoints" ClsTyDef l t1 -> case srcInfoPoints l of _:b:_ -> do -- 3 sourceInfoPoints implies parsed as "type instance" printString "type" printStringAt (pos b) "instance" exactPC t1 _:_ -> do printString "type" exactPC t1 _ -> errorEP "ExactP: ClassDecl: ClsTyDef is given too few srcInfoPoints" ClsDefSig l n t -> case srcInfoPoints l of _:b:_ -> do printString "default" exactPC n printStringAt (pos b) "::" exactPC t _ -> errorEP "ExactP: ClassDecl: ClsDefSig is given too few srcInfoPoints" instance ExactP InstDecl where exactP idecl = case idecl of InsDecl _ d -> exactP d InsType l t1 t2 -> case srcInfoPoints l of [_,b] -> do printString "type" exactPC t1 printStringAt (pos b) "=" exactPC t2 _ -> internalError "InstDecl -> InsType" InsData l dn t constrs mder -> do exactP dn exactPC t printInterleaved (zip (srcInfoPoints l) ("=": repeat "|")) constrs maybeEP exactPC mder InsGData l dn t mk gds mder -> do let pts = srcInfoPoints l exactP dn exactPC t pts1 <- case mk of Nothing -> return pts Just kd -> case pts of p:pts' -> do printStringAt (pos p) "::" exactPC kd return pts' _ -> errorEP "ExactP: InstDecl: InsGData is given too few srcInfoPoints" case pts1 of x:_ -> do printStringAt (pos x) "where" mapM_ exactPC gds maybeEP exactPC mder _ -> errorEP "ExactP: InstDecl: InsGData is given too few srcInfoPoints" -- InsInline l inl mact qn -> do -- case srcInfoPoints l of -- [a,b] -> do -- printString $ if inl then "{-# INLINE" else "{-# NOINLINE" -- maybeEP exactPC mact -- exactPC qn -- printStringAt (pos b) "#-}" -- _ -> errorEP "ExactP: InstDecl: InsInline is given wrong number of srcInfoPoints" instance ExactP FunDep where exactP (FunDep l nxs nys) = case srcInfoPoints l of [a] -> do mapM_ exactPC nxs printStringAt (pos a) "->" mapM_ exactPC nys _ -> errorEP "ExactP: FunDep is given wrong number of srcInfoPoints" instance ExactP QualConDecl where exactP (QualConDecl l mtvs mctxt cd) = do let pts = srcInfoPoints l _ <- case mtvs of Nothing -> return pts Just tvs -> case pts of _:b:pts' -> do printString "forall" mapM_ exactPC tvs printStringAt (pos b) "." return pts' _ -> errorEP "ExactP: QualConDecl is given wrong number of srcInfoPoints" maybeEP exactPC mctxt exactPC cd instance ExactP ConDecl where exactP cd = case cd of ConDecl _ n bts -> exactP n >> mapM_ exactPC bts InfixConDecl _ bta n btb -> exactP bta >> epInfixName n >> exactP btb RecDecl l n fds -> exactP n >> curlyList (srcInfoPoints l) fds instance ExactP GadtDecl where exactP (GadtDecl l n ns' t) = case ns' of Nothing -> case srcInfoPoints l of [a] -> do exactP n printStringAt (pos a) "::" exactPC t _ -> errorEP "ExactP: GadtDecl is given wrong number of srcInfoPoints" Just ts -> case srcInfoPoints l of (a:b:c:d:rest) -> do exactPC n printStringAt (pos a) "::" printStringAt (pos b) "{" printInterleaved' (zip rest (repeat ",")) ts printStringAt (pos c) "}" printStringAt (pos d) "->" exactPC t _ -> errorEP "ExactP: GadtDecl is given wrong number of srcInfoPoints" instance ExactP BangType where exactP bt = case bt of BangedTy l -> printStringAt (pos l) "!" LazyTy l -> printStringAt (pos l) "~" _ -> return () instance ExactP Unpackedness where exactP bt = case bt of Unpack l -> case srcInfoPoints l of [a,b] -> do printStringAt (pos a) "{-# UNPACK" printStringAt (pos b) "#-}" _ -> errorEP "ExactP: Unpackedness: Unpack is given wrong number of srcInfoPoints" NoUnpack l -> case srcInfoPoints l of [a,b] -> do printStringAt (pos a) "{-# NOUNPACK" printStringAt (pos b) "#-}" _ -> errorEP "ExactP: Unpackedness: NoUnpack is given wrong number of srcInfoPoints" NoUnpackPragma {} -> return () instance ExactP Splice where exactP (IdSplice _ str) = printString $ '$':str exactP (ParenSplice l e) = case srcInfoPoints l of [_,b] -> do printString "$(" exactPC e printStringAt (pos b) ")" _ -> errorEP "ExactP: Splice: ParenSplice is given wrong number of srcInfoPoints" instance ExactP Exp where exactP exp = case exp of Var _ qn -> exactP qn OverloadedLabel _ qn -> printString ('#':qn) IPVar _ ipn -> exactP ipn Con _ qn -> exactP qn Lit _ lit -> exactP lit InfixApp _ e1 op e2 -> exactP e1 >> exactPC op >> exactPC e2 App _ e1 e2 -> exactP e1 >> exactPC e2 NegApp _ e -> printString "-" >> exactPC e Lambda l ps e -> case srcInfoPoints l of [_,b] -> do printString "\\" mapM_ exactPC ps printStringAt (pos b) "->" exactPC e _ -> errorEP "ExactP: Exp: Lambda is given wrong number of srcInfoPoints" Let l bs e -> case srcInfoPoints l of [_,b] -> do printString "let" exactPC bs printStringAt (pos b) "in" exactPC e _ -> errorEP "ExactP: Exp: Let is given wrong number of srcInfoPoints" If l ec et ee -> -- traceShow (srcInfoPoints l) $ do -- First we need to sort out if there are any optional -- semicolons hiding among the srcInfoPoints. case srcInfoPoints l of (_:b:c:rest) -> do let (mpSemi1,pThen,rest2) = if snd (spanSize b) == 4 -- this is "then", not a semi then (Nothing, b, c:rest) else (Just b, c, rest) case rest2 of (c':rest3) -> do let (mpSemi2,rest4) = if snd (spanSize c') == 4 -- this is "else", not a semi then (Nothing, rest2) else (Just c', rest3) case rest4 of [pElse] -> do -- real work starts here: printString "if" exactPC ec maybeEP printSemi mpSemi1 printStringAt (pos pThen) "then" exactPC et maybeEP printSemi mpSemi2 printStringAt (pos pElse) "else" exactPC ee [] -> errorEP "ExactP: Exp: If is given too few srcInfoPoints" _ -> errorEP "ExactP: Exp: If is given too many srcInfoPoints" _ -> errorEP "ExactP: Exp: If is given too few srcInfoPoints" _ -> errorEP "ExactP: Exp: If is given too few srcInfoPoints" MultiIf l alts -> case srcInfoPoints l of _:pts -> do printString "if" layoutList pts (map GuardedAlt alts) _ -> internalError "Exp -> MultiIf" Case l e alts -> case srcInfoPoints l of _:b:pts -> do printString "case" exactPC e printStringAt (pos b) "of" layoutList pts alts _ -> errorEP "ExactP: Exp: Case is given too few srcInfoPoints" Do l stmts -> case srcInfoPoints l of _:pts -> do printString "do" layoutList pts stmts _ -> errorEP "ExactP: Exp: Do is given too few srcInfoPoints" MDo l stmts -> case srcInfoPoints l of _:pts -> do printString "mdo" layoutList pts stmts _ -> errorEP "ExactP: Exp: Mdo is given wrong number of srcInfoPoints" Tuple l bx es -> case bx of Boxed -> parenList (srcInfoPoints l) es Unboxed -> parenHashList (srcInfoPoints l) es TupleSection l bx mexps -> do let pts = srcInfoPoints l (o, e) = case bx of Boxed -> ("(", ")"); Unboxed -> ("(#", "#)") printSeq $ interleave (zip (map pos $ init pts) (map printString (o: repeat ",")) ++ [(pos $ last pts, printString e)]) (map (maybe (0,0) (pos . ann) &&& maybeEP exactPC) mexps) List l es -> squareList (srcInfoPoints l) es ParArray l es -> squareColonList (srcInfoPoints l) es Paren l p -> parenList (srcInfoPoints l) [p] LeftSection l e qop -> case srcInfoPoints l of [_,b] -> do printString "(" exactPC e exactPC qop printStringAt (pos b) ")" _ -> errorEP "ExactP: Exp: LeftSection is given wrong number of srcInfoPoints" RightSection l qop e -> case srcInfoPoints l of [_,b] -> do printString "(" exactPC qop exactPC e printStringAt (pos b) ")" _ -> errorEP "ExactP: Exp: RightSection is given wrong number of srcInfoPoints" RecConstr l qn fups -> do let pts = srcInfoPoints l exactP qn curlyList pts fups RecUpdate l e fups -> do let pts = srcInfoPoints l exactP e curlyList pts fups EnumFrom l e -> case srcInfoPoints l of [_,b,c] -> do printString "[" exactPC e printStringAt (pos b) ".." printStringAt (pos c) "]" _ -> errorEP "ExactP: Exp: EnumFrom is given wrong number of srcInfoPoints" EnumFromTo l e1 e2 -> case srcInfoPoints l of [_,b,c] -> do printString "[" exactPC e1 printStringAt (pos b) ".." exactPC e2 printStringAt (pos c) "]" _ -> errorEP "ExactP: Exp: EnumFromTo is given wrong number of srcInfoPoints" EnumFromThen l e1 e2 -> case srcInfoPoints l of [_,b,c,d] -> do printString "[" exactPC e1 printStringAt (pos b) "," exactPC e2 printStringAt (pos c) ".." printStringAt (pos d) "]" _ -> errorEP "ExactP: Exp: EnumFromThen is given wrong number of srcInfoPoints" EnumFromThenTo l e1 e2 e3 -> case srcInfoPoints l of [_,b,c,d] -> do printString "[" exactPC e1 printStringAt (pos b) "," exactPC e2 printStringAt (pos c) ".." exactPC e3 printStringAt (pos d) "]" _ -> errorEP "ExactP: Exp: EnumFromToThen is given wrong number of srcInfoPoints" ParArrayFromTo l e1 e2 -> case srcInfoPoints l of [_,b,c] -> do printString "[:" exactPC e1 printStringAt (pos b) ".." exactPC e2 printStringAt (pos c) ":]" _ -> errorEP "ExactP: Exp: ParArrayFromTo is given wrong number of srcInfoPoints" ParArrayFromThenTo l e1 e2 e3 -> case srcInfoPoints l of [_,b,c,d] -> do printString "[:" exactPC e1 printStringAt (pos b) "," exactPC e2 printStringAt (pos c) ".." exactPC e3 printStringAt (pos d) ":]" _ -> errorEP "ExactP: Exp: ParArrayFromToThen is given wrong number of srcInfoPoints" ListComp l e qss -> case srcInfoPoints l of _:pts -> do printString "[" exactPC e bracketList ("|",",","]") pts qss _ -> errorEP "ExactP: Exp: ListComp is given too few srcInfoPoints" ParComp l e qsss -> case srcInfoPoints l of _:pts -> do let (strs, qss) = unzip $ pairUp qsss printString "[" exactPC e printInterleaved (zip pts (strs ++ ["]"])) qss _ -> errorEP "ExactP: Exp: ParComp is given wrong number of srcInfoPoints" where pairUp [] = [] pairUp ((a:as):xs) = ("|", a) : zip (repeat ",") as ++ pairUp xs pairUp _ = internalError "Exp -> ParComp -> pairUp" ParArrayComp l e qsss -> case srcInfoPoints l of _:pts -> do let (strs, qss) = unzip $ pairUp qsss printString "[:" exactPC e printInterleaved (zip pts (strs ++ [":]"])) qss _ -> errorEP "ExactP: Exp: ParArrayComp is given wrong number of srcInfoPoints" where pairUp [] = [] pairUp ((a:as):xs) = ("|", a) : zip (repeat "|") as ++ pairUp xs pairUp _ = internalError "Exp -> ParArrayComp -> pairUp" ExpTypeSig l e t -> case srcInfoPoints l of [a] -> do exactP e printStringAt (pos a) "::" exactPC t _ -> errorEP "ExactP: Exp: ExpTypeSig is given wrong number of srcInfoPoints" VarQuote _ qn -> do printString "'" exactPC qn TypQuote _ qn -> do printString "''" exactPC qn BracketExp _ br -> exactP br SpliceExp _ sp -> exactP sp QuasiQuote _ name qt -> do let qtLines = lines qt printString $ "[" ++ name ++ "|" sequence_ (intersperse newLine $ map printString qtLines) printString "|]" XTag l xn attrs mat es -> case srcInfoPoints l of [_,b,c,d,e] -> do printString "<" exactPC xn mapM_ exactPC attrs maybeEP exactPC mat printStringAt (pos b) ">" mapM_ exactPC es printStringAt (pos c) "" -- TODO: Fugly hack/duplication, should be refactored -- For the case when there's an optional semicolon [_,b,semi,c,d,e] -> do printString "<" exactPC xn mapM_ exactPC attrs maybeEP exactPC mat printStringAt (pos b) ">" mapM_ exactPC es printSemi semi printStringAt (pos c) "" _ -> errorEP "ExactP: Exp: XTag is given wrong number of srcInfoPoints" XETag l xn attrs mat -> case srcInfoPoints l of [_,b] -> do printString "<" exactPC xn mapM_ exactPC attrs maybeEP exactPC mat printStringAt (pos b) "/>" _ -> errorEP "ExactP: Exp: XETag is given wrong number of srcInfoPoints" XPcdata _ str -> do let strLines = lines str sequence_ (intersperse newLine $ map printString strLines) XExpTag l e -> case srcInfoPoints l of [_,b] -> do printString "<%" exactPC e printStringAt (pos b) "%>" _ -> errorEP "ExactP: Exp: XExpTag is given wrong number of srcInfoPoints" XChildTag l es -> case srcInfoPoints l of [_,b,c] -> do printString "<%>" mapM_ exactPC es printStringAt (pos b) "" -- Ugly duplication for when there's an optional semi [_,semi,b,c] -> do printString "<%>" mapM_ exactPC es printSemi semi printStringAt (pos b) "" _ -> errorEP "ExactP: Exp: XChildTag is given wrong number of srcInfoPoints" CorePragma l str e -> case srcInfoPoints l of [_,b] -> do printString $ "{-# CORE " ++ show str printStringAt (pos b) "#-}" exactPC e _ -> errorEP "ExactP: Exp: CorePragma is given wrong number of srcInfoPoints" SCCPragma l str e -> case srcInfoPoints l of [_,b] -> do printString $ "{-# SCC " ++ show str printStringAt (pos b) "#-}" exactPC e _ -> errorEP "ExactP: Exp: SCCPragma is given wrong number of srcInfoPoints" GenPragma l str (i1,i2) (i3,i4) e -> do printStrs $ zip (srcInfoPoints l) ["{-# GENERATED", show str, show i1, ":", show i2, "-", show i3, ":", show i4, "#-}"] exactPC e Proc l p e -> case srcInfoPoints l of [_,b] -> do printString "proc" exactPC p printStringAt (pos b) "->" exactPC e _ -> errorEP "ExactP: Exp: Proc is given wrong number of srcInfoPoints" LeftArrApp l e1 e2 -> case srcInfoPoints l of [a] -> do exactP e1 printStringAt (pos a) "-<" exactPC e2 _ -> errorEP "ExactP: Exp: LeftArrApp is given wrong number of srcInfoPoints" RightArrApp l e1 e2 -> case srcInfoPoints l of [a] -> do exactP e1 printStringAt (pos a) ">-" exactPC e2 _ -> errorEP "ExactP: Exp: RightArrApp is given wrong number of srcInfoPoints" LeftArrHighApp l e1 e2 -> case srcInfoPoints l of [a] -> do exactP e1 printStringAt (pos a) "-<<" exactPC e2 _ -> errorEP "ExactP: Exp: LeftArrHighApp is given wrong number of srcInfoPoints" RightArrHighApp l e1 e2 -> case srcInfoPoints l of [a] -> do exactP e1 printStringAt (pos a) ">>-" exactPC e2 _ -> errorEP "ExactP: Exp: RightArrHighApp is given wrong number of srcInfoPoints" LCase l alts -> case srcInfoPoints l of _:b:pts -> do printString "\\" printStringAt (pos b) "case" layoutList pts alts _ -> errorEP "ExactP: Exp: LCase is given wrong number of srcInfoPoints" ExprHole _ -> printString "_" TypeApp _ ty -> printString "@" >> exactP ty instance ExactP FieldUpdate where exactP fup = case fup of FieldUpdate l qn e -> case srcInfoPoints l of [a] -> do exactP qn printStringAt (pos a) "=" exactPC e _ -> errorEP "ExactP: FieldUpdate is given wrong number of srcInfoPoints" FieldPun _ n -> exactP n FieldWildcard _ -> printString ".." instance ExactP Stmt where exactP stmt = case stmt of Generator l p e -> case srcInfoPoints l of [a] -> do exactP p printStringAt (pos a) "<-" exactPC e _ -> errorEP "ExactP: Stmt: Generator is given wrong number of srcInfoPoints" Qualifier _ e -> exactP e LetStmt _ bds -> do printString "let" exactPC bds RecStmt l ss -> case srcInfoPoints l of _:pts -> do printString "rec" layoutList pts ss _ -> errorEP "ExactP: Stmt: RecStmt is given too few srcInfoPoints" instance ExactP QualStmt where exactP qstmt = case qstmt of QualStmt _ stmt -> exactP stmt ThenTrans _ e -> printString "then" >> exactPC e ThenBy l e1 e2 -> case srcInfoPoints l of [_,b] -> do printString "then" exactPC e1 printStringAt (pos b) "by" exactPC e2 _ -> errorEP "ExactP: QualStmt: ThenBy is given wrong number of srcInfoPoints" GroupBy l e -> do printStrs $ zip (srcInfoPoints l) ["then","group","by"] exactPC e GroupUsing l e -> do printStrs $ zip (srcInfoPoints l) ["then","group","using"] exactPC e GroupByUsing l e1 e2 -> do let pts = srcInfoPoints l printStrs $ zip (init pts) ["then","group","by"] exactPC e1 printStringAt (pos (last pts)) "using" exactPC e2 instance ExactP Bracket where exactP br = case br of ExpBracket l e -> case srcInfoPoints l of [_,b] -> do printString "[|" exactPC e printStringAt (pos b) "|]" _ -> errorEP "ExactP: Bracket: ExpBracket is given wrong number of srcInfoPoints" PatBracket l p -> case srcInfoPoints l of [_,b] -> do printString "[p|" exactPC p printStringAt (pos b) "|]" _ -> errorEP "ExactP: Bracket: PatBracket is given wrong number of srcInfoPoints" TypeBracket l t -> case srcInfoPoints l of [_,b] -> do printString "[t|" exactPC t printStringAt (pos b) "|]" _ -> errorEP "ExactP: Bracket: TypeBracket is given wrong number of srcInfoPoints" DeclBracket l ds -> case srcInfoPoints l of pts@(_:_) -> do printString "[d|" layoutList (init pts) (sepFunBinds ds) printStringAt (pos (last pts)) "|]" _ -> errorEP "ExactP: Bracket: DeclBracket is given too few srcInfoPoints" instance ExactP XAttr where exactP (XAttr l xn e) = case srcInfoPoints l of [a] -> do exactP xn printStringAt (pos a) "=" exactPC e _ -> errorEP "ExactP: XAttr is given wrong number of srcInfoPoints" instance ExactP Alt where exactP (Alt l p galts mbs) = do exactP p exactPC (GuardedAlts galts) maybeEP (\bs -> printStringAt (pos (head (srcInfoPoints l))) "where" >> exactPC bs) mbs instance ExactP Match where exactP (Match l n ps rhs mbinds) = do let pts = srcInfoPoints l len = length pts pars = len `div` 2 (oPars,cParsWh) = splitAt pars pts (cPars,_) = splitAt pars cParsWh -- _§ is either singleton or empty printStrs (zip oPars (repeat "(")) exactPC n printStreams (zip (map pos cPars) (repeat $ printString ")")) (map (pos . ann &&& exactPC) ps) exactPC rhs maybeEP (\bds -> printStringAt (pos (head pts)) "where" >> exactPC bds) mbinds exactP (InfixMatch l a n bs rhs mbinds) = do let pts = srcInfoPoints l len = length pts pars = len `div` 2 (oPars,cParsWh) = splitAt pars pts (cPars,whPt) = splitAt pars cParsWh -- whPt is either singleton or empty printStrs (zip oPars (repeat "(")) exactPC a epInfixName n printInterleaved' (zip cPars (repeat ")")) bs exactPC rhs maybeEP (\bds -> printStringAt (pos (head whPt)) "where" >> exactPC bds) mbinds instance ExactP Rhs where exactP (UnGuardedRhs _ e) = printString "=" >> exactPC e exactP (GuardedRhss _ grhss) = mapM_ exactPC grhss instance ExactP GuardedRhs where exactP (GuardedRhs l ss e) = case srcInfoPoints l of _:pts -> do printString "|" printInterleaved' (zip (init pts) (repeat ",") ++ [(last pts, "=")]) ss exactPC e _ -> errorEP "ExactP: GuardedRhs is given wrong number of srcInfoPoints" newtype GuardedAlts l = GuardedAlts (Rhs l) deriving (Functor, Show) instance Annotated GuardedAlts where amap f (GuardedAlts v) = GuardedAlts (amap f v) ann (GuardedAlts v) = ann v newtype GuardedAlt l = GuardedAlt (GuardedRhs l) deriving (Functor, Show) instance Annotated GuardedAlt where amap f (GuardedAlt v) = GuardedAlt (amap f v) ann (GuardedAlt v) = ann v instance ExactP GuardedAlts where exactP (GuardedAlts (UnGuardedRhs _ e)) = printString "->" >> exactPC e exactP (GuardedAlts (GuardedRhss _ grhss)) = mapM_ (exactPC . GuardedAlt) grhss instance ExactP GuardedAlt where exactP (GuardedAlt (GuardedRhs l ss e)) = case srcInfoPoints l of _:pts -> do printString "|" printInterleaved' (zip (init pts) (repeat ",") ++ [(last pts, "->")]) ss exactPC e _ -> errorEP "ExactP: GuardedAlt is given wrong number of srcInfoPoints" instance ExactP Pat where exactP pat = case pat of PVar l n -> exactPC (fmap (const l) n) PLit _ sg lit -> exactPC sg >> exactPC lit PNPlusK l n k -> case srcInfoPoints l of [a,b] -> do exactP n printStringAt (pos a) "+" printStringAt (pos b) (show k) _ -> errorEP "ExactP: Pat: PNPlusK is given wrong number of srcInfoPoints" PInfixApp _ pa qn pb -> exactP pa >> epInfixQName qn >> exactPC pb PApp _ qn ps -> exactP qn >> mapM_ exactPC ps PTuple l bx ps -> case bx of Boxed -> parenList (srcInfoPoints l) ps Unboxed -> parenHashList (srcInfoPoints l) ps PList l ps -> squareList (srcInfoPoints l) ps PParen l p -> parenList (srcInfoPoints l) [p] PRec l qn pfs -> exactP qn >> curlyList (srcInfoPoints l) pfs PAsPat l n p -> case srcInfoPoints l of [a] -> do exactP n printStringAt (pos a) "@" exactPC p _ -> errorEP "ExactP: Pat: PAsPat is given wrong number of srcInfoPoints" PWildCard _ -> printString "_" PIrrPat _ p -> printString "~" >> exactPC p PatTypeSig l p t -> case srcInfoPoints l of [a] -> do exactP p printStringAt (pos a) "::" exactPC t _ -> errorEP "ExactP: Pat: PatTypeSig is given wrong number of srcInfoPoints" PViewPat l e p -> case srcInfoPoints l of [a] -> do exactP e printStringAt (pos a) "->" exactPC p _ -> errorEP "ExactP: Pat: PViewPat is given wrong number of srcInfoPoints" PRPat l rps -> squareList (srcInfoPoints l) rps PXTag l xn attrs mat ps -> case srcInfoPoints l of [_,b,c,d,e] -> do printString "<" exactPC xn mapM_ exactPC attrs maybeEP exactPC mat printStringAt (pos b) ">" mapM_ exactPC ps printStringAt (pos c) "" -- Optional semi [_,b,semi,c,d,e] -> do printString "<" exactPC xn mapM_ exactPC attrs maybeEP exactPC mat printStringAt (pos b) ">" mapM_ exactPC ps printSemi semi printStringAt (pos c) "" _ -> errorEP "ExactP: Pat: PXTag is given wrong number of srcInfoPoints" PXETag l xn attrs mat -> case srcInfoPoints l of [_,b] -> do printString "<" exactPC xn mapM_ exactPC attrs maybeEP exactPC mat printStringAt (pos b) "/>" _ -> errorEP "ExactP: Pat: PXETag is given wrong number of srcInfoPoints" PXPcdata _ str -> printString str PXPatTag l p -> case srcInfoPoints l of [_,_] -> do printString "<%" exactPC p printString "%>" _ -> errorEP "ExactP: Pat: PXPatTag is given wrong number of srcInfoPoints" PXRPats l rps -> bracketList ("<[",",","]>") (srcInfoPoints l) rps PQuasiQuote _ name qt -> printString $ "[$" ++ name ++ "|" ++ qt ++ "]" PBangPat _ p -> printString "!" >> exactPC p instance ExactP PatField where exactP pf = case pf of PFieldPat l qn p -> case srcInfoPoints l of [a] -> do exactP qn printStringAt (pos a) "=" exactPC p _ -> errorEP "ExactP: PatField: PFieldPat is given wrong number of srcInfoPoints" PFieldPun _ n -> exactP n PFieldWildcard _ -> printString ".." instance ExactP RPat where exactP rpat = case rpat of RPOp _ rp op -> exactP rp >> exactPC op RPEither l r1 r2 -> case srcInfoPoints l of [a] -> do exactP r1 printStringAt (pos a) "|" exactPC r2 _ -> errorEP "ExactP: RPat: RPEither is given wrong number of srcInfoPoints" RPSeq l rps -> bracketList ("(|",",","|)") (srcInfoPoints l) rps RPGuard l p stmts -> case srcInfoPoints l of _:pts -> do printString "(|" exactPC p bracketList ("|",",","|)") pts stmts _ -> errorEP "ExactP: RPat: RPGuard is given wrong number of srcInfoPoints" RPCAs l n rp -> case srcInfoPoints l of [a] -> do exactP n printStringAt (pos a) "@:" exactPC rp _ -> errorEP "ExactP: RPat: RPCAs is given wrong number of srcInfoPoints" RPAs l n rp -> case srcInfoPoints l of [a] -> do exactP n printStringAt (pos a) "@" exactPC rp _ -> errorEP "ExactP: RPat: RPAs is given wrong number of srcInfoPoints" RPParen l rp -> parenList (srcInfoPoints l) [rp] RPPat _ p -> exactP p instance ExactP RPatOp where exactP rop = printString $ case rop of RPStar _ -> "*" RPStarG _ -> "*!" RPPlus _ -> "+" RPPlusG _ -> "+!" RPOpt _ -> "?" RPOptG _ -> "?!" instance ExactP PXAttr where exactP (PXAttr l xn p) = case srcInfoPoints l of [a] -> do exactP xn printStringAt (pos a) "=" exactPC p _ -> errorEP "ExactP: PXAttr is given wrong number of srcInfoPoints" instance ExactP XName where exactP xn = case xn of XName _ name -> printString name XDomName l dom name -> case srcInfoPoints l of [_,b,c] -> do printString dom printStringAt (pos b) ":" printStringAt (pos c) name _ -> errorEP "ExactP: XName: XDomName is given wrong number of srcInfoPoints" instance ExactP Binds where exactP (BDecls l ds) = layoutList (srcInfoPoints l) (sepFunBinds ds) exactP (IPBinds l ips) = layoutList (srcInfoPoints l) ips instance ExactP CallConv where exactP (StdCall _) = printString "stdcall" exactP (CCall _) = printString "ccall" exactP (CPlusPlus _) = printString "cplusplus" exactP (DotNet _) = printString "dotnet" exactP (Jvm _) = printString "jvm" exactP (Js _) = printString "js" exactP (JavaScript _) = printString "javascript" exactP (CApi _) = printString "capi" instance ExactP Safety where exactP (PlayRisky _) = printString "unsafe" exactP (PlaySafe _ b) = printString $ if b then "threadsafe" else "safe" exactP (PlayInterruptible _) = printString "interruptible" instance ExactP Rule where exactP (Rule l str mact mrvs e1 e2) = case srcInfoPoints l of _:pts -> do printString (show str) maybeEP exactP mact pts1 <- case mrvs of Nothing -> return pts Just rvs -> case pts of a':b:pts' -> do printStringAt (pos a') "forall" mapM_ exactPC rvs printStringAt (pos b) "." return pts' _ -> errorEP "ExactP: Rule is given too few srcInfoPoints" case pts1 of [x] -> do exactPC e1 printStringAt (pos x) "=" exactPC e2 _ -> errorEP "ExactP: Rule is given wrong number of srcInfoPoints" _ -> errorEP "ExactP: Rule is given too few srcInfoPoints" instance ExactP RuleVar where exactP (TypedRuleVar l n t) = case srcInfoPoints l of [_,b,c] -> do printString "(" exactPC n printStringAt (pos b) "::" exactPC t printStringAt (pos c) ")" _ -> errorEP "ExactP: RuleVar: TypedRuleVar is given wrong number of srcInfoPoints" exactP (RuleVar _ n) = exactP n instance ExactP Overlap where exactP (NoOverlap _) = printString "{-# NO_OVERLAP #-}" exactP (Overlap _) = printString "{-# OVERLAP #-}" exactP (Incoherent _) = printString "{-# INCOHERENT #-}" instance ExactP Activation where exactP (ActiveFrom l i) = printPoints l ["[", show i, "]"] exactP (ActiveUntil l i) = printPoints l ["[", "~", show i, "]"] instance ExactP FieldDecl where exactP (FieldDecl l ns bt) = do let pts = srcInfoPoints l printInterleaved' (zip (init pts) (repeat ",") ++ [(last pts, "::")]) ns exactPC bt instance ExactP IPBind where exactP (IPBind l ipn e) = case srcInfoPoints l of [a] -> do exactP ipn printStringAt (pos a) "=" exactPC e _ -> errorEP "ExactP: IPBind is given wrong number of srcInfoPoints" -- Hopefully, this will never fire. -- If it does, hopefully by that time https://github.com/sol/rewrite-with-location -- will be implemented. -- If not, then removing all calls to internalError should give a better -- idea where the error comes from. -- So far, it's necessary to eliminate non-exhaustive patterns warnings. -- We don't want to turn them off, as we want unhandled AST nodes to be -- reported. internalError :: String -> a internalError loc' = error $ unlines [ "haskell-src-exts: ExactPrint: internal error (non-exhaustive pattern)" , "Location: " ++ loc' , "This is either caused by supplying incorrect location information or by" , "a bug in haskell-src-exts. If this happens on an unmodified AST obtained" , "by the haskell-src-exts Parser it is a bug, please it report it at" , "https://github.com/haskell-suite/haskell-src-exts"] haskell-src-exts-1.18.2/src/Language/Haskell/Exts/Extension.hs0000644000000000000000000006076512746233113022332 0ustar0000000000000000{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Extension -- Copyright : (c) Niklas Broberg 2009 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, niklas.broberg@chalmers.se -- Stability : transient -- Portability : portable -- -- This module defines the list of recognized modular features -- of Haskell, most often (sloppily) referred to as "extensions". -- -- Closely mimicking the Language.Haskell.Extension module from -- the Cabal library, this package also includes functionality for -- "computing" languages as sets of features. Also, we make no -- promise not to add extensions not yet recognized by Cabal. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.Extension ( -- * Language definitions Language(..), knownLanguages, classifyLanguage, prettyLanguage, -- * Extensions Extension(..), KnownExtension(..), classifyExtension, parseExtension, prettyExtension, -- * Extension groups ghcDefault, glasgowExts, knownExtensions, deprecatedExtensions, -- * Semantics of extensions applied to languages impliesExts, toExtensionList ) where #if __GLASGOW_HASKELL__ < 710 import Control.Applicative ((<$>), (<|>)) #else import Control.Applicative ((<|>)) #endif import Data.Array (Array, accumArray, bounds, Ix(inRange), (!)) import Data.List (nub) import Data.Maybe (fromMaybe) import Data.Data -- Copyright notice from Cabal's Language.Haskell.Extension, -- from which we borrow plenty of features: {- All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Isaac Jones nor the names of other contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -} data Language = -- | The Haskell 98 language as defined by the Haskell 98 report. -- Haskell98 -- | The Haskell 2010 language as defined by the Haskell 2010 report. -- | Haskell2010 -- | The minimal language resulting from disabling all recognized -- extensions - including ones that are part of all known language -- definitions e.g. MonomorphismRestriction. | HaskellAllDisabled -- | An unknown language, identified by its name. | UnknownLanguage String deriving (Show, Read, Eq, Ord, Data, Typeable) knownLanguages :: [Language] knownLanguages = [Haskell98, Haskell2010] classifyLanguage :: String -> Language classifyLanguage str = fromMaybe (UnknownLanguage str) $ lookup str langTable where langTable = [ (show lang, lang) | lang <- knownLanguages ] prettyLanguage :: Language -> String prettyLanguage (UnknownLanguage name) = name prettyLanguage lang = show lang -- | This represents language extensions beyond a base 'Language' definition -- (such as 'Haskell98') that are supported by some implementations, usually -- in some special mode. data Extension = -- | Enable a known extension EnableExtension KnownExtension -- | Disable a known extension | DisableExtension KnownExtension -- | An unknown extension, identified by the name of its @LANGUAGE@ -- pragma. | UnknownExtension String deriving (Show, Read, Eq, Ord) data KnownExtension = -- | [GHC § 7.6.3.4] Allow overlapping class instances, -- provided there is a unique most specific instance for each use. OverlappingInstances -- | [GHC § 7.6.3.3] Ignore structural rules guaranteeing the -- termination of class instance resolution. Termination is -- guaranteed by a fixed-depth recursion stack, and compilation -- may fail if this depth is exceeded. | UndecidableInstances -- | [GHC § 7.6.3.4] Implies 'OverlappingInstances'. Allow the -- implementation to choose an instance even when it is possible -- that further instantiation of types will lead to a more specific -- instance being applicable. | IncoherentInstances -- | [GHC § 7.6.3.5] Allow type signatures in instances. | InstanceSigs -- | [GHC § 7.3.8] Allows recursive bindings in @do@ blocks, -- using the @rec@ keyword. | DoRec -- | [GHC § 7.3.8.2] Deprecated in GHC. Allows recursive bindings -- using @mdo@, a variant of @do@. @DoRec@ provides a different, -- preferred syntax. | RecursiveDo -- | [GHC § 7.3.9] Provide syntax for writing list -- comprehensions which iterate over several lists together, like -- the 'zipWith' family of functions. | ParallelListComp -- | [GHC § 7.6.1.1] Allow multiple parameters in a type class. | MultiParamTypeClasses -- | [GHC § 7.17] Enable the dreaded monomorphism restriction. | MonomorphismRestriction -- | [GHC § 7.6.2] Allow a specification attached to a -- multi-parameter type class which indicates that some parameters -- are entirely determined by others. The implementation will check -- that this property holds for the declared instances, and will use -- this property to reduce ambiguity in instance resolution. | FunctionalDependencies -- | [GHC § 7.8.5] Like 'RankNTypes' but does not allow a -- higher-rank type to itself appear on the left of a function -- arrow. | Rank2Types -- | [GHC § 7.8.5] Allow a universally-quantified type to occur on -- the left of a function arrow. | RankNTypes -- | [GHC § 7.8.5] Allow data constructors to have polymorphic -- arguments. Unlike 'RankNTypes', does not allow this for ordinary -- functions. | PolymorphicComponents -- | [GHC § 7.4.4] Allow existentially-quantified data constructors. | ExistentialQuantification -- | [GHC § 7.8.7] Cause a type variable in a signature, which has an -- explicit @forall@ quantifier, to scope over the definition of the -- accompanying value declaration. | ScopedTypeVariables -- | Deprecated, use 'ScopedTypeVariables' instead. | PatternSignatures -- | [GHC § 7.8.3] Enable implicit function parameters with dynamic -- scope. | ImplicitParams -- | [GHC § 7.8.2] Relax some restrictions on the form of the context -- of a type signature. | FlexibleContexts -- | [GHC § 7.6.3.2] Relax some restrictions on the form of the -- context of an instance declaration. | FlexibleInstances -- | [GHC § 7.4.1] Allow data type declarations with no constructors. | EmptyDataDecls -- | [GHC § 4.10.3] Run the C preprocessor on Haskell source code. | CPP -- | [GHC § 7.8.4] Allow an explicit kind signature giving the kind of -- types over which a type variable ranges. | KindSignatures -- | [GHC § 7.11] Enable a form of pattern which forces evaluation -- before an attempted match, and a form of strict @let@/@where@ -- binding. | BangPatterns -- | [GHC § 7.6.3.1] Allow type synonyms in instance heads. | TypeSynonymInstances -- | [GHC § 7.9] Enable Template Haskell, a system for compile-time -- metaprogramming. | TemplateHaskell -- | [GHC § 8] Enable the Foreign Function Interface. In GHC, -- implements the standard Haskell 98 Foreign Function Interface -- Addendum, plus some GHC-specific extensions. | ForeignFunctionInterface -- | [GHC § 7.10] Enable arrow notation. | Arrows -- | [GHC § 7.16] Enable generic type classes, with default instances -- defined in terms of the algebraic structure of a type. | Generics -- | [GHC § 7.3.11] Enable the implicit importing of the module -- @Prelude@. When disabled, when desugaring certain built-in syntax -- into ordinary identifiers, use whatever is in scope rather than the -- @Prelude@ -- version. | ImplicitPrelude -- | [GHC § 7.3.15] Enable syntax for implicitly binding local names -- corresponding to the field names of a record. Puns bind specific -- names, unlike 'RecordWildCards'. | NamedFieldPuns -- | [GHC § 7.3.5] Enable a form of guard which matches a pattern and -- binds variables. | PatternGuards -- | [GHC § 7.5.4] Allow a type declared with @newtype@ to use -- @deriving@ for any class with an instance for the underlying type. | GeneralizedNewtypeDeriving -- | [Hugs § 7.1] Enable the \"Trex\" extensible records system. | ExtensibleRecords -- | [Hugs § 7.2] Enable type synonyms which are transparent in -- some definitions and opaque elsewhere, as a way of implementing -- abstract datatypes. | RestrictedTypeSynonyms -- | [Hugs § 7.3] Enable an alternate syntax for string literals, -- with string templating. | HereDocuments -- | [GHC § 7.3.2] Allow the character @#@ as a postfix modifier on -- identifiers. Also enables literal syntax for unboxed values. | MagicHash -- | Binary integer literals | BinaryLiterals -- | [GHC § 7.7] Allow data types and type synonyms which are -- indexed by types, i.e. ad-hoc polymorphism for types. | TypeFamilies -- | [GHC § 7.5.2] Allow a standalone declaration which invokes the -- type class @deriving@ mechanism. | StandaloneDeriving -- | [GHC § 7.3.1] Allow certain Unicode characters to stand for -- certain ASCII character sequences, e.g. keywords and punctuation. | UnicodeSyntax -- | [GHC § 8.1.1] Allow the use of unboxed types as foreign types, -- e.g. in @foreign import@ and @foreign export@. | UnliftedFFITypes -- | [GHC § 7.4.3] Defer validity checking of types until after -- expanding type synonyms, relaxing the constraints on how synonyms -- may be used. | LiberalTypeSynonyms -- | [GHC § 7.4.2] Allow the name of a type constructor, type class, -- or type variable to be an infix operator. | TypeOperators -- | [GHC § 7.26.5] Parallel arrays for Data Parallel Haskell. | ParallelArrays -- | [GHC § 7.3.16] Enable syntax for implicitly binding local names -- corresponding to the field names of a record. A wildcard binds -- all unmentioned names, unlike 'NamedFieldPuns'. | RecordWildCards -- | Deprecated, use 'NamedFieldPuns' instead. | RecordPuns -- | [GHC § 7.3.14] Allow a record field name to be disambiguated -- by the type of the record it's in. | DisambiguateRecordFields -- | [GHC § 7.6.4] Enable overloading of string literals using a -- type class, much like integer literals. | OverloadedStrings -- | [GHC § 7.4.6] Enable generalized algebraic data types, in -- which type variables may be instantiated on a per-constructor -- basis. Implies GADTSyntax. | GADTs {- GADTSyntax (the extension name) not yet supported by HSE -- | Enable GADT syntax for declaring ordinary algebraic datatypes. | GADTSyntax -} -- | [GHC § 7.17.2] Make pattern bindings monomorphic. | MonoPatBinds -- | [GHC § 7.8.8] Relax the requirements on mutually-recursive -- polymorphic functions. | RelaxedPolyRec -- | [GHC § 2.4.5] Allow default instantiation of polymorphic -- types in more situations. | ExtendedDefaultRules -- | [GHC § 7.2.2] Enable unboxed tuples. | UnboxedTuples -- | [GHC § 7.5.3] Enable @deriving@ for classes -- @Data.Typeable.Typeable@ and @Data.Generics.Data@. | DeriveDataTypeable -- | [GHC § 7.6.1.3] Allow a class method's type to place -- additional constraints on a class type variable. | ConstrainedClassMethods -- | [GHC § 7.3.18] Allow imports to be qualified by the package -- name the module is intended to be imported from, e.g. -- -- > import "network" Network.Socket | PackageImports | LambdaCase -- | [GHC § 7.8.6] Deprecated in GHC 6.12 and will be removed in -- GHC 7. Allow a type variable to be instantiated at a -- polymorphic type. | ImpredicativeTypes -- | [GHC § 7.3.3] Change the syntax for qualified infix -- operators. | NewQualifiedOperators -- | [GHC § 7.3.12] Relax the interpretation of left operator -- sections to allow unary postfix operators. | PostfixOperators -- | [GHC § 7.9.5] Enable quasi-quotation, a mechanism for defining -- new concrete syntax for expressions and patterns. | QuasiQuotes -- | [GHC § 7.3.10] Enable generalized list comprehensions, -- supporting operations such as sorting and grouping. | TransformListComp -- | [GHC § 7.3.6] Enable view patterns, which match a value by -- applying a function and matching on the result. | ViewPatterns -- | Allow concrete XML syntax to be used in expressions and patterns, -- as per the Haskell Server Pages extension language: -- . The ideas behind it are -- discussed in the paper \"Haskell Server Pages through Dynamic Loading\" -- by Niklas Broberg, from Haskell Workshop '05. | XmlSyntax -- | Allow regular pattern matching over lists, as discussed in the -- paper \"Regular Expression Patterns\" by Niklas Broberg, Andreas Farre -- and Josef Svenningsson, from ICFP '04. | RegularPatterns -- | Enables the use of tuple sections, e.g. @(, True)@ desugars into -- @\x -> (x, True)@. | TupleSections -- | Allows GHC primops, written in C--, to be imported into a Haskell -- file. | GHCForeignImportPrim -- | Support for patterns of the form @n + k@, where @k@ is an -- integer literal. | NPlusKPatterns -- | Improve the layout rule when @if@ expressions are used in a @do@ -- block. | DoAndIfThenElse -- | Makes much of the Haskell sugar be desugared into calls to the -- function with a particular name that is in scope. | RebindableSyntax -- | Make @forall@ a keyword in types, which can be used to give the -- generalisation explicitly. | ExplicitForAll -- | Allow contexts to be put on datatypes, e.g. the @Eq a@ in -- @data Eq a => Set a = NilSet | ConsSet a (Set a)@. | DatatypeContexts -- | Local (@let@ and @where@) bindings are monomorphic. | MonoLocalBinds -- | Enable @deriving@ for the @Data.Functor.Functor@ class. | DeriveFunctor -- | [GHC § 7.5.3] Enable @deriving@ for the @Generic@ and @Generic1@ classes. | DeriveGeneric -- | Enable @deriving@ for the @Data.Traversable.Traversable@ class. | DeriveTraversable -- | Enable @deriving@ for the @Data.Foldable.Foldable@ class. | DeriveFoldable -- | Enable non-decreasing indentation for 'do' blocks. | NondecreasingIndentation -- | [GHC § 8.1.4] Enable interruptible FFI. | InterruptibleFFI -- | [GHC § 8.1.5] Enable the 'capi' calling convention in the -- foreign function interface. | CApiFFI -- | [GHC § 7.3.27] Enable explicit namespaces in import/export. | ExplicitNamespaces | DataKinds | PolyKinds -- | [GHC § 7.3.16] Enable the multi-way if-expressions -- extension to accept conditional expressions with multiple branches. | MultiWayIf -- | [GHC § 7.20.3] Allow imports to be qualified with a safe -- keyword that requires the imported module be trusted as according -- to the Safe Haskell definition of trust. -- -- > import safe Network.Socket | SafeImports -- | [GHC § 7.20] Compile a module in the Safe, Safe Haskell -- mode -- a restricted form of the Haskell language to ensure -- type safety. | Safe -- | [GHC § 7.20] Compile a module in the Trustworthy, Safe -- Haskell mode -- no restrictions apply but the module is marked -- as trusted as long as the package the module resides in is -- trusted. | Trustworthy -- | [GHC § 7.6.1.4] Allow default signatures in class -- definitions. They apply to default methods implemented in this -- class. | DefaultSignatures -- ConstraintKinds not generally supported by HSE. This flag makes RCategory2.hs -- pass testing though. -- | [GHC § 7.40] Allow type class/implicit parameter/equality -- constraints to be used as types with the special kind Constraint. -- Also generalise the (ctxt => ty) syntax so that any type of kind -- Constraint can occur before the arrow. | ConstraintKinds -- | [GHC § 7.25.3] Allow role annotations. | RoleAnnotations -- | [GHC § 7.3.8] Enable giving names to parametrized pattern -- schemes | PatternSynonyms -- | [GHC § 7.15] Allow partial specified type signatures. -- Note that this extension does not affect parsing. It only affects whether the -- program is able to be run with partial signatures. | PartialTypeSignatures -- | [GHC § 7.15.1.2] This extension treats type variables which -- start with an underscore as wildcards. For example, `foo :: _x` is -- equivalent to `foo :: _`. | NamedWildCards | TypeApplications | TypeFamilyDependencies | OverloadedLabels deriving (Show, Read, Eq, Ord, Enum, Bounded, Data, Typeable) -- | Certain extensions imply other extensions, and this function -- makes the implication explicit. This also handles deprecated -- extensions, which imply their replacements. -- The returned value is the transitive closure of implied -- extensions. {-impliesExts :: [Extension] -> [Extension] impliesExts exts = let posExts = [ ke | EnableExtension ke <- exts ] negExts = [ ke | DisableExtension ke <- exts ] implExts = impliesKnownExts posExts in -} impliesExts :: [KnownExtension] -> [KnownExtension] impliesExts = go where go [] = [] go es = let xs = concatMap implE es ys = filter (not . flip elem es) xs in es ++ go ys implE e = case e of TypeFamilies -> [KindSignatures] ScopedTypeVariables -> [TypeOperators, ExplicitForAll] XmlSyntax -> [RegularPatterns] RegularPatterns -> [PatternGuards] RankNTypes -> [Rank2Types, ExplicitForAll] Rank2Types -> [PolymorphicComponents, ExplicitForAll] PolymorphicComponents -> [ExplicitForAll] LiberalTypeSynonyms -> [ExplicitForAll] ExistentialQuantification -> [ExplicitForAll] ImpredicativeTypes -> [ExplicitForAll] PolyKinds -> [KindSignatures] TypeFamilyDependencies -> [TypeFamilies] -- Deprecations RecordPuns -> [NamedFieldPuns] PatternSignatures -> [ScopedTypeVariables] _ -> [] -- | The list of extensions enabled by -- GHC's portmanteau -fglasgow-exts flag. glasgowExts :: [Extension] glasgowExts = map EnableExtension [ ForeignFunctionInterface , UnliftedFFITypes , GADTs , ImplicitParams , ScopedTypeVariables , UnboxedTuples , TypeSynonymInstances , StandaloneDeriving , DeriveDataTypeable , FlexibleContexts , FlexibleInstances , ConstrainedClassMethods , MultiParamTypeClasses , FunctionalDependencies , MagicHash , PolymorphicComponents , ExistentialQuantification , UnicodeSyntax , PostfixOperators , PatternGuards , LiberalTypeSynonyms , RankNTypes , ImpredicativeTypes , TypeOperators , RecursiveDo , ParallelListComp , EmptyDataDecls , KindSignatures , GeneralizedNewtypeDeriving , TypeFamilies ] -- Not exported, just used locally in several places. allLangDefault :: [KnownExtension] allLangDefault = [MonomorphismRestriction, MonoPatBinds, ImplicitPrelude] ghcDefault :: [Extension] ghcDefault = map EnableExtension (NondecreasingIndentation:allLangDefault) -- | List of all known extensions, both \"yes\" and \"no\" versions. knownExtensions :: [Extension] knownExtensions = concat [ [EnableExtension x, DisableExtension x] | x <- [minBound..maxBound] ] -- | Extensions that have been deprecated, possibly paired with another -- extension that replaces it. -- deprecatedExtensions :: [(Extension, Maybe Extension)] deprecatedExtensions = [ (EnableExtension RecordPuns, Just (EnableExtension NamedFieldPuns)) , (EnableExtension PatternSignatures, Just (EnableExtension ScopedTypeVariables)) ] -- | A clever version of read that returns an 'UnknownExtension' -- if the string is not recognised. classifyExtension :: String -> Extension classifyExtension string = case classifyKnownExtension string of Just ext -> EnableExtension ext Nothing -> case string of 'N':'o':string' -> case classifyKnownExtension string' of Just ext -> DisableExtension ext Nothing -> UnknownExtension string _ -> UnknownExtension string classifyKnownExtension :: String -> Maybe KnownExtension classifyKnownExtension "" = Nothing classifyKnownExtension string@(c : _) | inRange (bounds knownExtensionTable) c = lookup string (knownExtensionTable ! c) | otherwise = Nothing knownExtensionTable :: Array Char [(String, KnownExtension)] knownExtensionTable = accumArray (flip (:)) [] ('A', 'Z') [ (head str, (str, extension)) | extension <- [toEnum 0 ..] , let str = show extension ] -- | Parse an enabled or disabled extension; returns -- 'UnknownExtension' if the parse fails. parseExtension :: String -> Extension parseExtension str = fromMaybe (UnknownExtension str) $ EnableExtension <$> readMay str <|> DisableExtension <$> (readMay =<< dropNo str) where dropNo ('N':'o':rest) = Just rest dropNo _ = Nothing -- | Pretty print an extension. Disabled extensions are prefixed with -- \'No\'. prettyExtension :: Extension -> String prettyExtension (EnableExtension ext) = show ext prettyExtension (DisableExtension ext) = "No" ++ show ext prettyExtension (UnknownExtension str) = str readMay :: Read a => String -> Maybe a readMay s = case [x | (x,t) <- reads s, ("","") <- lex t] of [x] -> Just x _ -> Nothing {------------------------------------------- -- Transform a 'Language', and possibly a modifying set of'Extension's, into a list -- of 'KnownExtension's, to be interpreted as modifying the language you get -- when all known extensions are disabled. -- Extensions are interpreted in a right-biased fashion, so the last instance -- of an occurence of 'EnableExtension' or 'DisableExtension' for a given -- 'KnownExtension' takes precedence. -------------------------------------------} toExtensionList :: Language -> [Extension] -> [KnownExtension] toExtensionList lang exts' = let langKes = case lang of Haskell98 -> NPlusKPatterns:allLangDefault Haskell2010 -> [DoAndIfThenElse , PatternGuards , ForeignFunctionInterface , EmptyDataDecls ] ++ allLangDefault HaskellAllDisabled -> [] UnknownLanguage s -> error $ "toExtensionList: Unknown language " ++ s {- addExts = [ ke | EnableExtension ke <- exts ] remExts = [ ke | DisableExtension ke <- exts ] in impliesExts $ nub $ (langKes ++ addExts) \\ remExts -} in impliesExts $ nub $ go langKes exts' where go :: [KnownExtension] -> [Extension] -> [KnownExtension] go acc [] = acc go acc (DisableExtension x : exts) = go (filter (/= x) acc) exts go acc (EnableExtension x : exts) = go (x : acc) exts -- We just throw away UnknownExtensions go acc (_ : exts) = go acc exts haskell-src-exts-1.18.2/src/Language/Haskell/Exts/ExtScheme.hs0000644000000000000000000000214112746233113022223 0ustar0000000000000000{-# OPTIONS_HADDOCK hide #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.ExtScheme -- Copyright : (c) Niklas Broberg 2009 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- Internal scheme for handling extensions in a -- convenient fashion. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.ExtScheme where import Language.Haskell.Exts.Extension data ExtScheme = Any [KnownExtension] | All [KnownExtension] deriving (Eq,Show) type MExtScheme = Maybe ExtScheme class Enabled a where isEnabled :: a -> [KnownExtension] -> Bool instance Enabled KnownExtension where isEnabled = elem instance Enabled ExtScheme where isEnabled (Any exts) enabled = any (`elem` enabled) exts isEnabled (All exts) enabled = all (`elem` enabled) exts instance Enabled a => Enabled (Maybe a) where isEnabled Nothing = const True isEnabled (Just a) = isEnabled a haskell-src-exts-1.18.2/src/Language/Haskell/Exts/Fixity.hs0000644000000000000000000004635712746233113021633 0ustar0000000000000000{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Fixity -- Copyright : (c) Niklas Broberg 2009 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- Fixity information to give the parser so that infix operators can -- be parsed properly. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.Fixity ( -- * Fixity representation Fixity(..) -- | The following three functions all create lists of -- fixities from textual representations of operators. -- The intended usage is e.g. -- -- > fixs = infixr_ 0 ["$","$!","`seq`"] -- -- Note that the operators are expected as you would -- write them infix, i.e. with ` characters surrounding -- /varid/ operators, and /varsym/ operators written as is. , infix_, infixl_, infixr_ -- ** Collections of fixities , preludeFixities, baseFixities -- * Applying fixities to an AST , AppFixity(..) ) where import Language.Haskell.Exts.Syntax import Language.Haskell.Exts.SrcLoc import Control.Monad (when, (<=<), liftM, liftM2, liftM3, liftM4) import Data.Traversable (mapM) import Data.Maybe (fromMaybe) import Data.Typeable import Data.Data hiding (Fixity) #if __GLASGOW_HASKELL__ < 710 import Control.Applicative ((<$)) #endif import Prelude hiding (mapM) -- | Operator fixities are represented by their associativity -- (left, right or none) and their precedence (0-9). data Fixity = Fixity (Assoc ()) Int (QName ()) deriving (Eq,Ord,Show,Typeable,Data) -- | All AST elements that may include expressions which in turn may -- need fixity tweaking will be instances of this class. class AppFixity ast where -- | Tweak any expressions in the element to account for the -- fixities given. Assumes that all operator expressions are -- fully left associative chains to begin with. applyFixities :: Monad m => [Fixity] -- ^ The fixities to account for. -> ast SrcSpanInfo -- ^ The element to tweak. -> m (ast SrcSpanInfo) -- ^ The same element, but with operator expressions updated, or a failure. assocNone, assocLeft, assocRight :: Assoc () assocNone = AssocNone () assocLeft = AssocLeft () assocRight = AssocRight () instance AppFixity Exp where applyFixities fixs' = infFix fixs' <=< leafFix fixs' where -- This is the real meat case. We can assume a left-associative list to begin with. infFix fixs (InfixApp l2 a op2 z) = do e <- infFix fixs a let fixup (a1,p1) (a2,p2) y pre = do when (p1 == p2 && (a1 /= a2 || a1 == assocNone)) -- Ambiguous infix expression! $ fail "Ambiguous infix expression" if p1 > p2 || p1 == p2 && (a1 == assocLeft || a2 == assocNone) -- Already right order then return $ InfixApp l2 e op2 z else liftM pre (infFix fixs $ InfixApp (ann y <++> ann z) y op2 z) case e of InfixApp _ x op1 y -> fixup (askFixity fixs op1) (askFixity fixs op2) y (InfixApp l2 x op1) NegApp _ y -> fixup prefixMinusFixity (askFixity fixs op2) y (NegApp l2) _ -> return $ InfixApp l2 e op2 z infFix _ e = return e --ambOps l = ParseFailed (getPointLoc l) $ "Ambiguous infix expression" instance AppFixity Pat where applyFixities fixs' = infFix fixs' <=< leafFixP fixs' where -- This is the real meat case. We can assume a left-associative list to begin with. infFix fixs (PInfixApp l2 a op2 z) = do p <- infFix fixs a let fixup (a1,p1) (a2,p2) y pre = do when (p1 == p2 && (a1 /= a2 || a1 == assocNone )) -- Ambiguous infix expression! $ fail "Ambiguous infix expression" if p1 > p2 || p1 == p2 && (a1 == assocLeft || a2 == assocNone) -- Already right order then return $ PInfixApp l2 p op2 z else liftM pre (infFix fixs $ PInfixApp (ann y <++> ann z) y op2 z) case p of PInfixApp _ x op1 y -> fixup (askFixityP fixs op1) (askFixityP fixs op2) y (PInfixApp l2 x op1) _ -> return $ PInfixApp l2 p op2 z infFix _ p = return p -- Internal: lookup associativity and precedence of an operator askFixity :: [Fixity] -> QOp l -> (Assoc (), Int) askFixity xs k = askFix xs (f (() <$ k)) where f (QVarOp _ x) = g x f (QConOp _ x) = g x g (Special _ (Cons _)) = UnQual () (Symbol () ":") g x = x -- Same using patterns askFixityP :: [Fixity] -> QName l -> (Assoc (), Int) askFixityP xs qn = askFix xs (g (() <$ qn)) where g (Special _ (Cons _)) = UnQual () (Symbol () ":") g x = x askFix :: [Fixity] -> QName l -> (Assoc (), Int) askFix xs = \k -> lookupWithDefault (assocLeft, 9) (() <$ k) mp where lookupWithDefault def k mp' = fromMaybe def $ lookup k mp' mp = [(x,(a,p)) | Fixity a p x <- xs] -- | Built-in fixity for prefix minus prefixMinusFixity :: (Assoc (), Int) prefixMinusFixity = (AssocLeft (), 6) -- | All fixities defined in the Prelude. preludeFixities :: [Fixity] preludeFixities = concat [infixr_ 9 ["."] ,infixl_ 9 ["!!"] ,infixr_ 8 ["^","^^","**"] ,infixl_ 7 ["*","/","`quot`","`rem`","`div`","`mod`",":%","%"] ,infixl_ 6 ["+","-"] ,infixr_ 5 [":","++"] ,infix_ 4 ["==","/=","<","<=",">=",">","`elem`","`notElem`"] ,infixl_ 4 ["<$>","<$","<*>","<*","*>"] ,infixr_ 3 ["&&"] ,infixr_ 2 ["||"] ,infixl_ 1 [">>",">>="] ,infixr_ 1 ["=<<"] ,infixr_ 0 ["$","$!","`seq`"] ] -- | All fixities defined in the base package. -- -- Note that the @+++@ operator appears in both Control.Arrows and -- Text.ParserCombinators.ReadP. The listed precedence for @+++@ in -- this list is that of Control.Arrows. baseFixities :: [Fixity] baseFixities = preludeFixities ++ concat [infixl_ 9 ["!","//","!:"] ,infixl_ 8 ["`shift`","`rotate`","`shiftL`","`shiftR`","`rotateL`","`rotateR`"] ,infixl_ 7 [".&."] ,infixl_ 6 ["`xor`"] ,infix_ 6 [":+"] ,infixl_ 5 [".|."] ,infixr_ 5 ["+:+","<++","<+>"] -- fixity conflict for +++ between ReadP and Arrow ,infix_ 5 ["\\\\"] ,infixl_ 4 ["<**>"] ,infix_ 4 ["`elemP`","`notElemP`"] ,infixl_ 3 ["<|>"] ,infixr_ 3 ["&&&","***"] ,infixr_ 2 ["+++","|||"] ,infixr_ 1 ["<=<",">=>",">>>","<<<","^<<","<<^","^>>",">>^"] ,infixl_ 0 ["`on`"] ,infixr_ 0 ["`par`","`pseq`"] ] infixr_, infixl_, infix_ :: Int -> [String] -> [Fixity] infixr_ = fixity assocRight infixl_ = fixity assocLeft infix_ = fixity assocNone -- Internal: help function for the above definitions. fixity :: Assoc () -> Int -> [String] -> [Fixity] fixity a p = map (Fixity a p . op) where op ('`':xs) = UnQual () $ Ident () $ init xs op xs = UnQual () $ Symbol () xs ------------------------------------------------------------------- -- Boilerplate - yuck!! Everything below here is internal stuff instance AppFixity Module where applyFixities fixs (Module l mmh prs imp decls) = liftM (Module l mmh prs imp) $ appFixDecls mmn fixs decls where mmn = getMmn mmh getMmn (Just (ModuleHead _ n _ _)) = Just n getMmn _ = Nothing applyFixities fixs (XmlPage l mn os xn xas mexp cs) = liftM3 (XmlPage l mn os xn) (fix xas) (fix mexp) (fix cs) where fix xs = mapM (applyFixities fixs) xs applyFixities fixs (XmlHybrid l mmh prs imp decls xn xas mexp cs) = liftM4 (flip (XmlHybrid l mmh prs imp) xn) (appFixDecls mmn fixs decls) (fixe xas) (fixe mexp) (fixe cs) where mmn = getMmn mmh getMmn (Just (ModuleHead _ n _ _)) = Just n getMmn _ = Nothing fixe xs = let extraFixs = getFixities mmn decls in mapM (applyFixities (fixs++extraFixs)) xs instance AppFixity Decl where applyFixities fixs decl = case decl of ClassDecl l ctxt dh deps cdecls -> liftM (ClassDecl l ctxt dh deps) $ mapM (mapM fix) cdecls InstDecl l olp ih idecls -> liftM (InstDecl l olp ih) $ mapM (mapM fix) idecls SpliceDecl l spl -> liftM (SpliceDecl l) $ fix spl FunBind l matches -> liftM (FunBind l) $ mapM fix matches PatBind l p rhs bs -> let extraFix x = applyFixities (fixs ++ maybe [] getBindFixities bs) x in liftM3 (PatBind l) (extraFix p) (extraFix rhs) (mapM extraFix bs) AnnPragma l ann' -> liftM (AnnPragma l) $ fix ann' PatSyn l p1 p2 dir -> liftM (PatSyn l p1 p2) (fix dir) _ -> return decl where fix x = applyFixities fixs x instance AppFixity PatternSynDirection where applyFixities fixs dir = case dir of ExplicitBidirectional l ds -> liftM (ExplicitBidirectional l) (mapM fix ds) _ -> return dir where fix x = applyFixities fixs x appFixDecls :: Monad m => Maybe (ModuleName SrcSpanInfo) -> [Fixity] -> [Decl SrcSpanInfo] -> m [Decl SrcSpanInfo] appFixDecls mmdl fixs decls = let extraFixs = getFixities mmdl decls in mapM (applyFixities (fixs++extraFixs)) decls getFixities :: Maybe (ModuleName l) -> [Decl l] -> [Fixity] getFixities mmdl = concatMap (getFixity mmdl) getFixity :: Maybe (ModuleName l) -> Decl l -> [Fixity] getFixity mmdl d = case d of InfixDecl _ a mp ops -> let p = fromMaybe 9 mp in map (Fixity (scrub a) p) (concatMap g (map scrub ops)) ClassDecl _ _ _ _ cds -> maybe [] (concatMap getClassFixity) cds _ -> [] where g (VarOp _ x) = f x g (ConOp _ x) = f x f x = case mmdl of Nothing -> [UnQual () x] Just m -> [Qual () (scrub m) x, UnQual () x] getClassFixity (ClsDecl _ cd) = getFixity mmdl cd getClassFixity _ = [] scrub :: Functor f => f a -> f () scrub f = () <$ f getBindFixities :: Binds l -> [Fixity] getBindFixities bs = case bs of BDecls _ ds -> getFixities Nothing ds _ -> [] instance AppFixity Annotation where applyFixities fixs ann' = case ann' of Ann l n e -> liftM (Ann l n) $ fix e TypeAnn l n e -> liftM (TypeAnn l n) $ fix e ModuleAnn l e -> liftM (ModuleAnn l) $ fix e where fix x = applyFixities fixs x instance AppFixity ClassDecl where applyFixities fixs (ClsDecl l decl) = liftM (ClsDecl l) $ applyFixities fixs decl applyFixities _ cdecl = return cdecl instance AppFixity InstDecl where applyFixities fixs (InsDecl l decl) = liftM (InsDecl l) $ applyFixities fixs decl applyFixities _ idecl = return idecl instance AppFixity Match where applyFixities fixs match = case match of Match l n ps rhs bs -> liftM3 (Match l n) (mapM (fix bs) ps) (fix bs rhs) (mapM (fix bs) bs) InfixMatch l a n ps rhs bs -> liftM4 (flip (InfixMatch l) n) (fix bs a) (mapM (fix bs) ps) (fix bs rhs) (mapM (fix bs) bs) where fix bs x = applyFixities fixs' x where fixs' = fixs ++ maybe [] getBindFixities bs instance AppFixity Rhs where applyFixities fixs rhs = case rhs of UnGuardedRhs l e -> liftM (UnGuardedRhs l) $ fix e GuardedRhss l grhss -> liftM (GuardedRhss l) $ mapM fix grhss where fix x = applyFixities fixs x instance AppFixity GuardedRhs where applyFixities fixs (GuardedRhs l stmts e) = liftM2 (GuardedRhs l) (mapM fix stmts) $ fix e where fix x = applyFixities fixs x instance AppFixity PatField where applyFixities fixs (PFieldPat l n p) = liftM (PFieldPat l n) $ applyFixities fixs p applyFixities _ pf = return pf instance AppFixity RPat where applyFixities fixs rp' = case rp' of RPOp l rp op -> liftM (flip (RPOp l) op) $ fix rp RPEither l a b -> liftM2 (RPEither l) (fix a) (fix b) RPSeq l rps -> liftM (RPSeq l) $ mapM fix rps RPGuard l p stmts -> liftM2 (RPGuard l) (fix p) $ mapM fix stmts RPCAs l n rp -> liftM (RPCAs l n) $ fix rp RPAs l n rp -> liftM (RPAs l n) $ fix rp RPParen l rp -> liftM (RPParen l) $ fix rp RPPat l p -> liftM (RPPat l) $ fix p where fix x = applyFixities fixs x instance AppFixity PXAttr where applyFixities fixs (PXAttr l n p) = liftM (PXAttr l n) $ applyFixities fixs p instance AppFixity Stmt where applyFixities fixs stmt = case stmt of Generator l p e -> liftM2 (Generator l) (fix p) (fix e) Qualifier l e -> liftM (Qualifier l) $ fix e LetStmt l bs -> liftM (LetStmt l) $ fix bs -- special behavior RecStmt l stmts -> liftM (RecStmt l) $ mapM fix stmts where fix x = applyFixities fixs x instance AppFixity Binds where applyFixities fixs bs = case bs of BDecls l decls -> liftM (BDecls l) $ appFixDecls Nothing fixs decls -- special behavior IPBinds l ips -> liftM (IPBinds l) $ mapM fix ips where fix x = applyFixities fixs x instance AppFixity IPBind where applyFixities fixs (IPBind l n e) = liftM (IPBind l n) $ applyFixities fixs e instance AppFixity FieldUpdate where applyFixities fixs (FieldUpdate l n e) = liftM (FieldUpdate l n) $ applyFixities fixs e applyFixities _ fup = return fup instance AppFixity Alt where applyFixities fixs (Alt l p galts bs) = liftM3 (Alt l) (fix p) (fix galts) (mapM fix bs) where fix x = applyFixities fixs x instance AppFixity QualStmt where applyFixities fixs qstmt = case qstmt of QualStmt l s -> liftM (QualStmt l) $ fix s ThenTrans l e -> liftM (ThenTrans l) $ fix e ThenBy l e1 e2 -> liftM2 (ThenBy l) (fix e1) (fix e2) GroupBy l e -> liftM (GroupBy l) (fix e) GroupUsing l e -> liftM (GroupUsing l) (fix e) GroupByUsing l e1 e2 -> liftM2 (GroupByUsing l) (fix e1) (fix e2) where fix x = applyFixities fixs x instance AppFixity Bracket where applyFixities fixs br = case br of ExpBracket l e -> liftM (ExpBracket l) $ fix e PatBracket l p -> liftM (PatBracket l) $ fix p DeclBracket l ds -> liftM (DeclBracket l) $ mapM fix ds _ -> return br where fix x = applyFixities fixs x instance AppFixity Splice where applyFixities fixs (ParenSplice l e) = liftM (ParenSplice l) $ applyFixities fixs e applyFixities _ s = return s instance AppFixity XAttr where applyFixities fixs (XAttr l n e) = liftM (XAttr l n) $ applyFixities fixs e -- the boring boilerplate stuff for expressions too -- Recursively fixes the "leaves" of the infix chains, -- without yet touching the chain itself. We assume all chains are -- left-associate to begin with. leafFix :: Monad m => [Fixity] -> Exp SrcSpanInfo -> m (Exp SrcSpanInfo) leafFix fixs e' = case e' of InfixApp l e1 op e2 -> liftM2 (flip (InfixApp l) op) (leafFix fixs e1) (fix e2) App l e1 e2 -> liftM2 (App l) (fix e1) (fix e2) NegApp l e -> liftM (NegApp l) $ fix e Lambda l pats e -> liftM2 (Lambda l) (mapM fix pats) $ fix e Let l bs e -> let extraFix x = applyFixities (fixs ++ getBindFixities bs) x in liftM2 (Let l) (extraFix bs) $ extraFix e If l e a b -> liftM3 (If l) (fix e) (fix a) (fix b) MultiIf l alts -> liftM (MultiIf l) (mapM fix alts) Case l e alts -> liftM2 (Case l) (fix e) $ mapM fix alts Do l stmts -> liftM (Do l) $ mapM fix stmts MDo l stmts -> liftM (MDo l) $ mapM fix stmts Tuple l bx exps -> liftM (Tuple l bx) $ mapM fix exps List l exps -> liftM (List l) $ mapM fix exps Paren l e -> liftM (Paren l) $ fix e LeftSection l e op -> liftM (flip (LeftSection l) op) (fix e) RightSection l op e -> liftM (RightSection l op) $ fix e RecConstr l n fups -> liftM (RecConstr l n) $ mapM fix fups RecUpdate l e fups -> liftM2 (RecUpdate l) (fix e) $ mapM fix fups EnumFrom l e -> liftM (EnumFrom l) $ fix e EnumFromTo l e1 e2 -> liftM2 (EnumFromTo l) (fix e1) (fix e2) EnumFromThen l e1 e2 -> liftM2 (EnumFromThen l) (fix e1) (fix e2) EnumFromThenTo l e1 e2 e3 -> liftM3 (EnumFromThenTo l) (fix e1) (fix e2) (fix e3) ListComp l e quals -> liftM2 (ListComp l) (fix e) $ mapM fix quals ParComp l e qualss -> liftM2 (ParComp l) (fix e) $ mapM (mapM fix) qualss ExpTypeSig l e t -> liftM (flip (ExpTypeSig l) t) (fix e) BracketExp l b -> liftM (BracketExp l) $ fix b SpliceExp l s -> liftM (SpliceExp l) $ fix s XTag l n ats mexp cs -> liftM3 (XTag l n) (mapM fix ats) (mapM fix mexp) (mapM fix cs) XETag l n ats mexp -> liftM2 (XETag l n) (mapM fix ats) (mapM fix mexp) XExpTag l e -> liftM (XExpTag l) $ fix e XChildTag l cs -> liftM (XChildTag l) $ mapM fix cs Proc l p e -> liftM2 (Proc l) (fix p) (fix e) LeftArrApp l e1 e2 -> liftM2 (LeftArrApp l) (fix e1) (fix e2) RightArrApp l e1 e2 -> liftM2 (RightArrApp l) (fix e1) (fix e2) LeftArrHighApp l e1 e2 -> liftM2 (LeftArrHighApp l) (fix e1) (fix e2) RightArrHighApp l e1 e2 -> liftM2 (RightArrHighApp l) (fix e1) (fix e2) CorePragma l s e -> liftM (CorePragma l s) (fix e) SCCPragma l s e -> liftM (SCCPragma l s) (fix e) GenPragma l s ab cd e -> liftM (GenPragma l s ab cd) (fix e) LCase l alts -> liftM (LCase l) $ mapM fix alts _ -> return e' where fix x = applyFixities fixs x leafFixP :: Monad m => [Fixity] -> Pat SrcSpanInfo -> m (Pat SrcSpanInfo) leafFixP fixs p' = case p' of PInfixApp l p1 op p2 -> liftM2 (flip (PInfixApp l) op) (leafFixP fixs p1) (fix p2) PApp l n ps -> liftM (PApp l n) $ mapM fix ps PTuple l bx ps -> liftM (PTuple l bx) $ mapM fix ps PList l ps -> liftM (PList l) $ mapM fix ps PParen l p -> liftM (PParen l) $ fix p PRec l n pfs -> liftM (PRec l n) $ mapM fix pfs PAsPat l n p -> liftM (PAsPat l n) $ fix p PIrrPat l p -> liftM (PIrrPat l) $ fix p PatTypeSig l p t -> liftM (flip (PatTypeSig l) t) (fix p) PViewPat l e p -> liftM2 (PViewPat l) (fix e) (fix p) PRPat l rps -> liftM (PRPat l) $ mapM fix rps PXTag l n ats mp ps -> liftM3 (PXTag l n) (mapM fix ats) (mapM fix mp) (mapM fix ps) PXETag l n ats mp -> liftM2 (PXETag l n) (mapM fix ats) (mapM fix mp) PXPatTag l p -> liftM (PXPatTag l) $ fix p PXRPats l rps -> liftM (PXRPats l) $ mapM fix rps PBangPat l p -> liftM (PBangPat l) $ fix p _ -> return p' where fix x = applyFixities fixs x haskell-src-exts-1.18.2/src/Language/Haskell/Exts/InternalLexer.hs0000644000000000000000000015134412746233113023124 0ustar0000000000000000{-# OPTIONS_HADDOCK hide #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Annotated.InternalLexer -- Copyright : (c) The GHC Team, 1997-2000 -- (c) Niklas Broberg, 2004-2009 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- Lexer for Haskell, with some extensions. -- ----------------------------------------------------------------------------- -- ToDo: Introduce different tokens for decimal, octal and hexadecimal (?) -- ToDo: FloatTok should have three parts (integer part, fraction, exponent) (?) -- ToDo: Use a lexical analyser generator (lx?) module Language.Haskell.Exts.InternalLexer (Token(..), showToken, lexer, topLexer) where import Language.Haskell.Exts.ParseMonad import Language.Haskell.Exts.SrcLoc hiding (loc) import Language.Haskell.Exts.Comments import Language.Haskell.Exts.Extension import Language.Haskell.Exts.ExtScheme import Prelude hiding (id, exponent) import Data.Char import Data.Ratio import Data.List (intercalate, isPrefixOf) import Control.Monad (when) -- import Debug.Trace (trace) data Token = VarId String | LabelVarId String | QVarId (String,String) | IDupVarId (String) -- duplicable implicit parameter | ILinVarId (String) -- linear implicit parameter | ConId String | QConId (String,String) | DVarId [String] -- to enable varid's with '-' in them | VarSym String | ConSym String | QVarSym (String,String) | QConSym (String,String) | IntTok (Integer, String) | FloatTok (Rational, String) | Character (Char, String) | StringTok (String, String) | IntTokHash (Integer, String) -- 1# | WordTokHash (Integer, String) -- 1## | FloatTokHash (Rational, String) -- 1.0# | DoubleTokHash (Rational, String) -- 1.0## | CharacterHash (Char, String) -- c# | StringHash (String, String) -- "Hello world!"# -- Symbols | LeftParen | RightParen | LeftHashParen | RightHashParen | SemiColon | LeftCurly | RightCurly | VRightCurly -- a virtual close brace | LeftSquare | RightSquare | ParArrayLeftSquare -- [: | ParArrayRightSquare -- :] | Comma | Underscore | BackQuote -- Reserved operators | Dot -- reserved for use with 'forall x . x' | DotDot | Colon | QuoteColon | DoubleColon | Equals | Backslash | Bar | LeftArrow | RightArrow | At | TApp -- '@' but have to check for preceeding whitespace | Tilde | DoubleArrow | Minus | Exclamation | Star | LeftArrowTail -- -< | RightArrowTail -- >- | LeftDblArrowTail -- -<< | RightDblArrowTail -- >>- -- Template Haskell | THExpQuote -- [| or [e| | THPatQuote -- [p| | THDecQuote -- [d| | THTypQuote -- [t| | THCloseQuote -- |] | THIdEscape (String) -- dollar x | THParenEscape -- dollar ( | THVarQuote -- 'x (but without the x) | THTyQuote -- ''T (but without the T) | THQuasiQuote (String,String) -- [$...|...] -- HaRP | RPGuardOpen -- (| | RPGuardClose -- |) | RPCAt -- @: -- Hsx | XCodeTagOpen -- <% | XCodeTagClose -- %> | XStdTagOpen -- < | XStdTagClose -- > | XCloseTagOpen -- | XChildTagOpen -- <%> (note that close doesn't exist, it's XCloseTagOpen followed by XCodeTagClose) | XPCDATA String | XRPatOpen -- <[ | XRPatClose -- ]> -- Pragmas | PragmaEnd -- #-} | RULES | INLINE Bool | INLINE_CONLIKE | SPECIALISE | SPECIALISE_INLINE Bool | SOURCE | DEPRECATED | WARNING | SCC | GENERATED | CORE | UNPACK | NOUNPACK | OPTIONS (Maybe String,String) -- | CFILES String -- | INCLUDE String | LANGUAGE | ANN | MINIMAL | NO_OVERLAP | OVERLAP | INCOHERENT -- Reserved Ids | KW_As | KW_By -- transform list comprehensions | KW_Case | KW_Class | KW_Data | KW_Default | KW_Deriving | KW_Do | KW_MDo | KW_Else | KW_Family -- indexed type families | KW_Forall -- universal/existential types | KW_Group -- transform list comprehensions | KW_Hiding | KW_If | KW_Import | KW_In | KW_Infix | KW_InfixL | KW_InfixR | KW_Instance | KW_Let | KW_Module | KW_NewType | KW_Of | KW_Proc -- arrows | KW_Rec -- arrows | KW_Role | KW_Then | KW_Type | KW_Using -- transform list comprehensions | KW_Where | KW_Qualified | KW_Pattern -- FFI | KW_Foreign | KW_Export | KW_Safe | KW_Unsafe | KW_Threadsafe | KW_Interruptible | KW_StdCall | KW_CCall | KW_CPlusPlus | KW_DotNet | KW_Jvm | KW_Js | KW_JavaScript | KW_CApi | EOF deriving (Eq,Show) reserved_ops :: [(String,(Token, Maybe ExtScheme))] reserved_ops = [ ( "..", (DotDot, Nothing) ), ( ":", (Colon, Nothing) ), ( "::", (DoubleColon, Nothing) ), ( "=", (Equals, Nothing) ), ( "\\", (Backslash, Nothing) ), ( "|", (Bar, Nothing) ), ( "<-", (LeftArrow, Nothing) ), ( "->", (RightArrow, Nothing) ), ( "@", (At, Nothing) ), ( "@:", (RPCAt, Just (Any [RegularPatterns])) ), ( "~", (Tilde, Nothing) ), ( "=>", (DoubleArrow, Nothing) ), ( "*", (Star, Just (Any [KindSignatures])) ), -- Parallel arrays ( "[:", (ParArrayLeftSquare, Just (Any [ParallelArrays])) ), ( ":]", (ParArrayRightSquare, Just (Any [ParallelArrays])) ), -- Arrows notation ( "-<", (LeftArrowTail, Just (Any [Arrows])) ), ( ">-", (RightArrowTail, Just (Any [Arrows])) ), ( "-<<", (LeftDblArrowTail, Just (Any [Arrows])) ), ( ">>-", (RightDblArrowTail, Just (Any [Arrows])) ), -- Unicode notation ( "\x2190", (LeftArrow, Just (Any [UnicodeSyntax])) ), ( "\x2192", (RightArrow, Just (Any [UnicodeSyntax])) ), ( "\x21d2", (DoubleArrow, Just (Any [UnicodeSyntax])) ), ( "\x2237", (DoubleColon, Just (Any [UnicodeSyntax])) ), ( "\x2919", (LeftArrowTail, Just (All [UnicodeSyntax, Arrows])) ), ( "\x291a", (RightArrowTail, Just (All [UnicodeSyntax, Arrows])) ), ( "\x291b", (LeftDblArrowTail, Just (All [UnicodeSyntax, Arrows])) ), ( "\x291c", (RightDblArrowTail, Just (All [UnicodeSyntax, Arrows])) ), ( "\x2605", (Star, Just (All [UnicodeSyntax, KindSignatures])) ), ( "\x2200", (KW_Forall, Just (All [UnicodeSyntax, ExplicitForAll])) ) ] special_varops :: [(String,(Token, Maybe ExtScheme))] special_varops = [ -- the dot is only a special symbol together with forall, but can still be used as function composition ( ".", (Dot, Just (Any [ExplicitForAll, ExistentialQuantification])) ), ( "-", (Minus, Nothing) ), ( "!", (Exclamation, Nothing) ) ] reserved_ids :: [(String,(Token, Maybe ExtScheme))] reserved_ids = [ ( "_", (Underscore, Nothing) ), ( "by", (KW_By, Just (Any [TransformListComp])) ), ( "case", (KW_Case, Nothing) ), ( "class", (KW_Class, Nothing) ), ( "data", (KW_Data, Nothing) ), ( "default", (KW_Default, Nothing) ), ( "deriving", (KW_Deriving, Nothing) ), ( "do", (KW_Do, Nothing) ), ( "else", (KW_Else, Nothing) ), ( "family", (KW_Family, Just (Any [TypeFamilies])) ), -- indexed type families ( "forall", (KW_Forall, Just (Any [ExplicitForAll, ExistentialQuantification])) ), -- universal/existential quantification ( "group", (KW_Group, Just (Any [TransformListComp])) ), ( "if", (KW_If, Nothing) ), ( "import", (KW_Import, Nothing) ), ( "in", (KW_In, Nothing) ), ( "infix", (KW_Infix, Nothing) ), ( "infixl", (KW_InfixL, Nothing) ), ( "infixr", (KW_InfixR, Nothing) ), ( "instance", (KW_Instance, Nothing) ), ( "let", (KW_Let, Nothing) ), ( "mdo", (KW_MDo, Just (Any [RecursiveDo])) ), ( "module", (KW_Module, Nothing) ), ( "newtype", (KW_NewType, Nothing) ), ( "of", (KW_Of, Nothing) ), ( "proc", (KW_Proc, Just (Any [Arrows])) ), ( "rec", (KW_Rec, Just (Any [Arrows, RecursiveDo, DoRec])) ), ( "then", (KW_Then, Nothing) ), ( "type", (KW_Type, Nothing) ), ( "using", (KW_Using, Just (Any [TransformListComp])) ), ( "where", (KW_Where, Nothing) ), ( "role", (KW_Role, Just (Any [RoleAnnotations]))), ( "pattern", (KW_Pattern, Just (Any [PatternSynonyms]))), -- FFI ( "foreign", (KW_Foreign, Just (Any [ForeignFunctionInterface])) ) ] special_varids :: [(String,(Token, Maybe ExtScheme))] special_varids = [ ( "as", (KW_As, Nothing) ), ( "qualified", (KW_Qualified, Nothing) ), ( "hiding", (KW_Hiding, Nothing) ), -- FFI ( "export", (KW_Export, Just (Any [ForeignFunctionInterface])) ), ( "safe", (KW_Safe, Just (Any [ForeignFunctionInterface, SafeImports, Safe, Trustworthy])) ), ( "unsafe", (KW_Unsafe, Just (Any [ForeignFunctionInterface])) ), ( "threadsafe", (KW_Threadsafe, Just (Any [ForeignFunctionInterface])) ), ( "interruptible", (KW_Interruptible, Just (Any [InterruptibleFFI])) ), ( "stdcall", (KW_StdCall, Just (Any [ForeignFunctionInterface])) ), ( "ccall", (KW_CCall, Just (Any [ForeignFunctionInterface])) ), ( "cplusplus", (KW_CPlusPlus, Just (Any [ForeignFunctionInterface])) ), ( "dotnet", (KW_DotNet, Just (Any [ForeignFunctionInterface])) ), ( "jvm", (KW_Jvm, Just (Any [ForeignFunctionInterface])) ), ( "js", (KW_Js, Just (Any [ForeignFunctionInterface])) ), ( "javascript", (KW_JavaScript, Just (Any [ForeignFunctionInterface])) ), ( "capi", (KW_CApi, Just (Any [CApiFFI])) ) ] pragmas :: [(String,Token)] pragmas = [ ( "rules", RULES ), ( "inline", INLINE True ), ( "noinline", INLINE False ), ( "notinline", INLINE False ), ( "specialise", SPECIALISE ), ( "specialize", SPECIALISE ), ( "source", SOURCE ), ( "deprecated", DEPRECATED ), ( "warning", WARNING ), ( "ann", ANN ), ( "scc", SCC ), ( "generated", GENERATED ), ( "core", CORE ), ( "unpack", UNPACK ), ( "nounpack", NOUNPACK ), ( "language", LANGUAGE ), ( "minimal", MINIMAL ), ( "no_overlap", NO_OVERLAP ), ( "overlap", OVERLAP ), ( "incoherent", INCOHERENT ), ( "options", OPTIONS undefined ) -- we'll tweak it before use - promise! -- ( "cfiles", CFILES undefined ), -- same here... -- ( "include", INCLUDE undefined ) -- ...and here! ] isIdent, isHSymbol, isPragmaChar :: Char -> Bool isIdent c = isAlphaNum c || c == '\'' || c == '_' isHSymbol c = c `elem` ":!#%&*./?@\\-" || ((isSymbol c || isPunctuation c) && not (c `elem` "(),;[]`{}_\"'")) isPragmaChar c = isAlphaNum c || c == '_' -- Used in the lexing of type applications -- Why is it like this? I don't know exactly but this is how it is in -- GHC's parser. isOpSymbol :: Char -> Bool isOpSymbol c = c `elem` "!#$%&*+./<=>?@\\^|-~" -- | Checks whether the character would be legal in some position of a qvar. -- Means that '..' and "AAA" will pass the test. isPossiblyQvar :: Char -> Bool isPossiblyQvar c = isIdent (toLower c) || c == '.' matchChar :: Char -> String -> Lex a () matchChar c msg = do s <- getInput if null s || head s /= c then fail msg else discard 1 -- The top-level lexer. -- We need to know whether we are at the beginning of the line to decide -- whether to insert layout tokens. lexer :: (Loc Token -> P a) -> P a lexer = runL topLexer topLexer :: Lex a (Loc Token) topLexer = do b <- pullCtxtFlag if b then -- trace (show cf ++ ": " ++ show VRightCurly) $ -- the lex context state flags that we must do an empty {} - UGLY setBOL >> getSrcLocL >>= \l -> return (Loc (mkSrcSpan l l) VRightCurly) else do bol <- checkBOL (bol', ws) <- lexWhiteSpace bol -- take care of whitespace in PCDATA ec <- getExtContext case ec of -- if there was no linebreak, and we are lexing PCDATA, -- then we want to care about the whitespace. -- We don't bother to test for XmlSyntax, since we -- couldn't end up in ChildCtxt otherwise. Just ChildCtxt | not bol' && ws -> getSrcLocL >>= \l -> return $ Loc (mkSrcSpan l l) $ XPCDATA " " _ -> do startToken sl <- getSrcLocL t <- if bol' then lexBOL -- >>= \t -> trace ("BOL: " ++ show t) (return t) else lexToken -- >>= \t -> trace (show t) (return t) el <- getSrcLocL return $ Loc (mkSrcSpan sl el) t lexWhiteSpace :: Bool -> Lex a (Bool, Bool) lexWhiteSpace bol = do s <- getInput ignL <- ignoreLinePragmasL case s of -- If we find a recognised pragma, we don't want to treat it as a comment. '{':'-':'#':rest | isRecognisedPragma rest -> return (bol, False) | isLinePragma rest && not ignL -> do (l, fn) <- lexLinePragma setSrcLineL l setLineFilenameL fn lexWhiteSpace True '{':'-':_ -> do loc <- getSrcLocL discard 2 (bol1, c) <- lexNestedComment bol "" loc2 <- getSrcLocL pushComment $ Comment True (mkSrcSpan loc loc2) (reverse c) (bol2, _) <- lexWhiteSpace bol1 return (bol2, True) '-':'-':s1 | all (== '-') (takeWhile isHSymbol s1) -> do loc <- getSrcLocL discard 2 dashes <- lexWhile (== '-') rest <- lexWhile (/= '\n') s' <- getInput loc2 <- getSrcLocL let com = Comment False (mkSrcSpan loc loc2) $ dashes ++ rest case s' of [] -> pushComment com >> return (False, True) _ -> do pushComment com lexNewline lexWhiteSpace_ True return (True, True) '\n':_ -> do lexNewline lexWhiteSpace_ True return (True, True) '\t':_ -> do lexTab (bol', _) <- lexWhiteSpace bol return (bol', True) c:_ | isSpace c -> do discard 1 (bol', _) <- lexWhiteSpace bol return (bol', True) _ -> return (bol, False) -- | lexWhiteSpace without the return value. lexWhiteSpace_ :: Bool -> Lex a () lexWhiteSpace_ bol = do _ <- lexWhiteSpace bol return () isRecognisedPragma, isLinePragma :: String -> Bool isRecognisedPragma str = let pragma = takeWhile isPragmaChar . dropWhile isSpace $ str in case lookupKnownPragma pragma of Nothing -> False _ -> True isLinePragma str = let pragma = map toLower . takeWhile isAlphaNum . dropWhile isSpace $ str in case pragma of "line" -> True _ -> False lexLinePragma :: Lex a (Int, String) lexLinePragma = do discard 3 -- {-# lexWhile_ isSpace discard 4 -- LINE lexWhile_ isSpace i <- lexWhile isDigit when (null i) $ fail "Improperly formatted LINE pragma" lexWhile_ isSpace matchChar '"' "Improperly formatted LINE pragma" fn <- lexWhile (/= '"') matchChar '"' "Impossible - lexLinePragma" lexWhile_ isSpace mapM_ (flip matchChar "Improperly formatted LINE pragma") "#-}" lexNewline return (read i, fn) lexNestedComment :: Bool -> String -> Lex a (Bool, String) lexNestedComment bol str = do s <- getInput case s of '-':'}':_ -> discard 2 >> return (bol, str) '{':'-':_ -> do discard 2 (bol', c) <- lexNestedComment bol ("-{" ++ str) -- rest of the subcomment lexNestedComment bol' ("}-" ++ c ) -- rest of this comment '\t':_ -> lexTab >> lexNestedComment bol ('\t':str) '\n':_ -> lexNewline >> lexNestedComment True ('\n':str) c:_ -> discard 1 >> lexNestedComment bol (c:str) [] -> fail "Unterminated nested comment" -- When we are lexing the first token of a line, check whether we need to -- insert virtual semicolons or close braces due to layout. lexBOL :: Lex a Token lexBOL = do pos <- getOffside -- trace ("Off: " ++ (show pos)) $ do case pos of LT -> do -- trace "layout: inserting '}'\n" $ -- Set col to 0, indicating that we're still at the -- beginning of the line, in case we need a semi-colon too. -- Also pop the context here, so that we don't insert -- another close brace before the parser can pop it. setBOL popContextL "lexBOL" return VRightCurly EQ -> -- trace "layout: inserting ';'\n" $ return SemiColon GT -> lexToken lexToken :: Lex a Token lexToken = do ec <- getExtContext -- we don't bother to check XmlSyntax since we couldn't -- have ended up in a non-Nothing context if it wasn't -- enabled. case ec of Just HarpCtxt -> lexHarpToken Just TagCtxt -> lexTagCtxt Just CloseTagCtxt -> lexCloseTagCtxt Just ChildCtxt -> lexChildCtxt Just CodeTagCtxt -> lexCodeTagCtxt _ -> lexStdToken lexChildCtxt :: Lex a Token lexChildCtxt = do -- if we ever end up here, then XmlSyntax must be on. s <- getInput case s of '<':'%':'>':_ -> do discard 3 pushExtContextL ChildCtxt return XChildTagOpen '<':'%':_ -> do discard 2 pushExtContextL CodeTagCtxt return XCodeTagOpen '<':'/':_ -> do discard 2 popExtContextL "lexChildCtxt" pushExtContextL CloseTagCtxt return XCloseTagOpen '<':'[':_ -> do discard 2 pushExtContextL HarpCtxt return XRPatOpen '<':_ -> do discard 1 pushExtContextL TagCtxt return XStdTagOpen _ -> lexPCDATA lexPCDATA :: Lex a Token lexPCDATA = do -- if we ever end up here, then XmlSyntax must be on. s <- getInput case s of [] -> return EOF _ -> case s of '\n':_ -> do x <- lexNewline >> lexPCDATA case x of XPCDATA p -> return $ XPCDATA $ '\n':p EOF -> return EOF _ -> fail $ "lexPCDATA: unexpected token: " ++ show x '<':_ -> return $ XPCDATA "" _ -> do let pcd = takeWhile (\c -> c `notElem` "<\n") s l = length pcd discard l x <- lexPCDATA case x of XPCDATA pcd' -> return $ XPCDATA $ pcd ++ pcd' EOF -> return EOF _ -> fail $ "lexPCDATA: unexpected token: " ++ show x lexCodeTagCtxt :: Lex a Token lexCodeTagCtxt = do -- if we ever end up here, then XmlSyntax must be on. s <- getInput case s of '%':'>':_ -> do discard 2 popExtContextL "lexCodeTagContext" return XCodeTagClose _ -> lexStdToken lexCloseTagCtxt :: Lex a Token lexCloseTagCtxt = do -- if we ever end up here, then XmlSyntax must be on. s <- getInput case s of '%':'>':_ -> do discard 2 popExtContextL "lexCloseTagCtxt" return XCodeTagClose '>':_ -> do discard 1 popExtContextL "lexCloseTagCtxt" return XStdTagClose _ -> lexStdToken lexTagCtxt :: Lex a Token lexTagCtxt = do -- if we ever end up here, then XmlSyntax must be on. s <- getInput case s of '/':'>':_ -> do discard 2 popExtContextL "lexTagCtxt: Empty tag" return XEmptyTagClose '>':_ -> do discard 1 popExtContextL "lexTagCtxt: Standard tag" pushExtContextL ChildCtxt return XStdTagClose _ -> lexStdToken lexHarpToken :: Lex a Token lexHarpToken = do -- if we ever end up here, then RegularPatterns must be on. s <- getInput case s of ']':'>':_ -> do discard 2 popExtContextL "lexHarpToken" return XRPatClose _ -> lexStdToken lexStdToken :: Lex a Token lexStdToken = do s <- getInput exts <- getExtensionsL let intHash = lexHash IntTok IntTokHash (Right WordTokHash) case s of [] -> return EOF '0':c:d:_ | toLower c == 'o' && isOctDigit d -> do discard 2 (n, str) <- lexOctal con <- intHash return (con (n, '0':c:str)) | toLower c == 'b' && isBinDigit d && BinaryLiterals `elem` exts -> do discard 2 (n, str) <- lexBinary con <- intHash return (con (n, '0':c:str)) | toLower c == 'x' && isHexDigit d -> do discard 2 (n, str) <- lexHexadecimal con <- intHash return (con (n, '0':c:str)) -- implicit parameters '?':c:_ | isLower c && ImplicitParams `elem` exts -> do discard 1 id <- lexWhile isIdent return $ IDupVarId id '%':c:_ | isLower c && ImplicitParams `elem` exts -> do discard 1 id <- lexWhile isIdent return $ ILinVarId id -- end implicit parameters -- harp -- '(':'|':c:_ | isHSymbol c -> discard 1 >> return LeftParen '(':'|':c:_ | RegularPatterns `elem` exts && not (isHSymbol c) -> do discard 2 return RPGuardOpen '|':')':_ | RegularPatterns `elem` exts -> do discard 2 return RPGuardClose {- This is handled by the reserved_ops above. '@':':':_ | RegularPatterns `elem` exts -> do discard 2 return RPCAt -} -- template haskell '[':'|':_ | TemplateHaskell `elem` exts -> do discard 2 return THExpQuote '[':c:'|':_ | c == 'e' && TemplateHaskell `elem` exts -> do discard 3 return THExpQuote | c == 'p' && TemplateHaskell `elem` exts -> do discard 3 return THPatQuote | c == 'd' && TemplateHaskell `elem` exts -> do discard 3 return THDecQuote | c == 't' && TemplateHaskell `elem` exts -> do discard 3 return THTypQuote '[':'$':c:_ | isLower c && QuasiQuotes `elem` exts -> discard 2 >> lexQuasiQuote c '[':c:s' | isLower c && QuasiQuotes `elem` exts && case dropWhile isIdent s' of { '|':_ -> True;_->False} -> discard 1 >> lexQuasiQuote c | isUpper c && QuasiQuotes `elem` exts && case dropWhile isPossiblyQvar s' of { '|':_ -> True;_->False} -> discard 1 >> lexQuasiQuote c '|':']':_ | TemplateHaskell `elem` exts -> do discard 2 return THCloseQuote '$':c:_ | isLower c && TemplateHaskell `elem` exts -> do discard 1 id <- lexWhile isIdent return $ THIdEscape id | c == '(' && TemplateHaskell `elem` exts -> do discard 2 return THParenEscape -- end template haskell -- hsx '<':'%':c:_ | XmlSyntax `elem` exts -> case c of '>' -> do discard 3 pushExtContextL ChildCtxt return XChildTagOpen _ -> do discard 2 pushExtContextL CodeTagCtxt return XCodeTagOpen '<':c:_ | isAlpha c && XmlSyntax `elem` exts -> do discard 1 pushExtContextL TagCtxt return XStdTagOpen -- end hsx '(':'#':c:_ | UnboxedTuples `elem` exts && not (isHSymbol c) -> discard 2 >> return LeftHashParen '#':')':_ | UnboxedTuples `elem` exts -> discard 2 >> return RightHashParen -- pragmas '{':'-':'#':_ -> saveExtensionsL >> discard 3 >> lexPragmaStart '#':'-':'}':_ -> restoreExtensionsL >> discard 3 >> return PragmaEnd -- Parallel arrays '[':':':_ | ParallelArrays `elem` exts -> discard 2 >> return ParArrayLeftSquare ':':']':_ | ParallelArrays `elem` exts -> discard 2 >> return ParArrayRightSquare -- Lexed seperately to deal with visible type applciation '@':c:_ | TypeApplications `elem` exts -- Operator starting with an '@' && not (isOpSymbol c) -> do lc <- getLastChar if isIdent lc then discard 1 >> return At else discard 1 >> return TApp '#':c:_ | OverloadedLabels `elem` exts && isLower c -> do discard 1 [ident] <- lexIdents return $ LabelVarId ident c:_ | isDigit c -> lexDecimalOrFloat | isUpper c -> lexConIdOrQual "" | isLower c || c == '_' -> do idents <- lexIdents case idents of [ident] -> case lookup ident (reserved_ids ++ special_varids) of Just (keyword, scheme) -> -- check if an extension keyword is enabled if isEnabled scheme exts then flagKW keyword >> return keyword else return $ VarId ident Nothing -> return $ VarId ident _ -> return $ DVarId idents | isHSymbol c -> do sym <- lexWhile isHSymbol return $ case lookup sym (reserved_ops ++ special_varops) of Just (t , scheme) -> -- check if an extension op is enabled if isEnabled scheme exts then t else case c of ':' -> ConSym sym _ -> VarSym sym Nothing -> case c of ':' -> ConSym sym _ -> VarSym sym | otherwise -> do discard 1 case c of -- First the special symbols '(' -> return LeftParen ')' -> return RightParen ',' -> return Comma ';' -> return SemiColon '[' -> return LeftSquare ']' -> return RightSquare '`' -> return BackQuote '{' -> do pushContextL NoLayout return LeftCurly '}' -> do popContextL "lexStdToken" return RightCurly '\'' -> lexCharacter '"' -> lexString _ -> fail ("Illegal character \'" ++ show c ++ "\'\n") where lexIdents :: Lex a [String] lexIdents = do ident <- lexWhile isIdent s <- getInput exts <- getExtensionsL case s of -- This is the only way we can get more than one ident in the list -- and it requires XmlSyntax to be on. '-':c:_ | XmlSyntax `elem` exts && isAlpha c -> do discard 1 idents <- lexIdents return $ ident : idents '#':_ | MagicHash `elem` exts -> do hashes <- lexWhile (== '#') return [ident ++ hashes] _ -> return [ident] lexQuasiQuote :: Char -> Lex a Token lexQuasiQuote c = do -- We've seen and dropped [$ already ident <- lexQuoter matchChar '|' "Malformed quasi-quote quoter" body <- lexQQBody return $ THQuasiQuote (ident, body) where lexQuoter | isLower c = lexWhile isIdent | otherwise = do qualThing <- lexConIdOrQual "" case qualThing of QVarId (s1,s2) -> return $ s1 ++ '.':s2 QVarSym (s1, s2) -> return $ s1 ++ '.':s2 _ -> fail "Malformed quasi-quote quoter" lexQQBody :: Lex a String lexQQBody = do s <- getInput case s of '\\':']':_ -> do discard 2 str <- lexQQBody return (']':str) '\\':'|':_ -> do discard 2 str <- lexQQBody return ('|':str) '|':']':_ -> discard 2 >> return "" '|':_ -> do discard 1 str <- lexQQBody return ('|':str) ']':_ -> do discard 1 str <- lexQQBody return (']':str) '\\':_ -> do discard 1 str <- lexQQBody return ('\\':str) '\n':_ -> do lexNewline str <- lexQQBody return ('\n':str) [] -> fail "Unexpected end of input while lexing quasi-quoter" _ -> do str <- lexWhile (not . (`elem` "\\|\n")) rest <- lexQQBody return (str++rest) -- Underscores are used in some pragmas. Options pragmas are a special case -- with our representation: the thing after the underscore is a parameter. -- Strip off the parameters to option pragmas by hand here, everything else -- sits in the pragmas map. lookupKnownPragma :: String -> Maybe Token lookupKnownPragma s = case map toLower s of x | "options_" `isPrefixOf` x -> Just $ OPTIONS (Just $ drop 8 s, undefined) | "options" == x -> Just $ OPTIONS (Nothing, undefined) | otherwise -> lookup x pragmas lexPragmaStart :: Lex a Token lexPragmaStart = do lexWhile_ isSpace pr <- lexWhile isPragmaChar case lookupKnownPragma pr of Just (INLINE True) -> do s <- getInput case map toLower s of ' ':'c':'o':'n':'l':'i':'k':'e':_ -> do discard 8 return INLINE_CONLIKE _ -> return $ INLINE True Just SPECIALISE -> do s <- getInput case dropWhile isSpace $ map toLower s of 'i':'n':'l':'i':'n':'e':_ -> do lexWhile_ isSpace discard 6 return $ SPECIALISE_INLINE True 'n':'o':'i':'n':'l':'i':'n':'e':_ -> do lexWhile_ isSpace discard 8 return $ SPECIALISE_INLINE False 'n':'o':'t':'i':'n':'l':'i':'n':'e':_ -> do lexWhile_ isSpace discard 9 return $ SPECIALISE_INLINE False _ -> return SPECIALISE Just (OPTIONS opt) -> -- see, I promised we'd mask out the 'undefined' -- We do not want to store necessary whitespace in the datatype -- but if the pragma starts with a newline then we must keep -- it to differentiate the two cases. let dropIfSpace (' ':xs) = xs dropIfSpace xs = xs in case fst opt of Just opt' -> do rest <- lexRawPragma return $ OPTIONS (Just opt', dropIfSpace rest) Nothing -> do s <- getInput case s of x:_ | isSpace x -> do rest <- lexRawPragma return $ OPTIONS (Nothing, dropIfSpace rest) _ -> fail "Malformed Options pragma" Just RULES -> do -- Rules enable ScopedTypeVariables locally. addExtensionL ScopedTypeVariables return RULES {- Just (CFILES _) -> do rest <- lexRawPragma return $ CFILES rest Just (INCLUDE _) -> do rest <- lexRawPragma return $ INCLUDE rest -} Just p -> return p _ -> fail "Internal error: Unrecognised recognised pragma" -- do rawStr <- lexRawPragma -- return $ PragmaUnknown (pr, rawStr) -- no support for unrecognized pragmas, treat as comment -- discard 3 -- #-} -- topLexer -- we just discard it as a comment for now and restart -} lexRawPragma :: Lex a String lexRawPragma = lexRawPragmaAux where lexRawPragmaAux = do rpr <- lexWhile (/='#') s <- getInput case s of '#':'-':'}':_ -> return rpr "" -> fail "End-of-file inside pragma" _ -> do discard 1 rpr' <- lexRawPragma return $ rpr ++ '#':rpr' lexDecimalOrFloat :: Lex a Token lexDecimalOrFloat = do ds <- lexWhile isDigit rest <- getInput exts <- getExtensionsL case rest of ('.':d:_) | isDigit d -> do discard 1 frac <- lexWhile isDigit let num = parseInteger 10 (ds ++ frac) decimals = toInteger (length frac) (exponent, estr) <- do rest2 <- getInput case rest2 of 'e':_ -> lexExponent 'E':_ -> lexExponent _ -> return (0,"") con <- lexHash FloatTok FloatTokHash (Right DoubleTokHash) return $ con ((num%1) * 10^^(exponent - decimals), ds ++ '.':frac ++ estr) e:_ | toLower e == 'e' -> do (exponent, estr) <- lexExponent con <- lexHash FloatTok FloatTokHash (Right DoubleTokHash) return $ con ((parseInteger 10 ds%1) * 10^^exponent, ds ++ estr) '#':'#':_ | MagicHash `elem` exts -> discard 2 >> return (WordTokHash (parseInteger 10 ds, ds)) '#':_ | MagicHash `elem` exts -> discard 1 >> return (IntTokHash (parseInteger 10 ds, ds)) _ -> return (IntTok (parseInteger 10 ds, ds)) where lexExponent :: Lex a (Integer, String) lexExponent = do (e:r) <- getInput discard 1 -- 'e' or 'E' case r of '+':d:_ | isDigit d -> do discard 1 (n, str) <- lexDecimal return (n, e:'+':str) '-':d:_ | isDigit d -> do discard 1 (n, str) <- lexDecimal return (negate n, e:'-':str) d:_ | isDigit d -> lexDecimal >>= \(n,str) -> return (n, e:str) _ -> fail "Float with missing exponent" lexHash :: (b -> Token) -> (b -> Token) -> Either String (b -> Token) -> Lex a (b -> Token) lexHash a b c = do exts <- getExtensionsL if MagicHash `elem` exts then do r <- getInput case r of '#':'#':_ -> case c of Right c' -> discard 2 >> return c' Left s -> fail s '#':_ -> discard 1 >> return b _ -> return a else return a lexConIdOrQual :: String -> Lex a Token lexConIdOrQual qual = do con <- lexWhile isIdent let conid | null qual = ConId con | otherwise = QConId (qual,con) qual' | null qual = con | otherwise = qual ++ '.':con just_a_conid <- alternative (return conid) rest <- getInput exts <- getExtensionsL case rest of '.':c:_ | isLower c || c == '_' -> do -- qualified varid? discard 1 ident <- lexWhile isIdent s <- getInput exts' <- getExtensionsL ident' <- case s of '#':_ | MagicHash `elem` exts' -> discard 1 >> return (ident ++ "#") _ -> return ident case lookup ident' reserved_ids of -- cannot qualify a reserved word Just (_,scheme) | isEnabled scheme exts' -> just_a_conid _ -> return (QVarId (qual', ident')) | isUpper c -> do -- qualified conid? discard 1 lexConIdOrQual qual' | isHSymbol c -> do -- qualified symbol? discard 1 sym <- lexWhile isHSymbol exts' <- getExtensionsL case lookup sym reserved_ops of -- cannot qualify a reserved operator Just (_,scheme) | isEnabled scheme exts' -> just_a_conid _ -> return $ case c of ':' -> QConSym (qual', sym) _ -> QVarSym (qual', sym) '#':cs | null cs || not (isHSymbol $ head cs) && not (isIdent $ head cs) && MagicHash `elem` exts -> do discard 1 case conid of ConId con' -> return $ ConId $ con' ++ "#" QConId (q,con') -> return $ QConId (q,con' ++ "#") _ -> fail $ "lexConIdOrQual: unexpected token: " ++ show conid _ -> return conid -- not a qualified thing lexCharacter :: Lex a Token lexCharacter = do -- We need to keep track of not only character constants but also TH 'x and ''T -- We've seen ' so far s <- getInput exts <- getExtensionsL case s of '\'':_ | TemplateHaskell `elem` exts -> discard 1 >> return THTyQuote '\\':_ -> do (c,raw) <- lexEscape matchQuote con <- lexHash Character CharacterHash (Left "Double hash not available for character literals") return (con (c, '\\':raw)) c:'\'':_ -> do discard 2 con <- lexHash Character CharacterHash (Left "Double hash not available for character literals") return (con (c, [c])) _ | any (`elem` exts) [TemplateHaskell, DataKinds] -> return THVarQuote _ -> fail "Improper character constant or misplaced \'" where matchQuote = matchChar '\'' "Improperly terminated character constant" lexString :: Lex a Token lexString = loop ("","") where loop (s,raw) = do r <- getInput exts <- getExtensionsL case r of '\\':'&':_ -> do discard 2 loop (s, '&':'\\':raw) '\\':c:_ | isSpace c -> do discard 1 wcs <- lexWhiteChars matchChar '\\' "Illegal character in string gap" loop (s, '\\':reverse wcs ++ '\\':raw) | otherwise -> do (ce, str) <- lexEscape loop (ce:s, reverse str ++ '\\':raw) '"':'#':_ | MagicHash `elem` exts -> do discard 2 return (StringHash (reverse s, reverse raw)) '"':_ -> do discard 1 return (StringTok (reverse s, reverse raw)) c:_ | c /= '\n' -> do discard 1 loop (c:s, c:raw) _ -> fail "Improperly terminated string" lexWhiteChars :: Lex a String lexWhiteChars = do s <- getInput case s of '\n':_ -> do lexNewline wcs <- lexWhiteChars return $ '\n':wcs '\t':_ -> do lexTab wcs <- lexWhiteChars return $ '\t':wcs c:_ | isSpace c -> do discard 1 wcs <- lexWhiteChars return $ c:wcs _ -> return "" lexEscape :: Lex a (Char, String) lexEscape = do discard 1 r <- getInput case r of -- Production charesc from section B.2 (Note: \& is handled by caller) 'a':_ -> discard 1 >> return ('\a', "a") 'b':_ -> discard 1 >> return ('\b', "b") 'f':_ -> discard 1 >> return ('\f', "f") 'n':_ -> discard 1 >> return ('\n', "n") 'r':_ -> discard 1 >> return ('\r', "r") 't':_ -> discard 1 >> return ('\t', "t") 'v':_ -> discard 1 >> return ('\v', "v") '\\':_ -> discard 1 >> return ('\\', "\\") '"':_ -> discard 1 >> return ('\"', "\"") '\'':_ -> discard 1 >> return ('\'', "\'") -- Production ascii from section B.2 '^':c:_ -> discard 2 >> cntrl c 'N':'U':'L':_ -> discard 3 >> return ('\NUL', "NUL") 'S':'O':'H':_ -> discard 3 >> return ('\SOH', "SOH") 'S':'T':'X':_ -> discard 3 >> return ('\STX', "STX") 'E':'T':'X':_ -> discard 3 >> return ('\ETX', "ETX") 'E':'O':'T':_ -> discard 3 >> return ('\EOT', "EOT") 'E':'N':'Q':_ -> discard 3 >> return ('\ENQ', "ENQ") 'A':'C':'K':_ -> discard 3 >> return ('\ACK', "ACK") 'B':'E':'L':_ -> discard 3 >> return ('\BEL', "BEL") 'B':'S':_ -> discard 2 >> return ('\BS', "BS") 'H':'T':_ -> discard 2 >> return ('\HT', "HT") 'L':'F':_ -> discard 2 >> return ('\LF', "LF") 'V':'T':_ -> discard 2 >> return ('\VT', "VT") 'F':'F':_ -> discard 2 >> return ('\FF', "FF") 'C':'R':_ -> discard 2 >> return ('\CR', "CR") 'S':'O':_ -> discard 2 >> return ('\SO', "SO") 'S':'I':_ -> discard 2 >> return ('\SI', "SI") 'D':'L':'E':_ -> discard 3 >> return ('\DLE', "DLE") 'D':'C':'1':_ -> discard 3 >> return ('\DC1', "DC1") 'D':'C':'2':_ -> discard 3 >> return ('\DC2', "DC2") 'D':'C':'3':_ -> discard 3 >> return ('\DC3', "DC3") 'D':'C':'4':_ -> discard 3 >> return ('\DC4', "DC4") 'N':'A':'K':_ -> discard 3 >> return ('\NAK', "NAK") 'S':'Y':'N':_ -> discard 3 >> return ('\SYN', "SYN") 'E':'T':'B':_ -> discard 3 >> return ('\ETB', "ETB") 'C':'A':'N':_ -> discard 3 >> return ('\CAN', "CAN") 'E':'M':_ -> discard 2 >> return ('\EM', "EM") 'S':'U':'B':_ -> discard 3 >> return ('\SUB', "SUB") 'E':'S':'C':_ -> discard 3 >> return ('\ESC', "ESC") 'F':'S':_ -> discard 2 >> return ('\FS', "FS") 'G':'S':_ -> discard 2 >> return ('\GS', "GS") 'R':'S':_ -> discard 2 >> return ('\RS', "RS") 'U':'S':_ -> discard 2 >> return ('\US', "US") 'S':'P':_ -> discard 2 >> return ('\SP', "SP") 'D':'E':'L':_ -> discard 3 >> return ('\DEL', "DEL") -- Escaped numbers 'o':c:_ | isOctDigit c -> do discard 1 (n, raw) <- lexOctal n' <- checkChar n return (n', 'o':raw) 'x':c:_ | isHexDigit c -> do discard 1 (n, raw) <- lexHexadecimal n' <- checkChar n return (n', 'x':raw) c:_ | isDigit c -> do (n, raw) <- lexDecimal n' <- checkChar n return (n', raw) _ -> fail "Illegal escape sequence" where checkChar n | n <= 0x10FFFF = return (chr (fromInteger n)) checkChar _ = fail "Character constant out of range" -- Production cntrl from section B.2 cntrl :: Char -> Lex a (Char, String) cntrl c | c >= '@' && c <= '_' = return (chr (ord c - ord '@'), '^':c:[]) cntrl _ = fail "Illegal control character" -- assumes at least one octal digit lexOctal :: Lex a (Integer, String) lexOctal = do ds <- lexWhile isOctDigit return (parseInteger 8 ds, ds) -- assumes at least one binary digit lexBinary :: Lex a (Integer, String) lexBinary = do ds <- lexWhile isBinDigit return (parseInteger 2 ds, ds) -- assumes at least one hexadecimal digit lexHexadecimal :: Lex a (Integer, String) lexHexadecimal = do ds <- lexWhile isHexDigit return (parseInteger 16 ds, ds) -- assumes at least one decimal digit lexDecimal :: Lex a (Integer, String) lexDecimal = do ds <- lexWhile isDigit return (parseInteger 10 ds, ds) -- Stolen from Hugs's Prelude parseInteger :: Integer -> String -> Integer parseInteger radix ds = foldl1 (\n d -> n * radix + d) (map (toInteger . digitToInt) ds) flagKW :: Token -> Lex a () flagKW t = when (t `elem` [KW_Do, KW_MDo]) $ do exts <- getExtensionsL when (NondecreasingIndentation `elem` exts) flagDo -- | Selects ASCII binary digits, i.e. @\'0\'@..@\'1\'@. isBinDigit :: Char -> Bool isBinDigit c = c >= '0' && c <= '1' ------------------------------------------------------------------ -- "Pretty" printing for tokens showToken :: Token -> String showToken t = case t of VarId s -> s LabelVarId s -> '#':s QVarId (q,s) -> q ++ '.':s IDupVarId s -> '?':s ILinVarId s -> '%':s ConId s -> s QConId (q,s) -> q ++ '.':s DVarId ss -> intercalate "-" ss VarSym s -> s ConSym s -> s QVarSym (q,s) -> q ++ '.':s QConSym (q,s) -> q ++ '.':s IntTok (_, s) -> s FloatTok (_, s) -> s Character (_, s) -> '\'':s ++ "'" StringTok (_, s) -> '"':s ++ "\"" IntTokHash (_, s) -> s ++ "#" WordTokHash (_, s) -> s ++ "##" FloatTokHash (_, s) -> s ++ "#" DoubleTokHash (_, s) -> s ++ "##" CharacterHash (_, s) -> '\'':s ++ "'#" StringHash (_, s) -> '"':s ++ "\"#" LeftParen -> "(" RightParen -> ")" LeftHashParen -> "(#" RightHashParen -> "#)" SemiColon -> ";" LeftCurly -> "{" RightCurly -> "}" VRightCurly -> "virtual }" LeftSquare -> "[" RightSquare -> "]" ParArrayLeftSquare -> "[:" ParArrayRightSquare -> ":]" Comma -> "," Underscore -> "_" BackQuote -> "`" QuoteColon -> "':" Dot -> "." DotDot -> ".." Colon -> ":" DoubleColon -> "::" Equals -> "=" Backslash -> "\\" Bar -> "|" LeftArrow -> "<-" RightArrow -> "->" At -> "@" TApp -> "@" Tilde -> "~" DoubleArrow -> "=>" Minus -> "-" Exclamation -> "!" Star -> "*" LeftArrowTail -> "-<" RightArrowTail -> ">-" LeftDblArrowTail -> "-<<" RightDblArrowTail -> ">>-" THExpQuote -> "[|" THPatQuote -> "[p|" THDecQuote -> "[d|" THTypQuote -> "[t|" THCloseQuote -> "|]" THIdEscape s -> '$':s THParenEscape -> "$(" THVarQuote -> "'" THTyQuote -> "''" THQuasiQuote (n,q) -> "[$" ++ n ++ "|" ++ q ++ "]" RPGuardOpen -> "(|" RPGuardClose -> "|)" RPCAt -> "@:" XCodeTagOpen -> "<%" XCodeTagClose -> "%>" XStdTagOpen -> "<" XStdTagClose -> ">" XCloseTagOpen -> " "/>" XPCDATA s -> "PCDATA " ++ s XRPatOpen -> "<[" XRPatClose -> "]>" PragmaEnd -> "#-}" RULES -> "{-# RULES" INLINE b -> "{-# " ++ if b then "INLINE" else "NOINLINE" INLINE_CONLIKE -> "{-# " ++ "INLINE CONLIKE" SPECIALISE -> "{-# SPECIALISE" SPECIALISE_INLINE b -> "{-# SPECIALISE " ++ if b then "INLINE" else "NOINLINE" SOURCE -> "{-# SOURCE" DEPRECATED -> "{-# DEPRECATED" WARNING -> "{-# WARNING" SCC -> "{-# SCC" GENERATED -> "{-# GENERATED" CORE -> "{-# CORE" UNPACK -> "{-# UNPACK" NOUNPACK -> "{-# NOUNPACK" OPTIONS (mt,_) -> "{-# OPTIONS" ++ maybe "" (':':) mt ++ " ..." -- CFILES s -> "{-# CFILES ..." -- INCLUDE s -> "{-# INCLUDE ..." LANGUAGE -> "{-# LANGUAGE" ANN -> "{-# ANN" MINIMAL -> "{-# MINIMAL" NO_OVERLAP -> "{-# NO_OVERLAP" OVERLAP -> "{-# OVERLAP" INCOHERENT -> "{-# INCOHERENT" KW_As -> "as" KW_By -> "by" KW_Case -> "case" KW_Class -> "class" KW_Data -> "data" KW_Default -> "default" KW_Deriving -> "deriving" KW_Do -> "do" KW_MDo -> "mdo" KW_Else -> "else" KW_Family -> "family" KW_Forall -> "forall" KW_Group -> "group" KW_Hiding -> "hiding" KW_If -> "if" KW_Import -> "import" KW_In -> "in" KW_Infix -> "infix" KW_InfixL -> "infixl" KW_InfixR -> "infixr" KW_Instance -> "instance" KW_Let -> "let" KW_Module -> "module" KW_NewType -> "newtype" KW_Of -> "of" KW_Proc -> "proc" KW_Rec -> "rec" KW_Then -> "then" KW_Type -> "type" KW_Using -> "using" KW_Where -> "where" KW_Qualified -> "qualified" KW_Foreign -> "foreign" KW_Export -> "export" KW_Safe -> "safe" KW_Unsafe -> "unsafe" KW_Threadsafe -> "threadsafe" KW_Interruptible -> "interruptible" KW_StdCall -> "stdcall" KW_CCall -> "ccall" XChildTagOpen -> "<%>" KW_CPlusPlus -> "cplusplus" KW_DotNet -> "dotnet" KW_Jvm -> "jvm" KW_Js -> "js" KW_JavaScript -> "javascript" KW_CApi -> "capi" KW_Role -> "role" KW_Pattern -> "pattern" EOF -> "EOF" haskell-src-exts-1.18.2/src/Language/Haskell/Exts/InternalParser.hs0000644000000000000000000366045312746233113023312 0ustar0000000000000000{-# OPTIONS_GHC -w #-} {-# OPTIONS_HADDOCK hide #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Annotated.Parser -- Copyright : (c) Niklas Broberg 2004-2009, -- Original (c) Simon Marlow, Sven Panne 1997-2000 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.InternalParser ( mparseModule, mparseExp, mparsePat, mparseDecl, mparseType, mparseStmt, mparseImportDecl, ngparseModulePragmas, ngparseModuleHeadAndImports, ngparsePragmasAndModuleHead, ngparsePragmasAndModuleName ) where import Language.Haskell.Exts.Syntax hiding ( Type(..), Exp(..), Asst(..), XAttr(..), FieldUpdate(..) ) import Language.Haskell.Exts.Syntax ( Type, Exp, Asst ) import Language.Haskell.Exts.ParseMonad import Language.Haskell.Exts.InternalLexer import Language.Haskell.Exts.ParseUtils import Language.Haskell.Exts.Fixity import Language.Haskell.Exts.SrcLoc import Language.Haskell.Exts.Extension import Control.Monad ( liftM, (<=<), when ) import Control.Applicative ( (<$>) ) import Data.Maybe import Control.Applicative(Applicative(..)) import Control.Monad (ap) -- parser produced by Happy Version 1.19.5 data HappyAbsSyn = HappyTerminal (Loc Token) | HappyErrorToken Int | HappyAbsSyn14 ([Module L]) | HappyAbsSyn15 ([[ModulePragma L] -> [S] -> L -> Module L]) | HappyAbsSyn16 (Module L) | HappyAbsSyn17 (PExp L) | HappyAbsSyn18 (([ModulePragma L],[S],L)) | HappyAbsSyn19 (([ModulePragma L],[S],Maybe L)) | HappyAbsSyn20 (ModulePragma L) | HappyAbsSyn21 (([Name L],[S])) | HappyAbsSyn22 ([ModulePragma L] -> [S] -> L -> Module L) | HappyAbsSyn23 (Maybe (ModuleHead L)) | HappyAbsSyn24 (Maybe (WarningText L)) | HappyAbsSyn25 (([ImportDecl L],[Decl L],[S],L)) | HappyAbsSyn26 (([ImportDecl L],[Decl L],[S])) | HappyAbsSyn27 ([S]) | HappyAbsSyn29 (Maybe (ExportSpecList L)) | HappyAbsSyn30 (ExportSpecList L) | HappyAbsSyn32 (([ExportSpec L],[S])) | HappyAbsSyn33 (ExportSpec L) | HappyAbsSyn34 (QName L) | HappyAbsSyn35 (([ImportDecl L],[S])) | HappyAbsSyn36 (ImportDecl L) | HappyAbsSyn37 ((Bool,[S])) | HappyAbsSyn40 ((Maybe String,[S])) | HappyAbsSyn41 ((Maybe (ModuleName L),[S],Maybe L)) | HappyAbsSyn42 (Maybe (ImportSpecList L)) | HappyAbsSyn43 (ImportSpecList L) | HappyAbsSyn44 ((Bool, Maybe L,[S])) | HappyAbsSyn45 (([ImportSpec L],[S])) | HappyAbsSyn46 (ImportSpec L) | HappyAbsSyn47 (([CName L],[S])) | HappyAbsSyn48 (CName L) | HappyAbsSyn49 (Decl L) | HappyAbsSyn50 ((Maybe Int, [S])) | HappyAbsSyn51 (Assoc L) | HappyAbsSyn52 (([Op L],[S],L)) | HappyAbsSyn53 (Maybe (InjectivityInfo L)) | HappyAbsSyn54 (InjectivityInfo L) | HappyAbsSyn55 ([Name L]) | HappyAbsSyn56 (([Decl L],[S])) | HappyAbsSyn59 (Maybe (ResultSig L)) | HappyAbsSyn61 ((Maybe (ResultSig L), Maybe (InjectivityInfo L))) | HappyAbsSyn62 ((Maybe (ResultSig L), Maybe (S, Type L), Maybe (InjectivityInfo L))) | HappyAbsSyn64 ([(Maybe String, L)]) | HappyAbsSyn65 ((Maybe String, L)) | HappyAbsSyn66 (Maybe (Overlap L)) | HappyAbsSyn67 (Maybe ([TypeEqn L], S)) | HappyAbsSyn68 ([TypeEqn L]) | HappyAbsSyn70 (TypeEqn L) | HappyAbsSyn71 (DataOrNew L) | HappyAbsSyn72 (([Type L],[S])) | HappyAbsSyn76 (Binds L) | HappyAbsSyn81 (Type L) | HappyAbsSyn82 (Maybe (BooleanFormula L)) | HappyAbsSyn83 (BooleanFormula L) | HappyAbsSyn87 (([Name L],[S],L)) | HappyAbsSyn88 (CallConv L) | HappyAbsSyn89 (Maybe (Safety L)) | HappyAbsSyn90 ((Maybe String, Name L, Type L, [S])) | HappyAbsSyn91 ([Rule L]) | HappyAbsSyn92 (Rule L) | HappyAbsSyn93 (Maybe (Activation L)) | HappyAbsSyn94 ((Maybe [RuleVar L],[S])) | HappyAbsSyn95 ([RuleVar L]) | HappyAbsSyn96 (RuleVar L) | HappyAbsSyn97 (([([Name L],String)],[S])) | HappyAbsSyn98 ((([Name L], String),[S])) | HappyAbsSyn100 (Name L) | HappyAbsSyn101 (Annotation L) | HappyAbsSyn103 (PType L) | HappyAbsSyn110 (Promoted L) | HappyAbsSyn111 ((Maybe (L -> BangType L,S), Maybe (Unpackedness L))) | HappyAbsSyn112 ((L -> BangType L, S)) | HappyAbsSyn113 (Unpackedness L) | HappyAbsSyn119 (PContext L) | HappyAbsSyn120 (([PType L],[S])) | HappyAbsSyn122 (([TyVarBind L],Maybe L)) | HappyAbsSyn123 (TyVarBind L) | HappyAbsSyn124 (([Name L],Maybe L)) | HappyAbsSyn125 (([Name L],L)) | HappyAbsSyn126 (([FunDep L],[S],Maybe L)) | HappyAbsSyn127 (([FunDep L],[S],L)) | HappyAbsSyn128 (FunDep L) | HappyAbsSyn129 (([GadtDecl L],[S],Maybe L)) | HappyAbsSyn130 (([GadtDecl L],[S])) | HappyAbsSyn132 ([GadtDecl L]) | HappyAbsSyn133 (([QualConDecl L],[S],Maybe L)) | HappyAbsSyn134 (([QualConDecl L],[S],L)) | HappyAbsSyn135 (QualConDecl L) | HappyAbsSyn136 ((Maybe [TyVarBind L], [S], Maybe L)) | HappyAbsSyn137 (ConDecl L) | HappyAbsSyn138 ((Name L, [Type L], L)) | HappyAbsSyn139 (([FieldDecl L],[S])) | HappyAbsSyn140 (FieldDecl L) | HappyAbsSyn141 (Maybe (Deriving L)) | HappyAbsSyn142 (([InstRule L],[S])) | HappyAbsSyn143 (InstHead L) | HappyAbsSyn144 (Kind L) | HappyAbsSyn149 (([Kind L], [S])) | HappyAbsSyn150 ((Maybe (Kind L), [S])) | HappyAbsSyn151 ((Maybe [ClassDecl L],[S],Maybe L)) | HappyAbsSyn152 (([ClassDecl L],[S])) | HappyAbsSyn154 (ClassDecl L) | HappyAbsSyn157 ((Maybe [InstDecl L],[S],Maybe L)) | HappyAbsSyn158 (([InstDecl L],[S])) | HappyAbsSyn160 (InstDecl L) | HappyAbsSyn163 ((Maybe (Binds L),[S])) | HappyAbsSyn164 ((Maybe (Type L, S))) | HappyAbsSyn165 (Rhs L) | HappyAbsSyn166 (([GuardedRhs L],L)) | HappyAbsSyn167 (GuardedRhs L) | HappyAbsSyn168 (Exp L) | HappyAbsSyn179 ([Pat L]) | HappyAbsSyn180 (Pat L) | HappyAbsSyn186 (([Maybe (PExp L)],[S])) | HappyAbsSyn188 (([PExp L],[S])) | HappyAbsSyn191 ([PExp L]) | HappyAbsSyn193 (XName L) | HappyAbsSyn194 (Loc String) | HappyAbsSyn196 ([ParseXAttr L]) | HappyAbsSyn197 (ParseXAttr L) | HappyAbsSyn198 (Maybe (PExp L)) | HappyAbsSyn199 (L -> PExp L) | HappyAbsSyn201 (([[QualStmt L]],[S])) | HappyAbsSyn202 (([QualStmt L],[S])) | HappyAbsSyn203 (QualStmt L) | HappyAbsSyn205 (([Stmt L],[S])) | HappyAbsSyn206 (Stmt L) | HappyAbsSyn208 (([Alt L],L,[S])) | HappyAbsSyn209 (([Alt L],[S])) | HappyAbsSyn211 (Alt L) | HappyAbsSyn216 (([GuardedRhs L], L, [S])) | HappyAbsSyn217 (([GuardedRhs L], [S])) | HappyAbsSyn219 (([Stmt L],L,[S])) | HappyAbsSyn223 (([PFieldUpdate L],[S])) | HappyAbsSyn224 (PFieldUpdate L) | HappyAbsSyn225 (([IPBind L],[S])) | HappyAbsSyn227 (IPBind L) | HappyAbsSyn232 (IPName L) | HappyAbsSyn240 (Op L) | HappyAbsSyn241 (QOp L) | HappyAbsSyn257 (Literal L) | HappyAbsSyn258 (S) | HappyAbsSyn264 (PatternSynDirection L) | HappyAbsSyn266 ((Maybe [TyVarBind L], [S], Maybe (Context L), Maybe (Context L), Type L )) | HappyAbsSyn267 (ModuleName L) | HappyAbsSyn274 (([ImportDecl L],[S],L)) | HappyAbsSyn275 ((([ModulePragma L], [S], L), Maybe (ModuleName L))) | HappyAbsSyn276 ((([ModulePragma L], [S], L), Maybe (ModuleHead L))) | HappyAbsSyn277 ((([ModulePragma L], [S], L), Maybe (ModuleHead L), Maybe ([ImportDecl L],[S],L))) {- to allow type-synonyms as our monads (likely - with explicitly-specified bind and return) - in Haskell98, it seems that with - /type M a = .../, then /(HappyReduction M)/ - is not allowed. But Happy is a - code-generator that can just substitute it. type HappyReduction m = Int -> (Loc Token) -> HappyState (Loc Token) (HappyStk HappyAbsSyn -> m HappyAbsSyn) -> [HappyState (Loc Token) (HappyStk HappyAbsSyn -> m HappyAbsSyn)] -> HappyStk HappyAbsSyn -> m HappyAbsSyn -} action_0, action_1, action_2, action_3, action_4, action_5, action_6, action_7, action_8, action_9, action_10, action_11, action_12, action_13, action_14, action_15, action_16, action_17, action_18, action_19, action_20, action_21, action_22, action_23, action_24, action_25, action_26, action_27, action_28, action_29, action_30, action_31, action_32, action_33, action_34, action_35, action_36, action_37, action_38, action_39, action_40, action_41, action_42, action_43, action_44, action_45, action_46, action_47, action_48, action_49, action_50, action_51, action_52, action_53, action_54, action_55, action_56, action_57, action_58, action_59, action_60, action_61, action_62, action_63, action_64, action_65, action_66, action_67, action_68, action_69, action_70, action_71, action_72, action_73, action_74, action_75, action_76, action_77, action_78, action_79, action_80, action_81, action_82, action_83, action_84, action_85, action_86, action_87, action_88, action_89, action_90, action_91, action_92, action_93, action_94, action_95, action_96, action_97, action_98, action_99, action_100, action_101, action_102, action_103, action_104, action_105, action_106, action_107, action_108, action_109, action_110, action_111, action_112, action_113, action_114, action_115, action_116, action_117, action_118, action_119, action_120, action_121, action_122, action_123, action_124, action_125, action_126, action_127, action_128, action_129, action_130, action_131, action_132, action_133, action_134, action_135, action_136, action_137, action_138, action_139, action_140, action_141, action_142, action_143, action_144, action_145, action_146, action_147, action_148, action_149, action_150, action_151, action_152, action_153, action_154, action_155, action_156, action_157, action_158, action_159, action_160, action_161, action_162, action_163, action_164, action_165, action_166, action_167, action_168, action_169, action_170, action_171, action_172, action_173, action_174, action_175, action_176, action_177, action_178, action_179, action_180, action_181, action_182, action_183, action_184, action_185, action_186, action_187, action_188, action_189, action_190, action_191, action_192, action_193, action_194, action_195, action_196, action_197, action_198, action_199, action_200, action_201, action_202, action_203, action_204, action_205, action_206, action_207, action_208, action_209, action_210, action_211, action_212, action_213, action_214, action_215, action_216, action_217, action_218, action_219, action_220, action_221, action_222, action_223, action_224, action_225, action_226, action_227, action_228, action_229, action_230, action_231, action_232, action_233, action_234, action_235, action_236, action_237, action_238, action_239, action_240, action_241, action_242, action_243, action_244, action_245, action_246, action_247, action_248, action_249, action_250, action_251, action_252, action_253, action_254, action_255, action_256, action_257, action_258, action_259, action_260, action_261, action_262, action_263, action_264, action_265, action_266, action_267, action_268, action_269, action_270, action_271, action_272, action_273, action_274, action_275, action_276, action_277, action_278, action_279, action_280, action_281, action_282, action_283, action_284, action_285, action_286, action_287, action_288, action_289, action_290, action_291, action_292, action_293, action_294, action_295, action_296, action_297, action_298, action_299, action_300, action_301, action_302, action_303, action_304, action_305, action_306, action_307, action_308, action_309, action_310, action_311, action_312, action_313, action_314, action_315, action_316, action_317, action_318, action_319, action_320, action_321, action_322, action_323, action_324, action_325, action_326, action_327, action_328, action_329, action_330, action_331, action_332, action_333, action_334, action_335, action_336, action_337, action_338, action_339, action_340, action_341, action_342, action_343, action_344, action_345, action_346, action_347, action_348, action_349, action_350, action_351, action_352, action_353, action_354, action_355, action_356, action_357, action_358, action_359, action_360, action_361, action_362, action_363, action_364, action_365, action_366, action_367, action_368, action_369, action_370, action_371, action_372, action_373, action_374, action_375, action_376, action_377, action_378, action_379, action_380, action_381, action_382, action_383, action_384, action_385, action_386, action_387, action_388, action_389, action_390, action_391, action_392, action_393, action_394, action_395, action_396, action_397, action_398, action_399, action_400, action_401, action_402, action_403, action_404, action_405, action_406, action_407, action_408, action_409, action_410, action_411, action_412, action_413, action_414, action_415, action_416, action_417, action_418, action_419, action_420, action_421, action_422, action_423, action_424, action_425, action_426, action_427, action_428, action_429, action_430, action_431, action_432, action_433, action_434, action_435, action_436, action_437, action_438, action_439, action_440, action_441, action_442, action_443, action_444, action_445, action_446, action_447, action_448, action_449, action_450, action_451, action_452, action_453, action_454, action_455, action_456, action_457, action_458, action_459, action_460, action_461, action_462, action_463, action_464, action_465, action_466, action_467, action_468, action_469, action_470, action_471, action_472, action_473, action_474, action_475, action_476, action_477, action_478, action_479, action_480, action_481, action_482, action_483, action_484, action_485, action_486, action_487, action_488, action_489, action_490, action_491, action_492, action_493, action_494, action_495, action_496, action_497, action_498, action_499, action_500, action_501, action_502, action_503, action_504, action_505, action_506, action_507, action_508, action_509, action_510, action_511, action_512, action_513, action_514, action_515, action_516, action_517, action_518, action_519, action_520, action_521, action_522, action_523, action_524, action_525, action_526, action_527, action_528, action_529, action_530, action_531, action_532, action_533, action_534, action_535, action_536, action_537, action_538, action_539, action_540, action_541, action_542, action_543, action_544, action_545, action_546, action_547, action_548, action_549, action_550, action_551, action_552, action_553, action_554, action_555, action_556, action_557, action_558, action_559, action_560, action_561, action_562, action_563, action_564, action_565, action_566, action_567, action_568, action_569, action_570, action_571, action_572, action_573, action_574, action_575, action_576, action_577, action_578, action_579, action_580, action_581, action_582, action_583, action_584, action_585, action_586, action_587, action_588, action_589, action_590, action_591, action_592, action_593, action_594, action_595, action_596, action_597, action_598, action_599, action_600, action_601, action_602, action_603, action_604, action_605, action_606, action_607, action_608, action_609, action_610, action_611, action_612, action_613, action_614, action_615, action_616, action_617, action_618, action_619, action_620, action_621, action_622, action_623, action_624, action_625, action_626, action_627, action_628, action_629, action_630, action_631, action_632, action_633, action_634, action_635, action_636, action_637, action_638, action_639, action_640, action_641, action_642, action_643, action_644, action_645, action_646, action_647, action_648, action_649, action_650, action_651, action_652, action_653, action_654, action_655, action_656, action_657, action_658, action_659, action_660, action_661, action_662, action_663, action_664, action_665, action_666, action_667, action_668, action_669, action_670, action_671, action_672, action_673, action_674, action_675, action_676, action_677, action_678, action_679, action_680, action_681, action_682, action_683, action_684, action_685, action_686, action_687, action_688, action_689, action_690, action_691, action_692, action_693, action_694, action_695, action_696, action_697, action_698, action_699, action_700, action_701, action_702, action_703, action_704, action_705, action_706, action_707, action_708, action_709, action_710, action_711, action_712, action_713, action_714, action_715, action_716, action_717, action_718, action_719, action_720, action_721, action_722, action_723, action_724, action_725, action_726, action_727, action_728, action_729, action_730, action_731, action_732, action_733, action_734, action_735, action_736, action_737, action_738, action_739, action_740, action_741, action_742, action_743, action_744, action_745, action_746, action_747, action_748, action_749, action_750, action_751, action_752, action_753, action_754, action_755, action_756, action_757, action_758, action_759, action_760, action_761, action_762, action_763, action_764, action_765, action_766, action_767, action_768, action_769, action_770, action_771, action_772, action_773, action_774, action_775, action_776, action_777, action_778, action_779, action_780, action_781, action_782, action_783, action_784, action_785, action_786, action_787, action_788, action_789, action_790, action_791, action_792, action_793, action_794, action_795, action_796, action_797, action_798, action_799, action_800, action_801, action_802, action_803, action_804, action_805, action_806, action_807, action_808, action_809, action_810, action_811, action_812, action_813, action_814, action_815, action_816, action_817, action_818, action_819, action_820, action_821, action_822, action_823, action_824, action_825, action_826, action_827, action_828, action_829, action_830, action_831, action_832, action_833, action_834, action_835, action_836, action_837, action_838, action_839, action_840, action_841, action_842, action_843, action_844, action_845, action_846, action_847, action_848, action_849, action_850, action_851, action_852, action_853, action_854, action_855, action_856, action_857, action_858, action_859, action_860, action_861, action_862, action_863, action_864, action_865, action_866, action_867, action_868, action_869, action_870, action_871, action_872, action_873, action_874, action_875, action_876, action_877, action_878, action_879, action_880, action_881, action_882, action_883, action_884, action_885, action_886, action_887, action_888, action_889, action_890, action_891, action_892, action_893, action_894, action_895, action_896, action_897, action_898, action_899, action_900, action_901, action_902, action_903, action_904, action_905, action_906, action_907, action_908, action_909, action_910, action_911, action_912, action_913, action_914, action_915, action_916, action_917, action_918, action_919, action_920, action_921, action_922, action_923, action_924, action_925, action_926, action_927, action_928, action_929, action_930, action_931, action_932, action_933, action_934, action_935, action_936, action_937, action_938, action_939, action_940, action_941, action_942, action_943, action_944, action_945, action_946, action_947, action_948, action_949, action_950, action_951, action_952, action_953, action_954, action_955, action_956, action_957, action_958, action_959, action_960, action_961, action_962, action_963, action_964, action_965, action_966, action_967, action_968, action_969, action_970, action_971, action_972, action_973, action_974, action_975, action_976, action_977, action_978, action_979, action_980, action_981, action_982, action_983, action_984, action_985, action_986, action_987, action_988, action_989, action_990, action_991, action_992, action_993, action_994, action_995, action_996, action_997, action_998, action_999, action_1000, action_1001, action_1002, action_1003, action_1004, action_1005, action_1006, action_1007, action_1008, action_1009, action_1010, action_1011, action_1012, action_1013, action_1014, action_1015, action_1016, action_1017, action_1018, action_1019, action_1020, action_1021, action_1022, action_1023, action_1024, action_1025, action_1026, action_1027, action_1028, action_1029, action_1030, action_1031, action_1032, action_1033, action_1034, action_1035, action_1036, action_1037, action_1038, action_1039, action_1040, action_1041, action_1042, action_1043, action_1044, action_1045, action_1046, action_1047, action_1048, action_1049, action_1050, action_1051, action_1052, action_1053, action_1054, action_1055, action_1056, action_1057, action_1058, action_1059, action_1060, action_1061, action_1062, action_1063, action_1064, action_1065, action_1066, action_1067, action_1068, action_1069, action_1070, action_1071, action_1072, action_1073, action_1074, action_1075, action_1076, action_1077, action_1078, action_1079, action_1080, action_1081, action_1082, action_1083, action_1084, action_1085, action_1086, action_1087, action_1088, action_1089, action_1090, action_1091, action_1092, action_1093, action_1094, action_1095, action_1096, action_1097, action_1098, action_1099, action_1100, action_1101, action_1102, action_1103, action_1104, action_1105, action_1106, action_1107, action_1108, action_1109, action_1110, action_1111, action_1112, action_1113, action_1114, action_1115, action_1116, action_1117, action_1118, action_1119, action_1120, action_1121, action_1122, action_1123, action_1124, action_1125, action_1126, action_1127, action_1128, action_1129, action_1130, action_1131, action_1132, action_1133, action_1134, action_1135, action_1136, action_1137, action_1138, action_1139, action_1140, action_1141, action_1142, action_1143, action_1144, action_1145, action_1146, action_1147, action_1148, action_1149, action_1150, action_1151, action_1152, action_1153, action_1154, action_1155, action_1156, action_1157, action_1158, action_1159, action_1160, action_1161, action_1162, action_1163, action_1164, action_1165, action_1166, action_1167, action_1168, action_1169, action_1170, action_1171, action_1172, action_1173, action_1174, action_1175, action_1176, action_1177, action_1178, action_1179, action_1180, action_1181, action_1182, action_1183, action_1184, action_1185, action_1186, action_1187, action_1188, action_1189, action_1190, action_1191, action_1192, action_1193, action_1194, action_1195, action_1196, action_1197, action_1198, action_1199, action_1200, action_1201, action_1202, action_1203, action_1204, action_1205, action_1206, action_1207, action_1208, action_1209, action_1210, action_1211, action_1212, action_1213, action_1214, action_1215, action_1216, action_1217, action_1218, action_1219, action_1220, action_1221, action_1222, action_1223, action_1224, action_1225, action_1226, action_1227, action_1228, action_1229, action_1230, action_1231, action_1232, action_1233, action_1234, action_1235, action_1236, action_1237, action_1238, action_1239, action_1240, action_1241, action_1242, action_1243, action_1244, action_1245, action_1246, action_1247, action_1248, action_1249, action_1250, action_1251, action_1252, action_1253, action_1254, action_1255, action_1256, action_1257, action_1258, action_1259, action_1260, action_1261, action_1262, action_1263, action_1264, action_1265, action_1266, action_1267, action_1268, action_1269, action_1270, action_1271, action_1272, action_1273, action_1274, action_1275, action_1276, action_1277, action_1278, action_1279, action_1280, action_1281, action_1282, action_1283, action_1284, action_1285, action_1286, action_1287, action_1288, action_1289, action_1290, action_1291, action_1292, action_1293, action_1294, action_1295, action_1296, action_1297, action_1298, action_1299, action_1300, action_1301, action_1302, action_1303, action_1304, action_1305, action_1306, action_1307, action_1308, action_1309, action_1310, action_1311, action_1312, action_1313, action_1314, action_1315, action_1316, action_1317, action_1318, action_1319, action_1320, action_1321, action_1322, action_1323, action_1324, action_1325, action_1326, action_1327, action_1328 :: () => Int -> ({-HappyReduction (P) = -} Int -> (Loc Token) -> HappyState (Loc Token) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn) -> [HappyState (Loc Token) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn)] -> HappyStk HappyAbsSyn -> (P) HappyAbsSyn) happyReduce_11, happyReduce_12, happyReduce_13, happyReduce_14, happyReduce_15, happyReduce_16, happyReduce_17, happyReduce_18, happyReduce_19, happyReduce_20, happyReduce_21, happyReduce_22, happyReduce_23, happyReduce_24, happyReduce_25, happyReduce_26, happyReduce_27, happyReduce_28, happyReduce_29, happyReduce_30, happyReduce_31, happyReduce_32, happyReduce_33, happyReduce_34, happyReduce_35, happyReduce_36, happyReduce_37, happyReduce_38, happyReduce_39, happyReduce_40, happyReduce_41, happyReduce_42, happyReduce_43, happyReduce_44, happyReduce_45, happyReduce_46, happyReduce_47, happyReduce_48, happyReduce_49, happyReduce_50, happyReduce_51, happyReduce_52, happyReduce_53, happyReduce_54, happyReduce_55, happyReduce_56, happyReduce_57, happyReduce_58, happyReduce_59, happyReduce_60, happyReduce_61, happyReduce_62, happyReduce_63, happyReduce_64, happyReduce_65, happyReduce_66, happyReduce_67, happyReduce_68, happyReduce_69, happyReduce_70, happyReduce_71, happyReduce_72, happyReduce_73, happyReduce_74, happyReduce_75, happyReduce_76, happyReduce_77, happyReduce_78, happyReduce_79, happyReduce_80, happyReduce_81, happyReduce_82, happyReduce_83, happyReduce_84, happyReduce_85, happyReduce_86, happyReduce_87, happyReduce_88, happyReduce_89, happyReduce_90, happyReduce_91, happyReduce_92, happyReduce_93, happyReduce_94, happyReduce_95, happyReduce_96, happyReduce_97, happyReduce_98, happyReduce_99, happyReduce_100, happyReduce_101, happyReduce_102, happyReduce_103, happyReduce_104, happyReduce_105, happyReduce_106, happyReduce_107, happyReduce_108, happyReduce_109, happyReduce_110, happyReduce_111, happyReduce_112, happyReduce_113, happyReduce_114, happyReduce_115, happyReduce_116, happyReduce_117, happyReduce_118, happyReduce_119, happyReduce_120, happyReduce_121, happyReduce_122, happyReduce_123, happyReduce_124, happyReduce_125, happyReduce_126, happyReduce_127, happyReduce_128, happyReduce_129, happyReduce_130, happyReduce_131, happyReduce_132, happyReduce_133, happyReduce_134, happyReduce_135, happyReduce_136, happyReduce_137, happyReduce_138, happyReduce_139, happyReduce_140, happyReduce_141, happyReduce_142, happyReduce_143, happyReduce_144, happyReduce_145, happyReduce_146, happyReduce_147, happyReduce_148, happyReduce_149, happyReduce_150, happyReduce_151, happyReduce_152, happyReduce_153, happyReduce_154, happyReduce_155, happyReduce_156, happyReduce_157, happyReduce_158, happyReduce_159, happyReduce_160, happyReduce_161, happyReduce_162, happyReduce_163, happyReduce_164, happyReduce_165, happyReduce_166, happyReduce_167, happyReduce_168, happyReduce_169, happyReduce_170, happyReduce_171, happyReduce_172, happyReduce_173, happyReduce_174, happyReduce_175, happyReduce_176, happyReduce_177, happyReduce_178, happyReduce_179, happyReduce_180, happyReduce_181, happyReduce_182, happyReduce_183, happyReduce_184, happyReduce_185, happyReduce_186, happyReduce_187, happyReduce_188, happyReduce_189, happyReduce_190, happyReduce_191, happyReduce_192, happyReduce_193, happyReduce_194, happyReduce_195, happyReduce_196, happyReduce_197, happyReduce_198, happyReduce_199, happyReduce_200, happyReduce_201, happyReduce_202, happyReduce_203, happyReduce_204, happyReduce_205, happyReduce_206, happyReduce_207, happyReduce_208, happyReduce_209, happyReduce_210, happyReduce_211, happyReduce_212, happyReduce_213, happyReduce_214, happyReduce_215, happyReduce_216, happyReduce_217, happyReduce_218, happyReduce_219, happyReduce_220, happyReduce_221, happyReduce_222, happyReduce_223, happyReduce_224, happyReduce_225, happyReduce_226, happyReduce_227, happyReduce_228, happyReduce_229, happyReduce_230, happyReduce_231, happyReduce_232, happyReduce_233, happyReduce_234, happyReduce_235, happyReduce_236, happyReduce_237, happyReduce_238, happyReduce_239, happyReduce_240, happyReduce_241, happyReduce_242, happyReduce_243, happyReduce_244, happyReduce_245, happyReduce_246, happyReduce_247, happyReduce_248, happyReduce_249, happyReduce_250, happyReduce_251, happyReduce_252, happyReduce_253, happyReduce_254, happyReduce_255, happyReduce_256, happyReduce_257, happyReduce_258, happyReduce_259, happyReduce_260, happyReduce_261, happyReduce_262, happyReduce_263, happyReduce_264, happyReduce_265, happyReduce_266, happyReduce_267, happyReduce_268, happyReduce_269, happyReduce_270, happyReduce_271, happyReduce_272, happyReduce_273, happyReduce_274, happyReduce_275, happyReduce_276, happyReduce_277, happyReduce_278, happyReduce_279, happyReduce_280, happyReduce_281, happyReduce_282, happyReduce_283, happyReduce_284, happyReduce_285, happyReduce_286, happyReduce_287, happyReduce_288, happyReduce_289, happyReduce_290, happyReduce_291, happyReduce_292, happyReduce_293, happyReduce_294, happyReduce_295, happyReduce_296, happyReduce_297, happyReduce_298, happyReduce_299, happyReduce_300, happyReduce_301, happyReduce_302, happyReduce_303, happyReduce_304, happyReduce_305, happyReduce_306, happyReduce_307, happyReduce_308, happyReduce_309, happyReduce_310, happyReduce_311, happyReduce_312, happyReduce_313, happyReduce_314, happyReduce_315, happyReduce_316, happyReduce_317, happyReduce_318, happyReduce_319, happyReduce_320, happyReduce_321, happyReduce_322, happyReduce_323, happyReduce_324, happyReduce_325, happyReduce_326, happyReduce_327, happyReduce_328, happyReduce_329, happyReduce_330, happyReduce_331, happyReduce_332, happyReduce_333, happyReduce_334, happyReduce_335, happyReduce_336, happyReduce_337, happyReduce_338, happyReduce_339, happyReduce_340, happyReduce_341, happyReduce_342, happyReduce_343, happyReduce_344, happyReduce_345, happyReduce_346, happyReduce_347, happyReduce_348, happyReduce_349, happyReduce_350, happyReduce_351, happyReduce_352, happyReduce_353, happyReduce_354, happyReduce_355, happyReduce_356, happyReduce_357, happyReduce_358, happyReduce_359, happyReduce_360, happyReduce_361, happyReduce_362, happyReduce_363, happyReduce_364, happyReduce_365, happyReduce_366, happyReduce_367, happyReduce_368, happyReduce_369, happyReduce_370, happyReduce_371, happyReduce_372, happyReduce_373, happyReduce_374, happyReduce_375, happyReduce_376, happyReduce_377, happyReduce_378, happyReduce_379, happyReduce_380, happyReduce_381, happyReduce_382, happyReduce_383, happyReduce_384, happyReduce_385, happyReduce_386, happyReduce_387, happyReduce_388, happyReduce_389, happyReduce_390, happyReduce_391, happyReduce_392, happyReduce_393, happyReduce_394, happyReduce_395, happyReduce_396, happyReduce_397, happyReduce_398, happyReduce_399, happyReduce_400, happyReduce_401, happyReduce_402, happyReduce_403, happyReduce_404, happyReduce_405, happyReduce_406, happyReduce_407, happyReduce_408, happyReduce_409, happyReduce_410, happyReduce_411, happyReduce_412, happyReduce_413, happyReduce_414, happyReduce_415, happyReduce_416, happyReduce_417, happyReduce_418, happyReduce_419, happyReduce_420, happyReduce_421, happyReduce_422, happyReduce_423, happyReduce_424, happyReduce_425, happyReduce_426, happyReduce_427, happyReduce_428, happyReduce_429, happyReduce_430, happyReduce_431, happyReduce_432, happyReduce_433, happyReduce_434, happyReduce_435, happyReduce_436, happyReduce_437, happyReduce_438, happyReduce_439, happyReduce_440, happyReduce_441, happyReduce_442, happyReduce_443, happyReduce_444, happyReduce_445, happyReduce_446, happyReduce_447, happyReduce_448, happyReduce_449, happyReduce_450, happyReduce_451, happyReduce_452, happyReduce_453, happyReduce_454, happyReduce_455, happyReduce_456, happyReduce_457, happyReduce_458, happyReduce_459, happyReduce_460, happyReduce_461, happyReduce_462, happyReduce_463, happyReduce_464, happyReduce_465, happyReduce_466, happyReduce_467, happyReduce_468, happyReduce_469, happyReduce_470, happyReduce_471, happyReduce_472, happyReduce_473, happyReduce_474, happyReduce_475, happyReduce_476, happyReduce_477, happyReduce_478, happyReduce_479, happyReduce_480, happyReduce_481, happyReduce_482, happyReduce_483, happyReduce_484, happyReduce_485, happyReduce_486, happyReduce_487, happyReduce_488, happyReduce_489, happyReduce_490, happyReduce_491, happyReduce_492, happyReduce_493, happyReduce_494, happyReduce_495, happyReduce_496, happyReduce_497, happyReduce_498, happyReduce_499, happyReduce_500, happyReduce_501, happyReduce_502, happyReduce_503, happyReduce_504, happyReduce_505, happyReduce_506, happyReduce_507, happyReduce_508, happyReduce_509, happyReduce_510, happyReduce_511, happyReduce_512, happyReduce_513, happyReduce_514, happyReduce_515, happyReduce_516, happyReduce_517, happyReduce_518, happyReduce_519, happyReduce_520, happyReduce_521, happyReduce_522, happyReduce_523, happyReduce_524, happyReduce_525, happyReduce_526, happyReduce_527, happyReduce_528, happyReduce_529, happyReduce_530, happyReduce_531, happyReduce_532, happyReduce_533, happyReduce_534, happyReduce_535, happyReduce_536, happyReduce_537, happyReduce_538, happyReduce_539, happyReduce_540, happyReduce_541, happyReduce_542, happyReduce_543, happyReduce_544, happyReduce_545, happyReduce_546, happyReduce_547, happyReduce_548, happyReduce_549, happyReduce_550, happyReduce_551, happyReduce_552, happyReduce_553, happyReduce_554, happyReduce_555, happyReduce_556, happyReduce_557, happyReduce_558, happyReduce_559, happyReduce_560, happyReduce_561, happyReduce_562, happyReduce_563, happyReduce_564, happyReduce_565, happyReduce_566, happyReduce_567, happyReduce_568, happyReduce_569, happyReduce_570, happyReduce_571, happyReduce_572, happyReduce_573, happyReduce_574, happyReduce_575, happyReduce_576, happyReduce_577, happyReduce_578, happyReduce_579, happyReduce_580, happyReduce_581, happyReduce_582, happyReduce_583, happyReduce_584, happyReduce_585, happyReduce_586, happyReduce_587, happyReduce_588, happyReduce_589, happyReduce_590, happyReduce_591, happyReduce_592, happyReduce_593, happyReduce_594, happyReduce_595, happyReduce_596, happyReduce_597, happyReduce_598, happyReduce_599, happyReduce_600, happyReduce_601, happyReduce_602, happyReduce_603, happyReduce_604, happyReduce_605, happyReduce_606, happyReduce_607, happyReduce_608, happyReduce_609, happyReduce_610, happyReduce_611, happyReduce_612, happyReduce_613, happyReduce_614, happyReduce_615, happyReduce_616, happyReduce_617, happyReduce_618, happyReduce_619, happyReduce_620, happyReduce_621, happyReduce_622, happyReduce_623, happyReduce_624, happyReduce_625, happyReduce_626, happyReduce_627, happyReduce_628, happyReduce_629, happyReduce_630, happyReduce_631, happyReduce_632, happyReduce_633, happyReduce_634, happyReduce_635, happyReduce_636, happyReduce_637, happyReduce_638, happyReduce_639, happyReduce_640, happyReduce_641, happyReduce_642, happyReduce_643, happyReduce_644, happyReduce_645, happyReduce_646, happyReduce_647, happyReduce_648, happyReduce_649, happyReduce_650, happyReduce_651, happyReduce_652, happyReduce_653, happyReduce_654, happyReduce_655, happyReduce_656, happyReduce_657, happyReduce_658, happyReduce_659, happyReduce_660, happyReduce_661, happyReduce_662, happyReduce_663, happyReduce_664, happyReduce_665, happyReduce_666, happyReduce_667, happyReduce_668, happyReduce_669, happyReduce_670, happyReduce_671, happyReduce_672, happyReduce_673, happyReduce_674, happyReduce_675, happyReduce_676, happyReduce_677, happyReduce_678, happyReduce_679, happyReduce_680, happyReduce_681, happyReduce_682, happyReduce_683, happyReduce_684, happyReduce_685, happyReduce_686, happyReduce_687, happyReduce_688, happyReduce_689, happyReduce_690, happyReduce_691, happyReduce_692, happyReduce_693, happyReduce_694, happyReduce_695, happyReduce_696, happyReduce_697, happyReduce_698, happyReduce_699, happyReduce_700, happyReduce_701, happyReduce_702, happyReduce_703, happyReduce_704, happyReduce_705, happyReduce_706, happyReduce_707, happyReduce_708, happyReduce_709, happyReduce_710, happyReduce_711, happyReduce_712, happyReduce_713, happyReduce_714, happyReduce_715, happyReduce_716, happyReduce_717, happyReduce_718, happyReduce_719, happyReduce_720, happyReduce_721, happyReduce_722, happyReduce_723, happyReduce_724, happyReduce_725, happyReduce_726, happyReduce_727, happyReduce_728, happyReduce_729, happyReduce_730, happyReduce_731, happyReduce_732, happyReduce_733, happyReduce_734, happyReduce_735, happyReduce_736, happyReduce_737, happyReduce_738, happyReduce_739, happyReduce_740, happyReduce_741, happyReduce_742, happyReduce_743, happyReduce_744, happyReduce_745, happyReduce_746, happyReduce_747, happyReduce_748, happyReduce_749, happyReduce_750, happyReduce_751 :: () => ({-HappyReduction (P) = -} Int -> (Loc Token) -> HappyState (Loc Token) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn) -> [HappyState (Loc Token) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn)] -> HappyStk HappyAbsSyn -> (P) HappyAbsSyn) action_0 (16) = happyGoto action_162 action_0 (18) = happyGoto action_163 action_0 (258) = happyGoto action_13 action_0 _ = happyReduce_714 action_1 (278) = happyShift action_49 action_1 (279) = happyShift action_50 action_1 (280) = happyShift action_51 action_1 (281) = happyShift action_52 action_1 (282) = happyShift action_53 action_1 (283) = happyShift action_54 action_1 (289) = happyShift action_55 action_1 (290) = happyShift action_56 action_1 (291) = happyShift action_57 action_1 (292) = happyShift action_58 action_1 (293) = happyShift action_59 action_1 (294) = happyShift action_60 action_1 (295) = happyShift action_61 action_1 (296) = happyShift action_62 action_1 (297) = happyShift action_63 action_1 (298) = happyShift action_64 action_1 (299) = happyShift action_65 action_1 (301) = happyShift action_66 action_1 (307) = happyShift action_67 action_1 (309) = happyShift action_68 action_1 (312) = happyShift action_69 action_1 (319) = happyShift action_70 action_1 (324) = happyShift action_71 action_1 (325) = happyShift action_72 action_1 (327) = happyShift action_73 action_1 (334) = happyShift action_75 action_1 (337) = happyShift action_76 action_1 (338) = happyShift action_77 action_1 (339) = happyShift action_78 action_1 (340) = happyShift action_79 action_1 (341) = happyShift action_80 action_1 (342) = happyShift action_81 action_1 (344) = happyShift action_82 action_1 (345) = happyShift action_83 action_1 (346) = happyShift action_84 action_1 (348) = happyShift action_85 action_1 (350) = happyShift action_86 action_1 (351) = happyShift action_87 action_1 (358) = happyShift action_88 action_1 (359) = happyShift action_89 action_1 (360) = happyShift action_90 action_1 (361) = happyShift action_91 action_1 (362) = happyShift action_92 action_1 (363) = happyShift action_93 action_1 (364) = happyShift action_94 action_1 (365) = happyShift action_95 action_1 (366) = happyShift action_96 action_1 (367) = happyShift action_97 action_1 (368) = happyShift action_98 action_1 (369) = happyShift action_99 action_1 (370) = happyShift action_100 action_1 (371) = happyShift action_101 action_1 (373) = happyShift action_102 action_1 (378) = happyShift action_103 action_1 (380) = happyShift action_104 action_1 (381) = happyShift action_105 action_1 (383) = happyShift action_106 action_1 (384) = happyShift action_107 action_1 (391) = happyShift action_159 action_1 (392) = happyShift action_109 action_1 (396) = happyShift action_110 action_1 (402) = happyShift action_112 action_1 (403) = happyShift action_113 action_1 (411) = happyShift action_114 action_1 (412) = happyShift action_115 action_1 (413) = happyShift action_116 action_1 (168) = happyGoto action_160 action_1 (169) = happyGoto action_161 action_1 (170) = happyGoto action_25 action_1 (171) = happyGoto action_26 action_1 (172) = happyGoto action_27 action_1 (173) = happyGoto action_28 action_1 (176) = happyGoto action_29 action_1 (177) = happyGoto action_30 action_1 (178) = happyGoto action_31 action_1 (181) = happyGoto action_32 action_1 (182) = happyGoto action_33 action_1 (183) = happyGoto action_34 action_1 (190) = happyGoto action_35 action_1 (228) = happyGoto action_38 action_1 (231) = happyGoto action_39 action_1 (232) = happyGoto action_40 action_1 (234) = happyGoto action_41 action_1 (244) = happyGoto action_42 action_1 (245) = happyGoto action_43 action_1 (246) = happyGoto action_44 action_1 (247) = happyGoto action_45 action_1 (248) = happyGoto action_46 action_1 (249) = happyGoto action_47 action_1 (257) = happyGoto action_48 action_1 _ = happyFail action_2 (278) = happyShift action_49 action_2 (279) = happyShift action_50 action_2 (280) = happyShift action_51 action_2 (281) = happyShift action_52 action_2 (282) = happyShift action_53 action_2 (283) = happyShift action_54 action_2 (289) = happyShift action_55 action_2 (290) = happyShift action_56 action_2 (291) = happyShift action_57 action_2 (292) = happyShift action_58 action_2 (293) = happyShift action_59 action_2 (294) = happyShift action_60 action_2 (295) = happyShift action_61 action_2 (296) = happyShift action_62 action_2 (297) = happyShift action_63 action_2 (298) = happyShift action_64 action_2 (299) = happyShift action_65 action_2 (301) = happyShift action_66 action_2 (307) = happyShift action_67 action_2 (309) = happyShift action_68 action_2 (312) = happyShift action_69 action_2 (319) = happyShift action_70 action_2 (324) = happyShift action_71 action_2 (325) = happyShift action_72 action_2 (327) = happyShift action_73 action_2 (328) = happyShift action_74 action_2 (334) = happyShift action_75 action_2 (337) = happyShift action_76 action_2 (338) = happyShift action_77 action_2 (339) = happyShift action_78 action_2 (340) = happyShift action_79 action_2 (341) = happyShift action_80 action_2 (342) = happyShift action_81 action_2 (344) = happyShift action_82 action_2 (345) = happyShift action_83 action_2 (346) = happyShift action_84 action_2 (348) = happyShift action_85 action_2 (350) = happyShift action_86 action_2 (351) = happyShift action_87 action_2 (358) = happyShift action_88 action_2 (359) = happyShift action_89 action_2 (360) = happyShift action_90 action_2 (361) = happyShift action_91 action_2 (362) = happyShift action_92 action_2 (363) = happyShift action_93 action_2 (364) = happyShift action_94 action_2 (365) = happyShift action_95 action_2 (366) = happyShift action_96 action_2 (367) = happyShift action_97 action_2 (368) = happyShift action_98 action_2 (369) = happyShift action_99 action_2 (370) = happyShift action_100 action_2 (371) = happyShift action_101 action_2 (373) = happyShift action_102 action_2 (378) = happyShift action_103 action_2 (380) = happyShift action_104 action_2 (381) = happyShift action_105 action_2 (383) = happyShift action_106 action_2 (384) = happyShift action_107 action_2 (391) = happyShift action_159 action_2 (392) = happyShift action_109 action_2 (396) = happyShift action_110 action_2 (402) = happyShift action_112 action_2 (403) = happyShift action_113 action_2 (411) = happyShift action_114 action_2 (412) = happyShift action_115 action_2 (413) = happyShift action_116 action_2 (169) = happyGoto action_157 action_2 (170) = happyGoto action_25 action_2 (171) = happyGoto action_26 action_2 (172) = happyGoto action_27 action_2 (173) = happyGoto action_28 action_2 (176) = happyGoto action_29 action_2 (177) = happyGoto action_30 action_2 (178) = happyGoto action_31 action_2 (181) = happyGoto action_32 action_2 (182) = happyGoto action_33 action_2 (183) = happyGoto action_34 action_2 (190) = happyGoto action_35 action_2 (215) = happyGoto action_158 action_2 (228) = happyGoto action_38 action_2 (231) = happyGoto action_39 action_2 (232) = happyGoto action_40 action_2 (234) = happyGoto action_41 action_2 (244) = happyGoto action_42 action_2 (245) = happyGoto action_43 action_2 (246) = happyGoto action_44 action_2 (247) = happyGoto action_45 action_2 (248) = happyGoto action_46 action_2 (249) = happyGoto action_47 action_2 (257) = happyGoto action_48 action_2 _ = happyFail action_3 (304) = happyShift action_156 action_3 (25) = happyGoto action_154 action_3 (258) = happyGoto action_155 action_3 _ = happyReduce_714 action_4 (278) = happyShift action_49 action_4 (280) = happyShift action_51 action_4 (281) = happyShift action_52 action_4 (282) = happyShift action_53 action_4 (283) = happyShift action_54 action_4 (289) = happyShift action_135 action_4 (292) = happyShift action_136 action_4 (299) = happyShift action_137 action_4 (301) = happyShift action_138 action_4 (307) = happyShift action_139 action_4 (309) = happyShift action_140 action_4 (312) = happyShift action_141 action_4 (325) = happyShift action_142 action_4 (328) = happyShift action_143 action_4 (337) = happyShift action_144 action_4 (338) = happyShift action_145 action_4 (344) = happyShift action_146 action_4 (346) = happyShift action_147 action_4 (358) = happyShift action_88 action_4 (359) = happyShift action_148 action_4 (360) = happyShift action_149 action_4 (361) = happyShift action_150 action_4 (363) = happyShift action_93 action_4 (364) = happyShift action_94 action_4 (365) = happyShift action_95 action_4 (366) = happyShift action_96 action_4 (367) = happyShift action_97 action_4 (368) = happyShift action_98 action_4 (369) = happyShift action_99 action_4 (370) = happyShift action_100 action_4 (371) = happyShift action_101 action_4 (381) = happyShift action_151 action_4 (383) = happyShift action_106 action_4 (402) = happyShift action_112 action_4 (416) = happyShift action_152 action_4 (417) = happyShift action_153 action_4 (103) = happyGoto action_117 action_4 (105) = happyGoto action_118 action_4 (108) = happyGoto action_119 action_4 (109) = happyGoto action_120 action_4 (110) = happyGoto action_121 action_4 (111) = happyGoto action_122 action_4 (112) = happyGoto action_123 action_4 (113) = happyGoto action_124 action_4 (114) = happyGoto action_125 action_4 (115) = happyGoto action_126 action_4 (117) = happyGoto action_127 action_4 (118) = happyGoto action_128 action_4 (119) = happyGoto action_129 action_4 (232) = happyGoto action_130 action_4 (245) = happyGoto action_131 action_4 (247) = happyGoto action_45 action_4 (248) = happyGoto action_132 action_4 (249) = happyGoto action_47 action_4 (270) = happyGoto action_133 action_4 (271) = happyGoto action_134 action_4 _ = happyFail action_5 (278) = happyShift action_49 action_5 (279) = happyShift action_50 action_5 (280) = happyShift action_51 action_5 (281) = happyShift action_52 action_5 (282) = happyShift action_53 action_5 (283) = happyShift action_54 action_5 (289) = happyShift action_55 action_5 (290) = happyShift action_56 action_5 (291) = happyShift action_57 action_5 (292) = happyShift action_58 action_5 (293) = happyShift action_59 action_5 (294) = happyShift action_60 action_5 (295) = happyShift action_61 action_5 (296) = happyShift action_62 action_5 (297) = happyShift action_63 action_5 (298) = happyShift action_64 action_5 (299) = happyShift action_65 action_5 (301) = happyShift action_66 action_5 (307) = happyShift action_67 action_5 (309) = happyShift action_68 action_5 (312) = happyShift action_69 action_5 (319) = happyShift action_70 action_5 (324) = happyShift action_71 action_5 (325) = happyShift action_72 action_5 (327) = happyShift action_73 action_5 (328) = happyShift action_74 action_5 (334) = happyShift action_75 action_5 (337) = happyShift action_76 action_5 (338) = happyShift action_77 action_5 (339) = happyShift action_78 action_5 (340) = happyShift action_79 action_5 (341) = happyShift action_80 action_5 (342) = happyShift action_81 action_5 (344) = happyShift action_82 action_5 (345) = happyShift action_83 action_5 (346) = happyShift action_84 action_5 (348) = happyShift action_85 action_5 (350) = happyShift action_86 action_5 (351) = happyShift action_87 action_5 (358) = happyShift action_88 action_5 (359) = happyShift action_89 action_5 (360) = happyShift action_90 action_5 (361) = happyShift action_91 action_5 (362) = happyShift action_92 action_5 (363) = happyShift action_93 action_5 (364) = happyShift action_94 action_5 (365) = happyShift action_95 action_5 (366) = happyShift action_96 action_5 (367) = happyShift action_97 action_5 (368) = happyShift action_98 action_5 (369) = happyShift action_99 action_5 (370) = happyShift action_100 action_5 (371) = happyShift action_101 action_5 (373) = happyShift action_102 action_5 (378) = happyShift action_103 action_5 (380) = happyShift action_104 action_5 (381) = happyShift action_105 action_5 (383) = happyShift action_106 action_5 (384) = happyShift action_107 action_5 (391) = happyShift action_108 action_5 (392) = happyShift action_109 action_5 (396) = happyShift action_110 action_5 (397) = happyShift action_111 action_5 (402) = happyShift action_112 action_5 (403) = happyShift action_113 action_5 (411) = happyShift action_114 action_5 (412) = happyShift action_115 action_5 (413) = happyShift action_116 action_5 (168) = happyGoto action_23 action_5 (169) = happyGoto action_24 action_5 (170) = happyGoto action_25 action_5 (171) = happyGoto action_26 action_5 (172) = happyGoto action_27 action_5 (173) = happyGoto action_28 action_5 (176) = happyGoto action_29 action_5 (177) = happyGoto action_30 action_5 (178) = happyGoto action_31 action_5 (181) = happyGoto action_32 action_5 (182) = happyGoto action_33 action_5 (183) = happyGoto action_34 action_5 (190) = happyGoto action_35 action_5 (215) = happyGoto action_36 action_5 (222) = happyGoto action_37 action_5 (228) = happyGoto action_38 action_5 (231) = happyGoto action_39 action_5 (232) = happyGoto action_40 action_5 (234) = happyGoto action_41 action_5 (244) = happyGoto action_42 action_5 (245) = happyGoto action_43 action_5 (246) = happyGoto action_44 action_5 (247) = happyGoto action_45 action_5 (248) = happyGoto action_46 action_5 (249) = happyGoto action_47 action_5 (257) = happyGoto action_48 action_5 _ = happyFail action_6 (385) = happyShift action_22 action_6 (36) = happyGoto action_21 action_6 _ = happyFail action_7 (18) = happyGoto action_20 action_7 (258) = happyGoto action_13 action_7 _ = happyReduce_714 action_8 (18) = happyGoto action_18 action_8 (258) = happyGoto action_13 action_8 (277) = happyGoto action_19 action_8 _ = happyReduce_714 action_9 (18) = happyGoto action_16 action_9 (258) = happyGoto action_13 action_9 (276) = happyGoto action_17 action_9 _ = happyReduce_714 action_10 (18) = happyGoto action_14 action_10 (258) = happyGoto action_13 action_10 (275) = happyGoto action_15 action_10 _ = happyReduce_714 action_11 (18) = happyGoto action_12 action_11 (258) = happyGoto action_13 action_11 _ = happyFail action_12 (393) = happyShift action_169 action_12 (15) = happyGoto action_383 action_12 (22) = happyGoto action_384 action_12 (23) = happyGoto action_166 action_12 _ = happyFail action_13 (418) = happyShift action_380 action_13 (419) = happyShift action_381 action_13 (420) = happyShift action_382 action_13 (19) = happyGoto action_378 action_13 (20) = happyGoto action_379 action_13 _ = happyReduce_21 action_14 (393) = happyShift action_377 action_14 _ = happyReduce_748 action_15 (1) = happyAccept action_15 _ = happyFail action_16 (393) = happyShift action_169 action_16 (23) = happyGoto action_376 action_16 _ = happyReduce_29 action_17 (1) = happyAccept action_17 _ = happyFail action_18 (393) = happyShift action_169 action_18 (23) = happyGoto action_375 action_18 _ = happyReduce_29 action_19 (1) = happyAccept action_19 _ = happyFail action_20 (1) = happyAccept action_20 _ = happyFail action_21 (426) = happyAccept action_21 _ = happyFail action_22 (409) = happyShift action_374 action_22 (37) = happyGoto action_373 action_22 _ = happyReduce_64 action_23 _ = happyReduce_616 action_24 (321) = happyReduce_600 action_24 _ = happyReduce_400 action_25 _ = happyReduce_402 action_26 _ = happyReduce_408 action_27 (285) = happyShift action_211 action_27 (286) = happyShift action_186 action_27 (287) = happyShift action_212 action_27 (288) = happyShift action_187 action_27 (313) = happyShift action_367 action_27 (314) = happyShift action_214 action_27 (316) = happyShift action_190 action_27 (317) = happyShift action_368 action_27 (327) = happyShift action_216 action_27 (328) = happyShift action_340 action_27 (329) = happyShift action_218 action_27 (330) = happyShift action_369 action_27 (331) = happyShift action_370 action_27 (332) = happyShift action_371 action_27 (333) = happyShift action_372 action_27 (236) = happyGoto action_363 action_27 (239) = happyGoto action_364 action_27 (241) = happyGoto action_365 action_27 (243) = happyGoto action_226 action_27 (250) = happyGoto action_183 action_27 (251) = happyGoto action_184 action_27 (252) = happyGoto action_366 action_27 (254) = happyGoto action_208 action_27 (255) = happyGoto action_209 action_27 (256) = happyGoto action_210 action_27 _ = happyReduce_409 action_28 _ = happyReduce_411 action_29 _ = happyReduce_413 action_30 _ = happyReduce_419 action_31 (278) = happyShift action_49 action_31 (279) = happyShift action_50 action_31 (280) = happyShift action_51 action_31 (281) = happyShift action_52 action_31 (282) = happyShift action_53 action_31 (283) = happyShift action_54 action_31 (289) = happyShift action_55 action_31 (290) = happyShift action_56 action_31 (291) = happyShift action_57 action_31 (292) = happyShift action_58 action_31 (293) = happyShift action_59 action_31 (294) = happyShift action_60 action_31 (295) = happyShift action_61 action_31 (296) = happyShift action_62 action_31 (297) = happyShift action_63 action_31 (298) = happyShift action_64 action_31 (299) = happyShift action_65 action_31 (301) = happyShift action_66 action_31 (307) = happyShift action_67 action_31 (309) = happyShift action_68 action_31 (312) = happyShift action_69 action_31 (324) = happyShift action_71 action_31 (325) = happyShift action_72 action_31 (334) = happyShift action_75 action_31 (337) = happyShift action_76 action_31 (338) = happyShift action_77 action_31 (339) = happyShift action_78 action_31 (340) = happyShift action_79 action_31 (341) = happyShift action_80 action_31 (342) = happyShift action_81 action_31 (344) = happyShift action_82 action_31 (345) = happyShift action_83 action_31 (346) = happyShift action_84 action_31 (348) = happyShift action_85 action_31 (350) = happyShift action_86 action_31 (351) = happyShift action_87 action_31 (358) = happyShift action_88 action_31 (359) = happyShift action_89 action_31 (360) = happyShift action_90 action_31 (361) = happyShift action_91 action_31 (362) = happyShift action_92 action_31 (363) = happyShift action_93 action_31 (364) = happyShift action_94 action_31 (365) = happyShift action_95 action_31 (366) = happyShift action_96 action_31 (367) = happyShift action_97 action_31 (368) = happyShift action_98 action_31 (369) = happyShift action_99 action_31 (370) = happyShift action_100 action_31 (371) = happyShift action_101 action_31 (380) = happyShift action_104 action_31 (381) = happyShift action_105 action_31 (383) = happyShift action_106 action_31 (402) = happyShift action_112 action_31 (403) = happyShift action_113 action_31 (181) = happyGoto action_362 action_31 (182) = happyGoto action_33 action_31 (183) = happyGoto action_34 action_31 (190) = happyGoto action_35 action_31 (228) = happyGoto action_38 action_31 (231) = happyGoto action_39 action_31 (232) = happyGoto action_40 action_31 (234) = happyGoto action_41 action_31 (244) = happyGoto action_42 action_31 (245) = happyGoto action_43 action_31 (246) = happyGoto action_44 action_31 (247) = happyGoto action_45 action_31 (248) = happyGoto action_46 action_31 (249) = happyGoto action_47 action_31 (257) = happyGoto action_48 action_31 _ = happyReduce_429 action_32 _ = happyReduce_434 action_33 (304) = happyShift action_361 action_33 _ = happyReduce_443 action_34 _ = happyReduce_446 action_35 _ = happyReduce_465 action_36 (321) = happyShift action_360 action_36 _ = happyFail action_37 (426) = happyAccept action_37 _ = happyFail action_38 _ = happyReduce_449 action_39 (323) = happyShift action_358 action_39 (336) = happyShift action_359 action_39 _ = happyReduce_448 action_40 _ = happyReduce_447 action_41 _ = happyReduce_632 action_42 _ = happyReduce_637 action_43 _ = happyReduce_677 action_44 _ = happyReduce_662 action_45 _ = happyReduce_639 action_46 _ = happyReduce_642 action_47 _ = happyReduce_687 action_48 _ = happyReduce_450 action_49 _ = happyReduce_664 action_50 _ = happyReduce_663 action_51 _ = happyReduce_685 action_52 _ = happyReduce_686 action_53 _ = happyReduce_689 action_54 _ = happyReduce_688 action_55 _ = happyReduce_704 action_56 _ = happyReduce_706 action_57 _ = happyReduce_705 action_58 _ = happyReduce_707 action_59 _ = happyReduce_708 action_60 _ = happyReduce_709 action_61 _ = happyReduce_710 action_62 _ = happyReduce_711 action_63 _ = happyReduce_712 action_64 _ = happyReduce_713 action_65 (278) = happyShift action_49 action_65 (279) = happyShift action_50 action_65 (280) = happyShift action_51 action_65 (281) = happyShift action_52 action_65 (282) = happyShift action_53 action_65 (283) = happyShift action_54 action_65 (285) = happyShift action_211 action_65 (286) = happyShift action_186 action_65 (287) = happyShift action_212 action_65 (288) = happyShift action_187 action_65 (289) = happyShift action_55 action_65 (290) = happyShift action_56 action_65 (291) = happyShift action_57 action_65 (292) = happyShift action_58 action_65 (293) = happyShift action_59 action_65 (294) = happyShift action_60 action_65 (295) = happyShift action_61 action_65 (296) = happyShift action_62 action_65 (297) = happyShift action_63 action_65 (298) = happyShift action_64 action_65 (299) = happyShift action_65 action_65 (300) = happyShift action_356 action_65 (301) = happyShift action_66 action_65 (307) = happyShift action_67 action_65 (309) = happyShift action_68 action_65 (311) = happyShift action_202 action_65 (312) = happyShift action_69 action_65 (313) = happyShift action_339 action_65 (314) = happyShift action_214 action_65 (316) = happyShift action_190 action_65 (319) = happyShift action_70 action_65 (324) = happyShift action_71 action_65 (325) = happyShift action_72 action_65 (327) = happyShift action_357 action_65 (328) = happyShift action_340 action_65 (329) = happyShift action_218 action_65 (334) = happyShift action_75 action_65 (337) = happyShift action_76 action_65 (338) = happyShift action_77 action_65 (339) = happyShift action_78 action_65 (340) = happyShift action_79 action_65 (341) = happyShift action_80 action_65 (342) = happyShift action_81 action_65 (344) = happyShift action_82 action_65 (345) = happyShift action_83 action_65 (346) = happyShift action_84 action_65 (348) = happyShift action_85 action_65 (350) = happyShift action_86 action_65 (351) = happyShift action_87 action_65 (358) = happyShift action_88 action_65 (359) = happyShift action_89 action_65 (360) = happyShift action_90 action_65 (361) = happyShift action_91 action_65 (362) = happyShift action_92 action_65 (363) = happyShift action_93 action_65 (364) = happyShift action_94 action_65 (365) = happyShift action_95 action_65 (366) = happyShift action_96 action_65 (367) = happyShift action_97 action_65 (368) = happyShift action_98 action_65 (369) = happyShift action_99 action_65 (370) = happyShift action_100 action_65 (371) = happyShift action_101 action_65 (373) = happyShift action_102 action_65 (378) = happyShift action_103 action_65 (380) = happyShift action_104 action_65 (381) = happyShift action_105 action_65 (383) = happyShift action_106 action_65 (384) = happyShift action_107 action_65 (391) = happyShift action_159 action_65 (392) = happyShift action_109 action_65 (396) = happyShift action_110 action_65 (402) = happyShift action_112 action_65 (403) = happyShift action_113 action_65 (411) = happyShift action_114 action_65 (412) = happyShift action_115 action_65 (413) = happyShift action_116 action_65 (169) = happyGoto action_348 action_65 (170) = happyGoto action_25 action_65 (171) = happyGoto action_26 action_65 (172) = happyGoto action_27 action_65 (173) = happyGoto action_28 action_65 (176) = happyGoto action_29 action_65 (177) = happyGoto action_30 action_65 (178) = happyGoto action_31 action_65 (181) = happyGoto action_32 action_65 (182) = happyGoto action_33 action_65 (183) = happyGoto action_34 action_65 (184) = happyGoto action_349 action_65 (185) = happyGoto action_350 action_65 (189) = happyGoto action_351 action_65 (190) = happyGoto action_35 action_65 (228) = happyGoto action_38 action_65 (231) = happyGoto action_39 action_65 (232) = happyGoto action_40 action_65 (234) = happyGoto action_41 action_65 (237) = happyGoto action_333 action_65 (239) = happyGoto action_334 action_65 (242) = happyGoto action_335 action_65 (243) = happyGoto action_352 action_65 (244) = happyGoto action_42 action_65 (245) = happyGoto action_43 action_65 (246) = happyGoto action_44 action_65 (247) = happyGoto action_45 action_65 (248) = happyGoto action_46 action_65 (249) = happyGoto action_47 action_65 (250) = happyGoto action_183 action_65 (251) = happyGoto action_184 action_65 (252) = happyGoto action_353 action_65 (253) = happyGoto action_336 action_65 (254) = happyGoto action_208 action_65 (255) = happyGoto action_354 action_65 (256) = happyGoto action_355 action_65 (257) = happyGoto action_48 action_65 _ = happyFail action_66 (278) = happyShift action_49 action_66 (279) = happyShift action_50 action_66 (280) = happyShift action_51 action_66 (281) = happyShift action_52 action_66 (282) = happyShift action_53 action_66 (283) = happyShift action_54 action_66 (285) = happyShift action_211 action_66 (286) = happyShift action_186 action_66 (287) = happyShift action_212 action_66 (288) = happyShift action_187 action_66 (289) = happyShift action_55 action_66 (290) = happyShift action_56 action_66 (291) = happyShift action_57 action_66 (292) = happyShift action_58 action_66 (293) = happyShift action_59 action_66 (294) = happyShift action_60 action_66 (295) = happyShift action_61 action_66 (296) = happyShift action_62 action_66 (297) = happyShift action_63 action_66 (298) = happyShift action_64 action_66 (299) = happyShift action_65 action_66 (301) = happyShift action_66 action_66 (302) = happyShift action_347 action_66 (307) = happyShift action_67 action_66 (309) = happyShift action_68 action_66 (311) = happyShift action_202 action_66 (312) = happyShift action_69 action_66 (313) = happyShift action_339 action_66 (314) = happyShift action_214 action_66 (316) = happyShift action_190 action_66 (319) = happyShift action_70 action_66 (324) = happyShift action_71 action_66 (325) = happyShift action_72 action_66 (327) = happyShift action_73 action_66 (328) = happyShift action_340 action_66 (329) = happyShift action_218 action_66 (334) = happyShift action_75 action_66 (337) = happyShift action_76 action_66 (338) = happyShift action_77 action_66 (339) = happyShift action_78 action_66 (340) = happyShift action_79 action_66 (341) = happyShift action_80 action_66 (342) = happyShift action_81 action_66 (344) = happyShift action_82 action_66 (345) = happyShift action_83 action_66 (346) = happyShift action_84 action_66 (348) = happyShift action_85 action_66 (350) = happyShift action_86 action_66 (351) = happyShift action_87 action_66 (358) = happyShift action_88 action_66 (359) = happyShift action_89 action_66 (360) = happyShift action_90 action_66 (361) = happyShift action_91 action_66 (362) = happyShift action_92 action_66 (363) = happyShift action_93 action_66 (364) = happyShift action_94 action_66 (365) = happyShift action_95 action_66 (366) = happyShift action_96 action_66 (367) = happyShift action_97 action_66 (368) = happyShift action_98 action_66 (369) = happyShift action_99 action_66 (370) = happyShift action_100 action_66 (371) = happyShift action_101 action_66 (373) = happyShift action_102 action_66 (378) = happyShift action_103 action_66 (380) = happyShift action_104 action_66 (381) = happyShift action_105 action_66 (383) = happyShift action_106 action_66 (384) = happyShift action_107 action_66 (391) = happyShift action_159 action_66 (392) = happyShift action_109 action_66 (396) = happyShift action_110 action_66 (402) = happyShift action_112 action_66 (403) = happyShift action_113 action_66 (411) = happyShift action_114 action_66 (412) = happyShift action_115 action_66 (413) = happyShift action_116 action_66 (169) = happyGoto action_329 action_66 (170) = happyGoto action_25 action_66 (171) = happyGoto action_26 action_66 (172) = happyGoto action_27 action_66 (173) = happyGoto action_28 action_66 (176) = happyGoto action_29 action_66 (177) = happyGoto action_30 action_66 (178) = happyGoto action_31 action_66 (181) = happyGoto action_32 action_66 (182) = happyGoto action_33 action_66 (183) = happyGoto action_34 action_66 (184) = happyGoto action_345 action_66 (185) = happyGoto action_346 action_66 (190) = happyGoto action_35 action_66 (228) = happyGoto action_38 action_66 (231) = happyGoto action_39 action_66 (232) = happyGoto action_40 action_66 (234) = happyGoto action_41 action_66 (237) = happyGoto action_333 action_66 (239) = happyGoto action_334 action_66 (242) = happyGoto action_335 action_66 (243) = happyGoto action_226 action_66 (244) = happyGoto action_42 action_66 (245) = happyGoto action_43 action_66 (246) = happyGoto action_44 action_66 (247) = happyGoto action_45 action_66 (248) = happyGoto action_46 action_66 (249) = happyGoto action_47 action_66 (250) = happyGoto action_183 action_66 (251) = happyGoto action_184 action_66 (253) = happyGoto action_336 action_66 (255) = happyGoto action_337 action_66 (256) = happyGoto action_338 action_66 (257) = happyGoto action_48 action_66 _ = happyFail action_67 (278) = happyShift action_49 action_67 (279) = happyShift action_50 action_67 (280) = happyShift action_51 action_67 (281) = happyShift action_52 action_67 (282) = happyShift action_53 action_67 (283) = happyShift action_54 action_67 (285) = happyShift action_211 action_67 (286) = happyShift action_186 action_67 (287) = happyShift action_212 action_67 (288) = happyShift action_187 action_67 (289) = happyShift action_55 action_67 (290) = happyShift action_56 action_67 (291) = happyShift action_57 action_67 (292) = happyShift action_58 action_67 (293) = happyShift action_59 action_67 (294) = happyShift action_60 action_67 (295) = happyShift action_61 action_67 (296) = happyShift action_62 action_67 (297) = happyShift action_63 action_67 (298) = happyShift action_64 action_67 (299) = happyShift action_65 action_67 (301) = happyShift action_66 action_67 (307) = happyShift action_67 action_67 (308) = happyShift action_344 action_67 (309) = happyShift action_68 action_67 (312) = happyShift action_69 action_67 (313) = happyShift action_339 action_67 (314) = happyShift action_214 action_67 (316) = happyShift action_190 action_67 (319) = happyShift action_70 action_67 (324) = happyShift action_71 action_67 (325) = happyShift action_72 action_67 (327) = happyShift action_73 action_67 (328) = happyShift action_340 action_67 (329) = happyShift action_218 action_67 (334) = happyShift action_75 action_67 (337) = happyShift action_76 action_67 (338) = happyShift action_77 action_67 (339) = happyShift action_78 action_67 (340) = happyShift action_79 action_67 (341) = happyShift action_80 action_67 (342) = happyShift action_81 action_67 (344) = happyShift action_82 action_67 (345) = happyShift action_83 action_67 (346) = happyShift action_84 action_67 (348) = happyShift action_85 action_67 (350) = happyShift action_86 action_67 (351) = happyShift action_87 action_67 (358) = happyShift action_88 action_67 (359) = happyShift action_89 action_67 (360) = happyShift action_90 action_67 (361) = happyShift action_91 action_67 (362) = happyShift action_92 action_67 (363) = happyShift action_93 action_67 (364) = happyShift action_94 action_67 (365) = happyShift action_95 action_67 (366) = happyShift action_96 action_67 (367) = happyShift action_97 action_67 (368) = happyShift action_98 action_67 (369) = happyShift action_99 action_67 (370) = happyShift action_100 action_67 (371) = happyShift action_101 action_67 (373) = happyShift action_102 action_67 (378) = happyShift action_103 action_67 (380) = happyShift action_104 action_67 (381) = happyShift action_105 action_67 (383) = happyShift action_106 action_67 (384) = happyShift action_107 action_67 (391) = happyShift action_159 action_67 (392) = happyShift action_109 action_67 (396) = happyShift action_110 action_67 (402) = happyShift action_112 action_67 (403) = happyShift action_113 action_67 (411) = happyShift action_114 action_67 (412) = happyShift action_115 action_67 (413) = happyShift action_116 action_67 (169) = happyGoto action_329 action_67 (170) = happyGoto action_25 action_67 (171) = happyGoto action_26 action_67 (172) = happyGoto action_27 action_67 (173) = happyGoto action_28 action_67 (176) = happyGoto action_29 action_67 (177) = happyGoto action_30 action_67 (178) = happyGoto action_31 action_67 (181) = happyGoto action_32 action_67 (182) = happyGoto action_33 action_67 (183) = happyGoto action_34 action_67 (185) = happyGoto action_341 action_67 (190) = happyGoto action_35 action_67 (199) = happyGoto action_342 action_67 (200) = happyGoto action_343 action_67 (228) = happyGoto action_38 action_67 (231) = happyGoto action_39 action_67 (232) = happyGoto action_40 action_67 (234) = happyGoto action_41 action_67 (237) = happyGoto action_333 action_67 (239) = happyGoto action_334 action_67 (242) = happyGoto action_335 action_67 (243) = happyGoto action_226 action_67 (244) = happyGoto action_42 action_67 (245) = happyGoto action_43 action_67 (246) = happyGoto action_44 action_67 (247) = happyGoto action_45 action_67 (248) = happyGoto action_46 action_67 (249) = happyGoto action_47 action_67 (250) = happyGoto action_183 action_67 (251) = happyGoto action_184 action_67 (253) = happyGoto action_336 action_67 (255) = happyGoto action_337 action_67 (256) = happyGoto action_338 action_67 (257) = happyGoto action_48 action_67 _ = happyFail action_68 (278) = happyShift action_49 action_68 (279) = happyShift action_50 action_68 (280) = happyShift action_51 action_68 (281) = happyShift action_52 action_68 (282) = happyShift action_53 action_68 (283) = happyShift action_54 action_68 (285) = happyShift action_211 action_68 (286) = happyShift action_186 action_68 (287) = happyShift action_212 action_68 (288) = happyShift action_187 action_68 (289) = happyShift action_55 action_68 (290) = happyShift action_56 action_68 (291) = happyShift action_57 action_68 (292) = happyShift action_58 action_68 (293) = happyShift action_59 action_68 (294) = happyShift action_60 action_68 (295) = happyShift action_61 action_68 (296) = happyShift action_62 action_68 (297) = happyShift action_63 action_68 (298) = happyShift action_64 action_68 (299) = happyShift action_65 action_68 (301) = happyShift action_66 action_68 (307) = happyShift action_67 action_68 (309) = happyShift action_68 action_68 (312) = happyShift action_69 action_68 (313) = happyShift action_339 action_68 (314) = happyShift action_214 action_68 (316) = happyShift action_190 action_68 (319) = happyShift action_70 action_68 (324) = happyShift action_71 action_68 (325) = happyShift action_72 action_68 (327) = happyShift action_73 action_68 (328) = happyShift action_340 action_68 (329) = happyShift action_218 action_68 (334) = happyShift action_75 action_68 (337) = happyShift action_76 action_68 (338) = happyShift action_77 action_68 (339) = happyShift action_78 action_68 (340) = happyShift action_79 action_68 (341) = happyShift action_80 action_68 (342) = happyShift action_81 action_68 (344) = happyShift action_82 action_68 (345) = happyShift action_83 action_68 (346) = happyShift action_84 action_68 (348) = happyShift action_85 action_68 (350) = happyShift action_86 action_68 (351) = happyShift action_87 action_68 (358) = happyShift action_88 action_68 (359) = happyShift action_89 action_68 (360) = happyShift action_90 action_68 (361) = happyShift action_91 action_68 (362) = happyShift action_92 action_68 (363) = happyShift action_93 action_68 (364) = happyShift action_94 action_68 (365) = happyShift action_95 action_68 (366) = happyShift action_96 action_68 (367) = happyShift action_97 action_68 (368) = happyShift action_98 action_68 (369) = happyShift action_99 action_68 (370) = happyShift action_100 action_68 (371) = happyShift action_101 action_68 (373) = happyShift action_102 action_68 (378) = happyShift action_103 action_68 (380) = happyShift action_104 action_68 (381) = happyShift action_105 action_68 (383) = happyShift action_106 action_68 (384) = happyShift action_107 action_68 (391) = happyShift action_159 action_68 (392) = happyShift action_109 action_68 (396) = happyShift action_110 action_68 (402) = happyShift action_112 action_68 (403) = happyShift action_113 action_68 (411) = happyShift action_114 action_68 (412) = happyShift action_115 action_68 (413) = happyShift action_116 action_68 (169) = happyGoto action_329 action_68 (170) = happyGoto action_25 action_68 (171) = happyGoto action_26 action_68 (172) = happyGoto action_27 action_68 (173) = happyGoto action_28 action_68 (176) = happyGoto action_29 action_68 (177) = happyGoto action_30 action_68 (178) = happyGoto action_31 action_68 (181) = happyGoto action_32 action_68 (182) = happyGoto action_33 action_68 (183) = happyGoto action_34 action_68 (185) = happyGoto action_330 action_68 (190) = happyGoto action_35 action_68 (200) = happyGoto action_331 action_68 (207) = happyGoto action_332 action_68 (228) = happyGoto action_38 action_68 (231) = happyGoto action_39 action_68 (232) = happyGoto action_40 action_68 (234) = happyGoto action_41 action_68 (237) = happyGoto action_333 action_68 (239) = happyGoto action_334 action_68 (242) = happyGoto action_335 action_68 (243) = happyGoto action_226 action_68 (244) = happyGoto action_42 action_68 (245) = happyGoto action_43 action_68 (246) = happyGoto action_44 action_68 (247) = happyGoto action_45 action_68 (248) = happyGoto action_46 action_68 (249) = happyGoto action_47 action_68 (250) = happyGoto action_183 action_68 (251) = happyGoto action_184 action_68 (253) = happyGoto action_336 action_68 (255) = happyGoto action_337 action_68 (256) = happyGoto action_338 action_68 (257) = happyGoto action_48 action_68 _ = happyReduce_583 action_69 _ = happyReduce_461 action_70 (278) = happyShift action_49 action_70 (279) = happyShift action_50 action_70 (280) = happyShift action_51 action_70 (281) = happyShift action_52 action_70 (282) = happyShift action_53 action_70 (283) = happyShift action_54 action_70 (289) = happyShift action_55 action_70 (290) = happyShift action_56 action_70 (291) = happyShift action_57 action_70 (292) = happyShift action_58 action_70 (293) = happyShift action_59 action_70 (294) = happyShift action_60 action_70 (295) = happyShift action_61 action_70 (296) = happyShift action_62 action_70 (297) = happyShift action_63 action_70 (298) = happyShift action_64 action_70 (299) = happyShift action_65 action_70 (301) = happyShift action_66 action_70 (307) = happyShift action_67 action_70 (309) = happyShift action_68 action_70 (312) = happyShift action_69 action_70 (324) = happyShift action_71 action_70 (325) = happyShift action_72 action_70 (328) = happyShift action_242 action_70 (334) = happyShift action_75 action_70 (337) = happyShift action_76 action_70 (338) = happyShift action_77 action_70 (339) = happyShift action_78 action_70 (340) = happyShift action_79 action_70 (341) = happyShift action_80 action_70 (342) = happyShift action_81 action_70 (344) = happyShift action_82 action_70 (345) = happyShift action_83 action_70 (346) = happyShift action_84 action_70 (348) = happyShift action_85 action_70 (350) = happyShift action_86 action_70 (351) = happyShift action_87 action_70 (358) = happyShift action_88 action_70 (359) = happyShift action_89 action_70 (360) = happyShift action_90 action_70 (361) = happyShift action_91 action_70 (362) = happyShift action_92 action_70 (363) = happyShift action_93 action_70 (364) = happyShift action_94 action_70 (365) = happyShift action_95 action_70 (366) = happyShift action_96 action_70 (367) = happyShift action_97 action_70 (368) = happyShift action_98 action_70 (369) = happyShift action_99 action_70 (370) = happyShift action_100 action_70 (371) = happyShift action_101 action_70 (373) = happyShift action_328 action_70 (380) = happyShift action_104 action_70 (381) = happyShift action_105 action_70 (383) = happyShift action_106 action_70 (402) = happyShift action_112 action_70 (403) = happyShift action_113 action_70 (179) = happyGoto action_326 action_70 (180) = happyGoto action_327 action_70 (181) = happyGoto action_241 action_70 (182) = happyGoto action_33 action_70 (183) = happyGoto action_34 action_70 (190) = happyGoto action_35 action_70 (228) = happyGoto action_38 action_70 (231) = happyGoto action_39 action_70 (232) = happyGoto action_40 action_70 (234) = happyGoto action_41 action_70 (244) = happyGoto action_42 action_70 (245) = happyGoto action_43 action_70 (246) = happyGoto action_44 action_70 (247) = happyGoto action_45 action_70 (248) = happyGoto action_46 action_70 (249) = happyGoto action_47 action_70 (257) = happyGoto action_48 action_70 _ = happyFail action_71 (278) = happyShift action_49 action_71 (282) = happyShift action_53 action_71 (283) = happyShift action_54 action_71 (289) = happyShift action_135 action_71 (292) = happyShift action_136 action_71 (299) = happyShift action_137 action_71 (301) = happyShift action_138 action_71 (307) = happyShift action_139 action_71 (309) = happyShift action_140 action_71 (312) = happyShift action_141 action_71 (325) = happyShift action_142 action_71 (328) = happyShift action_143 action_71 (337) = happyShift action_144 action_71 (338) = happyShift action_145 action_71 (344) = happyShift action_146 action_71 (346) = happyShift action_147 action_71 (358) = happyShift action_88 action_71 (359) = happyShift action_148 action_71 (360) = happyShift action_149 action_71 (361) = happyShift action_150 action_71 (363) = happyShift action_93 action_71 (364) = happyShift action_94 action_71 (365) = happyShift action_95 action_71 (366) = happyShift action_96 action_71 (367) = happyShift action_97 action_71 (368) = happyShift action_98 action_71 (369) = happyShift action_99 action_71 (370) = happyShift action_100 action_71 (371) = happyShift action_101 action_71 (383) = happyShift action_106 action_71 (402) = happyShift action_112 action_71 (416) = happyShift action_152 action_71 (417) = happyShift action_153 action_71 (107) = happyGoto action_324 action_71 (109) = happyGoto action_325 action_71 (110) = happyGoto action_121 action_71 (111) = happyGoto action_122 action_71 (112) = happyGoto action_123 action_71 (113) = happyGoto action_124 action_71 (114) = happyGoto action_125 action_71 (115) = happyGoto action_126 action_71 (245) = happyGoto action_131 action_71 (248) = happyGoto action_132 action_71 (249) = happyGoto action_47 action_71 (270) = happyGoto action_133 action_71 (271) = happyGoto action_134 action_71 _ = happyFail action_72 (278) = happyShift action_49 action_72 (279) = happyShift action_50 action_72 (280) = happyShift action_51 action_72 (281) = happyShift action_52 action_72 (282) = happyShift action_53 action_72 (283) = happyShift action_54 action_72 (289) = happyShift action_55 action_72 (290) = happyShift action_56 action_72 (291) = happyShift action_57 action_72 (292) = happyShift action_58 action_72 (293) = happyShift action_59 action_72 (294) = happyShift action_60 action_72 (295) = happyShift action_61 action_72 (296) = happyShift action_62 action_72 (297) = happyShift action_63 action_72 (298) = happyShift action_64 action_72 (299) = happyShift action_65 action_72 (301) = happyShift action_66 action_72 (307) = happyShift action_67 action_72 (309) = happyShift action_68 action_72 (312) = happyShift action_69 action_72 (324) = happyShift action_71 action_72 (325) = happyShift action_72 action_72 (334) = happyShift action_75 action_72 (337) = happyShift action_76 action_72 (338) = happyShift action_77 action_72 (339) = happyShift action_78 action_72 (340) = happyShift action_79 action_72 (341) = happyShift action_80 action_72 (342) = happyShift action_81 action_72 (344) = happyShift action_82 action_72 (345) = happyShift action_83 action_72 (346) = happyShift action_84 action_72 (348) = happyShift action_85 action_72 (350) = happyShift action_86 action_72 (351) = happyShift action_87 action_72 (358) = happyShift action_88 action_72 (359) = happyShift action_89 action_72 (360) = happyShift action_90 action_72 (361) = happyShift action_91 action_72 (362) = happyShift action_92 action_72 (363) = happyShift action_93 action_72 (364) = happyShift action_94 action_72 (365) = happyShift action_95 action_72 (366) = happyShift action_96 action_72 (367) = happyShift action_97 action_72 (368) = happyShift action_98 action_72 (369) = happyShift action_99 action_72 (370) = happyShift action_100 action_72 (371) = happyShift action_101 action_72 (380) = happyShift action_104 action_72 (381) = happyShift action_105 action_72 (383) = happyShift action_106 action_72 (402) = happyShift action_112 action_72 (403) = happyShift action_113 action_72 (181) = happyGoto action_323 action_72 (182) = happyGoto action_33 action_72 (183) = happyGoto action_34 action_72 (190) = happyGoto action_35 action_72 (228) = happyGoto action_38 action_72 (231) = happyGoto action_39 action_72 (232) = happyGoto action_40 action_72 (234) = happyGoto action_41 action_72 (244) = happyGoto action_42 action_72 (245) = happyGoto action_43 action_72 (246) = happyGoto action_44 action_72 (247) = happyGoto action_45 action_72 (248) = happyGoto action_46 action_72 (249) = happyGoto action_47 action_72 (257) = happyGoto action_48 action_72 _ = happyFail action_73 (278) = happyShift action_49 action_73 (279) = happyShift action_50 action_73 (280) = happyShift action_51 action_73 (281) = happyShift action_52 action_73 (282) = happyShift action_53 action_73 (283) = happyShift action_54 action_73 (289) = happyShift action_55 action_73 (290) = happyShift action_56 action_73 (291) = happyShift action_57 action_73 (292) = happyShift action_58 action_73 (293) = happyShift action_59 action_73 (294) = happyShift action_60 action_73 (295) = happyShift action_61 action_73 (296) = happyShift action_62 action_73 (297) = happyShift action_63 action_73 (298) = happyShift action_64 action_73 (299) = happyShift action_65 action_73 (301) = happyShift action_66 action_73 (307) = happyShift action_67 action_73 (309) = happyShift action_68 action_73 (312) = happyShift action_69 action_73 (324) = happyShift action_71 action_73 (325) = happyShift action_72 action_73 (334) = happyShift action_75 action_73 (337) = happyShift action_76 action_73 (338) = happyShift action_77 action_73 (339) = happyShift action_78 action_73 (340) = happyShift action_79 action_73 (341) = happyShift action_80 action_73 (342) = happyShift action_81 action_73 (344) = happyShift action_82 action_73 (345) = happyShift action_83 action_73 (346) = happyShift action_84 action_73 (348) = happyShift action_85 action_73 (350) = happyShift action_86 action_73 (351) = happyShift action_87 action_73 (358) = happyShift action_88 action_73 (359) = happyShift action_89 action_73 (360) = happyShift action_90 action_73 (361) = happyShift action_91 action_73 (362) = happyShift action_92 action_73 (363) = happyShift action_93 action_73 (364) = happyShift action_94 action_73 (365) = happyShift action_95 action_73 (366) = happyShift action_96 action_73 (367) = happyShift action_97 action_73 (368) = happyShift action_98 action_73 (369) = happyShift action_99 action_73 (370) = happyShift action_100 action_73 (371) = happyShift action_101 action_73 (380) = happyShift action_104 action_73 (381) = happyShift action_105 action_73 (383) = happyShift action_106 action_73 (402) = happyShift action_112 action_73 (403) = happyShift action_113 action_73 (178) = happyGoto action_322 action_73 (181) = happyGoto action_32 action_73 (182) = happyGoto action_33 action_73 (183) = happyGoto action_34 action_73 (190) = happyGoto action_35 action_73 (228) = happyGoto action_38 action_73 (231) = happyGoto action_39 action_73 (232) = happyGoto action_40 action_73 (234) = happyGoto action_41 action_73 (244) = happyGoto action_42 action_73 (245) = happyGoto action_43 action_73 (246) = happyGoto action_44 action_73 (247) = happyGoto action_45 action_73 (248) = happyGoto action_46 action_73 (249) = happyGoto action_47 action_73 (257) = happyGoto action_48 action_73 _ = happyFail action_74 (278) = happyShift action_49 action_74 (279) = happyShift action_50 action_74 (280) = happyShift action_51 action_74 (281) = happyShift action_52 action_74 (282) = happyShift action_53 action_74 (283) = happyShift action_54 action_74 (289) = happyShift action_55 action_74 (290) = happyShift action_56 action_74 (291) = happyShift action_57 action_74 (292) = happyShift action_58 action_74 (293) = happyShift action_59 action_74 (294) = happyShift action_60 action_74 (295) = happyShift action_61 action_74 (296) = happyShift action_62 action_74 (297) = happyShift action_63 action_74 (298) = happyShift action_64 action_74 (299) = happyShift action_65 action_74 (301) = happyShift action_66 action_74 (307) = happyShift action_67 action_74 (309) = happyShift action_68 action_74 (312) = happyShift action_69 action_74 (324) = happyShift action_71 action_74 (325) = happyShift action_72 action_74 (334) = happyShift action_75 action_74 (337) = happyShift action_76 action_74 (338) = happyShift action_77 action_74 (339) = happyShift action_78 action_74 (340) = happyShift action_79 action_74 (341) = happyShift action_80 action_74 (342) = happyShift action_81 action_74 (344) = happyShift action_82 action_74 (345) = happyShift action_83 action_74 (346) = happyShift action_84 action_74 (348) = happyShift action_85 action_74 (350) = happyShift action_86 action_74 (351) = happyShift action_87 action_74 (358) = happyShift action_88 action_74 (359) = happyShift action_89 action_74 (360) = happyShift action_90 action_74 (361) = happyShift action_91 action_74 (362) = happyShift action_92 action_74 (363) = happyShift action_93 action_74 (364) = happyShift action_94 action_74 (365) = happyShift action_95 action_74 (366) = happyShift action_96 action_74 (367) = happyShift action_97 action_74 (368) = happyShift action_98 action_74 (369) = happyShift action_99 action_74 (370) = happyShift action_100 action_74 (371) = happyShift action_101 action_74 (380) = happyShift action_104 action_74 (381) = happyShift action_105 action_74 (383) = happyShift action_106 action_74 (402) = happyShift action_112 action_74 (403) = happyShift action_113 action_74 (181) = happyGoto action_321 action_74 (182) = happyGoto action_33 action_74 (183) = happyGoto action_34 action_74 (190) = happyGoto action_35 action_74 (228) = happyGoto action_38 action_74 (231) = happyGoto action_39 action_74 (232) = happyGoto action_40 action_74 (234) = happyGoto action_41 action_74 (244) = happyGoto action_42 action_74 (245) = happyGoto action_43 action_74 (246) = happyGoto action_44 action_74 (247) = happyGoto action_45 action_74 (248) = happyGoto action_46 action_74 (249) = happyGoto action_47 action_74 (257) = happyGoto action_48 action_74 _ = happyFail action_75 (278) = happyShift action_49 action_75 (279) = happyShift action_50 action_75 (280) = happyShift action_51 action_75 (281) = happyShift action_52 action_75 (282) = happyShift action_53 action_75 (283) = happyShift action_54 action_75 (289) = happyShift action_55 action_75 (290) = happyShift action_56 action_75 (291) = happyShift action_57 action_75 (292) = happyShift action_58 action_75 (293) = happyShift action_59 action_75 (294) = happyShift action_60 action_75 (295) = happyShift action_61 action_75 (296) = happyShift action_62 action_75 (297) = happyShift action_63 action_75 (298) = happyShift action_64 action_75 (299) = happyShift action_65 action_75 (301) = happyShift action_66 action_75 (307) = happyShift action_67 action_75 (309) = happyShift action_68 action_75 (312) = happyShift action_69 action_75 (319) = happyShift action_70 action_75 (324) = happyShift action_71 action_75 (325) = happyShift action_72 action_75 (327) = happyShift action_73 action_75 (334) = happyShift action_75 action_75 (337) = happyShift action_76 action_75 (338) = happyShift action_77 action_75 (339) = happyShift action_78 action_75 (340) = happyShift action_79 action_75 (341) = happyShift action_80 action_75 (342) = happyShift action_81 action_75 (344) = happyShift action_82 action_75 (345) = happyShift action_83 action_75 (346) = happyShift action_84 action_75 (348) = happyShift action_85 action_75 (350) = happyShift action_86 action_75 (351) = happyShift action_87 action_75 (358) = happyShift action_88 action_75 (359) = happyShift action_89 action_75 (360) = happyShift action_90 action_75 (361) = happyShift action_91 action_75 (362) = happyShift action_92 action_75 (363) = happyShift action_93 action_75 (364) = happyShift action_94 action_75 (365) = happyShift action_95 action_75 (366) = happyShift action_96 action_75 (367) = happyShift action_97 action_75 (368) = happyShift action_98 action_75 (369) = happyShift action_99 action_75 (370) = happyShift action_100 action_75 (371) = happyShift action_101 action_75 (373) = happyShift action_102 action_75 (378) = happyShift action_103 action_75 (380) = happyShift action_104 action_75 (381) = happyShift action_105 action_75 (383) = happyShift action_106 action_75 (384) = happyShift action_107 action_75 (391) = happyShift action_159 action_75 (392) = happyShift action_109 action_75 (396) = happyShift action_110 action_75 (402) = happyShift action_112 action_75 (403) = happyShift action_113 action_75 (411) = happyShift action_114 action_75 (412) = happyShift action_115 action_75 (413) = happyShift action_116 action_75 (169) = happyGoto action_319 action_75 (170) = happyGoto action_25 action_75 (171) = happyGoto action_26 action_75 (172) = happyGoto action_27 action_75 (173) = happyGoto action_28 action_75 (176) = happyGoto action_29 action_75 (177) = happyGoto action_30 action_75 (178) = happyGoto action_31 action_75 (181) = happyGoto action_32 action_75 (182) = happyGoto action_33 action_75 (183) = happyGoto action_34 action_75 (188) = happyGoto action_320 action_75 (190) = happyGoto action_35 action_75 (228) = happyGoto action_38 action_75 (231) = happyGoto action_39 action_75 (232) = happyGoto action_40 action_75 (234) = happyGoto action_41 action_75 (244) = happyGoto action_42 action_75 (245) = happyGoto action_43 action_75 (246) = happyGoto action_44 action_75 (247) = happyGoto action_45 action_75 (248) = happyGoto action_46 action_75 (249) = happyGoto action_47 action_75 (257) = happyGoto action_48 action_75 _ = happyFail action_76 _ = happyReduce_466 action_77 (278) = happyShift action_49 action_77 (279) = happyShift action_50 action_77 (280) = happyShift action_51 action_77 (281) = happyShift action_52 action_77 (282) = happyShift action_53 action_77 (283) = happyShift action_54 action_77 (289) = happyShift action_55 action_77 (290) = happyShift action_56 action_77 (291) = happyShift action_57 action_77 (292) = happyShift action_58 action_77 (293) = happyShift action_59 action_77 (294) = happyShift action_60 action_77 (295) = happyShift action_61 action_77 (296) = happyShift action_62 action_77 (297) = happyShift action_63 action_77 (298) = happyShift action_64 action_77 (299) = happyShift action_65 action_77 (301) = happyShift action_66 action_77 (307) = happyShift action_67 action_77 (309) = happyShift action_68 action_77 (312) = happyShift action_69 action_77 (319) = happyShift action_70 action_77 (324) = happyShift action_71 action_77 (325) = happyShift action_72 action_77 (327) = happyShift action_73 action_77 (334) = happyShift action_75 action_77 (337) = happyShift action_76 action_77 (338) = happyShift action_77 action_77 (339) = happyShift action_78 action_77 (340) = happyShift action_79 action_77 (341) = happyShift action_80 action_77 (342) = happyShift action_81 action_77 (344) = happyShift action_82 action_77 (345) = happyShift action_83 action_77 (346) = happyShift action_84 action_77 (348) = happyShift action_85 action_77 (350) = happyShift action_86 action_77 (351) = happyShift action_87 action_77 (358) = happyShift action_88 action_77 (359) = happyShift action_89 action_77 (360) = happyShift action_90 action_77 (361) = happyShift action_91 action_77 (362) = happyShift action_92 action_77 (363) = happyShift action_93 action_77 (364) = happyShift action_94 action_77 (365) = happyShift action_95 action_77 (366) = happyShift action_96 action_77 (367) = happyShift action_97 action_77 (368) = happyShift action_98 action_77 (369) = happyShift action_99 action_77 (370) = happyShift action_100 action_77 (371) = happyShift action_101 action_77 (373) = happyShift action_102 action_77 (378) = happyShift action_103 action_77 (380) = happyShift action_104 action_77 (381) = happyShift action_105 action_77 (383) = happyShift action_106 action_77 (384) = happyShift action_107 action_77 (391) = happyShift action_159 action_77 (392) = happyShift action_109 action_77 (396) = happyShift action_110 action_77 (402) = happyShift action_112 action_77 (403) = happyShift action_113 action_77 (411) = happyShift action_114 action_77 (412) = happyShift action_115 action_77 (413) = happyShift action_116 action_77 (168) = happyGoto action_318 action_77 (169) = happyGoto action_161 action_77 (170) = happyGoto action_25 action_77 (171) = happyGoto action_26 action_77 (172) = happyGoto action_27 action_77 (173) = happyGoto action_28 action_77 (176) = happyGoto action_29 action_77 (177) = happyGoto action_30 action_77 (178) = happyGoto action_31 action_77 (181) = happyGoto action_32 action_77 (182) = happyGoto action_33 action_77 (183) = happyGoto action_34 action_77 (190) = happyGoto action_35 action_77 (228) = happyGoto action_38 action_77 (231) = happyGoto action_39 action_77 (232) = happyGoto action_40 action_77 (234) = happyGoto action_41 action_77 (244) = happyGoto action_42 action_77 (245) = happyGoto action_43 action_77 (246) = happyGoto action_44 action_77 (247) = happyGoto action_45 action_77 (248) = happyGoto action_46 action_77 (249) = happyGoto action_47 action_77 (257) = happyGoto action_48 action_77 _ = happyFail action_78 (278) = happyShift action_49 action_78 (279) = happyShift action_50 action_78 (280) = happyShift action_51 action_78 (281) = happyShift action_52 action_78 (282) = happyShift action_53 action_78 (283) = happyShift action_54 action_78 (289) = happyShift action_55 action_78 (290) = happyShift action_56 action_78 (291) = happyShift action_57 action_78 (292) = happyShift action_58 action_78 (293) = happyShift action_59 action_78 (294) = happyShift action_60 action_78 (295) = happyShift action_61 action_78 (296) = happyShift action_62 action_78 (297) = happyShift action_63 action_78 (298) = happyShift action_64 action_78 (299) = happyShift action_65 action_78 (301) = happyShift action_66 action_78 (307) = happyShift action_67 action_78 (309) = happyShift action_68 action_78 (312) = happyShift action_69 action_78 (319) = happyShift action_70 action_78 (324) = happyShift action_71 action_78 (325) = happyShift action_72 action_78 (327) = happyShift action_73 action_78 (334) = happyShift action_75 action_78 (337) = happyShift action_76 action_78 (338) = happyShift action_77 action_78 (339) = happyShift action_78 action_78 (340) = happyShift action_79 action_78 (341) = happyShift action_80 action_78 (342) = happyShift action_81 action_78 (344) = happyShift action_82 action_78 (345) = happyShift action_83 action_78 (346) = happyShift action_84 action_78 (348) = happyShift action_85 action_78 (350) = happyShift action_86 action_78 (351) = happyShift action_87 action_78 (358) = happyShift action_88 action_78 (359) = happyShift action_89 action_78 (360) = happyShift action_90 action_78 (361) = happyShift action_91 action_78 (362) = happyShift action_92 action_78 (363) = happyShift action_93 action_78 (364) = happyShift action_94 action_78 (365) = happyShift action_95 action_78 (366) = happyShift action_96 action_78 (367) = happyShift action_97 action_78 (368) = happyShift action_98 action_78 (369) = happyShift action_99 action_78 (370) = happyShift action_100 action_78 (371) = happyShift action_101 action_78 (373) = happyShift action_102 action_78 (378) = happyShift action_103 action_78 (380) = happyShift action_104 action_78 (381) = happyShift action_105 action_78 (383) = happyShift action_106 action_78 (384) = happyShift action_107 action_78 (391) = happyShift action_159 action_78 (392) = happyShift action_109 action_78 (396) = happyShift action_110 action_78 (402) = happyShift action_112 action_78 (403) = happyShift action_113 action_78 (411) = happyShift action_114 action_78 (412) = happyShift action_115 action_78 (413) = happyShift action_116 action_78 (168) = happyGoto action_317 action_78 (169) = happyGoto action_161 action_78 (170) = happyGoto action_25 action_78 (171) = happyGoto action_26 action_78 (172) = happyGoto action_27 action_78 (173) = happyGoto action_28 action_78 (176) = happyGoto action_29 action_78 (177) = happyGoto action_30 action_78 (178) = happyGoto action_31 action_78 (181) = happyGoto action_32 action_78 (182) = happyGoto action_33 action_78 (183) = happyGoto action_34 action_78 (190) = happyGoto action_35 action_78 (228) = happyGoto action_38 action_78 (231) = happyGoto action_39 action_78 (232) = happyGoto action_40 action_78 (234) = happyGoto action_41 action_78 (244) = happyGoto action_42 action_78 (245) = happyGoto action_43 action_78 (246) = happyGoto action_44 action_78 (247) = happyGoto action_45 action_78 (248) = happyGoto action_46 action_78 (249) = happyGoto action_47 action_78 (257) = happyGoto action_48 action_78 _ = happyFail action_79 (278) = happyShift action_49 action_79 (279) = happyShift action_50 action_79 (280) = happyShift action_51 action_79 (281) = happyShift action_52 action_79 (282) = happyShift action_53 action_79 (283) = happyShift action_54 action_79 (289) = happyShift action_55 action_79 (290) = happyShift action_56 action_79 (291) = happyShift action_57 action_79 (292) = happyShift action_58 action_79 (293) = happyShift action_59 action_79 (294) = happyShift action_60 action_79 (295) = happyShift action_61 action_79 (296) = happyShift action_62 action_79 (297) = happyShift action_63 action_79 (298) = happyShift action_64 action_79 (299) = happyShift action_65 action_79 (301) = happyShift action_66 action_79 (307) = happyShift action_67 action_79 (309) = happyShift action_68 action_79 (312) = happyShift action_69 action_79 (319) = happyShift action_70 action_79 (324) = happyShift action_71 action_79 (325) = happyShift action_72 action_79 (327) = happyShift action_73 action_79 (334) = happyShift action_75 action_79 (337) = happyShift action_76 action_79 (338) = happyShift action_77 action_79 (339) = happyShift action_78 action_79 (340) = happyShift action_79 action_79 (341) = happyShift action_80 action_79 (342) = happyShift action_81 action_79 (344) = happyShift action_82 action_79 (345) = happyShift action_83 action_79 (346) = happyShift action_84 action_79 (348) = happyShift action_85 action_79 (350) = happyShift action_86 action_79 (351) = happyShift action_87 action_79 (358) = happyShift action_88 action_79 (359) = happyShift action_89 action_79 (360) = happyShift action_90 action_79 (361) = happyShift action_91 action_79 (362) = happyShift action_92 action_79 (363) = happyShift action_93 action_79 (364) = happyShift action_94 action_79 (365) = happyShift action_95 action_79 (366) = happyShift action_96 action_79 (367) = happyShift action_97 action_79 (368) = happyShift action_98 action_79 (369) = happyShift action_99 action_79 (370) = happyShift action_100 action_79 (371) = happyShift action_101 action_79 (373) = happyShift action_102 action_79 (378) = happyShift action_103 action_79 (380) = happyShift action_104 action_79 (381) = happyShift action_105 action_79 (383) = happyShift action_106 action_79 (384) = happyShift action_107 action_79 (391) = happyShift action_159 action_79 (392) = happyShift action_109 action_79 (396) = happyShift action_110 action_79 (402) = happyShift action_112 action_79 (403) = happyShift action_113 action_79 (411) = happyShift action_114 action_79 (412) = happyShift action_115 action_79 (413) = happyShift action_116 action_79 (170) = happyGoto action_315 action_79 (171) = happyGoto action_26 action_79 (172) = happyGoto action_316 action_79 (173) = happyGoto action_28 action_79 (176) = happyGoto action_29 action_79 (177) = happyGoto action_30 action_79 (178) = happyGoto action_31 action_79 (181) = happyGoto action_32 action_79 (182) = happyGoto action_33 action_79 (183) = happyGoto action_34 action_79 (190) = happyGoto action_35 action_79 (228) = happyGoto action_38 action_79 (231) = happyGoto action_39 action_79 (232) = happyGoto action_40 action_79 (234) = happyGoto action_41 action_79 (244) = happyGoto action_42 action_79 (245) = happyGoto action_43 action_79 (246) = happyGoto action_44 action_79 (247) = happyGoto action_45 action_79 (248) = happyGoto action_46 action_79 (249) = happyGoto action_47 action_79 (257) = happyGoto action_48 action_79 _ = happyFail action_80 (278) = happyShift action_49 action_80 (280) = happyShift action_51 action_80 (281) = happyShift action_52 action_80 (282) = happyShift action_53 action_80 (283) = happyShift action_54 action_80 (289) = happyShift action_135 action_80 (292) = happyShift action_136 action_80 (299) = happyShift action_137 action_80 (301) = happyShift action_138 action_80 (307) = happyShift action_139 action_80 (309) = happyShift action_140 action_80 (312) = happyShift action_141 action_80 (325) = happyShift action_142 action_80 (328) = happyShift action_143 action_80 (337) = happyShift action_144 action_80 (338) = happyShift action_145 action_80 (344) = happyShift action_146 action_80 (346) = happyShift action_147 action_80 (358) = happyShift action_88 action_80 (359) = happyShift action_148 action_80 (360) = happyShift action_149 action_80 (361) = happyShift action_150 action_80 (363) = happyShift action_93 action_80 (364) = happyShift action_94 action_80 (365) = happyShift action_95 action_80 (366) = happyShift action_96 action_80 (367) = happyShift action_97 action_80 (368) = happyShift action_98 action_80 (369) = happyShift action_99 action_80 (370) = happyShift action_100 action_80 (371) = happyShift action_101 action_80 (381) = happyShift action_151 action_80 (383) = happyShift action_106 action_80 (402) = happyShift action_112 action_80 (416) = happyShift action_152 action_80 (417) = happyShift action_153 action_80 (103) = happyGoto action_117 action_80 (105) = happyGoto action_118 action_80 (108) = happyGoto action_119 action_80 (109) = happyGoto action_120 action_80 (110) = happyGoto action_121 action_80 (111) = happyGoto action_122 action_80 (112) = happyGoto action_123 action_80 (113) = happyGoto action_124 action_80 (114) = happyGoto action_125 action_80 (115) = happyGoto action_126 action_80 (117) = happyGoto action_314 action_80 (118) = happyGoto action_128 action_80 (119) = happyGoto action_129 action_80 (232) = happyGoto action_130 action_80 (245) = happyGoto action_131 action_80 (247) = happyGoto action_45 action_80 (248) = happyGoto action_132 action_80 (249) = happyGoto action_47 action_80 (270) = happyGoto action_133 action_80 (271) = happyGoto action_134 action_80 _ = happyFail action_81 (258) = happyGoto action_313 action_81 _ = happyReduce_714 action_82 (278) = happyShift action_49 action_82 (279) = happyShift action_50 action_82 (282) = happyShift action_53 action_82 (283) = happyShift action_54 action_82 (299) = happyShift action_312 action_82 (358) = happyShift action_88 action_82 (359) = happyShift action_89 action_82 (360) = happyShift action_90 action_82 (361) = happyShift action_91 action_82 (362) = happyShift action_92 action_82 (363) = happyShift action_93 action_82 (364) = happyShift action_94 action_82 (365) = happyShift action_95 action_82 (366) = happyShift action_96 action_82 (367) = happyShift action_97 action_82 (368) = happyShift action_98 action_82 (369) = happyShift action_99 action_82 (370) = happyShift action_100 action_82 (371) = happyShift action_101 action_82 (380) = happyShift action_104 action_82 (381) = happyShift action_105 action_82 (383) = happyShift action_106 action_82 (402) = happyShift action_112 action_82 (403) = happyShift action_113 action_82 (231) = happyGoto action_310 action_82 (234) = happyGoto action_311 action_82 (244) = happyGoto action_42 action_82 (245) = happyGoto action_43 action_82 (246) = happyGoto action_44 action_82 (248) = happyGoto action_46 action_82 (249) = happyGoto action_47 action_82 _ = happyFail action_83 (278) = happyShift action_49 action_83 (282) = happyShift action_53 action_83 (283) = happyShift action_54 action_83 (299) = happyShift action_307 action_83 (301) = happyShift action_308 action_83 (307) = happyShift action_309 action_83 (358) = happyShift action_88 action_83 (359) = happyShift action_148 action_83 (360) = happyShift action_149 action_83 (361) = happyShift action_150 action_83 (363) = happyShift action_93 action_83 (364) = happyShift action_94 action_83 (365) = happyShift action_95 action_83 (366) = happyShift action_96 action_83 (367) = happyShift action_97 action_83 (368) = happyShift action_98 action_83 (369) = happyShift action_99 action_83 (370) = happyShift action_100 action_83 (371) = happyShift action_101 action_83 (383) = happyShift action_106 action_83 (402) = happyShift action_112 action_83 (114) = happyGoto action_305 action_83 (115) = happyGoto action_126 action_83 (245) = happyGoto action_131 action_83 (248) = happyGoto action_132 action_83 (249) = happyGoto action_47 action_83 (270) = happyGoto action_306 action_83 (271) = happyGoto action_134 action_83 _ = happyFail action_84 _ = happyReduce_476 action_85 (278) = happyShift action_256 action_85 (282) = happyShift action_257 action_85 (284) = happyShift action_258 action_85 (357) = happyShift action_259 action_85 (358) = happyShift action_260 action_85 (359) = happyShift action_261 action_85 (360) = happyShift action_262 action_85 (361) = happyShift action_263 action_85 (362) = happyShift action_264 action_85 (363) = happyShift action_265 action_85 (364) = happyShift action_266 action_85 (365) = happyShift action_267 action_85 (366) = happyShift action_268 action_85 (367) = happyShift action_269 action_85 (368) = happyShift action_270 action_85 (369) = happyShift action_271 action_85 (370) = happyShift action_272 action_85 (371) = happyShift action_273 action_85 (372) = happyShift action_274 action_85 (373) = happyShift action_275 action_85 (374) = happyShift action_276 action_85 (375) = happyShift action_277 action_85 (376) = happyShift action_278 action_85 (377) = happyShift action_279 action_85 (378) = happyShift action_280 action_85 (379) = happyShift action_281 action_85 (380) = happyShift action_282 action_85 (381) = happyShift action_283 action_85 (382) = happyShift action_284 action_85 (383) = happyShift action_285 action_85 (384) = happyShift action_286 action_85 (385) = happyShift action_287 action_85 (386) = happyShift action_288 action_85 (387) = happyShift action_289 action_85 (388) = happyShift action_290 action_85 (389) = happyShift action_291 action_85 (390) = happyShift action_292 action_85 (391) = happyShift action_293 action_85 (392) = happyShift action_294 action_85 (393) = happyShift action_295 action_85 (394) = happyShift action_296 action_85 (395) = happyShift action_297 action_85 (396) = happyShift action_298 action_85 (397) = happyShift action_299 action_85 (398) = happyShift action_300 action_85 (399) = happyShift action_301 action_85 (400) = happyShift action_302 action_85 (401) = happyShift action_303 action_85 (402) = happyShift action_304 action_85 (193) = happyGoto action_253 action_85 (194) = happyGoto action_254 action_85 (195) = happyGoto action_255 action_85 _ = happyFail action_86 (278) = happyShift action_49 action_86 (279) = happyShift action_50 action_86 (280) = happyShift action_51 action_86 (281) = happyShift action_52 action_86 (282) = happyShift action_53 action_86 (283) = happyShift action_54 action_86 (289) = happyShift action_55 action_86 (290) = happyShift action_56 action_86 (291) = happyShift action_57 action_86 (292) = happyShift action_58 action_86 (293) = happyShift action_59 action_86 (294) = happyShift action_60 action_86 (295) = happyShift action_61 action_86 (296) = happyShift action_62 action_86 (297) = happyShift action_63 action_86 (298) = happyShift action_64 action_86 (299) = happyShift action_65 action_86 (301) = happyShift action_66 action_86 (307) = happyShift action_67 action_86 (309) = happyShift action_68 action_86 (312) = happyShift action_69 action_86 (319) = happyShift action_70 action_86 (324) = happyShift action_71 action_86 (325) = happyShift action_72 action_86 (327) = happyShift action_73 action_86 (334) = happyShift action_75 action_86 (337) = happyShift action_76 action_86 (338) = happyShift action_77 action_86 (339) = happyShift action_78 action_86 (340) = happyShift action_79 action_86 (341) = happyShift action_80 action_86 (342) = happyShift action_81 action_86 (344) = happyShift action_82 action_86 (345) = happyShift action_83 action_86 (346) = happyShift action_84 action_86 (348) = happyShift action_85 action_86 (350) = happyShift action_86 action_86 (351) = happyShift action_87 action_86 (358) = happyShift action_88 action_86 (359) = happyShift action_89 action_86 (360) = happyShift action_90 action_86 (361) = happyShift action_91 action_86 (362) = happyShift action_92 action_86 (363) = happyShift action_93 action_86 (364) = happyShift action_94 action_86 (365) = happyShift action_95 action_86 (366) = happyShift action_96 action_86 (367) = happyShift action_97 action_86 (368) = happyShift action_98 action_86 (369) = happyShift action_99 action_86 (370) = happyShift action_100 action_86 (371) = happyShift action_101 action_86 (373) = happyShift action_102 action_86 (378) = happyShift action_103 action_86 (380) = happyShift action_104 action_86 (381) = happyShift action_105 action_86 (383) = happyShift action_106 action_86 (384) = happyShift action_107 action_86 (391) = happyShift action_159 action_86 (392) = happyShift action_109 action_86 (396) = happyShift action_110 action_86 (402) = happyShift action_112 action_86 (403) = happyShift action_113 action_86 (411) = happyShift action_114 action_86 (412) = happyShift action_115 action_86 (413) = happyShift action_116 action_86 (169) = happyGoto action_252 action_86 (170) = happyGoto action_25 action_86 (171) = happyGoto action_26 action_86 (172) = happyGoto action_27 action_86 (173) = happyGoto action_28 action_86 (176) = happyGoto action_29 action_86 (177) = happyGoto action_30 action_86 (178) = happyGoto action_31 action_86 (181) = happyGoto action_32 action_86 (182) = happyGoto action_33 action_86 (183) = happyGoto action_34 action_86 (190) = happyGoto action_35 action_86 (228) = happyGoto action_38 action_86 (231) = happyGoto action_39 action_86 (232) = happyGoto action_40 action_86 (234) = happyGoto action_41 action_86 (244) = happyGoto action_42 action_86 (245) = happyGoto action_43 action_86 (246) = happyGoto action_44 action_86 (247) = happyGoto action_45 action_86 (248) = happyGoto action_46 action_86 (249) = happyGoto action_47 action_86 (257) = happyGoto action_48 action_86 _ = happyFail action_87 (191) = happyGoto action_251 action_87 _ = happyReduce_497 action_88 _ = happyReduce_668 action_89 _ = happyReduce_678 action_90 _ = happyReduce_679 action_91 _ = happyReduce_681 action_92 _ = happyReduce_680 action_93 _ = happyReduce_669 action_94 _ = happyReduce_670 action_95 _ = happyReduce_671 action_96 _ = happyReduce_672 action_97 _ = happyReduce_673 action_98 _ = happyReduce_674 action_99 _ = happyReduce_675 action_100 _ = happyReduce_676 action_101 _ = happyReduce_665 action_102 (278) = happyShift action_49 action_102 (279) = happyShift action_50 action_102 (280) = happyShift action_51 action_102 (281) = happyShift action_52 action_102 (282) = happyShift action_53 action_102 (283) = happyShift action_54 action_102 (289) = happyShift action_55 action_102 (290) = happyShift action_56 action_102 (291) = happyShift action_57 action_102 (292) = happyShift action_58 action_102 (293) = happyShift action_59 action_102 (294) = happyShift action_60 action_102 (295) = happyShift action_61 action_102 (296) = happyShift action_62 action_102 (297) = happyShift action_63 action_102 (298) = happyShift action_64 action_102 (299) = happyShift action_65 action_102 (301) = happyShift action_66 action_102 (307) = happyShift action_67 action_102 (309) = happyShift action_68 action_102 (312) = happyShift action_69 action_102 (319) = happyShift action_70 action_102 (324) = happyShift action_71 action_102 (325) = happyShift action_72 action_102 (327) = happyShift action_73 action_102 (334) = happyShift action_75 action_102 (337) = happyShift action_76 action_102 (338) = happyShift action_77 action_102 (339) = happyShift action_78 action_102 (340) = happyShift action_79 action_102 (341) = happyShift action_80 action_102 (342) = happyShift action_81 action_102 (344) = happyShift action_82 action_102 (345) = happyShift action_83 action_102 (346) = happyShift action_84 action_102 (348) = happyShift action_85 action_102 (350) = happyShift action_86 action_102 (351) = happyShift action_87 action_102 (358) = happyShift action_88 action_102 (359) = happyShift action_89 action_102 (360) = happyShift action_90 action_102 (361) = happyShift action_91 action_102 (362) = happyShift action_92 action_102 (363) = happyShift action_93 action_102 (364) = happyShift action_94 action_102 (365) = happyShift action_95 action_102 (366) = happyShift action_96 action_102 (367) = happyShift action_97 action_102 (368) = happyShift action_98 action_102 (369) = happyShift action_99 action_102 (370) = happyShift action_100 action_102 (371) = happyShift action_101 action_102 (373) = happyShift action_102 action_102 (378) = happyShift action_103 action_102 (380) = happyShift action_104 action_102 (381) = happyShift action_105 action_102 (383) = happyShift action_106 action_102 (384) = happyShift action_107 action_102 (391) = happyShift action_159 action_102 (392) = happyShift action_109 action_102 (396) = happyShift action_110 action_102 (402) = happyShift action_112 action_102 (403) = happyShift action_113 action_102 (411) = happyShift action_114 action_102 (412) = happyShift action_115 action_102 (413) = happyShift action_116 action_102 (169) = happyGoto action_250 action_102 (170) = happyGoto action_25 action_102 (171) = happyGoto action_26 action_102 (172) = happyGoto action_27 action_102 (173) = happyGoto action_28 action_102 (176) = happyGoto action_29 action_102 (177) = happyGoto action_30 action_102 (178) = happyGoto action_31 action_102 (181) = happyGoto action_32 action_102 (182) = happyGoto action_33 action_102 (183) = happyGoto action_34 action_102 (190) = happyGoto action_35 action_102 (228) = happyGoto action_38 action_102 (231) = happyGoto action_39 action_102 (232) = happyGoto action_40 action_102 (234) = happyGoto action_41 action_102 (244) = happyGoto action_42 action_102 (245) = happyGoto action_43 action_102 (246) = happyGoto action_44 action_102 (247) = happyGoto action_45 action_102 (248) = happyGoto action_46 action_102 (249) = happyGoto action_47 action_102 (257) = happyGoto action_48 action_102 _ = happyFail action_103 (304) = happyShift action_239 action_103 (219) = happyGoto action_249 action_103 (258) = happyGoto action_238 action_103 _ = happyReduce_714 action_104 _ = happyReduce_683 action_105 _ = happyReduce_682 action_106 _ = happyReduce_667 action_107 (278) = happyShift action_49 action_107 (279) = happyShift action_50 action_107 (280) = happyShift action_51 action_107 (281) = happyShift action_52 action_107 (282) = happyShift action_53 action_107 (283) = happyShift action_54 action_107 (289) = happyShift action_55 action_107 (290) = happyShift action_56 action_107 (291) = happyShift action_57 action_107 (292) = happyShift action_58 action_107 (293) = happyShift action_59 action_107 (294) = happyShift action_60 action_107 (295) = happyShift action_61 action_107 (296) = happyShift action_62 action_107 (297) = happyShift action_63 action_107 (298) = happyShift action_64 action_107 (299) = happyShift action_65 action_107 (301) = happyShift action_66 action_107 (304) = happyShift action_248 action_107 (307) = happyShift action_67 action_107 (309) = happyShift action_68 action_107 (312) = happyShift action_69 action_107 (319) = happyShift action_70 action_107 (324) = happyShift action_71 action_107 (325) = happyShift action_72 action_107 (327) = happyShift action_73 action_107 (334) = happyShift action_75 action_107 (337) = happyShift action_76 action_107 (338) = happyShift action_77 action_107 (339) = happyShift action_78 action_107 (340) = happyShift action_79 action_107 (341) = happyShift action_80 action_107 (342) = happyShift action_81 action_107 (344) = happyShift action_82 action_107 (345) = happyShift action_83 action_107 (346) = happyShift action_84 action_107 (348) = happyShift action_85 action_107 (350) = happyShift action_86 action_107 (351) = happyShift action_87 action_107 (358) = happyShift action_88 action_107 (359) = happyShift action_89 action_107 (360) = happyShift action_90 action_107 (361) = happyShift action_91 action_107 (362) = happyShift action_92 action_107 (363) = happyShift action_93 action_107 (364) = happyShift action_94 action_107 (365) = happyShift action_95 action_107 (366) = happyShift action_96 action_107 (367) = happyShift action_97 action_107 (368) = happyShift action_98 action_107 (369) = happyShift action_99 action_107 (370) = happyShift action_100 action_107 (371) = happyShift action_101 action_107 (373) = happyShift action_102 action_107 (378) = happyShift action_103 action_107 (380) = happyShift action_104 action_107 (381) = happyShift action_105 action_107 (383) = happyShift action_106 action_107 (384) = happyShift action_107 action_107 (391) = happyShift action_159 action_107 (392) = happyShift action_109 action_107 (396) = happyShift action_110 action_107 (402) = happyShift action_112 action_107 (403) = happyShift action_113 action_107 (411) = happyShift action_114 action_107 (412) = happyShift action_115 action_107 (413) = happyShift action_116 action_107 (169) = happyGoto action_245 action_107 (170) = happyGoto action_25 action_107 (171) = happyGoto action_26 action_107 (172) = happyGoto action_27 action_107 (173) = happyGoto action_28 action_107 (176) = happyGoto action_29 action_107 (177) = happyGoto action_30 action_107 (178) = happyGoto action_31 action_107 (181) = happyGoto action_32 action_107 (182) = happyGoto action_33 action_107 (183) = happyGoto action_34 action_107 (190) = happyGoto action_35 action_107 (216) = happyGoto action_246 action_107 (228) = happyGoto action_38 action_107 (231) = happyGoto action_39 action_107 (232) = happyGoto action_40 action_107 (234) = happyGoto action_41 action_107 (244) = happyGoto action_42 action_107 (245) = happyGoto action_43 action_107 (246) = happyGoto action_44 action_107 (247) = happyGoto action_45 action_107 (248) = happyGoto action_46 action_107 (249) = happyGoto action_47 action_107 (257) = happyGoto action_48 action_107 (258) = happyGoto action_247 action_107 _ = happyReduce_714 action_108 (304) = happyShift action_173 action_108 (76) = happyGoto action_170 action_108 (86) = happyGoto action_244 action_108 (258) = happyGoto action_172 action_108 _ = happyReduce_714 action_109 (304) = happyShift action_239 action_109 (219) = happyGoto action_243 action_109 (258) = happyGoto action_238 action_109 _ = happyReduce_714 action_110 (278) = happyShift action_49 action_110 (279) = happyShift action_50 action_110 (280) = happyShift action_51 action_110 (281) = happyShift action_52 action_110 (282) = happyShift action_53 action_110 (283) = happyShift action_54 action_110 (289) = happyShift action_55 action_110 (290) = happyShift action_56 action_110 (291) = happyShift action_57 action_110 (292) = happyShift action_58 action_110 (293) = happyShift action_59 action_110 (294) = happyShift action_60 action_110 (295) = happyShift action_61 action_110 (296) = happyShift action_62 action_110 (297) = happyShift action_63 action_110 (298) = happyShift action_64 action_110 (299) = happyShift action_65 action_110 (301) = happyShift action_66 action_110 (307) = happyShift action_67 action_110 (309) = happyShift action_68 action_110 (312) = happyShift action_69 action_110 (324) = happyShift action_71 action_110 (325) = happyShift action_72 action_110 (328) = happyShift action_242 action_110 (334) = happyShift action_75 action_110 (337) = happyShift action_76 action_110 (338) = happyShift action_77 action_110 (339) = happyShift action_78 action_110 (340) = happyShift action_79 action_110 (341) = happyShift action_80 action_110 (342) = happyShift action_81 action_110 (344) = happyShift action_82 action_110 (345) = happyShift action_83 action_110 (346) = happyShift action_84 action_110 (348) = happyShift action_85 action_110 (350) = happyShift action_86 action_110 (351) = happyShift action_87 action_110 (358) = happyShift action_88 action_110 (359) = happyShift action_89 action_110 (360) = happyShift action_90 action_110 (361) = happyShift action_91 action_110 (362) = happyShift action_92 action_110 (363) = happyShift action_93 action_110 (364) = happyShift action_94 action_110 (365) = happyShift action_95 action_110 (366) = happyShift action_96 action_110 (367) = happyShift action_97 action_110 (368) = happyShift action_98 action_110 (369) = happyShift action_99 action_110 (370) = happyShift action_100 action_110 (371) = happyShift action_101 action_110 (380) = happyShift action_104 action_110 (381) = happyShift action_105 action_110 (383) = happyShift action_106 action_110 (402) = happyShift action_112 action_110 (403) = happyShift action_113 action_110 (180) = happyGoto action_240 action_110 (181) = happyGoto action_241 action_110 (182) = happyGoto action_33 action_110 (183) = happyGoto action_34 action_110 (190) = happyGoto action_35 action_110 (228) = happyGoto action_38 action_110 (231) = happyGoto action_39 action_110 (232) = happyGoto action_40 action_110 (234) = happyGoto action_41 action_110 (244) = happyGoto action_42 action_110 (245) = happyGoto action_43 action_110 (246) = happyGoto action_44 action_110 (247) = happyGoto action_45 action_110 (248) = happyGoto action_46 action_110 (249) = happyGoto action_47 action_110 (257) = happyGoto action_48 action_110 _ = happyFail action_111 (304) = happyShift action_239 action_111 (219) = happyGoto action_237 action_111 (258) = happyGoto action_238 action_111 _ = happyReduce_714 action_112 _ = happyReduce_666 action_113 _ = happyReduce_684 action_114 (292) = happyShift action_236 action_114 _ = happyFail action_115 (292) = happyShift action_235 action_115 _ = happyFail action_116 (292) = happyShift action_234 action_116 _ = happyFail action_117 _ = happyReduce_247 action_118 _ = happyReduce_296 action_119 (278) = happyShift action_49 action_119 (282) = happyShift action_53 action_119 (283) = happyShift action_54 action_119 (285) = happyShift action_229 action_119 (286) = happyShift action_186 action_119 (288) = happyShift action_187 action_119 (289) = happyShift action_135 action_119 (292) = happyShift action_136 action_119 (299) = happyShift action_137 action_119 (301) = happyShift action_138 action_119 (307) = happyShift action_139 action_119 (309) = happyShift action_140 action_119 (312) = happyShift action_141 action_119 (313) = happyShift action_230 action_119 (316) = happyShift action_190 action_119 (322) = happyShift action_231 action_119 (325) = happyShift action_142 action_119 (326) = happyShift action_232 action_119 (327) = happyShift action_233 action_119 (328) = happyShift action_143 action_119 (337) = happyShift action_144 action_119 (338) = happyShift action_145 action_119 (344) = happyShift action_146 action_119 (346) = happyShift action_147 action_119 (358) = happyShift action_88 action_119 (359) = happyShift action_148 action_119 (360) = happyShift action_149 action_119 (361) = happyShift action_150 action_119 (363) = happyShift action_93 action_119 (364) = happyShift action_94 action_119 (365) = happyShift action_95 action_119 (366) = happyShift action_96 action_119 (367) = happyShift action_97 action_119 (368) = happyShift action_98 action_119 (369) = happyShift action_99 action_119 (370) = happyShift action_100 action_119 (371) = happyShift action_101 action_119 (383) = happyShift action_106 action_119 (402) = happyShift action_112 action_119 (416) = happyShift action_152 action_119 (417) = happyShift action_153 action_119 (109) = happyGoto action_223 action_119 (110) = happyGoto action_121 action_119 (111) = happyGoto action_122 action_119 (112) = happyGoto action_123 action_119 (113) = happyGoto action_124 action_119 (114) = happyGoto action_125 action_119 (115) = happyGoto action_126 action_119 (116) = happyGoto action_224 action_119 (239) = happyGoto action_225 action_119 (243) = happyGoto action_226 action_119 (245) = happyGoto action_131 action_119 (248) = happyGoto action_132 action_119 (249) = happyGoto action_47 action_119 (250) = happyGoto action_183 action_119 (251) = happyGoto action_184 action_119 (270) = happyGoto action_133 action_119 (271) = happyGoto action_134 action_119 (272) = happyGoto action_227 action_119 (273) = happyGoto action_228 action_119 _ = happyReduce_241 action_120 _ = happyReduce_251 action_121 _ = happyReduce_265 action_122 (278) = happyShift action_49 action_122 (282) = happyShift action_53 action_122 (283) = happyShift action_54 action_122 (289) = happyShift action_135 action_122 (292) = happyShift action_136 action_122 (299) = happyShift action_137 action_122 (301) = happyShift action_138 action_122 (307) = happyShift action_139 action_122 (309) = happyShift action_140 action_122 (312) = happyShift action_141 action_122 (325) = happyShift action_142 action_122 (328) = happyShift action_143 action_122 (337) = happyShift action_144 action_122 (338) = happyShift action_145 action_122 (344) = happyShift action_146 action_122 (346) = happyShift action_147 action_122 (358) = happyShift action_88 action_122 (359) = happyShift action_148 action_122 (360) = happyShift action_149 action_122 (361) = happyShift action_150 action_122 (363) = happyShift action_93 action_122 (364) = happyShift action_94 action_122 (365) = happyShift action_95 action_122 (366) = happyShift action_96 action_122 (367) = happyShift action_97 action_122 (368) = happyShift action_98 action_122 (369) = happyShift action_99 action_122 (370) = happyShift action_100 action_122 (371) = happyShift action_101 action_122 (383) = happyShift action_106 action_122 (402) = happyShift action_112 action_122 (416) = happyShift action_152 action_122 (417) = happyShift action_153 action_122 (109) = happyGoto action_222 action_122 (110) = happyGoto action_121 action_122 (111) = happyGoto action_122 action_122 (112) = happyGoto action_123 action_122 (113) = happyGoto action_124 action_122 (114) = happyGoto action_125 action_122 (115) = happyGoto action_126 action_122 (245) = happyGoto action_131 action_122 (248) = happyGoto action_132 action_122 (249) = happyGoto action_47 action_122 (270) = happyGoto action_133 action_122 (271) = happyGoto action_134 action_122 _ = happyFail action_123 _ = happyReduce_275 action_124 (325) = happyShift action_142 action_124 (328) = happyShift action_143 action_124 (112) = happyGoto action_221 action_124 _ = happyReduce_276 action_125 _ = happyReduce_252 action_126 _ = happyReduce_282 action_127 (426) = happyAccept action_127 _ = happyFail action_128 _ = happyReduce_293 action_129 (278) = happyShift action_49 action_129 (280) = happyShift action_51 action_129 (281) = happyShift action_52 action_129 (282) = happyShift action_53 action_129 (283) = happyShift action_54 action_129 (289) = happyShift action_135 action_129 (292) = happyShift action_136 action_129 (299) = happyShift action_137 action_129 (301) = happyShift action_138 action_129 (307) = happyShift action_139 action_129 (309) = happyShift action_140 action_129 (312) = happyShift action_141 action_129 (325) = happyShift action_142 action_129 (328) = happyShift action_143 action_129 (337) = happyShift action_144 action_129 (338) = happyShift action_145 action_129 (344) = happyShift action_146 action_129 (346) = happyShift action_147 action_129 (358) = happyShift action_88 action_129 (359) = happyShift action_148 action_129 (360) = happyShift action_149 action_129 (361) = happyShift action_150 action_129 (363) = happyShift action_93 action_129 (364) = happyShift action_94 action_129 (365) = happyShift action_95 action_129 (366) = happyShift action_96 action_129 (367) = happyShift action_97 action_129 (368) = happyShift action_98 action_129 (369) = happyShift action_99 action_129 (370) = happyShift action_100 action_129 (371) = happyShift action_101 action_129 (381) = happyShift action_151 action_129 (383) = happyShift action_106 action_129 (402) = happyShift action_112 action_129 (416) = happyShift action_152 action_129 (417) = happyShift action_153 action_129 (103) = happyGoto action_117 action_129 (105) = happyGoto action_118 action_129 (108) = happyGoto action_119 action_129 (109) = happyGoto action_120 action_129 (110) = happyGoto action_121 action_129 (111) = happyGoto action_122 action_129 (112) = happyGoto action_123 action_129 (113) = happyGoto action_124 action_129 (114) = happyGoto action_125 action_129 (115) = happyGoto action_126 action_129 (118) = happyGoto action_220 action_129 (119) = happyGoto action_129 action_129 (232) = happyGoto action_130 action_129 (245) = happyGoto action_131 action_129 (247) = happyGoto action_45 action_129 (248) = happyGoto action_132 action_129 (249) = happyGoto action_47 action_129 (270) = happyGoto action_133 action_129 (271) = happyGoto action_134 action_129 _ = happyFail action_130 (317) = happyShift action_219 action_130 _ = happyFail action_131 _ = happyReduce_737 action_132 _ = happyReduce_289 action_133 _ = happyReduce_253 action_134 _ = happyReduce_736 action_135 _ = happyReduce_273 action_136 _ = happyReduce_274 action_137 (278) = happyShift action_49 action_137 (280) = happyShift action_51 action_137 (281) = happyShift action_52 action_137 (282) = happyShift action_53 action_137 (283) = happyShift action_54 action_137 (285) = happyShift action_211 action_137 (286) = happyShift action_186 action_137 (287) = happyShift action_212 action_137 (288) = happyShift action_187 action_137 (289) = happyShift action_135 action_137 (292) = happyShift action_136 action_137 (299) = happyShift action_137 action_137 (300) = happyShift action_213 action_137 (301) = happyShift action_138 action_137 (307) = happyShift action_139 action_137 (309) = happyShift action_140 action_137 (311) = happyShift action_202 action_137 (312) = happyShift action_141 action_137 (314) = happyShift action_214 action_137 (316) = happyShift action_190 action_137 (322) = happyShift action_215 action_137 (325) = happyShift action_142 action_137 (327) = happyShift action_216 action_137 (328) = happyShift action_217 action_137 (329) = happyShift action_218 action_137 (337) = happyShift action_144 action_137 (338) = happyShift action_145 action_137 (344) = happyShift action_146 action_137 (346) = happyShift action_147 action_137 (358) = happyShift action_88 action_137 (359) = happyShift action_148 action_137 (360) = happyShift action_149 action_137 (361) = happyShift action_150 action_137 (363) = happyShift action_93 action_137 (364) = happyShift action_94 action_137 (365) = happyShift action_95 action_137 (366) = happyShift action_96 action_137 (367) = happyShift action_97 action_137 (368) = happyShift action_98 action_137 (369) = happyShift action_99 action_137 (370) = happyShift action_100 action_137 (371) = happyShift action_101 action_137 (381) = happyShift action_151 action_137 (383) = happyShift action_106 action_137 (402) = happyShift action_112 action_137 (416) = happyShift action_152 action_137 (417) = happyShift action_153 action_137 (103) = happyGoto action_117 action_137 (105) = happyGoto action_118 action_137 (108) = happyGoto action_119 action_137 (109) = happyGoto action_120 action_137 (110) = happyGoto action_121 action_137 (111) = happyGoto action_122 action_137 (112) = happyGoto action_123 action_137 (113) = happyGoto action_124 action_137 (114) = happyGoto action_125 action_137 (115) = happyGoto action_126 action_137 (118) = happyGoto action_203 action_137 (119) = happyGoto action_129 action_137 (120) = happyGoto action_204 action_137 (121) = happyGoto action_197 action_137 (184) = happyGoto action_205 action_137 (232) = happyGoto action_130 action_137 (243) = happyGoto action_206 action_137 (245) = happyGoto action_131 action_137 (247) = happyGoto action_45 action_137 (248) = happyGoto action_132 action_137 (249) = happyGoto action_47 action_137 (250) = happyGoto action_183 action_137 (251) = happyGoto action_184 action_137 (252) = happyGoto action_207 action_137 (254) = happyGoto action_208 action_137 (255) = happyGoto action_209 action_137 (256) = happyGoto action_210 action_137 (270) = happyGoto action_133 action_137 (271) = happyGoto action_134 action_137 _ = happyFail action_138 (278) = happyShift action_49 action_138 (280) = happyShift action_51 action_138 (281) = happyShift action_52 action_138 (282) = happyShift action_53 action_138 (283) = happyShift action_54 action_138 (289) = happyShift action_135 action_138 (292) = happyShift action_136 action_138 (299) = happyShift action_137 action_138 (301) = happyShift action_138 action_138 (302) = happyShift action_201 action_138 (307) = happyShift action_139 action_138 (309) = happyShift action_140 action_138 (311) = happyShift action_202 action_138 (312) = happyShift action_141 action_138 (325) = happyShift action_142 action_138 (328) = happyShift action_143 action_138 (337) = happyShift action_144 action_138 (338) = happyShift action_145 action_138 (344) = happyShift action_146 action_138 (346) = happyShift action_147 action_138 (358) = happyShift action_88 action_138 (359) = happyShift action_148 action_138 (360) = happyShift action_149 action_138 (361) = happyShift action_150 action_138 (363) = happyShift action_93 action_138 (364) = happyShift action_94 action_138 (365) = happyShift action_95 action_138 (366) = happyShift action_96 action_138 (367) = happyShift action_97 action_138 (368) = happyShift action_98 action_138 (369) = happyShift action_99 action_138 (370) = happyShift action_100 action_138 (371) = happyShift action_101 action_138 (381) = happyShift action_151 action_138 (383) = happyShift action_106 action_138 (402) = happyShift action_112 action_138 (416) = happyShift action_152 action_138 (417) = happyShift action_153 action_138 (103) = happyGoto action_117 action_138 (105) = happyGoto action_118 action_138 (108) = happyGoto action_119 action_138 (109) = happyGoto action_120 action_138 (110) = happyGoto action_121 action_138 (111) = happyGoto action_122 action_138 (112) = happyGoto action_123 action_138 (113) = happyGoto action_124 action_138 (114) = happyGoto action_125 action_138 (115) = happyGoto action_126 action_138 (118) = happyGoto action_195 action_138 (119) = happyGoto action_129 action_138 (121) = happyGoto action_199 action_138 (184) = happyGoto action_200 action_138 (232) = happyGoto action_130 action_138 (245) = happyGoto action_131 action_138 (247) = happyGoto action_45 action_138 (248) = happyGoto action_132 action_138 (249) = happyGoto action_47 action_138 (270) = happyGoto action_133 action_138 (271) = happyGoto action_134 action_138 _ = happyFail action_139 (278) = happyShift action_49 action_139 (280) = happyShift action_51 action_139 (281) = happyShift action_52 action_139 (282) = happyShift action_53 action_139 (283) = happyShift action_54 action_139 (289) = happyShift action_135 action_139 (292) = happyShift action_136 action_139 (299) = happyShift action_137 action_139 (301) = happyShift action_138 action_139 (307) = happyShift action_139 action_139 (308) = happyShift action_198 action_139 (309) = happyShift action_140 action_139 (312) = happyShift action_141 action_139 (325) = happyShift action_142 action_139 (328) = happyShift action_143 action_139 (337) = happyShift action_144 action_139 (338) = happyShift action_145 action_139 (344) = happyShift action_146 action_139 (346) = happyShift action_147 action_139 (358) = happyShift action_88 action_139 (359) = happyShift action_148 action_139 (360) = happyShift action_149 action_139 (361) = happyShift action_150 action_139 (363) = happyShift action_93 action_139 (364) = happyShift action_94 action_139 (365) = happyShift action_95 action_139 (366) = happyShift action_96 action_139 (367) = happyShift action_97 action_139 (368) = happyShift action_98 action_139 (369) = happyShift action_99 action_139 (370) = happyShift action_100 action_139 (371) = happyShift action_101 action_139 (381) = happyShift action_151 action_139 (383) = happyShift action_106 action_139 (402) = happyShift action_112 action_139 (416) = happyShift action_152 action_139 (417) = happyShift action_153 action_139 (103) = happyGoto action_117 action_139 (105) = happyGoto action_194 action_139 (108) = happyGoto action_119 action_139 (109) = happyGoto action_120 action_139 (110) = happyGoto action_121 action_139 (111) = happyGoto action_122 action_139 (112) = happyGoto action_123 action_139 (113) = happyGoto action_124 action_139 (114) = happyGoto action_125 action_139 (115) = happyGoto action_126 action_139 (118) = happyGoto action_195 action_139 (119) = happyGoto action_129 action_139 (120) = happyGoto action_196 action_139 (121) = happyGoto action_197 action_139 (232) = happyGoto action_130 action_139 (245) = happyGoto action_131 action_139 (247) = happyGoto action_45 action_139 (248) = happyGoto action_132 action_139 (249) = happyGoto action_47 action_139 (270) = happyGoto action_133 action_139 (271) = happyGoto action_134 action_139 _ = happyFail action_140 (278) = happyShift action_49 action_140 (280) = happyShift action_51 action_140 (281) = happyShift action_52 action_140 (282) = happyShift action_53 action_140 (283) = happyShift action_54 action_140 (289) = happyShift action_135 action_140 (292) = happyShift action_136 action_140 (299) = happyShift action_137 action_140 (301) = happyShift action_138 action_140 (307) = happyShift action_139 action_140 (309) = happyShift action_140 action_140 (312) = happyShift action_141 action_140 (325) = happyShift action_142 action_140 (328) = happyShift action_143 action_140 (337) = happyShift action_144 action_140 (338) = happyShift action_145 action_140 (344) = happyShift action_146 action_140 (346) = happyShift action_147 action_140 (358) = happyShift action_88 action_140 (359) = happyShift action_148 action_140 (360) = happyShift action_149 action_140 (361) = happyShift action_150 action_140 (363) = happyShift action_93 action_140 (364) = happyShift action_94 action_140 (365) = happyShift action_95 action_140 (366) = happyShift action_96 action_140 (367) = happyShift action_97 action_140 (368) = happyShift action_98 action_140 (369) = happyShift action_99 action_140 (370) = happyShift action_100 action_140 (371) = happyShift action_101 action_140 (383) = happyShift action_106 action_140 (402) = happyShift action_112 action_140 (416) = happyShift action_152 action_140 (417) = happyShift action_153 action_140 (103) = happyGoto action_117 action_140 (105) = happyGoto action_192 action_140 (108) = happyGoto action_193 action_140 (109) = happyGoto action_120 action_140 (110) = happyGoto action_121 action_140 (111) = happyGoto action_122 action_140 (112) = happyGoto action_123 action_140 (113) = happyGoto action_124 action_140 (114) = happyGoto action_125 action_140 (115) = happyGoto action_126 action_140 (232) = happyGoto action_130 action_140 (245) = happyGoto action_131 action_140 (247) = happyGoto action_45 action_140 (248) = happyGoto action_132 action_140 (249) = happyGoto action_47 action_140 (270) = happyGoto action_133 action_140 (271) = happyGoto action_134 action_140 _ = happyFail action_141 _ = happyReduce_263 action_142 _ = happyReduce_279 action_143 _ = happyReduce_278 action_144 _ = happyReduce_262 action_145 (278) = happyShift action_49 action_145 (279) = happyShift action_50 action_145 (280) = happyShift action_51 action_145 (281) = happyShift action_52 action_145 (282) = happyShift action_53 action_145 (283) = happyShift action_54 action_145 (289) = happyShift action_55 action_145 (290) = happyShift action_56 action_145 (291) = happyShift action_57 action_145 (292) = happyShift action_58 action_145 (293) = happyShift action_59 action_145 (294) = happyShift action_60 action_145 (295) = happyShift action_61 action_145 (296) = happyShift action_62 action_145 (297) = happyShift action_63 action_145 (298) = happyShift action_64 action_145 (299) = happyShift action_65 action_145 (301) = happyShift action_66 action_145 (307) = happyShift action_67 action_145 (309) = happyShift action_68 action_145 (312) = happyShift action_69 action_145 (319) = happyShift action_70 action_145 (324) = happyShift action_71 action_145 (325) = happyShift action_72 action_145 (327) = happyShift action_73 action_145 (334) = happyShift action_75 action_145 (337) = happyShift action_76 action_145 (338) = happyShift action_77 action_145 (339) = happyShift action_78 action_145 (340) = happyShift action_79 action_145 (341) = happyShift action_80 action_145 (342) = happyShift action_81 action_145 (344) = happyShift action_82 action_145 (345) = happyShift action_83 action_145 (346) = happyShift action_84 action_145 (348) = happyShift action_85 action_145 (350) = happyShift action_86 action_145 (351) = happyShift action_87 action_145 (358) = happyShift action_88 action_145 (359) = happyShift action_89 action_145 (360) = happyShift action_90 action_145 (361) = happyShift action_91 action_145 (362) = happyShift action_92 action_145 (363) = happyShift action_93 action_145 (364) = happyShift action_94 action_145 (365) = happyShift action_95 action_145 (366) = happyShift action_96 action_145 (367) = happyShift action_97 action_145 (368) = happyShift action_98 action_145 (369) = happyShift action_99 action_145 (370) = happyShift action_100 action_145 (371) = happyShift action_101 action_145 (373) = happyShift action_102 action_145 (378) = happyShift action_103 action_145 (380) = happyShift action_104 action_145 (381) = happyShift action_105 action_145 (383) = happyShift action_106 action_145 (384) = happyShift action_107 action_145 (391) = happyShift action_159 action_145 (392) = happyShift action_109 action_145 (396) = happyShift action_110 action_145 (402) = happyShift action_112 action_145 (403) = happyShift action_113 action_145 (411) = happyShift action_114 action_145 (412) = happyShift action_115 action_145 (413) = happyShift action_116 action_145 (168) = happyGoto action_191 action_145 (169) = happyGoto action_161 action_145 (170) = happyGoto action_25 action_145 (171) = happyGoto action_26 action_145 (172) = happyGoto action_27 action_145 (173) = happyGoto action_28 action_145 (176) = happyGoto action_29 action_145 (177) = happyGoto action_30 action_145 (178) = happyGoto action_31 action_145 (181) = happyGoto action_32 action_145 (182) = happyGoto action_33 action_145 (183) = happyGoto action_34 action_145 (190) = happyGoto action_35 action_145 (228) = happyGoto action_38 action_145 (231) = happyGoto action_39 action_145 (232) = happyGoto action_40 action_145 (234) = happyGoto action_41 action_145 (244) = happyGoto action_42 action_145 (245) = happyGoto action_43 action_145 (246) = happyGoto action_44 action_145 (247) = happyGoto action_45 action_145 (248) = happyGoto action_46 action_145 (249) = happyGoto action_47 action_145 (257) = happyGoto action_48 action_145 _ = happyFail action_146 (282) = happyShift action_53 action_146 (283) = happyShift action_54 action_146 (286) = happyShift action_186 action_146 (288) = happyShift action_187 action_146 (299) = happyShift action_188 action_146 (307) = happyShift action_189 action_146 (316) = happyShift action_190 action_146 (234) = happyGoto action_181 action_146 (243) = happyGoto action_182 action_146 (248) = happyGoto action_46 action_146 (249) = happyGoto action_47 action_146 (250) = happyGoto action_183 action_146 (251) = happyGoto action_184 action_146 (269) = happyGoto action_185 action_146 _ = happyFail action_147 _ = happyReduce_264 action_148 _ = happyReduce_738 action_149 _ = happyReduce_739 action_150 _ = happyReduce_740 action_151 (122) = happyGoto action_180 action_151 _ = happyReduce_302 action_152 (425) = happyShift action_179 action_152 _ = happyFail action_153 (425) = happyShift action_178 action_153 _ = happyFail action_154 (426) = happyAccept action_154 _ = happyFail action_155 (26) = happyGoto action_177 action_155 (27) = happyGoto action_175 action_155 (28) = happyGoto action_176 action_155 _ = happyReduce_41 action_156 (26) = happyGoto action_174 action_156 (27) = happyGoto action_175 action_156 (28) = happyGoto action_176 action_156 _ = happyReduce_41 action_157 _ = happyReduce_600 action_158 (426) = happyAccept action_158 _ = happyFail action_159 (304) = happyShift action_173 action_159 (76) = happyGoto action_170 action_159 (86) = happyGoto action_171 action_159 (258) = happyGoto action_172 action_159 _ = happyReduce_714 action_160 (426) = happyAccept action_160 _ = happyFail action_161 _ = happyReduce_400 action_162 (426) = happyAccept action_162 _ = happyFail action_163 (348) = happyShift action_167 action_163 (350) = happyShift action_168 action_163 (393) = happyShift action_169 action_163 (17) = happyGoto action_164 action_163 (22) = happyGoto action_165 action_163 (23) = happyGoto action_166 action_163 _ = happyReduce_29 action_164 _ = happyReduce_14 action_165 _ = happyReduce_16 action_166 (304) = happyShift action_156 action_166 (25) = happyGoto action_576 action_166 (258) = happyGoto action_155 action_166 _ = happyReduce_714 action_167 (278) = happyShift action_256 action_167 (282) = happyShift action_257 action_167 (284) = happyShift action_258 action_167 (357) = happyShift action_259 action_167 (358) = happyShift action_260 action_167 (359) = happyShift action_261 action_167 (360) = happyShift action_262 action_167 (361) = happyShift action_263 action_167 (362) = happyShift action_264 action_167 (363) = happyShift action_265 action_167 (364) = happyShift action_266 action_167 (365) = happyShift action_267 action_167 (366) = happyShift action_268 action_167 (367) = happyShift action_269 action_167 (368) = happyShift action_270 action_167 (369) = happyShift action_271 action_167 (370) = happyShift action_272 action_167 (371) = happyShift action_273 action_167 (372) = happyShift action_274 action_167 (373) = happyShift action_275 action_167 (374) = happyShift action_276 action_167 (375) = happyShift action_277 action_167 (376) = happyShift action_278 action_167 (377) = happyShift action_279 action_167 (378) = happyShift action_280 action_167 (379) = happyShift action_281 action_167 (380) = happyShift action_282 action_167 (381) = happyShift action_283 action_167 (382) = happyShift action_284 action_167 (383) = happyShift action_285 action_167 (384) = happyShift action_286 action_167 (385) = happyShift action_287 action_167 (386) = happyShift action_288 action_167 (387) = happyShift action_289 action_167 (388) = happyShift action_290 action_167 (389) = happyShift action_291 action_167 (390) = happyShift action_292 action_167 (391) = happyShift action_293 action_167 (392) = happyShift action_294 action_167 (393) = happyShift action_295 action_167 (394) = happyShift action_296 action_167 (395) = happyShift action_297 action_167 (396) = happyShift action_298 action_167 (397) = happyShift action_299 action_167 (398) = happyShift action_300 action_167 (399) = happyShift action_301 action_167 (400) = happyShift action_302 action_167 (401) = happyShift action_303 action_167 (402) = happyShift action_304 action_167 (193) = happyGoto action_575 action_167 (194) = happyGoto action_254 action_167 (195) = happyGoto action_255 action_167 _ = happyFail action_168 (393) = happyShift action_169 action_168 (22) = happyGoto action_574 action_168 (23) = happyGoto action_166 action_168 _ = happyReduce_29 action_169 (282) = happyShift action_403 action_169 (283) = happyShift action_404 action_169 (267) = happyGoto action_573 action_169 _ = happyFail action_170 _ = happyReduce_194 action_171 (386) = happyShift action_524 action_171 _ = happyFail action_172 (27) = happyGoto action_175 action_172 (28) = happyGoto action_568 action_172 (73) = happyGoto action_571 action_172 (225) = happyGoto action_572 action_172 _ = happyReduce_41 action_173 (27) = happyGoto action_175 action_173 (28) = happyGoto action_568 action_173 (73) = happyGoto action_569 action_173 (225) = happyGoto action_570 action_173 _ = happyReduce_41 action_174 (305) = happyShift action_567 action_174 _ = happyFail action_175 _ = happyReduce_40 action_176 (278) = happyShift action_49 action_176 (279) = happyShift action_50 action_176 (280) = happyShift action_51 action_176 (281) = happyShift action_52 action_176 (282) = happyShift action_53 action_176 (283) = happyShift action_54 action_176 (289) = happyShift action_55 action_176 (290) = happyShift action_56 action_176 (291) = happyShift action_57 action_176 (292) = happyShift action_58 action_176 (293) = happyShift action_59 action_176 (294) = happyShift action_60 action_176 (295) = happyShift action_61 action_176 (296) = happyShift action_62 action_176 (297) = happyShift action_63 action_176 (298) = happyShift action_64 action_176 (299) = happyShift action_65 action_176 (301) = happyShift action_66 action_176 (303) = happyShift action_566 action_176 (307) = happyShift action_67 action_176 (309) = happyShift action_68 action_176 (312) = happyShift action_69 action_176 (319) = happyShift action_70 action_176 (324) = happyShift action_71 action_176 (325) = happyShift action_72 action_176 (327) = happyShift action_73 action_176 (328) = happyShift action_486 action_176 (334) = happyShift action_75 action_176 (337) = happyShift action_76 action_176 (338) = happyShift action_77 action_176 (339) = happyShift action_78 action_176 (340) = happyShift action_79 action_176 (341) = happyShift action_80 action_176 (342) = happyShift action_81 action_176 (344) = happyShift action_82 action_176 (345) = happyShift action_83 action_176 (346) = happyShift action_84 action_176 (348) = happyShift action_85 action_176 (350) = happyShift action_86 action_176 (351) = happyShift action_87 action_176 (357) = happyShift action_487 action_176 (358) = happyShift action_88 action_176 (359) = happyShift action_89 action_176 (360) = happyShift action_90 action_176 (361) = happyShift action_91 action_176 (362) = happyShift action_92 action_176 (363) = happyShift action_93 action_176 (364) = happyShift action_94 action_176 (365) = happyShift action_95 action_176 (366) = happyShift action_96 action_176 (367) = happyShift action_97 action_176 (368) = happyShift action_98 action_176 (369) = happyShift action_99 action_176 (370) = happyShift action_100 action_176 (371) = happyShift action_101 action_176 (373) = happyShift action_102 action_176 (374) = happyShift action_488 action_176 (375) = happyShift action_489 action_176 (376) = happyShift action_490 action_176 (377) = happyShift action_491 action_176 (378) = happyShift action_103 action_176 (380) = happyShift action_104 action_176 (381) = happyShift action_105 action_176 (383) = happyShift action_106 action_176 (384) = happyShift action_107 action_176 (385) = happyShift action_22 action_176 (387) = happyShift action_492 action_176 (388) = happyShift action_493 action_176 (389) = happyShift action_494 action_176 (390) = happyShift action_495 action_176 (391) = happyShift action_159 action_176 (392) = happyShift action_109 action_176 (394) = happyShift action_496 action_176 (396) = happyShift action_110 action_176 (399) = happyShift action_497 action_176 (402) = happyShift action_112 action_176 (403) = happyShift action_113 action_176 (404) = happyShift action_498 action_176 (405) = happyShift action_499 action_176 (406) = happyShift action_500 action_176 (407) = happyShift action_501 action_176 (408) = happyShift action_502 action_176 (410) = happyShift action_503 action_176 (411) = happyShift action_114 action_176 (412) = happyShift action_115 action_176 (413) = happyShift action_116 action_176 (414) = happyShift action_504 action_176 (415) = happyShift action_505 action_176 (420) = happyShift action_506 action_176 (421) = happyShift action_507 action_176 (35) = happyGoto action_563 action_176 (36) = happyGoto action_564 action_176 (49) = happyGoto action_469 action_176 (51) = happyGoto action_470 action_176 (56) = happyGoto action_565 action_176 (57) = happyGoto action_472 action_176 (58) = happyGoto action_473 action_176 (63) = happyGoto action_474 action_176 (71) = happyGoto action_475 action_176 (75) = happyGoto action_476 action_176 (77) = happyGoto action_477 action_176 (78) = happyGoto action_478 action_176 (79) = happyGoto action_479 action_176 (162) = happyGoto action_480 action_176 (170) = happyGoto action_481 action_176 (171) = happyGoto action_26 action_176 (172) = happyGoto action_482 action_176 (173) = happyGoto action_28 action_176 (176) = happyGoto action_29 action_176 (177) = happyGoto action_30 action_176 (178) = happyGoto action_31 action_176 (181) = happyGoto action_32 action_176 (182) = happyGoto action_33 action_176 (183) = happyGoto action_34 action_176 (190) = happyGoto action_35 action_176 (228) = happyGoto action_38 action_176 (231) = happyGoto action_39 action_176 (232) = happyGoto action_40 action_176 (234) = happyGoto action_41 action_176 (244) = happyGoto action_42 action_176 (245) = happyGoto action_43 action_176 (246) = happyGoto action_44 action_176 (247) = happyGoto action_45 action_176 (248) = happyGoto action_46 action_176 (249) = happyGoto action_47 action_176 (257) = happyGoto action_48 action_176 (260) = happyGoto action_483 action_176 (261) = happyGoto action_484 action_176 (265) = happyGoto action_485 action_176 _ = happyReduce_38 action_177 (1) = happyShift action_400 action_177 (306) = happyShift action_401 action_177 (259) = happyGoto action_562 action_177 _ = happyFail action_178 _ = happyReduce_281 action_179 _ = happyReduce_280 action_180 (278) = happyShift action_49 action_180 (299) = happyShift action_560 action_180 (314) = happyShift action_561 action_180 (358) = happyShift action_88 action_180 (359) = happyShift action_148 action_180 (360) = happyShift action_149 action_180 (361) = happyShift action_150 action_180 (363) = happyShift action_93 action_180 (364) = happyShift action_94 action_180 (365) = happyShift action_95 action_180 (366) = happyShift action_96 action_180 (367) = happyShift action_97 action_180 (368) = happyShift action_98 action_180 (369) = happyShift action_99 action_180 (370) = happyShift action_100 action_180 (371) = happyShift action_101 action_180 (383) = happyShift action_106 action_180 (402) = happyShift action_112 action_180 (123) = happyGoto action_558 action_180 (245) = happyGoto action_131 action_180 (270) = happyGoto action_559 action_180 (271) = happyGoto action_134 action_180 _ = happyFail action_181 _ = happyReduce_735 action_182 _ = happyReduce_271 action_183 _ = happyReduce_661 action_184 _ = happyReduce_690 action_185 _ = happyReduce_272 action_186 _ = happyReduce_692 action_187 _ = happyReduce_691 action_188 (278) = happyShift action_49 action_188 (280) = happyShift action_51 action_188 (281) = happyShift action_52 action_188 (282) = happyShift action_53 action_188 (283) = happyShift action_54 action_188 (286) = happyShift action_186 action_188 (288) = happyShift action_187 action_188 (289) = happyShift action_135 action_188 (292) = happyShift action_136 action_188 (299) = happyShift action_137 action_188 (300) = happyShift action_557 action_188 (301) = happyShift action_138 action_188 (307) = happyShift action_139 action_188 (309) = happyShift action_140 action_188 (312) = happyShift action_141 action_188 (316) = happyShift action_190 action_188 (325) = happyShift action_142 action_188 (328) = happyShift action_143 action_188 (337) = happyShift action_144 action_188 (338) = happyShift action_145 action_188 (344) = happyShift action_146 action_188 (346) = happyShift action_147 action_188 (358) = happyShift action_88 action_188 (359) = happyShift action_148 action_188 (360) = happyShift action_149 action_188 (361) = happyShift action_150 action_188 (363) = happyShift action_93 action_188 (364) = happyShift action_94 action_188 (365) = happyShift action_95 action_188 (366) = happyShift action_96 action_188 (367) = happyShift action_97 action_188 (368) = happyShift action_98 action_188 (369) = happyShift action_99 action_188 (370) = happyShift action_100 action_188 (371) = happyShift action_101 action_188 (381) = happyShift action_151 action_188 (383) = happyShift action_106 action_188 (402) = happyShift action_112 action_188 (416) = happyShift action_152 action_188 (417) = happyShift action_153 action_188 (103) = happyGoto action_117 action_188 (105) = happyGoto action_118 action_188 (108) = happyGoto action_119 action_188 (109) = happyGoto action_120 action_188 (110) = happyGoto action_121 action_188 (111) = happyGoto action_122 action_188 (112) = happyGoto action_123 action_188 (113) = happyGoto action_124 action_188 (114) = happyGoto action_125 action_188 (115) = happyGoto action_126 action_188 (118) = happyGoto action_195 action_188 (119) = happyGoto action_129 action_188 (121) = happyGoto action_556 action_188 (232) = happyGoto action_130 action_188 (243) = happyGoto action_508 action_188 (245) = happyGoto action_131 action_188 (247) = happyGoto action_45 action_188 (248) = happyGoto action_132 action_188 (249) = happyGoto action_47 action_188 (250) = happyGoto action_183 action_188 (251) = happyGoto action_184 action_188 (270) = happyGoto action_133 action_188 (271) = happyGoto action_134 action_188 _ = happyFail action_189 (278) = happyShift action_49 action_189 (280) = happyShift action_51 action_189 (281) = happyShift action_52 action_189 (282) = happyShift action_53 action_189 (283) = happyShift action_54 action_189 (289) = happyShift action_135 action_189 (292) = happyShift action_136 action_189 (299) = happyShift action_137 action_189 (301) = happyShift action_138 action_189 (307) = happyShift action_139 action_189 (308) = happyShift action_555 action_189 (309) = happyShift action_140 action_189 (312) = happyShift action_141 action_189 (325) = happyShift action_142 action_189 (328) = happyShift action_143 action_189 (337) = happyShift action_144 action_189 (338) = happyShift action_145 action_189 (344) = happyShift action_146 action_189 (346) = happyShift action_147 action_189 (358) = happyShift action_88 action_189 (359) = happyShift action_148 action_189 (360) = happyShift action_149 action_189 (361) = happyShift action_150 action_189 (363) = happyShift action_93 action_189 (364) = happyShift action_94 action_189 (365) = happyShift action_95 action_189 (366) = happyShift action_96 action_189 (367) = happyShift action_97 action_189 (368) = happyShift action_98 action_189 (369) = happyShift action_99 action_189 (370) = happyShift action_100 action_189 (371) = happyShift action_101 action_189 (381) = happyShift action_151 action_189 (383) = happyShift action_106 action_189 (402) = happyShift action_112 action_189 (416) = happyShift action_152 action_189 (417) = happyShift action_153 action_189 (103) = happyGoto action_117 action_189 (105) = happyGoto action_118 action_189 (108) = happyGoto action_119 action_189 (109) = happyGoto action_120 action_189 (110) = happyGoto action_121 action_189 (111) = happyGoto action_122 action_189 (112) = happyGoto action_123 action_189 (113) = happyGoto action_124 action_189 (114) = happyGoto action_125 action_189 (115) = happyGoto action_126 action_189 (118) = happyGoto action_195 action_189 (119) = happyGoto action_129 action_189 (121) = happyGoto action_554 action_189 (232) = happyGoto action_130 action_189 (245) = happyGoto action_131 action_189 (247) = happyGoto action_45 action_189 (248) = happyGoto action_132 action_189 (249) = happyGoto action_47 action_189 (270) = happyGoto action_133 action_189 (271) = happyGoto action_134 action_189 _ = happyFail action_190 _ = happyReduce_660 action_191 (300) = happyShift action_553 action_191 _ = happyFail action_192 (310) = happyShift action_552 action_192 _ = happyFail action_193 (278) = happyShift action_49 action_193 (282) = happyShift action_53 action_193 (283) = happyShift action_54 action_193 (285) = happyShift action_229 action_193 (286) = happyShift action_186 action_193 (288) = happyShift action_187 action_193 (289) = happyShift action_135 action_193 (292) = happyShift action_136 action_193 (299) = happyShift action_137 action_193 (301) = happyShift action_138 action_193 (307) = happyShift action_139 action_193 (309) = happyShift action_140 action_193 (312) = happyShift action_141 action_193 (313) = happyShift action_230 action_193 (316) = happyShift action_190 action_193 (322) = happyShift action_231 action_193 (325) = happyShift action_142 action_193 (327) = happyShift action_233 action_193 (328) = happyShift action_143 action_193 (337) = happyShift action_144 action_193 (338) = happyShift action_145 action_193 (344) = happyShift action_146 action_193 (346) = happyShift action_147 action_193 (358) = happyShift action_88 action_193 (359) = happyShift action_148 action_193 (360) = happyShift action_149 action_193 (361) = happyShift action_150 action_193 (363) = happyShift action_93 action_193 (364) = happyShift action_94 action_193 (365) = happyShift action_95 action_193 (366) = happyShift action_96 action_193 (367) = happyShift action_97 action_193 (368) = happyShift action_98 action_193 (369) = happyShift action_99 action_193 (370) = happyShift action_100 action_193 (371) = happyShift action_101 action_193 (383) = happyShift action_106 action_193 (402) = happyShift action_112 action_193 (416) = happyShift action_152 action_193 (417) = happyShift action_153 action_193 (109) = happyGoto action_223 action_193 (110) = happyGoto action_121 action_193 (111) = happyGoto action_122 action_193 (112) = happyGoto action_123 action_193 (113) = happyGoto action_124 action_193 (114) = happyGoto action_125 action_193 (115) = happyGoto action_126 action_193 (116) = happyGoto action_224 action_193 (239) = happyGoto action_225 action_193 (243) = happyGoto action_226 action_193 (245) = happyGoto action_131 action_193 (248) = happyGoto action_132 action_193 (249) = happyGoto action_47 action_193 (250) = happyGoto action_183 action_193 (251) = happyGoto action_184 action_193 (270) = happyGoto action_133 action_193 (271) = happyGoto action_134 action_193 (272) = happyGoto action_227 action_193 (273) = happyGoto action_228 action_193 _ = happyReduce_241 action_194 (308) = happyShift action_551 action_194 _ = happyReduce_296 action_195 _ = happyReduce_299 action_196 (308) = happyShift action_550 action_196 _ = happyFail action_197 (311) = happyShift action_549 action_197 _ = happyFail action_198 _ = happyReduce_285 action_199 (302) = happyShift action_547 action_199 (311) = happyShift action_548 action_199 _ = happyFail action_200 (302) = happyShift action_546 action_200 (311) = happyShift action_437 action_200 _ = happyFail action_201 _ = happyReduce_287 action_202 _ = happyReduce_478 action_203 (300) = happyShift action_544 action_203 (317) = happyShift action_545 action_203 _ = happyReduce_299 action_204 (300) = happyShift action_543 action_204 _ = happyFail action_205 (300) = happyShift action_542 action_205 (311) = happyShift action_437 action_205 _ = happyFail action_206 (300) = happyShift action_541 action_206 _ = happyFail action_207 (300) = happyShift action_540 action_207 _ = happyFail action_208 _ = happyReduce_693 action_209 _ = happyReduce_697 action_210 _ = happyReduce_694 action_211 _ = happyReduce_699 action_212 _ = happyReduce_703 action_213 _ = happyReduce_283 action_214 _ = happyReduce_701 action_215 (300) = happyShift action_539 action_215 _ = happyFail action_216 _ = happyReduce_698 action_217 (300) = happyReduce_700 action_217 _ = happyReduce_278 action_218 _ = happyReduce_702 action_219 (278) = happyShift action_49 action_219 (282) = happyShift action_53 action_219 (283) = happyShift action_54 action_219 (289) = happyShift action_135 action_219 (292) = happyShift action_136 action_219 (299) = happyShift action_137 action_219 (301) = happyShift action_138 action_219 (307) = happyShift action_139 action_219 (309) = happyShift action_140 action_219 (312) = happyShift action_141 action_219 (325) = happyShift action_142 action_219 (328) = happyShift action_143 action_219 (337) = happyShift action_144 action_219 (338) = happyShift action_145 action_219 (344) = happyShift action_146 action_219 (346) = happyShift action_147 action_219 (358) = happyShift action_88 action_219 (359) = happyShift action_148 action_219 (360) = happyShift action_149 action_219 (361) = happyShift action_150 action_219 (363) = happyShift action_93 action_219 (364) = happyShift action_94 action_219 (365) = happyShift action_95 action_219 (366) = happyShift action_96 action_219 (367) = happyShift action_97 action_219 (368) = happyShift action_98 action_219 (369) = happyShift action_99 action_219 (370) = happyShift action_100 action_219 (371) = happyShift action_101 action_219 (383) = happyShift action_106 action_219 (402) = happyShift action_112 action_219 (416) = happyShift action_152 action_219 (417) = happyShift action_153 action_219 (103) = happyGoto action_538 action_219 (108) = happyGoto action_193 action_219 (109) = happyGoto action_120 action_219 (110) = happyGoto action_121 action_219 (111) = happyGoto action_122 action_219 (112) = happyGoto action_123 action_219 (113) = happyGoto action_124 action_219 (114) = happyGoto action_125 action_219 (115) = happyGoto action_126 action_219 (245) = happyGoto action_131 action_219 (248) = happyGoto action_132 action_219 (249) = happyGoto action_47 action_219 (270) = happyGoto action_133 action_219 (271) = happyGoto action_134 action_219 _ = happyFail action_220 _ = happyReduce_295 action_221 _ = happyReduce_277 action_222 _ = happyReduce_254 action_223 _ = happyReduce_250 action_224 (278) = happyShift action_49 action_224 (282) = happyShift action_53 action_224 (283) = happyShift action_54 action_224 (289) = happyShift action_135 action_224 (292) = happyShift action_136 action_224 (299) = happyShift action_137 action_224 (301) = happyShift action_138 action_224 (307) = happyShift action_139 action_224 (309) = happyShift action_140 action_224 (312) = happyShift action_141 action_224 (325) = happyShift action_142 action_224 (328) = happyShift action_143 action_224 (337) = happyShift action_144 action_224 (338) = happyShift action_145 action_224 (344) = happyShift action_146 action_224 (346) = happyShift action_147 action_224 (358) = happyShift action_88 action_224 (359) = happyShift action_148 action_224 (360) = happyShift action_149 action_224 (361) = happyShift action_150 action_224 (363) = happyShift action_93 action_224 (364) = happyShift action_94 action_224 (365) = happyShift action_95 action_224 (366) = happyShift action_96 action_224 (367) = happyShift action_97 action_224 (368) = happyShift action_98 action_224 (369) = happyShift action_99 action_224 (370) = happyShift action_100 action_224 (371) = happyShift action_101 action_224 (383) = happyShift action_106 action_224 (402) = happyShift action_112 action_224 (416) = happyShift action_152 action_224 (417) = happyShift action_153 action_224 (103) = happyGoto action_537 action_224 (108) = happyGoto action_193 action_224 (109) = happyGoto action_120 action_224 (110) = happyGoto action_121 action_224 (111) = happyGoto action_122 action_224 (112) = happyGoto action_123 action_224 (113) = happyGoto action_124 action_224 (114) = happyGoto action_125 action_224 (115) = happyGoto action_126 action_224 (245) = happyGoto action_131 action_224 (248) = happyGoto action_132 action_224 (249) = happyGoto action_47 action_224 (270) = happyGoto action_133 action_224 (271) = happyGoto action_134 action_224 _ = happyFail action_225 _ = happyReduce_292 action_226 _ = happyReduce_652 action_227 (278) = happyShift action_49 action_227 (282) = happyShift action_53 action_227 (283) = happyShift action_54 action_227 (289) = happyShift action_135 action_227 (292) = happyShift action_136 action_227 (299) = happyShift action_137 action_227 (301) = happyShift action_138 action_227 (307) = happyShift action_139 action_227 (309) = happyShift action_140 action_227 (312) = happyShift action_141 action_227 (325) = happyShift action_142 action_227 (328) = happyShift action_143 action_227 (337) = happyShift action_144 action_227 (338) = happyShift action_145 action_227 (344) = happyShift action_146 action_227 (346) = happyShift action_147 action_227 (358) = happyShift action_88 action_227 (359) = happyShift action_148 action_227 (360) = happyShift action_149 action_227 (361) = happyShift action_150 action_227 (363) = happyShift action_93 action_227 (364) = happyShift action_94 action_227 (365) = happyShift action_95 action_227 (366) = happyShift action_96 action_227 (367) = happyShift action_97 action_227 (368) = happyShift action_98 action_227 (369) = happyShift action_99 action_227 (370) = happyShift action_100 action_227 (371) = happyShift action_101 action_227 (383) = happyShift action_106 action_227 (402) = happyShift action_112 action_227 (416) = happyShift action_152 action_227 (417) = happyShift action_153 action_227 (103) = happyGoto action_536 action_227 (108) = happyGoto action_193 action_227 (109) = happyGoto action_120 action_227 (110) = happyGoto action_121 action_227 (111) = happyGoto action_122 action_227 (112) = happyGoto action_123 action_227 (113) = happyGoto action_124 action_227 (114) = happyGoto action_125 action_227 (115) = happyGoto action_126 action_227 (245) = happyGoto action_131 action_227 (248) = happyGoto action_132 action_227 (249) = happyGoto action_47 action_227 (270) = happyGoto action_133 action_227 (271) = happyGoto action_134 action_227 _ = happyFail action_228 _ = happyReduce_742 action_229 _ = happyReduce_743 action_230 (278) = happyShift action_49 action_230 (282) = happyShift action_53 action_230 (283) = happyShift action_54 action_230 (358) = happyShift action_88 action_230 (359) = happyShift action_148 action_230 (360) = happyShift action_149 action_230 (361) = happyShift action_150 action_230 (363) = happyShift action_93 action_230 (364) = happyShift action_94 action_230 (365) = happyShift action_95 action_230 (366) = happyShift action_96 action_230 (367) = happyShift action_97 action_230 (368) = happyShift action_98 action_230 (369) = happyShift action_99 action_230 (370) = happyShift action_100 action_230 (371) = happyShift action_101 action_230 (383) = happyShift action_106 action_230 (402) = happyShift action_112 action_230 (245) = happyGoto action_131 action_230 (248) = happyGoto action_417 action_230 (249) = happyGoto action_47 action_230 (270) = happyGoto action_535 action_230 (271) = happyGoto action_134 action_230 _ = happyFail action_231 (278) = happyShift action_49 action_231 (280) = happyShift action_51 action_231 (281) = happyShift action_52 action_231 (282) = happyShift action_53 action_231 (283) = happyShift action_54 action_231 (289) = happyShift action_135 action_231 (292) = happyShift action_136 action_231 (299) = happyShift action_137 action_231 (301) = happyShift action_138 action_231 (307) = happyShift action_139 action_231 (309) = happyShift action_140 action_231 (312) = happyShift action_141 action_231 (325) = happyShift action_142 action_231 (328) = happyShift action_143 action_231 (337) = happyShift action_144 action_231 (338) = happyShift action_145 action_231 (344) = happyShift action_146 action_231 (346) = happyShift action_147 action_231 (358) = happyShift action_88 action_231 (359) = happyShift action_148 action_231 (360) = happyShift action_149 action_231 (361) = happyShift action_150 action_231 (363) = happyShift action_93 action_231 (364) = happyShift action_94 action_231 (365) = happyShift action_95 action_231 (366) = happyShift action_96 action_231 (367) = happyShift action_97 action_231 (368) = happyShift action_98 action_231 (369) = happyShift action_99 action_231 (370) = happyShift action_100 action_231 (371) = happyShift action_101 action_231 (381) = happyShift action_151 action_231 (383) = happyShift action_106 action_231 (402) = happyShift action_112 action_231 (416) = happyShift action_152 action_231 (417) = happyShift action_153 action_231 (103) = happyGoto action_117 action_231 (105) = happyGoto action_118 action_231 (108) = happyGoto action_119 action_231 (109) = happyGoto action_120 action_231 (110) = happyGoto action_121 action_231 (111) = happyGoto action_122 action_231 (112) = happyGoto action_123 action_231 (113) = happyGoto action_124 action_231 (114) = happyGoto action_125 action_231 (115) = happyGoto action_126 action_231 (118) = happyGoto action_534 action_231 (119) = happyGoto action_129 action_231 (232) = happyGoto action_130 action_231 (245) = happyGoto action_131 action_231 (247) = happyGoto action_45 action_231 (248) = happyGoto action_132 action_231 (249) = happyGoto action_47 action_231 (270) = happyGoto action_133 action_231 (271) = happyGoto action_134 action_231 _ = happyFail action_232 _ = happyReduce_297 action_233 _ = happyReduce_744 action_234 (289) = happyShift action_533 action_234 _ = happyFail action_235 (425) = happyShift action_532 action_235 _ = happyFail action_236 (425) = happyShift action_531 action_236 _ = happyFail action_237 _ = happyReduce_617 action_238 (278) = happyShift action_49 action_238 (279) = happyShift action_50 action_238 (280) = happyShift action_51 action_238 (281) = happyShift action_52 action_238 (282) = happyShift action_53 action_238 (283) = happyShift action_54 action_238 (289) = happyShift action_55 action_238 (290) = happyShift action_56 action_238 (291) = happyShift action_57 action_238 (292) = happyShift action_58 action_238 (293) = happyShift action_59 action_238 (294) = happyShift action_60 action_238 (295) = happyShift action_61 action_238 (296) = happyShift action_62 action_238 (297) = happyShift action_63 action_238 (298) = happyShift action_64 action_238 (299) = happyShift action_65 action_238 (301) = happyShift action_66 action_238 (303) = happyShift action_529 action_238 (307) = happyShift action_67 action_238 (309) = happyShift action_68 action_238 (312) = happyShift action_69 action_238 (319) = happyShift action_70 action_238 (324) = happyShift action_71 action_238 (325) = happyShift action_72 action_238 (327) = happyShift action_73 action_238 (328) = happyShift action_74 action_238 (334) = happyShift action_75 action_238 (337) = happyShift action_76 action_238 (338) = happyShift action_77 action_238 (339) = happyShift action_78 action_238 (340) = happyShift action_79 action_238 (341) = happyShift action_80 action_238 (342) = happyShift action_81 action_238 (344) = happyShift action_82 action_238 (345) = happyShift action_83 action_238 (346) = happyShift action_84 action_238 (348) = happyShift action_85 action_238 (350) = happyShift action_86 action_238 (351) = happyShift action_87 action_238 (358) = happyShift action_88 action_238 (359) = happyShift action_89 action_238 (360) = happyShift action_90 action_238 (361) = happyShift action_91 action_238 (362) = happyShift action_92 action_238 (363) = happyShift action_93 action_238 (364) = happyShift action_94 action_238 (365) = happyShift action_95 action_238 (366) = happyShift action_96 action_238 (367) = happyShift action_97 action_238 (368) = happyShift action_98 action_238 (369) = happyShift action_99 action_238 (370) = happyShift action_100 action_238 (371) = happyShift action_101 action_238 (373) = happyShift action_102 action_238 (378) = happyShift action_103 action_238 (380) = happyShift action_104 action_238 (381) = happyShift action_105 action_238 (383) = happyShift action_106 action_238 (384) = happyShift action_107 action_238 (391) = happyShift action_108 action_238 (392) = happyShift action_109 action_238 (396) = happyShift action_110 action_238 (397) = happyShift action_111 action_238 (402) = happyShift action_112 action_238 (403) = happyShift action_113 action_238 (411) = happyShift action_114 action_238 (412) = happyShift action_115 action_238 (413) = happyShift action_116 action_238 (168) = happyGoto action_23 action_238 (169) = happyGoto action_24 action_238 (170) = happyGoto action_25 action_238 (171) = happyGoto action_26 action_238 (172) = happyGoto action_27 action_238 (173) = happyGoto action_28 action_238 (176) = happyGoto action_29 action_238 (177) = happyGoto action_30 action_238 (178) = happyGoto action_31 action_238 (181) = happyGoto action_32 action_238 (182) = happyGoto action_33 action_238 (183) = happyGoto action_34 action_238 (190) = happyGoto action_35 action_238 (215) = happyGoto action_36 action_238 (220) = happyGoto action_530 action_238 (222) = happyGoto action_528 action_238 (228) = happyGoto action_38 action_238 (231) = happyGoto action_39 action_238 (232) = happyGoto action_40 action_238 (234) = happyGoto action_41 action_238 (244) = happyGoto action_42 action_238 (245) = happyGoto action_43 action_238 (246) = happyGoto action_44 action_238 (247) = happyGoto action_45 action_238 (248) = happyGoto action_46 action_238 (249) = happyGoto action_47 action_238 (257) = happyGoto action_48 action_238 _ = happyReduce_611 action_239 (278) = happyShift action_49 action_239 (279) = happyShift action_50 action_239 (280) = happyShift action_51 action_239 (281) = happyShift action_52 action_239 (282) = happyShift action_53 action_239 (283) = happyShift action_54 action_239 (289) = happyShift action_55 action_239 (290) = happyShift action_56 action_239 (291) = happyShift action_57 action_239 (292) = happyShift action_58 action_239 (293) = happyShift action_59 action_239 (294) = happyShift action_60 action_239 (295) = happyShift action_61 action_239 (296) = happyShift action_62 action_239 (297) = happyShift action_63 action_239 (298) = happyShift action_64 action_239 (299) = happyShift action_65 action_239 (301) = happyShift action_66 action_239 (303) = happyShift action_529 action_239 (307) = happyShift action_67 action_239 (309) = happyShift action_68 action_239 (312) = happyShift action_69 action_239 (319) = happyShift action_70 action_239 (324) = happyShift action_71 action_239 (325) = happyShift action_72 action_239 (327) = happyShift action_73 action_239 (328) = happyShift action_74 action_239 (334) = happyShift action_75 action_239 (337) = happyShift action_76 action_239 (338) = happyShift action_77 action_239 (339) = happyShift action_78 action_239 (340) = happyShift action_79 action_239 (341) = happyShift action_80 action_239 (342) = happyShift action_81 action_239 (344) = happyShift action_82 action_239 (345) = happyShift action_83 action_239 (346) = happyShift action_84 action_239 (348) = happyShift action_85 action_239 (350) = happyShift action_86 action_239 (351) = happyShift action_87 action_239 (358) = happyShift action_88 action_239 (359) = happyShift action_89 action_239 (360) = happyShift action_90 action_239 (361) = happyShift action_91 action_239 (362) = happyShift action_92 action_239 (363) = happyShift action_93 action_239 (364) = happyShift action_94 action_239 (365) = happyShift action_95 action_239 (366) = happyShift action_96 action_239 (367) = happyShift action_97 action_239 (368) = happyShift action_98 action_239 (369) = happyShift action_99 action_239 (370) = happyShift action_100 action_239 (371) = happyShift action_101 action_239 (373) = happyShift action_102 action_239 (378) = happyShift action_103 action_239 (380) = happyShift action_104 action_239 (381) = happyShift action_105 action_239 (383) = happyShift action_106 action_239 (384) = happyShift action_107 action_239 (391) = happyShift action_108 action_239 (392) = happyShift action_109 action_239 (396) = happyShift action_110 action_239 (397) = happyShift action_111 action_239 (402) = happyShift action_112 action_239 (403) = happyShift action_113 action_239 (411) = happyShift action_114 action_239 (412) = happyShift action_115 action_239 (413) = happyShift action_116 action_239 (168) = happyGoto action_23 action_239 (169) = happyGoto action_24 action_239 (170) = happyGoto action_25 action_239 (171) = happyGoto action_26 action_239 (172) = happyGoto action_27 action_239 (173) = happyGoto action_28 action_239 (176) = happyGoto action_29 action_239 (177) = happyGoto action_30 action_239 (178) = happyGoto action_31 action_239 (181) = happyGoto action_32 action_239 (182) = happyGoto action_33 action_239 (183) = happyGoto action_34 action_239 (190) = happyGoto action_35 action_239 (215) = happyGoto action_36 action_239 (220) = happyGoto action_527 action_239 (222) = happyGoto action_528 action_239 (228) = happyGoto action_38 action_239 (231) = happyGoto action_39 action_239 (232) = happyGoto action_40 action_239 (234) = happyGoto action_41 action_239 (244) = happyGoto action_42 action_239 (245) = happyGoto action_43 action_239 (246) = happyGoto action_44 action_239 (247) = happyGoto action_45 action_239 (248) = happyGoto action_46 action_239 (249) = happyGoto action_47 action_239 (257) = happyGoto action_48 action_239 _ = happyReduce_611 action_240 (322) = happyShift action_526 action_240 _ = happyFail action_241 _ = happyReduce_437 action_242 (278) = happyShift action_49 action_242 (279) = happyShift action_50 action_242 (280) = happyShift action_51 action_242 (281) = happyShift action_52 action_242 (282) = happyShift action_53 action_242 (283) = happyShift action_54 action_242 (289) = happyShift action_55 action_242 (290) = happyShift action_56 action_242 (291) = happyShift action_57 action_242 (292) = happyShift action_58 action_242 (293) = happyShift action_59 action_242 (294) = happyShift action_60 action_242 (295) = happyShift action_61 action_242 (296) = happyShift action_62 action_242 (297) = happyShift action_63 action_242 (298) = happyShift action_64 action_242 (299) = happyShift action_65 action_242 (301) = happyShift action_66 action_242 (307) = happyShift action_67 action_242 (309) = happyShift action_68 action_242 (312) = happyShift action_69 action_242 (324) = happyShift action_71 action_242 (325) = happyShift action_72 action_242 (334) = happyShift action_75 action_242 (337) = happyShift action_76 action_242 (338) = happyShift action_77 action_242 (339) = happyShift action_78 action_242 (340) = happyShift action_79 action_242 (341) = happyShift action_80 action_242 (342) = happyShift action_81 action_242 (344) = happyShift action_82 action_242 (345) = happyShift action_83 action_242 (346) = happyShift action_84 action_242 (348) = happyShift action_85 action_242 (350) = happyShift action_86 action_242 (351) = happyShift action_87 action_242 (358) = happyShift action_88 action_242 (359) = happyShift action_89 action_242 (360) = happyShift action_90 action_242 (361) = happyShift action_91 action_242 (362) = happyShift action_92 action_242 (363) = happyShift action_93 action_242 (364) = happyShift action_94 action_242 (365) = happyShift action_95 action_242 (366) = happyShift action_96 action_242 (367) = happyShift action_97 action_242 (368) = happyShift action_98 action_242 (369) = happyShift action_99 action_242 (370) = happyShift action_100 action_242 (371) = happyShift action_101 action_242 (380) = happyShift action_104 action_242 (381) = happyShift action_105 action_242 (383) = happyShift action_106 action_242 (402) = happyShift action_112 action_242 (403) = happyShift action_113 action_242 (181) = happyGoto action_525 action_242 (182) = happyGoto action_33 action_242 (183) = happyGoto action_34 action_242 (190) = happyGoto action_35 action_242 (228) = happyGoto action_38 action_242 (231) = happyGoto action_39 action_242 (232) = happyGoto action_40 action_242 (234) = happyGoto action_41 action_242 (244) = happyGoto action_42 action_242 (245) = happyGoto action_43 action_242 (246) = happyGoto action_44 action_242 (247) = happyGoto action_45 action_242 (248) = happyGoto action_46 action_242 (249) = happyGoto action_47 action_242 (257) = happyGoto action_48 action_242 _ = happyFail action_243 _ = happyReduce_428 action_244 (386) = happyShift action_524 action_244 _ = happyReduce_614 action_245 (303) = happyShift action_523 action_245 (174) = happyGoto action_522 action_245 _ = happyReduce_421 action_246 _ = happyReduce_417 action_247 (27) = happyGoto action_175 action_247 (28) = happyGoto action_519 action_247 (217) = happyGoto action_521 action_247 _ = happyReduce_41 action_248 (27) = happyGoto action_175 action_248 (28) = happyGoto action_519 action_248 (217) = happyGoto action_520 action_248 _ = happyReduce_41 action_249 _ = happyReduce_427 action_250 (395) = happyShift action_518 action_250 _ = happyFail action_251 (303) = happyShift action_515 action_251 (347) = happyShift action_516 action_251 (348) = happyShift action_85 action_251 (350) = happyShift action_86 action_251 (351) = happyShift action_87 action_251 (355) = happyShift action_517 action_251 (175) = happyGoto action_512 action_251 (190) = happyGoto action_513 action_251 (192) = happyGoto action_514 action_251 _ = happyReduce_423 action_252 (354) = happyShift action_511 action_252 _ = happyFail action_253 (196) = happyGoto action_510 action_253 _ = happyReduce_554 action_254 (316) = happyShift action_509 action_254 _ = happyReduce_502 action_255 _ = happyReduce_506 action_256 _ = happyReduce_503 action_257 _ = happyReduce_504 action_258 _ = happyReduce_505 action_259 _ = happyReduce_510 action_260 _ = happyReduce_511 action_261 _ = happyReduce_512 action_262 _ = happyReduce_513 action_263 _ = happyReduce_515 action_264 _ = happyReduce_514 action_265 _ = happyReduce_516 action_266 _ = happyReduce_517 action_267 _ = happyReduce_518 action_268 _ = happyReduce_519 action_269 _ = happyReduce_520 action_270 _ = happyReduce_521 action_271 _ = happyReduce_522 action_272 _ = happyReduce_523 action_273 _ = happyReduce_524 action_274 _ = happyReduce_525 action_275 _ = happyReduce_526 action_276 _ = happyReduce_508 action_277 _ = happyReduce_509 action_278 _ = happyReduce_527 action_279 _ = happyReduce_528 action_280 _ = happyReduce_529 action_281 _ = happyReduce_530 action_282 _ = happyReduce_531 action_283 _ = happyReduce_532 action_284 _ = happyReduce_533 action_285 _ = happyReduce_534 action_286 _ = happyReduce_535 action_287 _ = happyReduce_536 action_288 _ = happyReduce_537 action_289 _ = happyReduce_538 action_290 _ = happyReduce_539 action_291 _ = happyReduce_540 action_292 _ = happyReduce_541 action_293 _ = happyReduce_542 action_294 _ = happyReduce_543 action_295 _ = happyReduce_544 action_296 _ = happyReduce_545 action_297 _ = happyReduce_546 action_298 _ = happyReduce_547 action_299 _ = happyReduce_548 action_300 _ = happyReduce_549 action_301 _ = happyReduce_507 action_302 _ = happyReduce_550 action_303 _ = happyReduce_551 action_304 _ = happyReduce_552 action_305 _ = happyReduce_475 action_306 _ = happyReduce_474 action_307 (285) = happyShift action_211 action_307 (286) = happyShift action_186 action_307 (287) = happyShift action_212 action_307 (288) = happyShift action_187 action_307 (300) = happyShift action_213 action_307 (311) = happyShift action_202 action_307 (314) = happyShift action_214 action_307 (316) = happyShift action_190 action_307 (322) = happyShift action_215 action_307 (327) = happyShift action_216 action_307 (328) = happyShift action_340 action_307 (329) = happyShift action_218 action_307 (184) = happyGoto action_205 action_307 (243) = happyGoto action_206 action_307 (250) = happyGoto action_183 action_307 (251) = happyGoto action_184 action_307 (252) = happyGoto action_207 action_307 (254) = happyGoto action_208 action_307 (255) = happyGoto action_209 action_307 (256) = happyGoto action_210 action_307 _ = happyFail action_308 (302) = happyShift action_201 action_308 (311) = happyShift action_202 action_308 (184) = happyGoto action_200 action_308 _ = happyFail action_309 (308) = happyShift action_198 action_309 _ = happyFail action_310 _ = happyReduce_472 action_311 _ = happyReduce_473 action_312 (285) = happyShift action_211 action_312 (286) = happyShift action_186 action_312 (287) = happyShift action_212 action_312 (288) = happyShift action_187 action_312 (314) = happyShift action_214 action_312 (316) = happyShift action_190 action_312 (327) = happyShift action_216 action_312 (328) = happyShift action_340 action_312 (329) = happyShift action_218 action_312 (243) = happyGoto action_508 action_312 (250) = happyGoto action_183 action_312 (251) = happyGoto action_184 action_312 (252) = happyGoto action_353 action_312 (254) = happyGoto action_208 action_312 (255) = happyGoto action_209 action_312 (256) = happyGoto action_210 action_312 _ = happyFail action_313 (278) = happyShift action_49 action_313 (279) = happyShift action_50 action_313 (280) = happyShift action_51 action_313 (281) = happyShift action_52 action_313 (282) = happyShift action_53 action_313 (283) = happyShift action_54 action_313 (289) = happyShift action_55 action_313 (290) = happyShift action_56 action_313 (291) = happyShift action_57 action_313 (292) = happyShift action_58 action_313 (293) = happyShift action_59 action_313 (294) = happyShift action_60 action_313 (295) = happyShift action_61 action_313 (296) = happyShift action_62 action_313 (297) = happyShift action_63 action_313 (298) = happyShift action_64 action_313 (299) = happyShift action_65 action_313 (301) = happyShift action_66 action_313 (307) = happyShift action_67 action_313 (309) = happyShift action_68 action_313 (312) = happyShift action_69 action_313 (319) = happyShift action_70 action_313 (324) = happyShift action_71 action_313 (325) = happyShift action_72 action_313 (327) = happyShift action_73 action_313 (328) = happyShift action_486 action_313 (334) = happyShift action_75 action_313 (337) = happyShift action_76 action_313 (338) = happyShift action_77 action_313 (339) = happyShift action_78 action_313 (340) = happyShift action_79 action_313 (341) = happyShift action_80 action_313 (342) = happyShift action_81 action_313 (344) = happyShift action_82 action_313 (345) = happyShift action_83 action_313 (346) = happyShift action_84 action_313 (348) = happyShift action_85 action_313 (350) = happyShift action_86 action_313 (351) = happyShift action_87 action_313 (357) = happyShift action_487 action_313 (358) = happyShift action_88 action_313 (359) = happyShift action_89 action_313 (360) = happyShift action_90 action_313 (361) = happyShift action_91 action_313 (362) = happyShift action_92 action_313 (363) = happyShift action_93 action_313 (364) = happyShift action_94 action_313 (365) = happyShift action_95 action_313 (366) = happyShift action_96 action_313 (367) = happyShift action_97 action_313 (368) = happyShift action_98 action_313 (369) = happyShift action_99 action_313 (370) = happyShift action_100 action_313 (371) = happyShift action_101 action_313 (373) = happyShift action_102 action_313 (374) = happyShift action_488 action_313 (375) = happyShift action_489 action_313 (376) = happyShift action_490 action_313 (377) = happyShift action_491 action_313 (378) = happyShift action_103 action_313 (380) = happyShift action_104 action_313 (381) = happyShift action_105 action_313 (383) = happyShift action_106 action_313 (384) = happyShift action_107 action_313 (387) = happyShift action_492 action_313 (388) = happyShift action_493 action_313 (389) = happyShift action_494 action_313 (390) = happyShift action_495 action_313 (391) = happyShift action_159 action_313 (392) = happyShift action_109 action_313 (394) = happyShift action_496 action_313 (396) = happyShift action_110 action_313 (399) = happyShift action_497 action_313 (402) = happyShift action_112 action_313 (403) = happyShift action_113 action_313 (404) = happyShift action_498 action_313 (405) = happyShift action_499 action_313 (406) = happyShift action_500 action_313 (407) = happyShift action_501 action_313 (408) = happyShift action_502 action_313 (410) = happyShift action_503 action_313 (411) = happyShift action_114 action_313 (412) = happyShift action_115 action_313 (413) = happyShift action_116 action_313 (414) = happyShift action_504 action_313 (415) = happyShift action_505 action_313 (420) = happyShift action_506 action_313 (421) = happyShift action_507 action_313 (49) = happyGoto action_469 action_313 (51) = happyGoto action_470 action_313 (56) = happyGoto action_471 action_313 (57) = happyGoto action_472 action_313 (58) = happyGoto action_473 action_313 (63) = happyGoto action_474 action_313 (71) = happyGoto action_475 action_313 (75) = happyGoto action_476 action_313 (77) = happyGoto action_477 action_313 (78) = happyGoto action_478 action_313 (79) = happyGoto action_479 action_313 (162) = happyGoto action_480 action_313 (170) = happyGoto action_481 action_313 (171) = happyGoto action_26 action_313 (172) = happyGoto action_482 action_313 (173) = happyGoto action_28 action_313 (176) = happyGoto action_29 action_313 (177) = happyGoto action_30 action_313 (178) = happyGoto action_31 action_313 (181) = happyGoto action_32 action_313 (182) = happyGoto action_33 action_313 (183) = happyGoto action_34 action_313 (190) = happyGoto action_35 action_313 (228) = happyGoto action_38 action_313 (231) = happyGoto action_39 action_313 (232) = happyGoto action_40 action_313 (234) = happyGoto action_41 action_313 (244) = happyGoto action_42 action_313 (245) = happyGoto action_43 action_313 (246) = happyGoto action_44 action_313 (247) = happyGoto action_45 action_313 (248) = happyGoto action_46 action_313 (249) = happyGoto action_47 action_313 (257) = happyGoto action_48 action_313 (260) = happyGoto action_483 action_313 (261) = happyGoto action_484 action_313 (265) = happyGoto action_485 action_313 _ = happyFail action_314 (343) = happyShift action_468 action_314 _ = happyFail action_315 (343) = happyShift action_467 action_315 _ = happyFail action_316 (285) = happyShift action_211 action_316 (286) = happyShift action_186 action_316 (287) = happyShift action_212 action_316 (288) = happyShift action_187 action_316 (313) = happyShift action_367 action_316 (314) = happyShift action_214 action_316 (316) = happyShift action_190 action_316 (327) = happyShift action_216 action_316 (328) = happyShift action_340 action_316 (329) = happyShift action_218 action_316 (236) = happyGoto action_363 action_316 (239) = happyGoto action_364 action_316 (241) = happyGoto action_466 action_316 (243) = happyGoto action_226 action_316 (250) = happyGoto action_183 action_316 (251) = happyGoto action_184 action_316 (252) = happyGoto action_366 action_316 (254) = happyGoto action_208 action_316 (255) = happyGoto action_209 action_316 (256) = happyGoto action_210 action_316 _ = happyReduce_409 action_317 (343) = happyShift action_465 action_317 _ = happyFail action_318 (300) = happyShift action_464 action_318 _ = happyFail action_319 (320) = happyShift action_463 action_319 _ = happyReduce_489 action_320 (311) = happyShift action_461 action_320 (335) = happyShift action_462 action_320 _ = happyFail action_321 _ = happyReduce_601 action_322 (278) = happyShift action_49 action_322 (279) = happyShift action_50 action_322 (280) = happyShift action_51 action_322 (281) = happyShift action_52 action_322 (282) = happyShift action_53 action_322 (283) = happyShift action_54 action_322 (289) = happyShift action_55 action_322 (290) = happyShift action_56 action_322 (291) = happyShift action_57 action_322 (292) = happyShift action_58 action_322 (293) = happyShift action_59 action_322 (294) = happyShift action_60 action_322 (295) = happyShift action_61 action_322 (296) = happyShift action_62 action_322 (297) = happyShift action_63 action_322 (298) = happyShift action_64 action_322 (299) = happyShift action_65 action_322 (301) = happyShift action_66 action_322 (307) = happyShift action_67 action_322 (309) = happyShift action_68 action_322 (312) = happyShift action_69 action_322 (324) = happyShift action_71 action_322 (325) = happyShift action_72 action_322 (334) = happyShift action_75 action_322 (337) = happyShift action_76 action_322 (338) = happyShift action_77 action_322 (339) = happyShift action_78 action_322 (340) = happyShift action_79 action_322 (341) = happyShift action_80 action_322 (342) = happyShift action_81 action_322 (344) = happyShift action_82 action_322 (345) = happyShift action_83 action_322 (346) = happyShift action_84 action_322 (348) = happyShift action_85 action_322 (350) = happyShift action_86 action_322 (351) = happyShift action_87 action_322 (358) = happyShift action_88 action_322 (359) = happyShift action_89 action_322 (360) = happyShift action_90 action_322 (361) = happyShift action_91 action_322 (362) = happyShift action_92 action_322 (363) = happyShift action_93 action_322 (364) = happyShift action_94 action_322 (365) = happyShift action_95 action_322 (366) = happyShift action_96 action_322 (367) = happyShift action_97 action_322 (368) = happyShift action_98 action_322 (369) = happyShift action_99 action_322 (370) = happyShift action_100 action_322 (371) = happyShift action_101 action_322 (380) = happyShift action_104 action_322 (381) = happyShift action_105 action_322 (383) = happyShift action_106 action_322 (402) = happyShift action_112 action_322 (403) = happyShift action_113 action_322 (181) = happyGoto action_362 action_322 (182) = happyGoto action_33 action_322 (183) = happyGoto action_34 action_322 (190) = happyGoto action_35 action_322 (228) = happyGoto action_38 action_322 (231) = happyGoto action_39 action_322 (232) = happyGoto action_40 action_322 (234) = happyGoto action_41 action_322 (244) = happyGoto action_42 action_322 (245) = happyGoto action_43 action_322 (246) = happyGoto action_44 action_322 (247) = happyGoto action_45 action_322 (248) = happyGoto action_46 action_322 (249) = happyGoto action_47 action_322 (257) = happyGoto action_48 action_322 _ = happyReduce_426 action_323 _ = happyReduce_441 action_324 _ = happyReduce_442 action_325 _ = happyReduce_249 action_326 (278) = happyShift action_49 action_326 (279) = happyShift action_50 action_326 (280) = happyShift action_51 action_326 (281) = happyShift action_52 action_326 (282) = happyShift action_53 action_326 (283) = happyShift action_54 action_326 (289) = happyShift action_55 action_326 (290) = happyShift action_56 action_326 (291) = happyShift action_57 action_326 (292) = happyShift action_58 action_326 (293) = happyShift action_59 action_326 (294) = happyShift action_60 action_326 (295) = happyShift action_61 action_326 (296) = happyShift action_62 action_326 (297) = happyShift action_63 action_326 (298) = happyShift action_64 action_326 (299) = happyShift action_65 action_326 (301) = happyShift action_66 action_326 (307) = happyShift action_67 action_326 (309) = happyShift action_68 action_326 (312) = happyShift action_69 action_326 (322) = happyShift action_460 action_326 (324) = happyShift action_71 action_326 (325) = happyShift action_72 action_326 (328) = happyShift action_242 action_326 (334) = happyShift action_75 action_326 (337) = happyShift action_76 action_326 (338) = happyShift action_77 action_326 (339) = happyShift action_78 action_326 (340) = happyShift action_79 action_326 (341) = happyShift action_80 action_326 (342) = happyShift action_81 action_326 (344) = happyShift action_82 action_326 (345) = happyShift action_83 action_326 (346) = happyShift action_84 action_326 (348) = happyShift action_85 action_326 (350) = happyShift action_86 action_326 (351) = happyShift action_87 action_326 (358) = happyShift action_88 action_326 (359) = happyShift action_89 action_326 (360) = happyShift action_90 action_326 (361) = happyShift action_91 action_326 (362) = happyShift action_92 action_326 (363) = happyShift action_93 action_326 (364) = happyShift action_94 action_326 (365) = happyShift action_95 action_326 (366) = happyShift action_96 action_326 (367) = happyShift action_97 action_326 (368) = happyShift action_98 action_326 (369) = happyShift action_99 action_326 (370) = happyShift action_100 action_326 (371) = happyShift action_101 action_326 (380) = happyShift action_104 action_326 (381) = happyShift action_105 action_326 (383) = happyShift action_106 action_326 (402) = happyShift action_112 action_326 (403) = happyShift action_113 action_326 (180) = happyGoto action_459 action_326 (181) = happyGoto action_241 action_326 (182) = happyGoto action_33 action_326 (183) = happyGoto action_34 action_326 (190) = happyGoto action_35 action_326 (228) = happyGoto action_38 action_326 (231) = happyGoto action_39 action_326 (232) = happyGoto action_40 action_326 (234) = happyGoto action_41 action_326 (244) = happyGoto action_42 action_326 (245) = happyGoto action_43 action_326 (246) = happyGoto action_44 action_326 (247) = happyGoto action_45 action_326 (248) = happyGoto action_46 action_326 (249) = happyGoto action_47 action_326 (257) = happyGoto action_48 action_326 _ = happyFail action_327 _ = happyReduce_436 action_328 (304) = happyShift action_458 action_328 (208) = happyGoto action_456 action_328 (258) = happyGoto action_457 action_328 _ = happyReduce_714 action_329 (322) = happyShift action_439 action_329 _ = happyReduce_479 action_330 (311) = happyShift action_453 action_330 (315) = happyShift action_454 action_330 (320) = happyShift action_455 action_330 _ = happyReduce_584 action_331 (311) = happyShift action_445 action_331 _ = happyReduce_585 action_332 (310) = happyShift action_452 action_332 _ = happyFail action_333 _ = happyReduce_658 action_334 _ = happyReduce_659 action_335 (278) = happyShift action_49 action_335 (279) = happyShift action_50 action_335 (280) = happyShift action_51 action_335 (281) = happyShift action_52 action_335 (282) = happyShift action_53 action_335 (283) = happyShift action_54 action_335 (289) = happyShift action_55 action_335 (290) = happyShift action_56 action_335 (291) = happyShift action_57 action_335 (292) = happyShift action_58 action_335 (293) = happyShift action_59 action_335 (294) = happyShift action_60 action_335 (295) = happyShift action_61 action_335 (296) = happyShift action_62 action_335 (297) = happyShift action_63 action_335 (298) = happyShift action_64 action_335 (299) = happyShift action_65 action_335 (301) = happyShift action_66 action_335 (307) = happyShift action_67 action_335 (309) = happyShift action_68 action_335 (312) = happyShift action_69 action_335 (319) = happyShift action_70 action_335 (324) = happyShift action_71 action_335 (325) = happyShift action_72 action_335 (327) = happyShift action_73 action_335 (334) = happyShift action_75 action_335 (337) = happyShift action_76 action_335 (338) = happyShift action_77 action_335 (339) = happyShift action_78 action_335 (340) = happyShift action_79 action_335 (341) = happyShift action_80 action_335 (342) = happyShift action_81 action_335 (344) = happyShift action_82 action_335 (345) = happyShift action_83 action_335 (346) = happyShift action_84 action_335 (348) = happyShift action_85 action_335 (350) = happyShift action_86 action_335 (351) = happyShift action_87 action_335 (358) = happyShift action_88 action_335 (359) = happyShift action_89 action_335 (360) = happyShift action_90 action_335 (361) = happyShift action_91 action_335 (362) = happyShift action_92 action_335 (363) = happyShift action_93 action_335 (364) = happyShift action_94 action_335 (365) = happyShift action_95 action_335 (366) = happyShift action_96 action_335 (367) = happyShift action_97 action_335 (368) = happyShift action_98 action_335 (369) = happyShift action_99 action_335 (370) = happyShift action_100 action_335 (371) = happyShift action_101 action_335 (373) = happyShift action_102 action_335 (378) = happyShift action_103 action_335 (380) = happyShift action_104 action_335 (381) = happyShift action_105 action_335 (383) = happyShift action_106 action_335 (384) = happyShift action_107 action_335 (391) = happyShift action_159 action_335 (392) = happyShift action_109 action_335 (396) = happyShift action_110 action_335 (402) = happyShift action_112 action_335 (403) = happyShift action_113 action_335 (411) = happyShift action_114 action_335 (412) = happyShift action_115 action_335 (413) = happyShift action_116 action_335 (170) = happyGoto action_451 action_335 (171) = happyGoto action_26 action_335 (172) = happyGoto action_316 action_335 (173) = happyGoto action_28 action_335 (176) = happyGoto action_29 action_335 (177) = happyGoto action_30 action_335 (178) = happyGoto action_31 action_335 (181) = happyGoto action_32 action_335 (182) = happyGoto action_33 action_335 (183) = happyGoto action_34 action_335 (190) = happyGoto action_35 action_335 (228) = happyGoto action_38 action_335 (231) = happyGoto action_39 action_335 (232) = happyGoto action_40 action_335 (234) = happyGoto action_41 action_335 (244) = happyGoto action_42 action_335 (245) = happyGoto action_43 action_335 (246) = happyGoto action_44 action_335 (247) = happyGoto action_45 action_335 (248) = happyGoto action_46 action_335 (249) = happyGoto action_47 action_335 (257) = happyGoto action_48 action_335 _ = happyFail action_336 _ = happyReduce_648 action_337 _ = happyReduce_695 action_338 _ = happyReduce_696 action_339 (278) = happyShift action_49 action_339 (279) = happyShift action_50 action_339 (282) = happyShift action_53 action_339 (283) = happyShift action_54 action_339 (358) = happyShift action_88 action_339 (359) = happyShift action_89 action_339 (360) = happyShift action_90 action_339 (361) = happyShift action_91 action_339 (362) = happyShift action_92 action_339 (363) = happyShift action_93 action_339 (364) = happyShift action_94 action_339 (365) = happyShift action_95 action_339 (366) = happyShift action_96 action_339 (367) = happyShift action_97 action_339 (368) = happyShift action_98 action_339 (369) = happyShift action_99 action_339 (370) = happyShift action_100 action_339 (371) = happyShift action_101 action_339 (380) = happyShift action_104 action_339 (381) = happyShift action_105 action_339 (383) = happyShift action_106 action_339 (402) = happyShift action_112 action_339 (403) = happyShift action_113 action_339 (244) = happyGoto action_450 action_339 (245) = happyGoto action_43 action_339 (246) = happyGoto action_44 action_339 (248) = happyGoto action_417 action_339 (249) = happyGoto action_47 action_339 _ = happyFail action_340 _ = happyReduce_700 action_341 (311) = happyShift action_447 action_341 (315) = happyShift action_448 action_341 (320) = happyShift action_449 action_341 _ = happyReduce_558 action_342 (308) = happyShift action_446 action_342 _ = happyFail action_343 (311) = happyShift action_445 action_343 _ = happyReduce_559 action_344 _ = happyReduce_628 action_345 (278) = happyShift action_49 action_345 (279) = happyShift action_50 action_345 (280) = happyShift action_51 action_345 (281) = happyShift action_52 action_345 (282) = happyShift action_53 action_345 (283) = happyShift action_54 action_345 (285) = happyShift action_211 action_345 (286) = happyShift action_186 action_345 (287) = happyShift action_212 action_345 (288) = happyShift action_187 action_345 (289) = happyShift action_55 action_345 (290) = happyShift action_56 action_345 (291) = happyShift action_57 action_345 (292) = happyShift action_58 action_345 (293) = happyShift action_59 action_345 (294) = happyShift action_60 action_345 (295) = happyShift action_61 action_345 (296) = happyShift action_62 action_345 (297) = happyShift action_63 action_345 (298) = happyShift action_64 action_345 (299) = happyShift action_65 action_345 (301) = happyShift action_66 action_345 (302) = happyShift action_444 action_345 (307) = happyShift action_67 action_345 (309) = happyShift action_68 action_345 (311) = happyShift action_437 action_345 (312) = happyShift action_69 action_345 (313) = happyShift action_339 action_345 (314) = happyShift action_214 action_345 (316) = happyShift action_190 action_345 (319) = happyShift action_70 action_345 (324) = happyShift action_71 action_345 (325) = happyShift action_72 action_345 (327) = happyShift action_73 action_345 (328) = happyShift action_340 action_345 (329) = happyShift action_218 action_345 (334) = happyShift action_75 action_345 (337) = happyShift action_76 action_345 (338) = happyShift action_77 action_345 (339) = happyShift action_78 action_345 (340) = happyShift action_79 action_345 (341) = happyShift action_80 action_345 (342) = happyShift action_81 action_345 (344) = happyShift action_82 action_345 (345) = happyShift action_83 action_345 (346) = happyShift action_84 action_345 (348) = happyShift action_85 action_345 (350) = happyShift action_86 action_345 (351) = happyShift action_87 action_345 (358) = happyShift action_88 action_345 (359) = happyShift action_89 action_345 (360) = happyShift action_90 action_345 (361) = happyShift action_91 action_345 (362) = happyShift action_92 action_345 (363) = happyShift action_93 action_345 (364) = happyShift action_94 action_345 (365) = happyShift action_95 action_345 (366) = happyShift action_96 action_345 (367) = happyShift action_97 action_345 (368) = happyShift action_98 action_345 (369) = happyShift action_99 action_345 (370) = happyShift action_100 action_345 (371) = happyShift action_101 action_345 (373) = happyShift action_102 action_345 (378) = happyShift action_103 action_345 (380) = happyShift action_104 action_345 (381) = happyShift action_105 action_345 (383) = happyShift action_106 action_345 (384) = happyShift action_107 action_345 (391) = happyShift action_159 action_345 (392) = happyShift action_109 action_345 (396) = happyShift action_110 action_345 (402) = happyShift action_112 action_345 (403) = happyShift action_113 action_345 (411) = happyShift action_114 action_345 (412) = happyShift action_115 action_345 (413) = happyShift action_116 action_345 (169) = happyGoto action_329 action_345 (170) = happyGoto action_25 action_345 (171) = happyGoto action_26 action_345 (172) = happyGoto action_27 action_345 (173) = happyGoto action_28 action_345 (176) = happyGoto action_29 action_345 (177) = happyGoto action_30 action_345 (178) = happyGoto action_31 action_345 (181) = happyGoto action_32 action_345 (182) = happyGoto action_33 action_345 (183) = happyGoto action_34 action_345 (185) = happyGoto action_443 action_345 (190) = happyGoto action_35 action_345 (228) = happyGoto action_38 action_345 (231) = happyGoto action_39 action_345 (232) = happyGoto action_40 action_345 (234) = happyGoto action_41 action_345 (237) = happyGoto action_333 action_345 (239) = happyGoto action_334 action_345 (242) = happyGoto action_335 action_345 (243) = happyGoto action_226 action_345 (244) = happyGoto action_42 action_345 (245) = happyGoto action_43 action_345 (246) = happyGoto action_44 action_345 (247) = happyGoto action_45 action_345 (248) = happyGoto action_46 action_345 (249) = happyGoto action_47 action_345 (250) = happyGoto action_183 action_345 (251) = happyGoto action_184 action_345 (253) = happyGoto action_336 action_345 (255) = happyGoto action_337 action_345 (256) = happyGoto action_338 action_345 (257) = happyGoto action_48 action_345 _ = happyFail action_346 (302) = happyShift action_442 action_346 (311) = happyShift action_202 action_346 (184) = happyGoto action_440 action_346 (187) = happyGoto action_441 action_346 _ = happyFail action_347 _ = happyReduce_630 action_348 (320) = happyShift action_438 action_348 (322) = happyShift action_439 action_348 _ = happyReduce_479 action_349 (278) = happyShift action_49 action_349 (279) = happyShift action_50 action_349 (280) = happyShift action_51 action_349 (281) = happyShift action_52 action_349 (282) = happyShift action_53 action_349 (283) = happyShift action_54 action_349 (285) = happyShift action_211 action_349 (286) = happyShift action_186 action_349 (287) = happyShift action_212 action_349 (288) = happyShift action_187 action_349 (289) = happyShift action_55 action_349 (290) = happyShift action_56 action_349 (291) = happyShift action_57 action_349 (292) = happyShift action_58 action_349 (293) = happyShift action_59 action_349 (294) = happyShift action_60 action_349 (295) = happyShift action_61 action_349 (296) = happyShift action_62 action_349 (297) = happyShift action_63 action_349 (298) = happyShift action_64 action_349 (299) = happyShift action_65 action_349 (300) = happyShift action_436 action_349 (301) = happyShift action_66 action_349 (307) = happyShift action_67 action_349 (309) = happyShift action_68 action_349 (311) = happyShift action_437 action_349 (312) = happyShift action_69 action_349 (313) = happyShift action_339 action_349 (314) = happyShift action_214 action_349 (316) = happyShift action_190 action_349 (319) = happyShift action_70 action_349 (324) = happyShift action_71 action_349 (325) = happyShift action_72 action_349 (327) = happyShift action_73 action_349 (328) = happyShift action_340 action_349 (329) = happyShift action_218 action_349 (334) = happyShift action_75 action_349 (337) = happyShift action_76 action_349 (338) = happyShift action_77 action_349 (339) = happyShift action_78 action_349 (340) = happyShift action_79 action_349 (341) = happyShift action_80 action_349 (342) = happyShift action_81 action_349 (344) = happyShift action_82 action_349 (345) = happyShift action_83 action_349 (346) = happyShift action_84 action_349 (348) = happyShift action_85 action_349 (350) = happyShift action_86 action_349 (351) = happyShift action_87 action_349 (358) = happyShift action_88 action_349 (359) = happyShift action_89 action_349 (360) = happyShift action_90 action_349 (361) = happyShift action_91 action_349 (362) = happyShift action_92 action_349 (363) = happyShift action_93 action_349 (364) = happyShift action_94 action_349 (365) = happyShift action_95 action_349 (366) = happyShift action_96 action_349 (367) = happyShift action_97 action_349 (368) = happyShift action_98 action_349 (369) = happyShift action_99 action_349 (370) = happyShift action_100 action_349 (371) = happyShift action_101 action_349 (373) = happyShift action_102 action_349 (378) = happyShift action_103 action_349 (380) = happyShift action_104 action_349 (381) = happyShift action_105 action_349 (383) = happyShift action_106 action_349 (384) = happyShift action_107 action_349 (391) = happyShift action_159 action_349 (392) = happyShift action_109 action_349 (396) = happyShift action_110 action_349 (402) = happyShift action_112 action_349 (403) = happyShift action_113 action_349 (411) = happyShift action_114 action_349 (412) = happyShift action_115 action_349 (413) = happyShift action_116 action_349 (169) = happyGoto action_329 action_349 (170) = happyGoto action_25 action_349 (171) = happyGoto action_26 action_349 (172) = happyGoto action_27 action_349 (173) = happyGoto action_28 action_349 (176) = happyGoto action_29 action_349 (177) = happyGoto action_30 action_349 (178) = happyGoto action_31 action_349 (181) = happyGoto action_32 action_349 (182) = happyGoto action_33 action_349 (183) = happyGoto action_34 action_349 (185) = happyGoto action_435 action_349 (190) = happyGoto action_35 action_349 (228) = happyGoto action_38 action_349 (231) = happyGoto action_39 action_349 (232) = happyGoto action_40 action_349 (234) = happyGoto action_41 action_349 (237) = happyGoto action_333 action_349 (239) = happyGoto action_334 action_349 (242) = happyGoto action_335 action_349 (243) = happyGoto action_226 action_349 (244) = happyGoto action_42 action_349 (245) = happyGoto action_43 action_349 (246) = happyGoto action_44 action_349 (247) = happyGoto action_45 action_349 (248) = happyGoto action_46 action_349 (249) = happyGoto action_47 action_349 (250) = happyGoto action_183 action_349 (251) = happyGoto action_184 action_349 (253) = happyGoto action_336 action_349 (255) = happyGoto action_337 action_349 (256) = happyGoto action_338 action_349 (257) = happyGoto action_48 action_349 _ = happyFail action_350 (300) = happyShift action_434 action_350 (311) = happyShift action_202 action_350 (184) = happyGoto action_432 action_350 (186) = happyGoto action_433 action_350 _ = happyFail action_351 (300) = happyShift action_431 action_351 _ = happyFail action_352 (300) = happyShift action_430 action_352 _ = happyReduce_652 action_353 (300) = happyShift action_429 action_353 _ = happyFail action_354 (300) = happyReduce_697 action_354 _ = happyReduce_695 action_355 (300) = happyReduce_694 action_355 _ = happyReduce_696 action_356 _ = happyReduce_627 action_357 (278) = happyShift action_49 action_357 (279) = happyShift action_50 action_357 (280) = happyShift action_51 action_357 (281) = happyShift action_52 action_357 (282) = happyShift action_53 action_357 (283) = happyShift action_54 action_357 (289) = happyShift action_55 action_357 (290) = happyShift action_56 action_357 (291) = happyShift action_57 action_357 (292) = happyShift action_58 action_357 (293) = happyShift action_59 action_357 (294) = happyShift action_60 action_357 (295) = happyShift action_61 action_357 (296) = happyShift action_62 action_357 (297) = happyShift action_63 action_357 (298) = happyShift action_64 action_357 (299) = happyShift action_65 action_357 (301) = happyShift action_66 action_357 (307) = happyShift action_67 action_357 (309) = happyShift action_68 action_357 (312) = happyShift action_69 action_357 (324) = happyShift action_71 action_357 (325) = happyShift action_72 action_357 (334) = happyShift action_75 action_357 (337) = happyShift action_76 action_357 (338) = happyShift action_77 action_357 (339) = happyShift action_78 action_357 (340) = happyShift action_79 action_357 (341) = happyShift action_80 action_357 (342) = happyShift action_81 action_357 (344) = happyShift action_82 action_357 (345) = happyShift action_83 action_357 (346) = happyShift action_84 action_357 (348) = happyShift action_85 action_357 (350) = happyShift action_86 action_357 (351) = happyShift action_87 action_357 (358) = happyShift action_88 action_357 (359) = happyShift action_89 action_357 (360) = happyShift action_90 action_357 (361) = happyShift action_91 action_357 (362) = happyShift action_92 action_357 (363) = happyShift action_93 action_357 (364) = happyShift action_94 action_357 (365) = happyShift action_95 action_357 (366) = happyShift action_96 action_357 (367) = happyShift action_97 action_357 (368) = happyShift action_98 action_357 (369) = happyShift action_99 action_357 (370) = happyShift action_100 action_357 (371) = happyShift action_101 action_357 (380) = happyShift action_104 action_357 (381) = happyShift action_105 action_357 (383) = happyShift action_106 action_357 (402) = happyShift action_112 action_357 (403) = happyShift action_113 action_357 (178) = happyGoto action_322 action_357 (181) = happyGoto action_32 action_357 (182) = happyGoto action_33 action_357 (183) = happyGoto action_34 action_357 (190) = happyGoto action_35 action_357 (228) = happyGoto action_38 action_357 (231) = happyGoto action_39 action_357 (232) = happyGoto action_40 action_357 (234) = happyGoto action_41 action_357 (244) = happyGoto action_42 action_357 (245) = happyGoto action_43 action_357 (246) = happyGoto action_44 action_357 (247) = happyGoto action_45 action_357 (248) = happyGoto action_46 action_357 (249) = happyGoto action_47 action_357 (257) = happyGoto action_48 action_357 _ = happyReduce_698 action_358 (278) = happyShift action_49 action_358 (279) = happyShift action_50 action_358 (280) = happyShift action_51 action_358 (281) = happyShift action_52 action_358 (282) = happyShift action_53 action_358 (283) = happyShift action_54 action_358 (289) = happyShift action_55 action_358 (290) = happyShift action_56 action_358 (291) = happyShift action_57 action_358 (292) = happyShift action_58 action_358 (293) = happyShift action_59 action_358 (294) = happyShift action_60 action_358 (295) = happyShift action_61 action_358 (296) = happyShift action_62 action_358 (297) = happyShift action_63 action_358 (298) = happyShift action_64 action_358 (299) = happyShift action_65 action_358 (301) = happyShift action_66 action_358 (307) = happyShift action_67 action_358 (309) = happyShift action_68 action_358 (312) = happyShift action_69 action_358 (324) = happyShift action_71 action_358 (325) = happyShift action_72 action_358 (334) = happyShift action_75 action_358 (337) = happyShift action_76 action_358 (338) = happyShift action_77 action_358 (339) = happyShift action_78 action_358 (340) = happyShift action_79 action_358 (341) = happyShift action_80 action_358 (342) = happyShift action_81 action_358 (344) = happyShift action_82 action_358 (345) = happyShift action_83 action_358 (346) = happyShift action_84 action_358 (348) = happyShift action_85 action_358 (350) = happyShift action_86 action_358 (351) = happyShift action_87 action_358 (358) = happyShift action_88 action_358 (359) = happyShift action_89 action_358 (360) = happyShift action_90 action_358 (361) = happyShift action_91 action_358 (362) = happyShift action_92 action_358 (363) = happyShift action_93 action_358 (364) = happyShift action_94 action_358 (365) = happyShift action_95 action_358 (366) = happyShift action_96 action_358 (367) = happyShift action_97 action_358 (368) = happyShift action_98 action_358 (369) = happyShift action_99 action_358 (370) = happyShift action_100 action_358 (371) = happyShift action_101 action_358 (380) = happyShift action_104 action_358 (381) = happyShift action_105 action_358 (383) = happyShift action_106 action_358 (402) = happyShift action_112 action_358 (403) = happyShift action_113 action_358 (181) = happyGoto action_428 action_358 (182) = happyGoto action_33 action_358 (183) = happyGoto action_34 action_358 (190) = happyGoto action_35 action_358 (228) = happyGoto action_38 action_358 (231) = happyGoto action_39 action_358 (232) = happyGoto action_40 action_358 (234) = happyGoto action_41 action_358 (244) = happyGoto action_42 action_358 (245) = happyGoto action_43 action_358 (246) = happyGoto action_44 action_358 (247) = happyGoto action_45 action_358 (248) = happyGoto action_46 action_358 (249) = happyGoto action_47 action_358 (257) = happyGoto action_48 action_358 _ = happyFail action_359 (278) = happyShift action_49 action_359 (279) = happyShift action_50 action_359 (280) = happyShift action_51 action_359 (281) = happyShift action_52 action_359 (282) = happyShift action_53 action_359 (283) = happyShift action_54 action_359 (289) = happyShift action_55 action_359 (290) = happyShift action_56 action_359 (291) = happyShift action_57 action_359 (292) = happyShift action_58 action_359 (293) = happyShift action_59 action_359 (294) = happyShift action_60 action_359 (295) = happyShift action_61 action_359 (296) = happyShift action_62 action_359 (297) = happyShift action_63 action_359 (298) = happyShift action_64 action_359 (299) = happyShift action_65 action_359 (301) = happyShift action_66 action_359 (307) = happyShift action_67 action_359 (309) = happyShift action_68 action_359 (312) = happyShift action_69 action_359 (324) = happyShift action_71 action_359 (325) = happyShift action_72 action_359 (334) = happyShift action_75 action_359 (337) = happyShift action_76 action_359 (338) = happyShift action_77 action_359 (339) = happyShift action_78 action_359 (340) = happyShift action_79 action_359 (341) = happyShift action_80 action_359 (342) = happyShift action_81 action_359 (344) = happyShift action_82 action_359 (345) = happyShift action_83 action_359 (346) = happyShift action_84 action_359 (348) = happyShift action_85 action_359 (350) = happyShift action_86 action_359 (351) = happyShift action_87 action_359 (358) = happyShift action_88 action_359 (359) = happyShift action_89 action_359 (360) = happyShift action_90 action_359 (361) = happyShift action_91 action_359 (362) = happyShift action_92 action_359 (363) = happyShift action_93 action_359 (364) = happyShift action_94 action_359 (365) = happyShift action_95 action_359 (366) = happyShift action_96 action_359 (367) = happyShift action_97 action_359 (368) = happyShift action_98 action_359 (369) = happyShift action_99 action_359 (370) = happyShift action_100 action_359 (371) = happyShift action_101 action_359 (380) = happyShift action_104 action_359 (381) = happyShift action_105 action_359 (383) = happyShift action_106 action_359 (402) = happyShift action_112 action_359 (403) = happyShift action_113 action_359 (181) = happyGoto action_427 action_359 (182) = happyGoto action_33 action_359 (183) = happyGoto action_34 action_359 (190) = happyGoto action_35 action_359 (228) = happyGoto action_38 action_359 (231) = happyGoto action_39 action_359 (232) = happyGoto action_40 action_359 (234) = happyGoto action_41 action_359 (244) = happyGoto action_42 action_359 (245) = happyGoto action_43 action_359 (246) = happyGoto action_44 action_359 (247) = happyGoto action_45 action_359 (248) = happyGoto action_46 action_359 (249) = happyGoto action_47 action_359 (257) = happyGoto action_48 action_359 _ = happyFail action_360 (278) = happyShift action_49 action_360 (279) = happyShift action_50 action_360 (280) = happyShift action_51 action_360 (281) = happyShift action_52 action_360 (282) = happyShift action_53 action_360 (283) = happyShift action_54 action_360 (289) = happyShift action_55 action_360 (290) = happyShift action_56 action_360 (291) = happyShift action_57 action_360 (292) = happyShift action_58 action_360 (293) = happyShift action_59 action_360 (294) = happyShift action_60 action_360 (295) = happyShift action_61 action_360 (296) = happyShift action_62 action_360 (297) = happyShift action_63 action_360 (298) = happyShift action_64 action_360 (299) = happyShift action_65 action_360 (301) = happyShift action_66 action_360 (307) = happyShift action_67 action_360 (309) = happyShift action_68 action_360 (312) = happyShift action_69 action_360 (319) = happyShift action_70 action_360 (324) = happyShift action_71 action_360 (325) = happyShift action_72 action_360 (327) = happyShift action_73 action_360 (334) = happyShift action_75 action_360 (337) = happyShift action_76 action_360 (338) = happyShift action_77 action_360 (339) = happyShift action_78 action_360 (340) = happyShift action_79 action_360 (341) = happyShift action_80 action_360 (342) = happyShift action_81 action_360 (344) = happyShift action_82 action_360 (345) = happyShift action_83 action_360 (346) = happyShift action_84 action_360 (348) = happyShift action_85 action_360 (350) = happyShift action_86 action_360 (351) = happyShift action_87 action_360 (358) = happyShift action_88 action_360 (359) = happyShift action_89 action_360 (360) = happyShift action_90 action_360 (361) = happyShift action_91 action_360 (362) = happyShift action_92 action_360 (363) = happyShift action_93 action_360 (364) = happyShift action_94 action_360 (365) = happyShift action_95 action_360 (366) = happyShift action_96 action_360 (367) = happyShift action_97 action_360 (368) = happyShift action_98 action_360 (369) = happyShift action_99 action_360 (370) = happyShift action_100 action_360 (371) = happyShift action_101 action_360 (373) = happyShift action_102 action_360 (378) = happyShift action_103 action_360 (380) = happyShift action_104 action_360 (381) = happyShift action_105 action_360 (383) = happyShift action_106 action_360 (384) = happyShift action_107 action_360 (391) = happyShift action_159 action_360 (392) = happyShift action_109 action_360 (396) = happyShift action_110 action_360 (402) = happyShift action_112 action_360 (403) = happyShift action_113 action_360 (411) = happyShift action_114 action_360 (412) = happyShift action_115 action_360 (413) = happyShift action_116 action_360 (168) = happyGoto action_426 action_360 (169) = happyGoto action_161 action_360 (170) = happyGoto action_25 action_360 (171) = happyGoto action_26 action_360 (172) = happyGoto action_27 action_360 (173) = happyGoto action_28 action_360 (176) = happyGoto action_29 action_360 (177) = happyGoto action_30 action_360 (178) = happyGoto action_31 action_360 (181) = happyGoto action_32 action_360 (182) = happyGoto action_33 action_360 (183) = happyGoto action_34 action_360 (190) = happyGoto action_35 action_360 (228) = happyGoto action_38 action_360 (231) = happyGoto action_39 action_360 (232) = happyGoto action_40 action_360 (234) = happyGoto action_41 action_360 (244) = happyGoto action_42 action_360 (245) = happyGoto action_43 action_360 (246) = happyGoto action_44 action_360 (247) = happyGoto action_45 action_360 (248) = happyGoto action_46 action_360 (249) = happyGoto action_47 action_360 (257) = happyGoto action_48 action_360 _ = happyFail action_361 (278) = happyShift action_49 action_361 (279) = happyShift action_50 action_361 (299) = happyShift action_423 action_361 (305) = happyShift action_424 action_361 (315) = happyShift action_425 action_361 (358) = happyShift action_88 action_361 (359) = happyShift action_89 action_361 (360) = happyShift action_90 action_361 (361) = happyShift action_91 action_361 (362) = happyShift action_92 action_361 (363) = happyShift action_93 action_361 (364) = happyShift action_94 action_361 (365) = happyShift action_95 action_361 (366) = happyShift action_96 action_361 (367) = happyShift action_97 action_361 (368) = happyShift action_98 action_361 (369) = happyShift action_99 action_361 (370) = happyShift action_100 action_361 (371) = happyShift action_101 action_361 (380) = happyShift action_104 action_361 (381) = happyShift action_105 action_361 (383) = happyShift action_106 action_361 (402) = happyShift action_112 action_361 (403) = happyShift action_113 action_361 (223) = happyGoto action_420 action_361 (224) = happyGoto action_421 action_361 (231) = happyGoto action_422 action_361 (244) = happyGoto action_42 action_361 (245) = happyGoto action_43 action_361 (246) = happyGoto action_44 action_361 _ = happyFail action_362 _ = happyReduce_433 action_363 _ = happyReduce_656 action_364 _ = happyReduce_657 action_365 (278) = happyShift action_49 action_365 (279) = happyShift action_50 action_365 (280) = happyShift action_51 action_365 (281) = happyShift action_52 action_365 (282) = happyShift action_53 action_365 (283) = happyShift action_54 action_365 (289) = happyShift action_55 action_365 (290) = happyShift action_56 action_365 (291) = happyShift action_57 action_365 (292) = happyShift action_58 action_365 (293) = happyShift action_59 action_365 (294) = happyShift action_60 action_365 (295) = happyShift action_61 action_365 (296) = happyShift action_62 action_365 (297) = happyShift action_63 action_365 (298) = happyShift action_64 action_365 (299) = happyShift action_65 action_365 (301) = happyShift action_66 action_365 (307) = happyShift action_67 action_365 (309) = happyShift action_68 action_365 (312) = happyShift action_69 action_365 (319) = happyShift action_70 action_365 (324) = happyShift action_71 action_365 (325) = happyShift action_72 action_365 (327) = happyShift action_73 action_365 (334) = happyShift action_75 action_365 (337) = happyShift action_76 action_365 (338) = happyShift action_77 action_365 (339) = happyShift action_78 action_365 (340) = happyShift action_79 action_365 (341) = happyShift action_80 action_365 (342) = happyShift action_81 action_365 (344) = happyShift action_82 action_365 (345) = happyShift action_83 action_365 (346) = happyShift action_84 action_365 (348) = happyShift action_85 action_365 (350) = happyShift action_86 action_365 (351) = happyShift action_87 action_365 (358) = happyShift action_88 action_365 (359) = happyShift action_89 action_365 (360) = happyShift action_90 action_365 (361) = happyShift action_91 action_365 (362) = happyShift action_92 action_365 (363) = happyShift action_93 action_365 (364) = happyShift action_94 action_365 (365) = happyShift action_95 action_365 (366) = happyShift action_96 action_365 (367) = happyShift action_97 action_365 (368) = happyShift action_98 action_365 (369) = happyShift action_99 action_365 (370) = happyShift action_100 action_365 (371) = happyShift action_101 action_365 (373) = happyShift action_102 action_365 (378) = happyShift action_103 action_365 (380) = happyShift action_104 action_365 (381) = happyShift action_105 action_365 (383) = happyShift action_106 action_365 (384) = happyShift action_107 action_365 (391) = happyShift action_159 action_365 (392) = happyShift action_109 action_365 (396) = happyShift action_110 action_365 (402) = happyShift action_112 action_365 (403) = happyShift action_113 action_365 (411) = happyShift action_114 action_365 (412) = happyShift action_115 action_365 (413) = happyShift action_116 action_365 (173) = happyGoto action_418 action_365 (176) = happyGoto action_419 action_365 (177) = happyGoto action_30 action_365 (178) = happyGoto action_31 action_365 (181) = happyGoto action_32 action_365 (182) = happyGoto action_33 action_365 (183) = happyGoto action_34 action_365 (190) = happyGoto action_35 action_365 (228) = happyGoto action_38 action_365 (231) = happyGoto action_39 action_365 (232) = happyGoto action_40 action_365 (234) = happyGoto action_41 action_365 (244) = happyGoto action_42 action_365 (245) = happyGoto action_43 action_365 (246) = happyGoto action_44 action_365 (247) = happyGoto action_45 action_365 (248) = happyGoto action_46 action_365 (249) = happyGoto action_47 action_365 (257) = happyGoto action_48 action_365 _ = happyReduce_403 action_366 _ = happyReduce_646 action_367 (278) = happyShift action_49 action_367 (279) = happyShift action_50 action_367 (282) = happyShift action_53 action_367 (283) = happyShift action_54 action_367 (358) = happyShift action_88 action_367 (359) = happyShift action_89 action_367 (360) = happyShift action_90 action_367 (361) = happyShift action_91 action_367 (362) = happyShift action_92 action_367 (363) = happyShift action_93 action_367 (364) = happyShift action_94 action_367 (365) = happyShift action_95 action_367 (366) = happyShift action_96 action_367 (367) = happyShift action_97 action_367 (368) = happyShift action_98 action_367 (369) = happyShift action_99 action_367 (370) = happyShift action_100 action_367 (371) = happyShift action_101 action_367 (380) = happyShift action_104 action_367 (381) = happyShift action_105 action_367 (383) = happyShift action_106 action_367 (402) = happyShift action_112 action_367 (403) = happyShift action_113 action_367 (244) = happyGoto action_416 action_367 (245) = happyGoto action_43 action_367 (246) = happyGoto action_44 action_367 (248) = happyGoto action_417 action_367 (249) = happyGoto action_47 action_367 _ = happyFail action_368 (278) = happyShift action_49 action_368 (280) = happyShift action_51 action_368 (281) = happyShift action_52 action_368 (282) = happyShift action_53 action_368 (283) = happyShift action_54 action_368 (289) = happyShift action_135 action_368 (292) = happyShift action_136 action_368 (299) = happyShift action_137 action_368 (301) = happyShift action_138 action_368 (307) = happyShift action_139 action_368 (309) = happyShift action_140 action_368 (312) = happyShift action_141 action_368 (325) = happyShift action_142 action_368 (328) = happyShift action_143 action_368 (337) = happyShift action_144 action_368 (338) = happyShift action_145 action_368 (344) = happyShift action_146 action_368 (346) = happyShift action_147 action_368 (358) = happyShift action_88 action_368 (359) = happyShift action_148 action_368 (360) = happyShift action_149 action_368 (361) = happyShift action_150 action_368 (363) = happyShift action_93 action_368 (364) = happyShift action_94 action_368 (365) = happyShift action_95 action_368 (366) = happyShift action_96 action_368 (367) = happyShift action_97 action_368 (368) = happyShift action_98 action_368 (369) = happyShift action_99 action_368 (370) = happyShift action_100 action_368 (371) = happyShift action_101 action_368 (381) = happyShift action_151 action_368 (383) = happyShift action_106 action_368 (402) = happyShift action_112 action_368 (416) = happyShift action_152 action_368 (417) = happyShift action_153 action_368 (103) = happyGoto action_117 action_368 (105) = happyGoto action_118 action_368 (108) = happyGoto action_119 action_368 (109) = happyGoto action_120 action_368 (110) = happyGoto action_121 action_368 (111) = happyGoto action_122 action_368 (112) = happyGoto action_123 action_368 (113) = happyGoto action_124 action_368 (114) = happyGoto action_125 action_368 (115) = happyGoto action_126 action_368 (117) = happyGoto action_415 action_368 (118) = happyGoto action_128 action_368 (119) = happyGoto action_129 action_368 (232) = happyGoto action_130 action_368 (245) = happyGoto action_131 action_368 (247) = happyGoto action_45 action_368 (248) = happyGoto action_132 action_368 (249) = happyGoto action_47 action_368 (270) = happyGoto action_133 action_368 (271) = happyGoto action_134 action_368 _ = happyFail action_369 (278) = happyShift action_49 action_369 (279) = happyShift action_50 action_369 (280) = happyShift action_51 action_369 (281) = happyShift action_52 action_369 (282) = happyShift action_53 action_369 (283) = happyShift action_54 action_369 (289) = happyShift action_55 action_369 (290) = happyShift action_56 action_369 (291) = happyShift action_57 action_369 (292) = happyShift action_58 action_369 (293) = happyShift action_59 action_369 (294) = happyShift action_60 action_369 (295) = happyShift action_61 action_369 (296) = happyShift action_62 action_369 (297) = happyShift action_63 action_369 (298) = happyShift action_64 action_369 (299) = happyShift action_65 action_369 (301) = happyShift action_66 action_369 (307) = happyShift action_67 action_369 (309) = happyShift action_68 action_369 (312) = happyShift action_69 action_369 (319) = happyShift action_70 action_369 (324) = happyShift action_71 action_369 (325) = happyShift action_72 action_369 (327) = happyShift action_73 action_369 (334) = happyShift action_75 action_369 (337) = happyShift action_76 action_369 (338) = happyShift action_77 action_369 (339) = happyShift action_78 action_369 (340) = happyShift action_79 action_369 (341) = happyShift action_80 action_369 (342) = happyShift action_81 action_369 (344) = happyShift action_82 action_369 (345) = happyShift action_83 action_369 (346) = happyShift action_84 action_369 (348) = happyShift action_85 action_369 (350) = happyShift action_86 action_369 (351) = happyShift action_87 action_369 (358) = happyShift action_88 action_369 (359) = happyShift action_89 action_369 (360) = happyShift action_90 action_369 (361) = happyShift action_91 action_369 (362) = happyShift action_92 action_369 (363) = happyShift action_93 action_369 (364) = happyShift action_94 action_369 (365) = happyShift action_95 action_369 (366) = happyShift action_96 action_369 (367) = happyShift action_97 action_369 (368) = happyShift action_98 action_369 (369) = happyShift action_99 action_369 (370) = happyShift action_100 action_369 (371) = happyShift action_101 action_369 (373) = happyShift action_102 action_369 (378) = happyShift action_103 action_369 (380) = happyShift action_104 action_369 (381) = happyShift action_105 action_369 (383) = happyShift action_106 action_369 (384) = happyShift action_107 action_369 (391) = happyShift action_159 action_369 (392) = happyShift action_109 action_369 (396) = happyShift action_110 action_369 (402) = happyShift action_112 action_369 (403) = happyShift action_113 action_369 (411) = happyShift action_114 action_369 (412) = happyShift action_115 action_369 (413) = happyShift action_116 action_369 (169) = happyGoto action_414 action_369 (170) = happyGoto action_25 action_369 (171) = happyGoto action_26 action_369 (172) = happyGoto action_27 action_369 (173) = happyGoto action_28 action_369 (176) = happyGoto action_29 action_369 (177) = happyGoto action_30 action_369 (178) = happyGoto action_31 action_369 (181) = happyGoto action_32 action_369 (182) = happyGoto action_33 action_369 (183) = happyGoto action_34 action_369 (190) = happyGoto action_35 action_369 (228) = happyGoto action_38 action_369 (231) = happyGoto action_39 action_369 (232) = happyGoto action_40 action_369 (234) = happyGoto action_41 action_369 (244) = happyGoto action_42 action_369 (245) = happyGoto action_43 action_369 (246) = happyGoto action_44 action_369 (247) = happyGoto action_45 action_369 (248) = happyGoto action_46 action_369 (249) = happyGoto action_47 action_369 (257) = happyGoto action_48 action_369 _ = happyFail action_370 (278) = happyShift action_49 action_370 (279) = happyShift action_50 action_370 (280) = happyShift action_51 action_370 (281) = happyShift action_52 action_370 (282) = happyShift action_53 action_370 (283) = happyShift action_54 action_370 (289) = happyShift action_55 action_370 (290) = happyShift action_56 action_370 (291) = happyShift action_57 action_370 (292) = happyShift action_58 action_370 (293) = happyShift action_59 action_370 (294) = happyShift action_60 action_370 (295) = happyShift action_61 action_370 (296) = happyShift action_62 action_370 (297) = happyShift action_63 action_370 (298) = happyShift action_64 action_370 (299) = happyShift action_65 action_370 (301) = happyShift action_66 action_370 (307) = happyShift action_67 action_370 (309) = happyShift action_68 action_370 (312) = happyShift action_69 action_370 (319) = happyShift action_70 action_370 (324) = happyShift action_71 action_370 (325) = happyShift action_72 action_370 (327) = happyShift action_73 action_370 (334) = happyShift action_75 action_370 (337) = happyShift action_76 action_370 (338) = happyShift action_77 action_370 (339) = happyShift action_78 action_370 (340) = happyShift action_79 action_370 (341) = happyShift action_80 action_370 (342) = happyShift action_81 action_370 (344) = happyShift action_82 action_370 (345) = happyShift action_83 action_370 (346) = happyShift action_84 action_370 (348) = happyShift action_85 action_370 (350) = happyShift action_86 action_370 (351) = happyShift action_87 action_370 (358) = happyShift action_88 action_370 (359) = happyShift action_89 action_370 (360) = happyShift action_90 action_370 (361) = happyShift action_91 action_370 (362) = happyShift action_92 action_370 (363) = happyShift action_93 action_370 (364) = happyShift action_94 action_370 (365) = happyShift action_95 action_370 (366) = happyShift action_96 action_370 (367) = happyShift action_97 action_370 (368) = happyShift action_98 action_370 (369) = happyShift action_99 action_370 (370) = happyShift action_100 action_370 (371) = happyShift action_101 action_370 (373) = happyShift action_102 action_370 (378) = happyShift action_103 action_370 (380) = happyShift action_104 action_370 (381) = happyShift action_105 action_370 (383) = happyShift action_106 action_370 (384) = happyShift action_107 action_370 (391) = happyShift action_159 action_370 (392) = happyShift action_109 action_370 (396) = happyShift action_110 action_370 (402) = happyShift action_112 action_370 (403) = happyShift action_113 action_370 (411) = happyShift action_114 action_370 (412) = happyShift action_115 action_370 (413) = happyShift action_116 action_370 (169) = happyGoto action_413 action_370 (170) = happyGoto action_25 action_370 (171) = happyGoto action_26 action_370 (172) = happyGoto action_27 action_370 (173) = happyGoto action_28 action_370 (176) = happyGoto action_29 action_370 (177) = happyGoto action_30 action_370 (178) = happyGoto action_31 action_370 (181) = happyGoto action_32 action_370 (182) = happyGoto action_33 action_370 (183) = happyGoto action_34 action_370 (190) = happyGoto action_35 action_370 (228) = happyGoto action_38 action_370 (231) = happyGoto action_39 action_370 (232) = happyGoto action_40 action_370 (234) = happyGoto action_41 action_370 (244) = happyGoto action_42 action_370 (245) = happyGoto action_43 action_370 (246) = happyGoto action_44 action_370 (247) = happyGoto action_45 action_370 (248) = happyGoto action_46 action_370 (249) = happyGoto action_47 action_370 (257) = happyGoto action_48 action_370 _ = happyFail action_371 (278) = happyShift action_49 action_371 (279) = happyShift action_50 action_371 (280) = happyShift action_51 action_371 (281) = happyShift action_52 action_371 (282) = happyShift action_53 action_371 (283) = happyShift action_54 action_371 (289) = happyShift action_55 action_371 (290) = happyShift action_56 action_371 (291) = happyShift action_57 action_371 (292) = happyShift action_58 action_371 (293) = happyShift action_59 action_371 (294) = happyShift action_60 action_371 (295) = happyShift action_61 action_371 (296) = happyShift action_62 action_371 (297) = happyShift action_63 action_371 (298) = happyShift action_64 action_371 (299) = happyShift action_65 action_371 (301) = happyShift action_66 action_371 (307) = happyShift action_67 action_371 (309) = happyShift action_68 action_371 (312) = happyShift action_69 action_371 (319) = happyShift action_70 action_371 (324) = happyShift action_71 action_371 (325) = happyShift action_72 action_371 (327) = happyShift action_73 action_371 (334) = happyShift action_75 action_371 (337) = happyShift action_76 action_371 (338) = happyShift action_77 action_371 (339) = happyShift action_78 action_371 (340) = happyShift action_79 action_371 (341) = happyShift action_80 action_371 (342) = happyShift action_81 action_371 (344) = happyShift action_82 action_371 (345) = happyShift action_83 action_371 (346) = happyShift action_84 action_371 (348) = happyShift action_85 action_371 (350) = happyShift action_86 action_371 (351) = happyShift action_87 action_371 (358) = happyShift action_88 action_371 (359) = happyShift action_89 action_371 (360) = happyShift action_90 action_371 (361) = happyShift action_91 action_371 (362) = happyShift action_92 action_371 (363) = happyShift action_93 action_371 (364) = happyShift action_94 action_371 (365) = happyShift action_95 action_371 (366) = happyShift action_96 action_371 (367) = happyShift action_97 action_371 (368) = happyShift action_98 action_371 (369) = happyShift action_99 action_371 (370) = happyShift action_100 action_371 (371) = happyShift action_101 action_371 (373) = happyShift action_102 action_371 (378) = happyShift action_103 action_371 (380) = happyShift action_104 action_371 (381) = happyShift action_105 action_371 (383) = happyShift action_106 action_371 (384) = happyShift action_107 action_371 (391) = happyShift action_159 action_371 (392) = happyShift action_109 action_371 (396) = happyShift action_110 action_371 (402) = happyShift action_112 action_371 (403) = happyShift action_113 action_371 (411) = happyShift action_114 action_371 (412) = happyShift action_115 action_371 (413) = happyShift action_116 action_371 (169) = happyGoto action_412 action_371 (170) = happyGoto action_25 action_371 (171) = happyGoto action_26 action_371 (172) = happyGoto action_27 action_371 (173) = happyGoto action_28 action_371 (176) = happyGoto action_29 action_371 (177) = happyGoto action_30 action_371 (178) = happyGoto action_31 action_371 (181) = happyGoto action_32 action_371 (182) = happyGoto action_33 action_371 (183) = happyGoto action_34 action_371 (190) = happyGoto action_35 action_371 (228) = happyGoto action_38 action_371 (231) = happyGoto action_39 action_371 (232) = happyGoto action_40 action_371 (234) = happyGoto action_41 action_371 (244) = happyGoto action_42 action_371 (245) = happyGoto action_43 action_371 (246) = happyGoto action_44 action_371 (247) = happyGoto action_45 action_371 (248) = happyGoto action_46 action_371 (249) = happyGoto action_47 action_371 (257) = happyGoto action_48 action_371 _ = happyFail action_372 (278) = happyShift action_49 action_372 (279) = happyShift action_50 action_372 (280) = happyShift action_51 action_372 (281) = happyShift action_52 action_372 (282) = happyShift action_53 action_372 (283) = happyShift action_54 action_372 (289) = happyShift action_55 action_372 (290) = happyShift action_56 action_372 (291) = happyShift action_57 action_372 (292) = happyShift action_58 action_372 (293) = happyShift action_59 action_372 (294) = happyShift action_60 action_372 (295) = happyShift action_61 action_372 (296) = happyShift action_62 action_372 (297) = happyShift action_63 action_372 (298) = happyShift action_64 action_372 (299) = happyShift action_65 action_372 (301) = happyShift action_66 action_372 (307) = happyShift action_67 action_372 (309) = happyShift action_68 action_372 (312) = happyShift action_69 action_372 (319) = happyShift action_70 action_372 (324) = happyShift action_71 action_372 (325) = happyShift action_72 action_372 (327) = happyShift action_73 action_372 (334) = happyShift action_75 action_372 (337) = happyShift action_76 action_372 (338) = happyShift action_77 action_372 (339) = happyShift action_78 action_372 (340) = happyShift action_79 action_372 (341) = happyShift action_80 action_372 (342) = happyShift action_81 action_372 (344) = happyShift action_82 action_372 (345) = happyShift action_83 action_372 (346) = happyShift action_84 action_372 (348) = happyShift action_85 action_372 (350) = happyShift action_86 action_372 (351) = happyShift action_87 action_372 (358) = happyShift action_88 action_372 (359) = happyShift action_89 action_372 (360) = happyShift action_90 action_372 (361) = happyShift action_91 action_372 (362) = happyShift action_92 action_372 (363) = happyShift action_93 action_372 (364) = happyShift action_94 action_372 (365) = happyShift action_95 action_372 (366) = happyShift action_96 action_372 (367) = happyShift action_97 action_372 (368) = happyShift action_98 action_372 (369) = happyShift action_99 action_372 (370) = happyShift action_100 action_372 (371) = happyShift action_101 action_372 (373) = happyShift action_102 action_372 (378) = happyShift action_103 action_372 (380) = happyShift action_104 action_372 (381) = happyShift action_105 action_372 (383) = happyShift action_106 action_372 (384) = happyShift action_107 action_372 (391) = happyShift action_159 action_372 (392) = happyShift action_109 action_372 (396) = happyShift action_110 action_372 (402) = happyShift action_112 action_372 (403) = happyShift action_113 action_372 (411) = happyShift action_114 action_372 (412) = happyShift action_115 action_372 (413) = happyShift action_116 action_372 (169) = happyGoto action_411 action_372 (170) = happyGoto action_25 action_372 (171) = happyGoto action_26 action_372 (172) = happyGoto action_27 action_372 (173) = happyGoto action_28 action_372 (176) = happyGoto action_29 action_372 (177) = happyGoto action_30 action_372 (178) = happyGoto action_31 action_372 (181) = happyGoto action_32 action_372 (182) = happyGoto action_33 action_372 (183) = happyGoto action_34 action_372 (190) = happyGoto action_35 action_372 (228) = happyGoto action_38 action_372 (231) = happyGoto action_39 action_372 (232) = happyGoto action_40 action_372 (234) = happyGoto action_41 action_372 (244) = happyGoto action_42 action_372 (245) = happyGoto action_43 action_372 (246) = happyGoto action_44 action_372 (247) = happyGoto action_45 action_372 (248) = happyGoto action_46 action_372 (249) = happyGoto action_47 action_372 (257) = happyGoto action_48 action_372 _ = happyFail action_373 (359) = happyShift action_410 action_373 (38) = happyGoto action_409 action_373 _ = happyReduce_66 action_374 (425) = happyShift action_408 action_374 _ = happyFail action_375 (303) = happyReduce_714 action_375 (304) = happyShift action_407 action_375 (385) = happyReduce_714 action_375 (258) = happyGoto action_405 action_375 (274) = happyGoto action_406 action_375 _ = happyReduce_751 action_376 _ = happyReduce_749 action_377 (282) = happyShift action_403 action_377 (283) = happyShift action_404 action_377 (267) = happyGoto action_402 action_377 _ = happyFail action_378 (1) = happyShift action_400 action_378 (306) = happyShift action_401 action_378 (259) = happyGoto action_399 action_378 _ = happyFail action_379 (27) = happyGoto action_175 action_379 (28) = happyGoto action_398 action_379 _ = happyReduce_41 action_380 (27) = happyGoto action_175 action_380 (28) = happyGoto action_397 action_380 _ = happyReduce_41 action_381 (21) = happyGoto action_395 action_381 (27) = happyGoto action_175 action_381 (28) = happyGoto action_396 action_381 _ = happyReduce_41 action_382 (278) = happyShift action_49 action_382 (282) = happyShift action_53 action_382 (299) = happyShift action_392 action_382 (358) = happyShift action_88 action_382 (359) = happyShift action_89 action_382 (360) = happyShift action_90 action_382 (361) = happyShift action_91 action_382 (362) = happyShift action_92 action_382 (363) = happyShift action_93 action_382 (364) = happyShift action_94 action_382 (365) = happyShift action_95 action_382 (366) = happyShift action_96 action_382 (367) = happyShift action_97 action_382 (368) = happyShift action_98 action_382 (369) = happyShift action_99 action_382 (370) = happyShift action_100 action_382 (371) = happyShift action_101 action_382 (380) = happyShift action_104 action_382 (381) = happyShift action_105 action_382 (383) = happyShift action_106 action_382 (393) = happyShift action_393 action_382 (399) = happyShift action_394 action_382 (402) = happyShift action_112 action_382 (403) = happyShift action_113 action_382 (100) = happyGoto action_386 action_382 (101) = happyGoto action_387 action_382 (229) = happyGoto action_388 action_382 (233) = happyGoto action_389 action_382 (245) = happyGoto action_43 action_382 (246) = happyGoto action_390 action_382 (249) = happyGoto action_391 action_382 _ = happyFail action_383 _ = happyFail action_384 (393) = happyShift action_169 action_384 (15) = happyGoto action_385 action_384 (22) = happyGoto action_384 action_384 (23) = happyGoto action_166 action_384 _ = happyFail action_385 _ = happyFail action_386 (278) = happyShift action_49 action_386 (279) = happyShift action_50 action_386 (280) = happyShift action_51 action_386 (281) = happyShift action_52 action_386 (282) = happyShift action_53 action_386 (283) = happyShift action_54 action_386 (289) = happyShift action_55 action_386 (290) = happyShift action_56 action_386 (291) = happyShift action_57 action_386 (292) = happyShift action_58 action_386 (293) = happyShift action_59 action_386 (294) = happyShift action_60 action_386 (295) = happyShift action_61 action_386 (296) = happyShift action_62 action_386 (297) = happyShift action_63 action_386 (298) = happyShift action_64 action_386 (299) = happyShift action_65 action_386 (301) = happyShift action_66 action_386 (307) = happyShift action_67 action_386 (309) = happyShift action_68 action_386 (312) = happyShift action_69 action_386 (324) = happyShift action_71 action_386 (325) = happyShift action_72 action_386 (334) = happyShift action_75 action_386 (337) = happyShift action_76 action_386 (338) = happyShift action_77 action_386 (339) = happyShift action_78 action_386 (340) = happyShift action_79 action_386 (341) = happyShift action_80 action_386 (342) = happyShift action_81 action_386 (344) = happyShift action_82 action_386 (345) = happyShift action_83 action_386 (346) = happyShift action_84 action_386 (348) = happyShift action_85 action_386 (350) = happyShift action_86 action_386 (351) = happyShift action_87 action_386 (358) = happyShift action_88 action_386 (359) = happyShift action_89 action_386 (360) = happyShift action_90 action_386 (361) = happyShift action_91 action_386 (362) = happyShift action_92 action_386 (363) = happyShift action_93 action_386 (364) = happyShift action_94 action_386 (365) = happyShift action_95 action_386 (366) = happyShift action_96 action_386 (367) = happyShift action_97 action_386 (368) = happyShift action_98 action_386 (369) = happyShift action_99 action_386 (370) = happyShift action_100 action_386 (371) = happyShift action_101 action_386 (380) = happyShift action_104 action_386 (381) = happyShift action_105 action_386 (383) = happyShift action_106 action_386 (402) = happyShift action_112 action_386 (403) = happyShift action_113 action_386 (181) = happyGoto action_762 action_386 (182) = happyGoto action_33 action_386 (183) = happyGoto action_34 action_386 (190) = happyGoto action_35 action_386 (228) = happyGoto action_38 action_386 (231) = happyGoto action_39 action_386 (232) = happyGoto action_40 action_386 (234) = happyGoto action_41 action_386 (244) = happyGoto action_42 action_386 (245) = happyGoto action_43 action_386 (246) = happyGoto action_44 action_386 (247) = happyGoto action_45 action_386 (248) = happyGoto action_46 action_386 (249) = happyGoto action_47 action_386 (257) = happyGoto action_48 action_386 _ = happyFail action_387 (425) = happyShift action_761 action_387 _ = happyFail action_388 _ = happyReduce_236 action_389 _ = happyReduce_235 action_390 _ = happyReduce_633 action_391 _ = happyReduce_640 action_392 (285) = happyShift action_211 action_392 (286) = happyShift action_186 action_392 (314) = happyShift action_214 action_392 (327) = happyShift action_216 action_392 (328) = happyShift action_340 action_392 (329) = happyShift action_218 action_392 (251) = happyGoto action_759 action_392 (254) = happyGoto action_760 action_392 (255) = happyGoto action_209 action_392 _ = happyFail action_393 (278) = happyShift action_49 action_393 (279) = happyShift action_50 action_393 (280) = happyShift action_51 action_393 (281) = happyShift action_52 action_393 (282) = happyShift action_53 action_393 (283) = happyShift action_54 action_393 (289) = happyShift action_55 action_393 (290) = happyShift action_56 action_393 (291) = happyShift action_57 action_393 (292) = happyShift action_58 action_393 (293) = happyShift action_59 action_393 (294) = happyShift action_60 action_393 (295) = happyShift action_61 action_393 (296) = happyShift action_62 action_393 (297) = happyShift action_63 action_393 (298) = happyShift action_64 action_393 (299) = happyShift action_65 action_393 (301) = happyShift action_66 action_393 (307) = happyShift action_67 action_393 (309) = happyShift action_68 action_393 (312) = happyShift action_69 action_393 (324) = happyShift action_71 action_393 (325) = happyShift action_72 action_393 (334) = happyShift action_75 action_393 (337) = happyShift action_76 action_393 (338) = happyShift action_77 action_393 (339) = happyShift action_78 action_393 (340) = happyShift action_79 action_393 (341) = happyShift action_80 action_393 (342) = happyShift action_81 action_393 (344) = happyShift action_82 action_393 (345) = happyShift action_83 action_393 (346) = happyShift action_84 action_393 (348) = happyShift action_85 action_393 (350) = happyShift action_86 action_393 (351) = happyShift action_87 action_393 (358) = happyShift action_88 action_393 (359) = happyShift action_89 action_393 (360) = happyShift action_90 action_393 (361) = happyShift action_91 action_393 (362) = happyShift action_92 action_393 (363) = happyShift action_93 action_393 (364) = happyShift action_94 action_393 (365) = happyShift action_95 action_393 (366) = happyShift action_96 action_393 (367) = happyShift action_97 action_393 (368) = happyShift action_98 action_393 (369) = happyShift action_99 action_393 (370) = happyShift action_100 action_393 (371) = happyShift action_101 action_393 (380) = happyShift action_104 action_393 (381) = happyShift action_105 action_393 (383) = happyShift action_106 action_393 (402) = happyShift action_112 action_393 (403) = happyShift action_113 action_393 (181) = happyGoto action_758 action_393 (182) = happyGoto action_33 action_393 (183) = happyGoto action_34 action_393 (190) = happyGoto action_35 action_393 (228) = happyGoto action_38 action_393 (231) = happyGoto action_39 action_393 (232) = happyGoto action_40 action_393 (234) = happyGoto action_41 action_393 (244) = happyGoto action_42 action_393 (245) = happyGoto action_43 action_393 (246) = happyGoto action_44 action_393 (247) = happyGoto action_45 action_393 (248) = happyGoto action_46 action_393 (249) = happyGoto action_47 action_393 (257) = happyGoto action_48 action_393 _ = happyFail action_394 (282) = happyShift action_53 action_394 (249) = happyGoto action_757 action_394 _ = happyFail action_395 (311) = happyShift action_756 action_395 (27) = happyGoto action_175 action_395 (28) = happyGoto action_755 action_395 _ = happyReduce_41 action_396 (282) = happyShift action_53 action_396 (303) = happyShift action_566 action_396 (249) = happyGoto action_754 action_396 _ = happyFail action_397 (303) = happyShift action_566 action_397 (425) = happyShift action_753 action_397 _ = happyFail action_398 (303) = happyShift action_566 action_398 (418) = happyShift action_380 action_398 (419) = happyShift action_381 action_398 (420) = happyShift action_382 action_398 (19) = happyGoto action_752 action_398 (20) = happyGoto action_379 action_398 _ = happyReduce_21 action_399 _ = happyReduce_19 action_400 _ = happyReduce_716 action_401 _ = happyReduce_715 action_402 _ = happyReduce_747 action_403 _ = happyReduce_732 action_404 _ = happyReduce_733 action_405 (27) = happyGoto action_175 action_405 (28) = happyGoto action_751 action_405 _ = happyReduce_41 action_406 _ = happyReduce_750 action_407 (27) = happyGoto action_175 action_407 (28) = happyGoto action_750 action_407 _ = happyReduce_41 action_408 _ = happyReduce_63 action_409 (402) = happyShift action_749 action_409 (39) = happyGoto action_748 action_409 _ = happyReduce_68 action_410 _ = happyReduce_65 action_411 _ = happyReduce_407 action_412 _ = happyReduce_406 action_413 _ = happyReduce_405 action_414 _ = happyReduce_404 action_415 _ = happyReduce_401 action_416 (313) = happyShift action_747 action_416 _ = happyFail action_417 (313) = happyShift action_746 action_417 _ = happyFail action_418 _ = happyReduce_410 action_419 _ = happyReduce_412 action_420 (305) = happyShift action_745 action_420 _ = happyFail action_421 (311) = happyShift action_744 action_421 _ = happyReduce_619 action_422 (318) = happyShift action_743 action_422 _ = happyReduce_622 action_423 (285) = happyShift action_211 action_423 (287) = happyShift action_212 action_423 (314) = happyShift action_214 action_423 (327) = happyShift action_216 action_423 (328) = happyShift action_340 action_423 (329) = happyShift action_218 action_423 (252) = happyGoto action_353 action_423 (254) = happyGoto action_208 action_423 (255) = happyGoto action_209 action_423 (256) = happyGoto action_210 action_423 _ = happyFail action_424 _ = happyReduce_444 action_425 _ = happyReduce_620 action_426 _ = happyReduce_615 action_427 _ = happyReduce_440 action_428 _ = happyReduce_439 action_429 _ = happyReduce_638 action_430 _ = happyReduce_643 action_431 _ = happyReduce_462 action_432 (278) = happyShift action_49 action_432 (279) = happyShift action_50 action_432 (280) = happyShift action_51 action_432 (281) = happyShift action_52 action_432 (282) = happyShift action_53 action_432 (283) = happyShift action_54 action_432 (285) = happyShift action_211 action_432 (286) = happyShift action_186 action_432 (287) = happyShift action_212 action_432 (288) = happyShift action_187 action_432 (289) = happyShift action_55 action_432 (290) = happyShift action_56 action_432 (291) = happyShift action_57 action_432 (292) = happyShift action_58 action_432 (293) = happyShift action_59 action_432 (294) = happyShift action_60 action_432 (295) = happyShift action_61 action_432 (296) = happyShift action_62 action_432 (297) = happyShift action_63 action_432 (298) = happyShift action_64 action_432 (299) = happyShift action_65 action_432 (300) = happyShift action_742 action_432 (301) = happyShift action_66 action_432 (307) = happyShift action_67 action_432 (309) = happyShift action_68 action_432 (311) = happyShift action_437 action_432 (312) = happyShift action_69 action_432 (313) = happyShift action_339 action_432 (314) = happyShift action_214 action_432 (316) = happyShift action_190 action_432 (319) = happyShift action_70 action_432 (324) = happyShift action_71 action_432 (325) = happyShift action_72 action_432 (327) = happyShift action_73 action_432 (328) = happyShift action_340 action_432 (329) = happyShift action_218 action_432 (334) = happyShift action_75 action_432 (337) = happyShift action_76 action_432 (338) = happyShift action_77 action_432 (339) = happyShift action_78 action_432 (340) = happyShift action_79 action_432 (341) = happyShift action_80 action_432 (342) = happyShift action_81 action_432 (344) = happyShift action_82 action_432 (345) = happyShift action_83 action_432 (346) = happyShift action_84 action_432 (348) = happyShift action_85 action_432 (350) = happyShift action_86 action_432 (351) = happyShift action_87 action_432 (358) = happyShift action_88 action_432 (359) = happyShift action_89 action_432 (360) = happyShift action_90 action_432 (361) = happyShift action_91 action_432 (362) = happyShift action_92 action_432 (363) = happyShift action_93 action_432 (364) = happyShift action_94 action_432 (365) = happyShift action_95 action_432 (366) = happyShift action_96 action_432 (367) = happyShift action_97 action_432 (368) = happyShift action_98 action_432 (369) = happyShift action_99 action_432 (370) = happyShift action_100 action_432 (371) = happyShift action_101 action_432 (373) = happyShift action_102 action_432 (378) = happyShift action_103 action_432 (380) = happyShift action_104 action_432 (381) = happyShift action_105 action_432 (383) = happyShift action_106 action_432 (384) = happyShift action_107 action_432 (391) = happyShift action_159 action_432 (392) = happyShift action_109 action_432 (396) = happyShift action_110 action_432 (402) = happyShift action_112 action_432 (403) = happyShift action_113 action_432 (411) = happyShift action_114 action_432 (412) = happyShift action_115 action_432 (413) = happyShift action_116 action_432 (169) = happyGoto action_329 action_432 (170) = happyGoto action_25 action_432 (171) = happyGoto action_26 action_432 (172) = happyGoto action_27 action_432 (173) = happyGoto action_28 action_432 (176) = happyGoto action_29 action_432 (177) = happyGoto action_30 action_432 (178) = happyGoto action_31 action_432 (181) = happyGoto action_32 action_432 (182) = happyGoto action_33 action_432 (183) = happyGoto action_34 action_432 (185) = happyGoto action_741 action_432 (190) = happyGoto action_35 action_432 (228) = happyGoto action_38 action_432 (231) = happyGoto action_39 action_432 (232) = happyGoto action_40 action_432 (234) = happyGoto action_41 action_432 (237) = happyGoto action_333 action_432 (239) = happyGoto action_334 action_432 (242) = happyGoto action_335 action_432 (243) = happyGoto action_226 action_432 (244) = happyGoto action_42 action_432 (245) = happyGoto action_43 action_432 (246) = happyGoto action_44 action_432 (247) = happyGoto action_45 action_432 (248) = happyGoto action_46 action_432 (249) = happyGoto action_47 action_432 (250) = happyGoto action_183 action_432 (251) = happyGoto action_184 action_432 (253) = happyGoto action_336 action_432 (255) = happyGoto action_337 action_432 (256) = happyGoto action_338 action_432 (257) = happyGoto action_48 action_432 _ = happyFail action_433 _ = happyReduce_452 action_434 _ = happyReduce_451 action_435 (300) = happyShift action_740 action_435 (311) = happyShift action_202 action_435 (184) = happyGoto action_432 action_435 (186) = happyGoto action_739 action_435 _ = happyFail action_436 _ = happyReduce_629 action_437 _ = happyReduce_477 action_438 (278) = happyShift action_49 action_438 (279) = happyShift action_50 action_438 (280) = happyShift action_51 action_438 (281) = happyShift action_52 action_438 (282) = happyShift action_53 action_438 (283) = happyShift action_54 action_438 (289) = happyShift action_55 action_438 (290) = happyShift action_56 action_438 (291) = happyShift action_57 action_438 (292) = happyShift action_58 action_438 (293) = happyShift action_59 action_438 (294) = happyShift action_60 action_438 (295) = happyShift action_61 action_438 (296) = happyShift action_62 action_438 (297) = happyShift action_63 action_438 (298) = happyShift action_64 action_438 (299) = happyShift action_65 action_438 (301) = happyShift action_66 action_438 (307) = happyShift action_67 action_438 (309) = happyShift action_68 action_438 (312) = happyShift action_69 action_438 (319) = happyShift action_70 action_438 (324) = happyShift action_71 action_438 (325) = happyShift action_72 action_438 (327) = happyShift action_73 action_438 (334) = happyShift action_75 action_438 (337) = happyShift action_76 action_438 (338) = happyShift action_77 action_438 (339) = happyShift action_78 action_438 (340) = happyShift action_79 action_438 (341) = happyShift action_80 action_438 (342) = happyShift action_81 action_438 (344) = happyShift action_82 action_438 (345) = happyShift action_83 action_438 (346) = happyShift action_84 action_438 (348) = happyShift action_85 action_438 (350) = happyShift action_86 action_438 (351) = happyShift action_87 action_438 (358) = happyShift action_88 action_438 (359) = happyShift action_89 action_438 (360) = happyShift action_90 action_438 (361) = happyShift action_91 action_438 (362) = happyShift action_92 action_438 (363) = happyShift action_93 action_438 (364) = happyShift action_94 action_438 (365) = happyShift action_95 action_438 (366) = happyShift action_96 action_438 (367) = happyShift action_97 action_438 (368) = happyShift action_98 action_438 (369) = happyShift action_99 action_438 (370) = happyShift action_100 action_438 (371) = happyShift action_101 action_438 (373) = happyShift action_102 action_438 (378) = happyShift action_103 action_438 (380) = happyShift action_104 action_438 (381) = happyShift action_105 action_438 (383) = happyShift action_106 action_438 (384) = happyShift action_107 action_438 (391) = happyShift action_159 action_438 (392) = happyShift action_109 action_438 (396) = happyShift action_110 action_438 (402) = happyShift action_112 action_438 (403) = happyShift action_113 action_438 (411) = happyShift action_114 action_438 (412) = happyShift action_115 action_438 (413) = happyShift action_116 action_438 (169) = happyGoto action_737 action_438 (170) = happyGoto action_25 action_438 (171) = happyGoto action_26 action_438 (172) = happyGoto action_27 action_438 (173) = happyGoto action_28 action_438 (176) = happyGoto action_29 action_438 (177) = happyGoto action_30 action_438 (178) = happyGoto action_31 action_438 (181) = happyGoto action_32 action_438 (182) = happyGoto action_33 action_438 (183) = happyGoto action_34 action_438 (189) = happyGoto action_738 action_438 (190) = happyGoto action_35 action_438 (228) = happyGoto action_38 action_438 (231) = happyGoto action_39 action_438 (232) = happyGoto action_40 action_438 (234) = happyGoto action_41 action_438 (244) = happyGoto action_42 action_438 (245) = happyGoto action_43 action_438 (246) = happyGoto action_44 action_438 (247) = happyGoto action_45 action_438 (248) = happyGoto action_46 action_438 (249) = happyGoto action_47 action_438 (257) = happyGoto action_48 action_438 _ = happyFail action_439 (278) = happyShift action_49 action_439 (279) = happyShift action_50 action_439 (280) = happyShift action_51 action_439 (281) = happyShift action_52 action_439 (282) = happyShift action_53 action_439 (283) = happyShift action_54 action_439 (289) = happyShift action_55 action_439 (290) = happyShift action_56 action_439 (291) = happyShift action_57 action_439 (292) = happyShift action_58 action_439 (293) = happyShift action_59 action_439 (294) = happyShift action_60 action_439 (295) = happyShift action_61 action_439 (296) = happyShift action_62 action_439 (297) = happyShift action_63 action_439 (298) = happyShift action_64 action_439 (299) = happyShift action_65 action_439 (301) = happyShift action_66 action_439 (307) = happyShift action_67 action_439 (309) = happyShift action_68 action_439 (312) = happyShift action_69 action_439 (319) = happyShift action_70 action_439 (324) = happyShift action_71 action_439 (325) = happyShift action_72 action_439 (327) = happyShift action_73 action_439 (328) = happyShift action_74 action_439 (334) = happyShift action_75 action_439 (337) = happyShift action_76 action_439 (338) = happyShift action_77 action_439 (339) = happyShift action_78 action_439 (340) = happyShift action_79 action_439 (341) = happyShift action_80 action_439 (342) = happyShift action_81 action_439 (344) = happyShift action_82 action_439 (345) = happyShift action_83 action_439 (346) = happyShift action_84 action_439 (348) = happyShift action_85 action_439 (350) = happyShift action_86 action_439 (351) = happyShift action_87 action_439 (358) = happyShift action_88 action_439 (359) = happyShift action_89 action_439 (360) = happyShift action_90 action_439 (361) = happyShift action_91 action_439 (362) = happyShift action_92 action_439 (363) = happyShift action_93 action_439 (364) = happyShift action_94 action_439 (365) = happyShift action_95 action_439 (366) = happyShift action_96 action_439 (367) = happyShift action_97 action_439 (368) = happyShift action_98 action_439 (369) = happyShift action_99 action_439 (370) = happyShift action_100 action_439 (371) = happyShift action_101 action_439 (373) = happyShift action_102 action_439 (378) = happyShift action_103 action_439 (380) = happyShift action_104 action_439 (381) = happyShift action_105 action_439 (383) = happyShift action_106 action_439 (384) = happyShift action_107 action_439 (391) = happyShift action_159 action_439 (392) = happyShift action_109 action_439 (396) = happyShift action_110 action_439 (402) = happyShift action_112 action_439 (403) = happyShift action_113 action_439 (411) = happyShift action_114 action_439 (412) = happyShift action_115 action_439 (413) = happyShift action_116 action_439 (169) = happyGoto action_157 action_439 (170) = happyGoto action_25 action_439 (171) = happyGoto action_26 action_439 (172) = happyGoto action_27 action_439 (173) = happyGoto action_28 action_439 (176) = happyGoto action_29 action_439 (177) = happyGoto action_30 action_439 (178) = happyGoto action_31 action_439 (181) = happyGoto action_32 action_439 (182) = happyGoto action_33 action_439 (183) = happyGoto action_34 action_439 (190) = happyGoto action_35 action_439 (215) = happyGoto action_736 action_439 (228) = happyGoto action_38 action_439 (231) = happyGoto action_39 action_439 (232) = happyGoto action_40 action_439 (234) = happyGoto action_41 action_439 (244) = happyGoto action_42 action_439 (245) = happyGoto action_43 action_439 (246) = happyGoto action_44 action_439 (247) = happyGoto action_45 action_439 (248) = happyGoto action_46 action_439 (249) = happyGoto action_47 action_439 (257) = happyGoto action_48 action_439 _ = happyFail action_440 (278) = happyShift action_49 action_440 (279) = happyShift action_50 action_440 (280) = happyShift action_51 action_440 (281) = happyShift action_52 action_440 (282) = happyShift action_53 action_440 (283) = happyShift action_54 action_440 (285) = happyShift action_211 action_440 (286) = happyShift action_186 action_440 (287) = happyShift action_212 action_440 (288) = happyShift action_187 action_440 (289) = happyShift action_55 action_440 (290) = happyShift action_56 action_440 (291) = happyShift action_57 action_440 (292) = happyShift action_58 action_440 (293) = happyShift action_59 action_440 (294) = happyShift action_60 action_440 (295) = happyShift action_61 action_440 (296) = happyShift action_62 action_440 (297) = happyShift action_63 action_440 (298) = happyShift action_64 action_440 (299) = happyShift action_65 action_440 (301) = happyShift action_66 action_440 (302) = happyShift action_735 action_440 (307) = happyShift action_67 action_440 (309) = happyShift action_68 action_440 (311) = happyShift action_437 action_440 (312) = happyShift action_69 action_440 (313) = happyShift action_339 action_440 (314) = happyShift action_214 action_440 (316) = happyShift action_190 action_440 (319) = happyShift action_70 action_440 (324) = happyShift action_71 action_440 (325) = happyShift action_72 action_440 (327) = happyShift action_73 action_440 (328) = happyShift action_340 action_440 (329) = happyShift action_218 action_440 (334) = happyShift action_75 action_440 (337) = happyShift action_76 action_440 (338) = happyShift action_77 action_440 (339) = happyShift action_78 action_440 (340) = happyShift action_79 action_440 (341) = happyShift action_80 action_440 (342) = happyShift action_81 action_440 (344) = happyShift action_82 action_440 (345) = happyShift action_83 action_440 (346) = happyShift action_84 action_440 (348) = happyShift action_85 action_440 (350) = happyShift action_86 action_440 (351) = happyShift action_87 action_440 (358) = happyShift action_88 action_440 (359) = happyShift action_89 action_440 (360) = happyShift action_90 action_440 (361) = happyShift action_91 action_440 (362) = happyShift action_92 action_440 (363) = happyShift action_93 action_440 (364) = happyShift action_94 action_440 (365) = happyShift action_95 action_440 (366) = happyShift action_96 action_440 (367) = happyShift action_97 action_440 (368) = happyShift action_98 action_440 (369) = happyShift action_99 action_440 (370) = happyShift action_100 action_440 (371) = happyShift action_101 action_440 (373) = happyShift action_102 action_440 (378) = happyShift action_103 action_440 (380) = happyShift action_104 action_440 (381) = happyShift action_105 action_440 (383) = happyShift action_106 action_440 (384) = happyShift action_107 action_440 (391) = happyShift action_159 action_440 (392) = happyShift action_109 action_440 (396) = happyShift action_110 action_440 (402) = happyShift action_112 action_440 (403) = happyShift action_113 action_440 (411) = happyShift action_114 action_440 (412) = happyShift action_115 action_440 (413) = happyShift action_116 action_440 (169) = happyGoto action_329 action_440 (170) = happyGoto action_25 action_440 (171) = happyGoto action_26 action_440 (172) = happyGoto action_27 action_440 (173) = happyGoto action_28 action_440 (176) = happyGoto action_29 action_440 (177) = happyGoto action_30 action_440 (178) = happyGoto action_31 action_440 (181) = happyGoto action_32 action_440 (182) = happyGoto action_33 action_440 (183) = happyGoto action_34 action_440 (185) = happyGoto action_734 action_440 (190) = happyGoto action_35 action_440 (228) = happyGoto action_38 action_440 (231) = happyGoto action_39 action_440 (232) = happyGoto action_40 action_440 (234) = happyGoto action_41 action_440 (237) = happyGoto action_333 action_440 (239) = happyGoto action_334 action_440 (242) = happyGoto action_335 action_440 (243) = happyGoto action_226 action_440 (244) = happyGoto action_42 action_440 (245) = happyGoto action_43 action_440 (246) = happyGoto action_44 action_440 (247) = happyGoto action_45 action_440 (248) = happyGoto action_46 action_440 (249) = happyGoto action_47 action_440 (250) = happyGoto action_183 action_440 (251) = happyGoto action_184 action_440 (253) = happyGoto action_336 action_440 (255) = happyGoto action_337 action_440 (256) = happyGoto action_338 action_440 (257) = happyGoto action_48 action_440 _ = happyFail action_441 _ = happyReduce_455 action_442 _ = happyReduce_456 action_443 (302) = happyShift action_733 action_443 (311) = happyShift action_202 action_443 (184) = happyGoto action_440 action_443 (187) = happyGoto action_732 action_443 _ = happyFail action_444 _ = happyReduce_631 action_445 (278) = happyShift action_49 action_445 (279) = happyShift action_50 action_445 (280) = happyShift action_51 action_445 (281) = happyShift action_52 action_445 (282) = happyShift action_53 action_445 (283) = happyShift action_54 action_445 (285) = happyShift action_211 action_445 (286) = happyShift action_186 action_445 (287) = happyShift action_212 action_445 (288) = happyShift action_187 action_445 (289) = happyShift action_55 action_445 (290) = happyShift action_56 action_445 (291) = happyShift action_57 action_445 (292) = happyShift action_58 action_445 (293) = happyShift action_59 action_445 (294) = happyShift action_60 action_445 (295) = happyShift action_61 action_445 (296) = happyShift action_62 action_445 (297) = happyShift action_63 action_445 (298) = happyShift action_64 action_445 (299) = happyShift action_65 action_445 (301) = happyShift action_66 action_445 (307) = happyShift action_67 action_445 (309) = happyShift action_68 action_445 (312) = happyShift action_69 action_445 (313) = happyShift action_339 action_445 (314) = happyShift action_214 action_445 (316) = happyShift action_190 action_445 (319) = happyShift action_70 action_445 (324) = happyShift action_71 action_445 (325) = happyShift action_72 action_445 (327) = happyShift action_73 action_445 (328) = happyShift action_340 action_445 (329) = happyShift action_218 action_445 (334) = happyShift action_75 action_445 (337) = happyShift action_76 action_445 (338) = happyShift action_77 action_445 (339) = happyShift action_78 action_445 (340) = happyShift action_79 action_445 (341) = happyShift action_80 action_445 (342) = happyShift action_81 action_445 (344) = happyShift action_82 action_445 (345) = happyShift action_83 action_445 (346) = happyShift action_84 action_445 (348) = happyShift action_85 action_445 (350) = happyShift action_86 action_445 (351) = happyShift action_87 action_445 (358) = happyShift action_88 action_445 (359) = happyShift action_89 action_445 (360) = happyShift action_90 action_445 (361) = happyShift action_91 action_445 (362) = happyShift action_92 action_445 (363) = happyShift action_93 action_445 (364) = happyShift action_94 action_445 (365) = happyShift action_95 action_445 (366) = happyShift action_96 action_445 (367) = happyShift action_97 action_445 (368) = happyShift action_98 action_445 (369) = happyShift action_99 action_445 (370) = happyShift action_100 action_445 (371) = happyShift action_101 action_445 (373) = happyShift action_102 action_445 (378) = happyShift action_103 action_445 (380) = happyShift action_104 action_445 (381) = happyShift action_105 action_445 (383) = happyShift action_106 action_445 (384) = happyShift action_107 action_445 (391) = happyShift action_159 action_445 (392) = happyShift action_109 action_445 (396) = happyShift action_110 action_445 (402) = happyShift action_112 action_445 (403) = happyShift action_113 action_445 (411) = happyShift action_114 action_445 (412) = happyShift action_115 action_445 (413) = happyShift action_116 action_445 (169) = happyGoto action_329 action_445 (170) = happyGoto action_25 action_445 (171) = happyGoto action_26 action_445 (172) = happyGoto action_27 action_445 (173) = happyGoto action_28 action_445 (176) = happyGoto action_29 action_445 (177) = happyGoto action_30 action_445 (178) = happyGoto action_31 action_445 (181) = happyGoto action_32 action_445 (182) = happyGoto action_33 action_445 (183) = happyGoto action_34 action_445 (185) = happyGoto action_731 action_445 (190) = happyGoto action_35 action_445 (228) = happyGoto action_38 action_445 (231) = happyGoto action_39 action_445 (232) = happyGoto action_40 action_445 (234) = happyGoto action_41 action_445 (237) = happyGoto action_333 action_445 (239) = happyGoto action_334 action_445 (242) = happyGoto action_335 action_445 (243) = happyGoto action_226 action_445 (244) = happyGoto action_42 action_445 (245) = happyGoto action_43 action_445 (246) = happyGoto action_44 action_445 (247) = happyGoto action_45 action_445 (248) = happyGoto action_46 action_445 (249) = happyGoto action_47 action_445 (250) = happyGoto action_183 action_445 (251) = happyGoto action_184 action_445 (253) = happyGoto action_336 action_445 (255) = happyGoto action_337 action_445 (256) = happyGoto action_338 action_445 (257) = happyGoto action_48 action_445 _ = happyFail action_446 _ = happyReduce_459 action_447 (278) = happyShift action_49 action_447 (279) = happyShift action_50 action_447 (280) = happyShift action_51 action_447 (281) = happyShift action_52 action_447 (282) = happyShift action_53 action_447 (283) = happyShift action_54 action_447 (285) = happyShift action_211 action_447 (286) = happyShift action_186 action_447 (287) = happyShift action_212 action_447 (288) = happyShift action_187 action_447 (289) = happyShift action_55 action_447 (290) = happyShift action_56 action_447 (291) = happyShift action_57 action_447 (292) = happyShift action_58 action_447 (293) = happyShift action_59 action_447 (294) = happyShift action_60 action_447 (295) = happyShift action_61 action_447 (296) = happyShift action_62 action_447 (297) = happyShift action_63 action_447 (298) = happyShift action_64 action_447 (299) = happyShift action_65 action_447 (301) = happyShift action_66 action_447 (307) = happyShift action_67 action_447 (309) = happyShift action_68 action_447 (312) = happyShift action_69 action_447 (313) = happyShift action_339 action_447 (314) = happyShift action_214 action_447 (316) = happyShift action_190 action_447 (319) = happyShift action_70 action_447 (324) = happyShift action_71 action_447 (325) = happyShift action_72 action_447 (327) = happyShift action_73 action_447 (328) = happyShift action_340 action_447 (329) = happyShift action_218 action_447 (334) = happyShift action_75 action_447 (337) = happyShift action_76 action_447 (338) = happyShift action_77 action_447 (339) = happyShift action_78 action_447 (340) = happyShift action_79 action_447 (341) = happyShift action_80 action_447 (342) = happyShift action_81 action_447 (344) = happyShift action_82 action_447 (345) = happyShift action_83 action_447 (346) = happyShift action_84 action_447 (348) = happyShift action_85 action_447 (350) = happyShift action_86 action_447 (351) = happyShift action_87 action_447 (358) = happyShift action_88 action_447 (359) = happyShift action_89 action_447 (360) = happyShift action_90 action_447 (361) = happyShift action_91 action_447 (362) = happyShift action_92 action_447 (363) = happyShift action_93 action_447 (364) = happyShift action_94 action_447 (365) = happyShift action_95 action_447 (366) = happyShift action_96 action_447 (367) = happyShift action_97 action_447 (368) = happyShift action_98 action_447 (369) = happyShift action_99 action_447 (370) = happyShift action_100 action_447 (371) = happyShift action_101 action_447 (373) = happyShift action_102 action_447 (378) = happyShift action_103 action_447 (380) = happyShift action_104 action_447 (381) = happyShift action_105 action_447 (383) = happyShift action_106 action_447 (384) = happyShift action_107 action_447 (391) = happyShift action_159 action_447 (392) = happyShift action_109 action_447 (396) = happyShift action_110 action_447 (402) = happyShift action_112 action_447 (403) = happyShift action_113 action_447 (411) = happyShift action_114 action_447 (412) = happyShift action_115 action_447 (413) = happyShift action_116 action_447 (169) = happyGoto action_730 action_447 (170) = happyGoto action_25 action_447 (171) = happyGoto action_26 action_447 (172) = happyGoto action_27 action_447 (173) = happyGoto action_28 action_447 (176) = happyGoto action_29 action_447 (177) = happyGoto action_30 action_447 (178) = happyGoto action_31 action_447 (181) = happyGoto action_32 action_447 (182) = happyGoto action_33 action_447 (183) = happyGoto action_34 action_447 (185) = happyGoto action_726 action_447 (190) = happyGoto action_35 action_447 (228) = happyGoto action_38 action_447 (231) = happyGoto action_39 action_447 (232) = happyGoto action_40 action_447 (234) = happyGoto action_41 action_447 (237) = happyGoto action_333 action_447 (239) = happyGoto action_334 action_447 (242) = happyGoto action_335 action_447 (243) = happyGoto action_226 action_447 (244) = happyGoto action_42 action_447 (245) = happyGoto action_43 action_447 (246) = happyGoto action_44 action_447 (247) = happyGoto action_45 action_447 (248) = happyGoto action_46 action_447 (249) = happyGoto action_47 action_447 (250) = happyGoto action_183 action_447 (251) = happyGoto action_184 action_447 (253) = happyGoto action_336 action_447 (255) = happyGoto action_337 action_447 (256) = happyGoto action_338 action_447 (257) = happyGoto action_48 action_447 _ = happyFail action_448 (278) = happyShift action_49 action_448 (279) = happyShift action_50 action_448 (280) = happyShift action_51 action_448 (281) = happyShift action_52 action_448 (282) = happyShift action_53 action_448 (283) = happyShift action_54 action_448 (289) = happyShift action_55 action_448 (290) = happyShift action_56 action_448 (291) = happyShift action_57 action_448 (292) = happyShift action_58 action_448 (293) = happyShift action_59 action_448 (294) = happyShift action_60 action_448 (295) = happyShift action_61 action_448 (296) = happyShift action_62 action_448 (297) = happyShift action_63 action_448 (298) = happyShift action_64 action_448 (299) = happyShift action_65 action_448 (301) = happyShift action_66 action_448 (307) = happyShift action_67 action_448 (309) = happyShift action_68 action_448 (312) = happyShift action_69 action_448 (319) = happyShift action_70 action_448 (324) = happyShift action_71 action_448 (325) = happyShift action_72 action_448 (327) = happyShift action_73 action_448 (334) = happyShift action_75 action_448 (337) = happyShift action_76 action_448 (338) = happyShift action_77 action_448 (339) = happyShift action_78 action_448 (340) = happyShift action_79 action_448 (341) = happyShift action_80 action_448 (342) = happyShift action_81 action_448 (344) = happyShift action_82 action_448 (345) = happyShift action_83 action_448 (346) = happyShift action_84 action_448 (348) = happyShift action_85 action_448 (350) = happyShift action_86 action_448 (351) = happyShift action_87 action_448 (358) = happyShift action_88 action_448 (359) = happyShift action_89 action_448 (360) = happyShift action_90 action_448 (361) = happyShift action_91 action_448 (362) = happyShift action_92 action_448 (363) = happyShift action_93 action_448 (364) = happyShift action_94 action_448 (365) = happyShift action_95 action_448 (366) = happyShift action_96 action_448 (367) = happyShift action_97 action_448 (368) = happyShift action_98 action_448 (369) = happyShift action_99 action_448 (370) = happyShift action_100 action_448 (371) = happyShift action_101 action_448 (373) = happyShift action_102 action_448 (378) = happyShift action_103 action_448 (380) = happyShift action_104 action_448 (381) = happyShift action_105 action_448 (383) = happyShift action_106 action_448 (384) = happyShift action_107 action_448 (391) = happyShift action_159 action_448 (392) = happyShift action_109 action_448 (396) = happyShift action_110 action_448 (402) = happyShift action_112 action_448 (403) = happyShift action_113 action_448 (411) = happyShift action_114 action_448 (412) = happyShift action_115 action_448 (413) = happyShift action_116 action_448 (169) = happyGoto action_729 action_448 (170) = happyGoto action_25 action_448 (171) = happyGoto action_26 action_448 (172) = happyGoto action_27 action_448 (173) = happyGoto action_28 action_448 (176) = happyGoto action_29 action_448 (177) = happyGoto action_30 action_448 (178) = happyGoto action_31 action_448 (181) = happyGoto action_32 action_448 (182) = happyGoto action_33 action_448 (183) = happyGoto action_34 action_448 (190) = happyGoto action_35 action_448 (228) = happyGoto action_38 action_448 (231) = happyGoto action_39 action_448 (232) = happyGoto action_40 action_448 (234) = happyGoto action_41 action_448 (244) = happyGoto action_42 action_448 (245) = happyGoto action_43 action_448 (246) = happyGoto action_44 action_448 (247) = happyGoto action_45 action_448 (248) = happyGoto action_46 action_448 (249) = happyGoto action_47 action_448 (257) = happyGoto action_48 action_448 _ = happyReduce_560 action_449 (278) = happyShift action_49 action_449 (279) = happyShift action_50 action_449 (280) = happyShift action_51 action_449 (281) = happyShift action_52 action_449 (282) = happyShift action_53 action_449 (283) = happyShift action_54 action_449 (289) = happyShift action_55 action_449 (290) = happyShift action_56 action_449 (291) = happyShift action_57 action_449 (292) = happyShift action_58 action_449 (293) = happyShift action_59 action_449 (294) = happyShift action_60 action_449 (295) = happyShift action_61 action_449 (296) = happyShift action_62 action_449 (297) = happyShift action_63 action_449 (298) = happyShift action_64 action_449 (299) = happyShift action_65 action_449 (301) = happyShift action_66 action_449 (307) = happyShift action_67 action_449 (309) = happyShift action_68 action_449 (312) = happyShift action_69 action_449 (319) = happyShift action_70 action_449 (324) = happyShift action_71 action_449 (325) = happyShift action_72 action_449 (327) = happyShift action_73 action_449 (328) = happyShift action_74 action_449 (334) = happyShift action_75 action_449 (337) = happyShift action_76 action_449 (338) = happyShift action_77 action_449 (339) = happyShift action_78 action_449 (340) = happyShift action_79 action_449 (341) = happyShift action_80 action_449 (342) = happyShift action_81 action_449 (344) = happyShift action_82 action_449 (345) = happyShift action_83 action_449 (346) = happyShift action_84 action_449 (348) = happyShift action_85 action_449 (350) = happyShift action_86 action_449 (351) = happyShift action_87 action_449 (358) = happyShift action_88 action_449 (359) = happyShift action_89 action_449 (360) = happyShift action_90 action_449 (361) = happyShift action_91 action_449 (362) = happyShift action_92 action_449 (363) = happyShift action_93 action_449 (364) = happyShift action_94 action_449 (365) = happyShift action_95 action_449 (366) = happyShift action_96 action_449 (367) = happyShift action_97 action_449 (368) = happyShift action_98 action_449 (369) = happyShift action_99 action_449 (370) = happyShift action_100 action_449 (371) = happyShift action_101 action_449 (373) = happyShift action_102 action_449 (378) = happyShift action_103 action_449 (380) = happyShift action_104 action_449 (381) = happyShift action_105 action_449 (383) = happyShift action_106 action_449 (384) = happyShift action_107 action_449 (391) = happyShift action_712 action_449 (392) = happyShift action_109 action_449 (396) = happyShift action_110 action_449 (398) = happyShift action_723 action_449 (402) = happyShift action_112 action_449 (403) = happyShift action_113 action_449 (411) = happyShift action_114 action_449 (412) = happyShift action_115 action_449 (413) = happyShift action_116 action_449 (168) = happyGoto action_708 action_449 (169) = happyGoto action_24 action_449 (170) = happyGoto action_25 action_449 (171) = happyGoto action_26 action_449 (172) = happyGoto action_27 action_449 (173) = happyGoto action_28 action_449 (176) = happyGoto action_29 action_449 (177) = happyGoto action_30 action_449 (178) = happyGoto action_31 action_449 (181) = happyGoto action_32 action_449 (182) = happyGoto action_33 action_449 (183) = happyGoto action_34 action_449 (190) = happyGoto action_35 action_449 (201) = happyGoto action_728 action_449 (202) = happyGoto action_719 action_449 (203) = happyGoto action_720 action_449 (204) = happyGoto action_721 action_449 (206) = happyGoto action_722 action_449 (215) = happyGoto action_711 action_449 (228) = happyGoto action_38 action_449 (231) = happyGoto action_39 action_449 (232) = happyGoto action_40 action_449 (234) = happyGoto action_41 action_449 (244) = happyGoto action_42 action_449 (245) = happyGoto action_43 action_449 (246) = happyGoto action_44 action_449 (247) = happyGoto action_45 action_449 (248) = happyGoto action_46 action_449 (249) = happyGoto action_47 action_449 (257) = happyGoto action_48 action_449 _ = happyFail action_450 (313) = happyShift action_727 action_450 _ = happyFail action_451 _ = happyReduce_480 action_452 _ = happyReduce_460 action_453 (278) = happyShift action_49 action_453 (279) = happyShift action_50 action_453 (280) = happyShift action_51 action_453 (281) = happyShift action_52 action_453 (282) = happyShift action_53 action_453 (283) = happyShift action_54 action_453 (285) = happyShift action_211 action_453 (286) = happyShift action_186 action_453 (287) = happyShift action_212 action_453 (288) = happyShift action_187 action_453 (289) = happyShift action_55 action_453 (290) = happyShift action_56 action_453 (291) = happyShift action_57 action_453 (292) = happyShift action_58 action_453 (293) = happyShift action_59 action_453 (294) = happyShift action_60 action_453 (295) = happyShift action_61 action_453 (296) = happyShift action_62 action_453 (297) = happyShift action_63 action_453 (298) = happyShift action_64 action_453 (299) = happyShift action_65 action_453 (301) = happyShift action_66 action_453 (307) = happyShift action_67 action_453 (309) = happyShift action_68 action_453 (312) = happyShift action_69 action_453 (313) = happyShift action_339 action_453 (314) = happyShift action_214 action_453 (316) = happyShift action_190 action_453 (319) = happyShift action_70 action_453 (324) = happyShift action_71 action_453 (325) = happyShift action_72 action_453 (327) = happyShift action_73 action_453 (328) = happyShift action_340 action_453 (329) = happyShift action_218 action_453 (334) = happyShift action_75 action_453 (337) = happyShift action_76 action_453 (338) = happyShift action_77 action_453 (339) = happyShift action_78 action_453 (340) = happyShift action_79 action_453 (341) = happyShift action_80 action_453 (342) = happyShift action_81 action_453 (344) = happyShift action_82 action_453 (345) = happyShift action_83 action_453 (346) = happyShift action_84 action_453 (348) = happyShift action_85 action_453 (350) = happyShift action_86 action_453 (351) = happyShift action_87 action_453 (358) = happyShift action_88 action_453 (359) = happyShift action_89 action_453 (360) = happyShift action_90 action_453 (361) = happyShift action_91 action_453 (362) = happyShift action_92 action_453 (363) = happyShift action_93 action_453 (364) = happyShift action_94 action_453 (365) = happyShift action_95 action_453 (366) = happyShift action_96 action_453 (367) = happyShift action_97 action_453 (368) = happyShift action_98 action_453 (369) = happyShift action_99 action_453 (370) = happyShift action_100 action_453 (371) = happyShift action_101 action_453 (373) = happyShift action_102 action_453 (378) = happyShift action_103 action_453 (380) = happyShift action_104 action_453 (381) = happyShift action_105 action_453 (383) = happyShift action_106 action_453 (384) = happyShift action_107 action_453 (391) = happyShift action_159 action_453 (392) = happyShift action_109 action_453 (396) = happyShift action_110 action_453 (402) = happyShift action_112 action_453 (403) = happyShift action_113 action_453 (411) = happyShift action_114 action_453 (412) = happyShift action_115 action_453 (413) = happyShift action_116 action_453 (169) = happyGoto action_725 action_453 (170) = happyGoto action_25 action_453 (171) = happyGoto action_26 action_453 (172) = happyGoto action_27 action_453 (173) = happyGoto action_28 action_453 (176) = happyGoto action_29 action_453 (177) = happyGoto action_30 action_453 (178) = happyGoto action_31 action_453 (181) = happyGoto action_32 action_453 (182) = happyGoto action_33 action_453 (183) = happyGoto action_34 action_453 (185) = happyGoto action_726 action_453 (190) = happyGoto action_35 action_453 (228) = happyGoto action_38 action_453 (231) = happyGoto action_39 action_453 (232) = happyGoto action_40 action_453 (234) = happyGoto action_41 action_453 (237) = happyGoto action_333 action_453 (239) = happyGoto action_334 action_453 (242) = happyGoto action_335 action_453 (243) = happyGoto action_226 action_453 (244) = happyGoto action_42 action_453 (245) = happyGoto action_43 action_453 (246) = happyGoto action_44 action_453 (247) = happyGoto action_45 action_453 (248) = happyGoto action_46 action_453 (249) = happyGoto action_47 action_453 (250) = happyGoto action_183 action_453 (251) = happyGoto action_184 action_453 (253) = happyGoto action_336 action_453 (255) = happyGoto action_337 action_453 (256) = happyGoto action_338 action_453 (257) = happyGoto action_48 action_453 _ = happyFail action_454 (278) = happyShift action_49 action_454 (279) = happyShift action_50 action_454 (280) = happyShift action_51 action_454 (281) = happyShift action_52 action_454 (282) = happyShift action_53 action_454 (283) = happyShift action_54 action_454 (289) = happyShift action_55 action_454 (290) = happyShift action_56 action_454 (291) = happyShift action_57 action_454 (292) = happyShift action_58 action_454 (293) = happyShift action_59 action_454 (294) = happyShift action_60 action_454 (295) = happyShift action_61 action_454 (296) = happyShift action_62 action_454 (297) = happyShift action_63 action_454 (298) = happyShift action_64 action_454 (299) = happyShift action_65 action_454 (301) = happyShift action_66 action_454 (307) = happyShift action_67 action_454 (309) = happyShift action_68 action_454 (312) = happyShift action_69 action_454 (319) = happyShift action_70 action_454 (324) = happyShift action_71 action_454 (325) = happyShift action_72 action_454 (327) = happyShift action_73 action_454 (334) = happyShift action_75 action_454 (337) = happyShift action_76 action_454 (338) = happyShift action_77 action_454 (339) = happyShift action_78 action_454 (340) = happyShift action_79 action_454 (341) = happyShift action_80 action_454 (342) = happyShift action_81 action_454 (344) = happyShift action_82 action_454 (345) = happyShift action_83 action_454 (346) = happyShift action_84 action_454 (348) = happyShift action_85 action_454 (350) = happyShift action_86 action_454 (351) = happyShift action_87 action_454 (358) = happyShift action_88 action_454 (359) = happyShift action_89 action_454 (360) = happyShift action_90 action_454 (361) = happyShift action_91 action_454 (362) = happyShift action_92 action_454 (363) = happyShift action_93 action_454 (364) = happyShift action_94 action_454 (365) = happyShift action_95 action_454 (366) = happyShift action_96 action_454 (367) = happyShift action_97 action_454 (368) = happyShift action_98 action_454 (369) = happyShift action_99 action_454 (370) = happyShift action_100 action_454 (371) = happyShift action_101 action_454 (373) = happyShift action_102 action_454 (378) = happyShift action_103 action_454 (380) = happyShift action_104 action_454 (381) = happyShift action_105 action_454 (383) = happyShift action_106 action_454 (384) = happyShift action_107 action_454 (391) = happyShift action_159 action_454 (392) = happyShift action_109 action_454 (396) = happyShift action_110 action_454 (402) = happyShift action_112 action_454 (403) = happyShift action_113 action_454 (411) = happyShift action_114 action_454 (412) = happyShift action_115 action_454 (413) = happyShift action_116 action_454 (169) = happyGoto action_724 action_454 (170) = happyGoto action_25 action_454 (171) = happyGoto action_26 action_454 (172) = happyGoto action_27 action_454 (173) = happyGoto action_28 action_454 (176) = happyGoto action_29 action_454 (177) = happyGoto action_30 action_454 (178) = happyGoto action_31 action_454 (181) = happyGoto action_32 action_454 (182) = happyGoto action_33 action_454 (183) = happyGoto action_34 action_454 (190) = happyGoto action_35 action_454 (228) = happyGoto action_38 action_454 (231) = happyGoto action_39 action_454 (232) = happyGoto action_40 action_454 (234) = happyGoto action_41 action_454 (244) = happyGoto action_42 action_454 (245) = happyGoto action_43 action_454 (246) = happyGoto action_44 action_454 (247) = happyGoto action_45 action_454 (248) = happyGoto action_46 action_454 (249) = happyGoto action_47 action_454 (257) = happyGoto action_48 action_454 _ = happyFail action_455 (278) = happyShift action_49 action_455 (279) = happyShift action_50 action_455 (280) = happyShift action_51 action_455 (281) = happyShift action_52 action_455 (282) = happyShift action_53 action_455 (283) = happyShift action_54 action_455 (289) = happyShift action_55 action_455 (290) = happyShift action_56 action_455 (291) = happyShift action_57 action_455 (292) = happyShift action_58 action_455 (293) = happyShift action_59 action_455 (294) = happyShift action_60 action_455 (295) = happyShift action_61 action_455 (296) = happyShift action_62 action_455 (297) = happyShift action_63 action_455 (298) = happyShift action_64 action_455 (299) = happyShift action_65 action_455 (301) = happyShift action_66 action_455 (307) = happyShift action_67 action_455 (309) = happyShift action_68 action_455 (312) = happyShift action_69 action_455 (319) = happyShift action_70 action_455 (324) = happyShift action_71 action_455 (325) = happyShift action_72 action_455 (327) = happyShift action_73 action_455 (328) = happyShift action_74 action_455 (334) = happyShift action_75 action_455 (337) = happyShift action_76 action_455 (338) = happyShift action_77 action_455 (339) = happyShift action_78 action_455 (340) = happyShift action_79 action_455 (341) = happyShift action_80 action_455 (342) = happyShift action_81 action_455 (344) = happyShift action_82 action_455 (345) = happyShift action_83 action_455 (346) = happyShift action_84 action_455 (348) = happyShift action_85 action_455 (350) = happyShift action_86 action_455 (351) = happyShift action_87 action_455 (358) = happyShift action_88 action_455 (359) = happyShift action_89 action_455 (360) = happyShift action_90 action_455 (361) = happyShift action_91 action_455 (362) = happyShift action_92 action_455 (363) = happyShift action_93 action_455 (364) = happyShift action_94 action_455 (365) = happyShift action_95 action_455 (366) = happyShift action_96 action_455 (367) = happyShift action_97 action_455 (368) = happyShift action_98 action_455 (369) = happyShift action_99 action_455 (370) = happyShift action_100 action_455 (371) = happyShift action_101 action_455 (373) = happyShift action_102 action_455 (378) = happyShift action_103 action_455 (380) = happyShift action_104 action_455 (381) = happyShift action_105 action_455 (383) = happyShift action_106 action_455 (384) = happyShift action_107 action_455 (391) = happyShift action_712 action_455 (392) = happyShift action_109 action_455 (396) = happyShift action_110 action_455 (398) = happyShift action_723 action_455 (402) = happyShift action_112 action_455 (403) = happyShift action_113 action_455 (411) = happyShift action_114 action_455 (412) = happyShift action_115 action_455 (413) = happyShift action_116 action_455 (168) = happyGoto action_708 action_455 (169) = happyGoto action_24 action_455 (170) = happyGoto action_25 action_455 (171) = happyGoto action_26 action_455 (172) = happyGoto action_27 action_455 (173) = happyGoto action_28 action_455 (176) = happyGoto action_29 action_455 (177) = happyGoto action_30 action_455 (178) = happyGoto action_31 action_455 (181) = happyGoto action_32 action_455 (182) = happyGoto action_33 action_455 (183) = happyGoto action_34 action_455 (190) = happyGoto action_35 action_455 (201) = happyGoto action_718 action_455 (202) = happyGoto action_719 action_455 (203) = happyGoto action_720 action_455 (204) = happyGoto action_721 action_455 (206) = happyGoto action_722 action_455 (215) = happyGoto action_711 action_455 (228) = happyGoto action_38 action_455 (231) = happyGoto action_39 action_455 (232) = happyGoto action_40 action_455 (234) = happyGoto action_41 action_455 (244) = happyGoto action_42 action_455 (245) = happyGoto action_43 action_455 (246) = happyGoto action_44 action_455 (247) = happyGoto action_45 action_455 (248) = happyGoto action_46 action_455 (249) = happyGoto action_47 action_455 (257) = happyGoto action_48 action_455 _ = happyFail action_456 _ = happyReduce_425 action_457 (27) = happyGoto action_175 action_457 (28) = happyGoto action_715 action_457 (209) = happyGoto action_717 action_457 _ = happyReduce_41 action_458 (27) = happyGoto action_175 action_458 (28) = happyGoto action_715 action_458 (209) = happyGoto action_716 action_458 _ = happyReduce_41 action_459 _ = happyReduce_435 action_460 (278) = happyShift action_49 action_460 (279) = happyShift action_50 action_460 (280) = happyShift action_51 action_460 (281) = happyShift action_52 action_460 (282) = happyShift action_53 action_460 (283) = happyShift action_54 action_460 (289) = happyShift action_55 action_460 (290) = happyShift action_56 action_460 (291) = happyShift action_57 action_460 (292) = happyShift action_58 action_460 (293) = happyShift action_59 action_460 (294) = happyShift action_60 action_460 (295) = happyShift action_61 action_460 (296) = happyShift action_62 action_460 (297) = happyShift action_63 action_460 (298) = happyShift action_64 action_460 (299) = happyShift action_65 action_460 (301) = happyShift action_66 action_460 (307) = happyShift action_67 action_460 (309) = happyShift action_68 action_460 (312) = happyShift action_69 action_460 (319) = happyShift action_70 action_460 (324) = happyShift action_71 action_460 (325) = happyShift action_72 action_460 (327) = happyShift action_73 action_460 (334) = happyShift action_75 action_460 (337) = happyShift action_76 action_460 (338) = happyShift action_77 action_460 (339) = happyShift action_78 action_460 (340) = happyShift action_79 action_460 (341) = happyShift action_80 action_460 (342) = happyShift action_81 action_460 (344) = happyShift action_82 action_460 (345) = happyShift action_83 action_460 (346) = happyShift action_84 action_460 (348) = happyShift action_85 action_460 (350) = happyShift action_86 action_460 (351) = happyShift action_87 action_460 (358) = happyShift action_88 action_460 (359) = happyShift action_89 action_460 (360) = happyShift action_90 action_460 (361) = happyShift action_91 action_460 (362) = happyShift action_92 action_460 (363) = happyShift action_93 action_460 (364) = happyShift action_94 action_460 (365) = happyShift action_95 action_460 (366) = happyShift action_96 action_460 (367) = happyShift action_97 action_460 (368) = happyShift action_98 action_460 (369) = happyShift action_99 action_460 (370) = happyShift action_100 action_460 (371) = happyShift action_101 action_460 (373) = happyShift action_102 action_460 (378) = happyShift action_103 action_460 (380) = happyShift action_104 action_460 (381) = happyShift action_105 action_460 (383) = happyShift action_106 action_460 (384) = happyShift action_107 action_460 (391) = happyShift action_159 action_460 (392) = happyShift action_109 action_460 (396) = happyShift action_110 action_460 (402) = happyShift action_112 action_460 (403) = happyShift action_113 action_460 (411) = happyShift action_114 action_460 (412) = happyShift action_115 action_460 (413) = happyShift action_116 action_460 (169) = happyGoto action_714 action_460 (170) = happyGoto action_25 action_460 (171) = happyGoto action_26 action_460 (172) = happyGoto action_27 action_460 (173) = happyGoto action_28 action_460 (176) = happyGoto action_29 action_460 (177) = happyGoto action_30 action_460 (178) = happyGoto action_31 action_460 (181) = happyGoto action_32 action_460 (182) = happyGoto action_33 action_460 (183) = happyGoto action_34 action_460 (190) = happyGoto action_35 action_460 (228) = happyGoto action_38 action_460 (231) = happyGoto action_39 action_460 (232) = happyGoto action_40 action_460 (234) = happyGoto action_41 action_460 (244) = happyGoto action_42 action_460 (245) = happyGoto action_43 action_460 (246) = happyGoto action_44 action_460 (247) = happyGoto action_45 action_460 (248) = happyGoto action_46 action_460 (249) = happyGoto action_47 action_460 (257) = happyGoto action_48 action_460 _ = happyFail action_461 (278) = happyShift action_49 action_461 (279) = happyShift action_50 action_461 (280) = happyShift action_51 action_461 (281) = happyShift action_52 action_461 (282) = happyShift action_53 action_461 (283) = happyShift action_54 action_461 (289) = happyShift action_55 action_461 (290) = happyShift action_56 action_461 (291) = happyShift action_57 action_461 (292) = happyShift action_58 action_461 (293) = happyShift action_59 action_461 (294) = happyShift action_60 action_461 (295) = happyShift action_61 action_461 (296) = happyShift action_62 action_461 (297) = happyShift action_63 action_461 (298) = happyShift action_64 action_461 (299) = happyShift action_65 action_461 (301) = happyShift action_66 action_461 (307) = happyShift action_67 action_461 (309) = happyShift action_68 action_461 (312) = happyShift action_69 action_461 (319) = happyShift action_70 action_461 (324) = happyShift action_71 action_461 (325) = happyShift action_72 action_461 (327) = happyShift action_73 action_461 (334) = happyShift action_75 action_461 (337) = happyShift action_76 action_461 (338) = happyShift action_77 action_461 (339) = happyShift action_78 action_461 (340) = happyShift action_79 action_461 (341) = happyShift action_80 action_461 (342) = happyShift action_81 action_461 (344) = happyShift action_82 action_461 (345) = happyShift action_83 action_461 (346) = happyShift action_84 action_461 (348) = happyShift action_85 action_461 (350) = happyShift action_86 action_461 (351) = happyShift action_87 action_461 (358) = happyShift action_88 action_461 (359) = happyShift action_89 action_461 (360) = happyShift action_90 action_461 (361) = happyShift action_91 action_461 (362) = happyShift action_92 action_461 (363) = happyShift action_93 action_461 (364) = happyShift action_94 action_461 (365) = happyShift action_95 action_461 (366) = happyShift action_96 action_461 (367) = happyShift action_97 action_461 (368) = happyShift action_98 action_461 (369) = happyShift action_99 action_461 (370) = happyShift action_100 action_461 (371) = happyShift action_101 action_461 (373) = happyShift action_102 action_461 (378) = happyShift action_103 action_461 (380) = happyShift action_104 action_461 (381) = happyShift action_105 action_461 (383) = happyShift action_106 action_461 (384) = happyShift action_107 action_461 (391) = happyShift action_159 action_461 (392) = happyShift action_109 action_461 (396) = happyShift action_110 action_461 (402) = happyShift action_112 action_461 (403) = happyShift action_113 action_461 (411) = happyShift action_114 action_461 (412) = happyShift action_115 action_461 (413) = happyShift action_116 action_461 (169) = happyGoto action_713 action_461 (170) = happyGoto action_25 action_461 (171) = happyGoto action_26 action_461 (172) = happyGoto action_27 action_461 (173) = happyGoto action_28 action_461 (176) = happyGoto action_29 action_461 (177) = happyGoto action_30 action_461 (178) = happyGoto action_31 action_461 (181) = happyGoto action_32 action_461 (182) = happyGoto action_33 action_461 (183) = happyGoto action_34 action_461 (190) = happyGoto action_35 action_461 (228) = happyGoto action_38 action_461 (231) = happyGoto action_39 action_461 (232) = happyGoto action_40 action_461 (234) = happyGoto action_41 action_461 (244) = happyGoto action_42 action_461 (245) = happyGoto action_43 action_461 (246) = happyGoto action_44 action_461 (247) = happyGoto action_45 action_461 (248) = happyGoto action_46 action_461 (249) = happyGoto action_47 action_461 (257) = happyGoto action_48 action_461 _ = happyFail action_462 _ = happyReduce_463 action_463 (278) = happyShift action_49 action_463 (279) = happyShift action_50 action_463 (280) = happyShift action_51 action_463 (281) = happyShift action_52 action_463 (282) = happyShift action_53 action_463 (283) = happyShift action_54 action_463 (289) = happyShift action_55 action_463 (290) = happyShift action_56 action_463 (291) = happyShift action_57 action_463 (292) = happyShift action_58 action_463 (293) = happyShift action_59 action_463 (294) = happyShift action_60 action_463 (295) = happyShift action_61 action_463 (296) = happyShift action_62 action_463 (297) = happyShift action_63 action_463 (298) = happyShift action_64 action_463 (299) = happyShift action_65 action_463 (301) = happyShift action_66 action_463 (307) = happyShift action_67 action_463 (309) = happyShift action_68 action_463 (312) = happyShift action_69 action_463 (319) = happyShift action_70 action_463 (324) = happyShift action_71 action_463 (325) = happyShift action_72 action_463 (327) = happyShift action_73 action_463 (328) = happyShift action_74 action_463 (334) = happyShift action_75 action_463 (337) = happyShift action_76 action_463 (338) = happyShift action_77 action_463 (339) = happyShift action_78 action_463 (340) = happyShift action_79 action_463 (341) = happyShift action_80 action_463 (342) = happyShift action_81 action_463 (344) = happyShift action_82 action_463 (345) = happyShift action_83 action_463 (346) = happyShift action_84 action_463 (348) = happyShift action_85 action_463 (350) = happyShift action_86 action_463 (351) = happyShift action_87 action_463 (358) = happyShift action_88 action_463 (359) = happyShift action_89 action_463 (360) = happyShift action_90 action_463 (361) = happyShift action_91 action_463 (362) = happyShift action_92 action_463 (363) = happyShift action_93 action_463 (364) = happyShift action_94 action_463 (365) = happyShift action_95 action_463 (366) = happyShift action_96 action_463 (367) = happyShift action_97 action_463 (368) = happyShift action_98 action_463 (369) = happyShift action_99 action_463 (370) = happyShift action_100 action_463 (371) = happyShift action_101 action_463 (373) = happyShift action_102 action_463 (378) = happyShift action_103 action_463 (380) = happyShift action_104 action_463 (381) = happyShift action_105 action_463 (383) = happyShift action_106 action_463 (384) = happyShift action_107 action_463 (391) = happyShift action_712 action_463 (392) = happyShift action_109 action_463 (396) = happyShift action_110 action_463 (402) = happyShift action_112 action_463 (403) = happyShift action_113 action_463 (411) = happyShift action_114 action_463 (412) = happyShift action_115 action_463 (413) = happyShift action_116 action_463 (168) = happyGoto action_708 action_463 (169) = happyGoto action_24 action_463 (170) = happyGoto action_25 action_463 (171) = happyGoto action_26 action_463 (172) = happyGoto action_27 action_463 (173) = happyGoto action_28 action_463 (176) = happyGoto action_29 action_463 (177) = happyGoto action_30 action_463 (178) = happyGoto action_31 action_463 (181) = happyGoto action_32 action_463 (182) = happyGoto action_33 action_463 (183) = happyGoto action_34 action_463 (190) = happyGoto action_35 action_463 (205) = happyGoto action_709 action_463 (206) = happyGoto action_710 action_463 (215) = happyGoto action_711 action_463 (228) = happyGoto action_38 action_463 (231) = happyGoto action_39 action_463 (232) = happyGoto action_40 action_463 (234) = happyGoto action_41 action_463 (244) = happyGoto action_42 action_463 (245) = happyGoto action_43 action_463 (246) = happyGoto action_44 action_463 (247) = happyGoto action_45 action_463 (248) = happyGoto action_46 action_463 (249) = happyGoto action_47 action_463 (257) = happyGoto action_48 action_463 _ = happyFail action_464 _ = happyReduce_467 action_465 _ = happyReduce_468 action_466 (278) = happyShift action_49 action_466 (279) = happyShift action_50 action_466 (280) = happyShift action_51 action_466 (281) = happyShift action_52 action_466 (282) = happyShift action_53 action_466 (283) = happyShift action_54 action_466 (289) = happyShift action_55 action_466 (290) = happyShift action_56 action_466 (291) = happyShift action_57 action_466 (292) = happyShift action_58 action_466 (293) = happyShift action_59 action_466 (294) = happyShift action_60 action_466 (295) = happyShift action_61 action_466 (296) = happyShift action_62 action_466 (297) = happyShift action_63 action_466 (298) = happyShift action_64 action_466 (299) = happyShift action_65 action_466 (301) = happyShift action_66 action_466 (307) = happyShift action_67 action_466 (309) = happyShift action_68 action_466 (312) = happyShift action_69 action_466 (319) = happyShift action_70 action_466 (324) = happyShift action_71 action_466 (325) = happyShift action_72 action_466 (327) = happyShift action_73 action_466 (334) = happyShift action_75 action_466 (337) = happyShift action_76 action_466 (338) = happyShift action_77 action_466 (339) = happyShift action_78 action_466 (340) = happyShift action_79 action_466 (341) = happyShift action_80 action_466 (342) = happyShift action_81 action_466 (344) = happyShift action_82 action_466 (345) = happyShift action_83 action_466 (346) = happyShift action_84 action_466 (348) = happyShift action_85 action_466 (350) = happyShift action_86 action_466 (351) = happyShift action_87 action_466 (358) = happyShift action_88 action_466 (359) = happyShift action_89 action_466 (360) = happyShift action_90 action_466 (361) = happyShift action_91 action_466 (362) = happyShift action_92 action_466 (363) = happyShift action_93 action_466 (364) = happyShift action_94 action_466 (365) = happyShift action_95 action_466 (366) = happyShift action_96 action_466 (367) = happyShift action_97 action_466 (368) = happyShift action_98 action_466 (369) = happyShift action_99 action_466 (370) = happyShift action_100 action_466 (371) = happyShift action_101 action_466 (373) = happyShift action_102 action_466 (378) = happyShift action_103 action_466 (380) = happyShift action_104 action_466 (381) = happyShift action_105 action_466 (383) = happyShift action_106 action_466 (384) = happyShift action_107 action_466 (391) = happyShift action_159 action_466 (392) = happyShift action_109 action_466 (396) = happyShift action_110 action_466 (402) = happyShift action_112 action_466 (403) = happyShift action_113 action_466 (411) = happyShift action_114 action_466 (412) = happyShift action_115 action_466 (413) = happyShift action_116 action_466 (173) = happyGoto action_418 action_466 (176) = happyGoto action_419 action_466 (177) = happyGoto action_30 action_466 (178) = happyGoto action_31 action_466 (181) = happyGoto action_32 action_466 (182) = happyGoto action_33 action_466 (183) = happyGoto action_34 action_466 (190) = happyGoto action_35 action_466 (228) = happyGoto action_38 action_466 (231) = happyGoto action_39 action_466 (232) = happyGoto action_40 action_466 (234) = happyGoto action_41 action_466 (244) = happyGoto action_42 action_466 (245) = happyGoto action_43 action_466 (246) = happyGoto action_44 action_466 (247) = happyGoto action_45 action_466 (248) = happyGoto action_46 action_466 (249) = happyGoto action_47 action_466 (257) = happyGoto action_48 action_466 _ = happyFail action_467 _ = happyReduce_469 action_468 _ = happyReduce_470 action_469 _ = happyReduce_167 action_470 (289) = happyShift action_707 action_470 (50) = happyGoto action_706 action_470 _ = happyReduce_93 action_471 (1) = happyShift action_400 action_471 (306) = happyShift action_401 action_471 (259) = happyGoto action_705 action_471 _ = happyFail action_472 (27) = happyGoto action_703 action_472 (28) = happyGoto action_704 action_472 _ = happyReduce_41 action_473 _ = happyReduce_107 action_474 _ = happyReduce_108 action_475 (278) = happyShift action_49 action_475 (280) = happyShift action_51 action_475 (281) = happyShift action_52 action_475 (282) = happyShift action_53 action_475 (283) = happyShift action_54 action_475 (289) = happyShift action_135 action_475 (292) = happyShift action_136 action_475 (299) = happyShift action_137 action_475 (301) = happyShift action_138 action_475 (307) = happyShift action_139 action_475 (309) = happyShift action_140 action_475 (312) = happyShift action_141 action_475 (325) = happyShift action_142 action_475 (328) = happyShift action_143 action_475 (337) = happyShift action_144 action_475 (338) = happyShift action_145 action_475 (344) = happyShift action_146 action_475 (346) = happyShift action_147 action_475 (358) = happyShift action_88 action_475 (359) = happyShift action_148 action_475 (360) = happyShift action_149 action_475 (361) = happyShift action_150 action_475 (363) = happyShift action_93 action_475 (364) = happyShift action_94 action_475 (365) = happyShift action_95 action_475 (366) = happyShift action_96 action_475 (367) = happyShift action_97 action_475 (368) = happyShift action_98 action_475 (369) = happyShift action_99 action_475 (370) = happyShift action_100 action_475 (371) = happyShift action_101 action_475 (381) = happyShift action_151 action_475 (383) = happyShift action_106 action_475 (390) = happyShift action_702 action_475 (402) = happyShift action_112 action_475 (416) = happyShift action_152 action_475 (417) = happyShift action_153 action_475 (103) = happyGoto action_117 action_475 (105) = happyGoto action_118 action_475 (108) = happyGoto action_119 action_475 (109) = happyGoto action_120 action_475 (110) = happyGoto action_121 action_475 (111) = happyGoto action_122 action_475 (112) = happyGoto action_123 action_475 (113) = happyGoto action_124 action_475 (114) = happyGoto action_125 action_475 (115) = happyGoto action_126 action_475 (118) = happyGoto action_701 action_475 (119) = happyGoto action_129 action_475 (232) = happyGoto action_130 action_475 (245) = happyGoto action_131 action_475 (247) = happyGoto action_45 action_475 (248) = happyGoto action_132 action_475 (249) = happyGoto action_47 action_475 (270) = happyGoto action_133 action_475 (271) = happyGoto action_134 action_475 _ = happyFail action_476 _ = happyReduce_128 action_477 _ = happyReduce_166 action_478 _ = happyReduce_173 action_479 _ = happyReduce_174 action_480 _ = happyReduce_168 action_481 _ = happyReduce_121 action_482 (285) = happyShift action_211 action_482 (286) = happyShift action_186 action_482 (287) = happyShift action_212 action_482 (288) = happyShift action_187 action_482 (311) = happyShift action_699 action_482 (313) = happyShift action_367 action_482 (314) = happyShift action_214 action_482 (316) = happyShift action_190 action_482 (317) = happyShift action_700 action_482 (318) = happyReduce_394 action_482 (320) = happyReduce_394 action_482 (327) = happyShift action_216 action_482 (328) = happyShift action_340 action_482 (329) = happyShift action_218 action_482 (164) = happyGoto action_698 action_482 (236) = happyGoto action_363 action_482 (239) = happyGoto action_364 action_482 (241) = happyGoto action_466 action_482 (243) = happyGoto action_226 action_482 (250) = happyGoto action_183 action_482 (251) = happyGoto action_184 action_482 (252) = happyGoto action_366 action_482 (254) = happyGoto action_208 action_482 (255) = happyGoto action_209 action_482 (256) = happyGoto action_210 action_482 _ = happyReduce_409 action_483 _ = happyReduce_169 action_484 _ = happyReduce_717 action_485 _ = happyReduce_170 action_486 (278) = happyShift action_49 action_486 (279) = happyShift action_50 action_486 (280) = happyShift action_51 action_486 (281) = happyShift action_52 action_486 (282) = happyShift action_53 action_486 (283) = happyShift action_54 action_486 (289) = happyShift action_55 action_486 (290) = happyShift action_56 action_486 (291) = happyShift action_57 action_486 (292) = happyShift action_58 action_486 (293) = happyShift action_59 action_486 (294) = happyShift action_60 action_486 (295) = happyShift action_61 action_486 (296) = happyShift action_62 action_486 (297) = happyShift action_63 action_486 (298) = happyShift action_64 action_486 (299) = happyShift action_65 action_486 (301) = happyShift action_66 action_486 (307) = happyShift action_67 action_486 (309) = happyShift action_68 action_486 (312) = happyShift action_69 action_486 (324) = happyShift action_71 action_486 (325) = happyShift action_72 action_486 (334) = happyShift action_75 action_486 (337) = happyShift action_76 action_486 (338) = happyShift action_77 action_486 (339) = happyShift action_78 action_486 (340) = happyShift action_79 action_486 (341) = happyShift action_80 action_486 (342) = happyShift action_81 action_486 (344) = happyShift action_82 action_486 (345) = happyShift action_83 action_486 (346) = happyShift action_84 action_486 (348) = happyShift action_85 action_486 (350) = happyShift action_86 action_486 (351) = happyShift action_87 action_486 (358) = happyShift action_88 action_486 (359) = happyShift action_89 action_486 (360) = happyShift action_90 action_486 (361) = happyShift action_91 action_486 (362) = happyShift action_92 action_486 (363) = happyShift action_93 action_486 (364) = happyShift action_94 action_486 (365) = happyShift action_95 action_486 (366) = happyShift action_96 action_486 (367) = happyShift action_97 action_486 (368) = happyShift action_98 action_486 (369) = happyShift action_99 action_486 (370) = happyShift action_100 action_486 (371) = happyShift action_101 action_486 (380) = happyShift action_104 action_486 (381) = happyShift action_105 action_486 (383) = happyShift action_106 action_486 (402) = happyShift action_112 action_486 (403) = happyShift action_113 action_486 (181) = happyGoto action_697 action_486 (182) = happyGoto action_33 action_486 (183) = happyGoto action_34 action_486 (190) = happyGoto action_35 action_486 (228) = happyGoto action_38 action_486 (231) = happyGoto action_39 action_486 (232) = happyGoto action_40 action_486 (234) = happyGoto action_41 action_486 (244) = happyGoto action_42 action_486 (245) = happyGoto action_43 action_486 (246) = happyGoto action_44 action_486 (247) = happyGoto action_45 action_486 (248) = happyGoto action_46 action_486 (249) = happyGoto action_47 action_486 (257) = happyGoto action_48 action_486 _ = happyFail action_487 (358) = happyShift action_695 action_487 (385) = happyShift action_696 action_487 _ = happyFail action_488 (278) = happyShift action_49 action_488 (280) = happyShift action_51 action_488 (281) = happyShift action_52 action_488 (282) = happyShift action_53 action_488 (283) = happyShift action_54 action_488 (289) = happyShift action_135 action_488 (292) = happyShift action_136 action_488 (299) = happyShift action_137 action_488 (301) = happyShift action_138 action_488 (307) = happyShift action_139 action_488 (309) = happyShift action_140 action_488 (312) = happyShift action_141 action_488 (325) = happyShift action_142 action_488 (328) = happyShift action_143 action_488 (337) = happyShift action_144 action_488 (338) = happyShift action_145 action_488 (344) = happyShift action_146 action_488 (346) = happyShift action_147 action_488 (358) = happyShift action_88 action_488 (359) = happyShift action_148 action_488 (360) = happyShift action_149 action_488 (361) = happyShift action_150 action_488 (363) = happyShift action_93 action_488 (364) = happyShift action_94 action_488 (365) = happyShift action_95 action_488 (366) = happyShift action_96 action_488 (367) = happyShift action_97 action_488 (368) = happyShift action_98 action_488 (369) = happyShift action_99 action_488 (370) = happyShift action_100 action_488 (371) = happyShift action_101 action_488 (381) = happyShift action_151 action_488 (383) = happyShift action_106 action_488 (402) = happyShift action_112 action_488 (416) = happyShift action_152 action_488 (417) = happyShift action_153 action_488 (103) = happyGoto action_117 action_488 (105) = happyGoto action_118 action_488 (108) = happyGoto action_119 action_488 (109) = happyGoto action_120 action_488 (110) = happyGoto action_121 action_488 (111) = happyGoto action_122 action_488 (112) = happyGoto action_123 action_488 (113) = happyGoto action_124 action_488 (114) = happyGoto action_125 action_488 (115) = happyGoto action_126 action_488 (118) = happyGoto action_694 action_488 (119) = happyGoto action_129 action_488 (232) = happyGoto action_130 action_488 (245) = happyGoto action_131 action_488 (247) = happyGoto action_45 action_488 (248) = happyGoto action_132 action_488 (249) = happyGoto action_47 action_488 (270) = happyGoto action_133 action_488 (271) = happyGoto action_134 action_488 _ = happyFail action_489 (380) = happyShift action_693 action_489 _ = happyReduce_157 action_490 (299) = happyShift action_692 action_490 _ = happyFail action_491 (390) = happyShift action_691 action_491 _ = happyFail action_492 _ = happyReduce_95 action_493 _ = happyReduce_96 action_494 _ = happyReduce_97 action_495 (422) = happyShift action_688 action_495 (423) = happyShift action_689 action_495 (424) = happyShift action_690 action_495 (66) = happyGoto action_687 action_495 _ = happyReduce_148 action_496 _ = happyReduce_158 action_497 (278) = happyShift action_49 action_497 (282) = happyShift action_53 action_497 (283) = happyShift action_54 action_497 (289) = happyShift action_135 action_497 (292) = happyShift action_136 action_497 (299) = happyShift action_137 action_497 (301) = happyShift action_138 action_497 (307) = happyShift action_139 action_497 (309) = happyShift action_140 action_497 (312) = happyShift action_141 action_497 (325) = happyShift action_142 action_497 (328) = happyShift action_143 action_497 (337) = happyShift action_144 action_497 (338) = happyShift action_145 action_497 (344) = happyShift action_146 action_497 (346) = happyShift action_147 action_497 (358) = happyShift action_88 action_497 (359) = happyShift action_148 action_497 (360) = happyShift action_149 action_497 (361) = happyShift action_150 action_497 (363) = happyShift action_93 action_497 (364) = happyShift action_94 action_497 (365) = happyShift action_95 action_497 (366) = happyShift action_96 action_497 (367) = happyShift action_97 action_497 (368) = happyShift action_98 action_497 (369) = happyShift action_99 action_497 (370) = happyShift action_100 action_497 (371) = happyShift action_101 action_497 (380) = happyShift action_684 action_497 (383) = happyShift action_106 action_497 (390) = happyShift action_685 action_497 (402) = happyShift action_112 action_497 (403) = happyShift action_686 action_497 (416) = happyShift action_152 action_497 (417) = happyShift action_153 action_497 (103) = happyGoto action_683 action_497 (108) = happyGoto action_193 action_497 (109) = happyGoto action_120 action_497 (110) = happyGoto action_121 action_497 (111) = happyGoto action_122 action_497 (112) = happyGoto action_123 action_497 (113) = happyGoto action_124 action_497 (114) = happyGoto action_125 action_497 (115) = happyGoto action_126 action_497 (245) = happyGoto action_131 action_497 (248) = happyGoto action_132 action_497 (249) = happyGoto action_47 action_497 (270) = happyGoto action_133 action_497 (271) = happyGoto action_134 action_497 _ = happyFail action_498 (278) = happyShift action_49 action_498 (282) = happyShift action_53 action_498 (299) = happyShift action_682 action_498 (358) = happyShift action_88 action_498 (359) = happyShift action_89 action_498 (360) = happyShift action_90 action_498 (361) = happyShift action_91 action_498 (362) = happyShift action_92 action_498 (363) = happyShift action_93 action_498 (364) = happyShift action_94 action_498 (365) = happyShift action_95 action_498 (366) = happyShift action_96 action_498 (367) = happyShift action_97 action_498 (368) = happyShift action_98 action_498 (369) = happyShift action_99 action_498 (370) = happyShift action_100 action_498 (371) = happyShift action_101 action_498 (380) = happyShift action_104 action_498 (381) = happyShift action_105 action_498 (383) = happyShift action_106 action_498 (402) = happyShift action_112 action_498 (403) = happyShift action_113 action_498 (233) = happyGoto action_679 action_498 (245) = happyGoto action_43 action_498 (246) = happyGoto action_680 action_498 (249) = happyGoto action_391 action_498 (262) = happyGoto action_681 action_498 _ = happyFail action_499 (307) = happyShift action_674 action_499 (93) = happyGoto action_678 action_499 _ = happyReduce_219 action_500 (307) = happyShift action_674 action_500 (93) = happyGoto action_677 action_500 _ = happyReduce_219 action_501 (307) = happyShift action_674 action_501 (390) = happyShift action_676 action_501 (93) = happyGoto action_675 action_501 _ = happyReduce_219 action_502 (307) = happyShift action_674 action_502 (93) = happyGoto action_673 action_502 _ = happyReduce_219 action_503 (292) = happyShift action_672 action_503 (91) = happyGoto action_670 action_503 (92) = happyGoto action_671 action_503 _ = happyReduce_217 action_504 (278) = happyShift action_49 action_504 (282) = happyShift action_53 action_504 (299) = happyShift action_392 action_504 (358) = happyShift action_88 action_504 (359) = happyShift action_89 action_504 (360) = happyShift action_90 action_504 (361) = happyShift action_91 action_504 (362) = happyShift action_92 action_504 (363) = happyShift action_93 action_504 (364) = happyShift action_94 action_504 (365) = happyShift action_95 action_504 (366) = happyShift action_96 action_504 (367) = happyShift action_97 action_504 (368) = happyShift action_98 action_504 (369) = happyShift action_99 action_504 (370) = happyShift action_100 action_504 (371) = happyShift action_101 action_504 (380) = happyShift action_104 action_504 (381) = happyShift action_105 action_504 (383) = happyShift action_106 action_504 (402) = happyShift action_112 action_504 (403) = happyShift action_113 action_504 (97) = happyGoto action_669 action_504 (98) = happyGoto action_666 action_504 (99) = happyGoto action_667 action_504 (100) = happyGoto action_668 action_504 (229) = happyGoto action_388 action_504 (233) = happyGoto action_389 action_504 (245) = happyGoto action_43 action_504 (246) = happyGoto action_390 action_504 (249) = happyGoto action_391 action_504 _ = happyReduce_231 action_505 (278) = happyShift action_49 action_505 (282) = happyShift action_53 action_505 (299) = happyShift action_392 action_505 (358) = happyShift action_88 action_505 (359) = happyShift action_89 action_505 (360) = happyShift action_90 action_505 (361) = happyShift action_91 action_505 (362) = happyShift action_92 action_505 (363) = happyShift action_93 action_505 (364) = happyShift action_94 action_505 (365) = happyShift action_95 action_505 (366) = happyShift action_96 action_505 (367) = happyShift action_97 action_505 (368) = happyShift action_98 action_505 (369) = happyShift action_99 action_505 (370) = happyShift action_100 action_505 (371) = happyShift action_101 action_505 (380) = happyShift action_104 action_505 (381) = happyShift action_105 action_505 (383) = happyShift action_106 action_505 (402) = happyShift action_112 action_505 (403) = happyShift action_113 action_505 (97) = happyGoto action_665 action_505 (98) = happyGoto action_666 action_505 (99) = happyGoto action_667 action_505 (100) = happyGoto action_668 action_505 (229) = happyGoto action_388 action_505 (233) = happyGoto action_389 action_505 (245) = happyGoto action_43 action_505 (246) = happyGoto action_390 action_505 (249) = happyGoto action_391 action_505 _ = happyReduce_231 action_506 (278) = happyShift action_49 action_506 (282) = happyShift action_53 action_506 (299) = happyShift action_392 action_506 (358) = happyShift action_88 action_506 (359) = happyShift action_89 action_506 (360) = happyShift action_90 action_506 (361) = happyShift action_91 action_506 (362) = happyShift action_92 action_506 (363) = happyShift action_93 action_506 (364) = happyShift action_94 action_506 (365) = happyShift action_95 action_506 (366) = happyShift action_96 action_506 (367) = happyShift action_97 action_506 (368) = happyShift action_98 action_506 (369) = happyShift action_99 action_506 (370) = happyShift action_100 action_506 (371) = happyShift action_101 action_506 (380) = happyShift action_104 action_506 (381) = happyShift action_105 action_506 (383) = happyShift action_106 action_506 (393) = happyShift action_393 action_506 (399) = happyShift action_394 action_506 (402) = happyShift action_112 action_506 (403) = happyShift action_113 action_506 (100) = happyGoto action_386 action_506 (101) = happyGoto action_664 action_506 (229) = happyGoto action_388 action_506 (233) = happyGoto action_389 action_506 (245) = happyGoto action_43 action_506 (246) = happyGoto action_390 action_506 (249) = happyGoto action_391 action_506 _ = happyFail action_507 (278) = happyShift action_49 action_507 (299) = happyShift action_663 action_507 (358) = happyShift action_88 action_507 (359) = happyShift action_89 action_507 (360) = happyShift action_90 action_507 (361) = happyShift action_91 action_507 (362) = happyShift action_92 action_507 (363) = happyShift action_93 action_507 (364) = happyShift action_94 action_507 (365) = happyShift action_95 action_507 (366) = happyShift action_96 action_507 (367) = happyShift action_97 action_507 (368) = happyShift action_98 action_507 (369) = happyShift action_99 action_507 (370) = happyShift action_100 action_507 (371) = happyShift action_101 action_507 (380) = happyShift action_104 action_507 (381) = happyShift action_105 action_507 (383) = happyShift action_106 action_507 (402) = happyShift action_112 action_507 (403) = happyShift action_113 action_507 (82) = happyGoto action_658 action_507 (83) = happyGoto action_659 action_507 (84) = happyGoto action_660 action_507 (85) = happyGoto action_661 action_507 (229) = happyGoto action_662 action_507 (245) = happyGoto action_43 action_507 (246) = happyGoto action_390 action_507 _ = happyReduce_187 action_508 (300) = happyShift action_430 action_508 _ = happyFail action_509 (278) = happyShift action_256 action_509 (282) = happyShift action_257 action_509 (284) = happyShift action_258 action_509 (357) = happyShift action_259 action_509 (358) = happyShift action_260 action_509 (359) = happyShift action_261 action_509 (360) = happyShift action_262 action_509 (361) = happyShift action_263 action_509 (362) = happyShift action_264 action_509 (363) = happyShift action_265 action_509 (364) = happyShift action_266 action_509 (365) = happyShift action_267 action_509 (366) = happyShift action_268 action_509 (367) = happyShift action_269 action_509 (368) = happyShift action_270 action_509 (369) = happyShift action_271 action_509 (370) = happyShift action_272 action_509 (371) = happyShift action_273 action_509 (372) = happyShift action_274 action_509 (373) = happyShift action_275 action_509 (374) = happyShift action_276 action_509 (375) = happyShift action_277 action_509 (376) = happyShift action_278 action_509 (377) = happyShift action_279 action_509 (378) = happyShift action_280 action_509 (379) = happyShift action_281 action_509 (380) = happyShift action_282 action_509 (381) = happyShift action_283 action_509 (382) = happyShift action_284 action_509 (383) = happyShift action_285 action_509 (384) = happyShift action_286 action_509 (385) = happyShift action_287 action_509 (386) = happyShift action_288 action_509 (387) = happyShift action_289 action_509 (388) = happyShift action_290 action_509 (389) = happyShift action_291 action_509 (390) = happyShift action_292 action_509 (391) = happyShift action_293 action_509 (392) = happyShift action_294 action_509 (393) = happyShift action_295 action_509 (394) = happyShift action_296 action_509 (395) = happyShift action_297 action_509 (396) = happyShift action_298 action_509 (397) = happyShift action_299 action_509 (398) = happyShift action_300 action_509 (399) = happyShift action_301 action_509 (400) = happyShift action_302 action_509 (401) = happyShift action_303 action_509 (402) = happyShift action_304 action_509 (194) = happyGoto action_657 action_509 (195) = happyGoto action_255 action_509 _ = happyFail action_510 (278) = happyShift action_637 action_510 (279) = happyShift action_50 action_510 (280) = happyShift action_51 action_510 (281) = happyShift action_52 action_510 (282) = happyShift action_638 action_510 (283) = happyShift action_54 action_510 (284) = happyShift action_258 action_510 (289) = happyShift action_55 action_510 (290) = happyShift action_56 action_510 (291) = happyShift action_57 action_510 (292) = happyShift action_58 action_510 (293) = happyShift action_59 action_510 (294) = happyShift action_60 action_510 (295) = happyShift action_61 action_510 (296) = happyShift action_62 action_510 (297) = happyShift action_63 action_510 (298) = happyShift action_64 action_510 (299) = happyShift action_65 action_510 (301) = happyShift action_66 action_510 (307) = happyShift action_67 action_510 (309) = happyShift action_68 action_510 (312) = happyShift action_69 action_510 (324) = happyShift action_71 action_510 (325) = happyShift action_72 action_510 (334) = happyShift action_75 action_510 (337) = happyShift action_76 action_510 (338) = happyShift action_77 action_510 (339) = happyShift action_78 action_510 (340) = happyShift action_79 action_510 (341) = happyShift action_80 action_510 (342) = happyShift action_81 action_510 (344) = happyShift action_82 action_510 (345) = happyShift action_83 action_510 (346) = happyShift action_84 action_510 (348) = happyShift action_85 action_510 (350) = happyShift action_86 action_510 (351) = happyShift action_87 action_510 (357) = happyShift action_259 action_510 (358) = happyShift action_639 action_510 (359) = happyShift action_640 action_510 (360) = happyShift action_641 action_510 (361) = happyShift action_642 action_510 (362) = happyShift action_643 action_510 (363) = happyShift action_644 action_510 (364) = happyShift action_645 action_510 (365) = happyShift action_646 action_510 (366) = happyShift action_647 action_510 (367) = happyShift action_648 action_510 (368) = happyShift action_649 action_510 (369) = happyShift action_650 action_510 (370) = happyShift action_651 action_510 (371) = happyShift action_652 action_510 (372) = happyShift action_274 action_510 (373) = happyShift action_275 action_510 (374) = happyShift action_276 action_510 (375) = happyShift action_277 action_510 (376) = happyShift action_278 action_510 (377) = happyShift action_279 action_510 (378) = happyShift action_280 action_510 (379) = happyShift action_281 action_510 (380) = happyShift action_653 action_510 (381) = happyShift action_654 action_510 (382) = happyShift action_284 action_510 (383) = happyShift action_655 action_510 (384) = happyShift action_286 action_510 (385) = happyShift action_287 action_510 (386) = happyShift action_288 action_510 (387) = happyShift action_289 action_510 (388) = happyShift action_290 action_510 (389) = happyShift action_291 action_510 (390) = happyShift action_292 action_510 (391) = happyShift action_293 action_510 (392) = happyShift action_294 action_510 (393) = happyShift action_295 action_510 (394) = happyShift action_296 action_510 (395) = happyShift action_297 action_510 (396) = happyShift action_298 action_510 (397) = happyShift action_299 action_510 (398) = happyShift action_300 action_510 (399) = happyShift action_301 action_510 (400) = happyShift action_302 action_510 (401) = happyShift action_303 action_510 (402) = happyShift action_656 action_510 (403) = happyShift action_113 action_510 (181) = happyGoto action_633 action_510 (182) = happyGoto action_33 action_510 (183) = happyGoto action_34 action_510 (190) = happyGoto action_35 action_510 (193) = happyGoto action_634 action_510 (194) = happyGoto action_254 action_510 (195) = happyGoto action_255 action_510 (197) = happyGoto action_635 action_510 (198) = happyGoto action_636 action_510 (228) = happyGoto action_38 action_510 (231) = happyGoto action_39 action_510 (232) = happyGoto action_40 action_510 (234) = happyGoto action_41 action_510 (244) = happyGoto action_42 action_510 (245) = happyGoto action_43 action_510 (246) = happyGoto action_44 action_510 (247) = happyGoto action_45 action_510 (248) = happyGoto action_46 action_510 (249) = happyGoto action_47 action_510 (257) = happyGoto action_48 action_510 _ = happyReduce_557 action_511 _ = happyReduce_494 action_512 (349) = happyShift action_632 action_512 _ = happyFail action_513 _ = happyReduce_500 action_514 _ = happyReduce_496 action_515 _ = happyReduce_422 action_516 _ = happyReduce_498 action_517 (278) = happyShift action_49 action_517 (279) = happyShift action_50 action_517 (280) = happyShift action_51 action_517 (281) = happyShift action_52 action_517 (282) = happyShift action_53 action_517 (283) = happyShift action_54 action_517 (289) = happyShift action_55 action_517 (290) = happyShift action_56 action_517 (291) = happyShift action_57 action_517 (292) = happyShift action_58 action_517 (293) = happyShift action_59 action_517 (294) = happyShift action_60 action_517 (295) = happyShift action_61 action_517 (296) = happyShift action_62 action_517 (297) = happyShift action_63 action_517 (298) = happyShift action_64 action_517 (299) = happyShift action_65 action_517 (301) = happyShift action_66 action_517 (307) = happyShift action_67 action_517 (309) = happyShift action_68 action_517 (312) = happyShift action_69 action_517 (319) = happyShift action_70 action_517 (324) = happyShift action_71 action_517 (325) = happyShift action_72 action_517 (327) = happyShift action_73 action_517 (334) = happyShift action_75 action_517 (337) = happyShift action_76 action_517 (338) = happyShift action_77 action_517 (339) = happyShift action_78 action_517 (340) = happyShift action_79 action_517 (341) = happyShift action_80 action_517 (342) = happyShift action_81 action_517 (344) = happyShift action_82 action_517 (345) = happyShift action_83 action_517 (346) = happyShift action_84 action_517 (348) = happyShift action_85 action_517 (350) = happyShift action_86 action_517 (351) = happyShift action_87 action_517 (358) = happyShift action_88 action_517 (359) = happyShift action_89 action_517 (360) = happyShift action_90 action_517 (361) = happyShift action_91 action_517 (362) = happyShift action_92 action_517 (363) = happyShift action_93 action_517 (364) = happyShift action_94 action_517 (365) = happyShift action_95 action_517 (366) = happyShift action_96 action_517 (367) = happyShift action_97 action_517 (368) = happyShift action_98 action_517 (369) = happyShift action_99 action_517 (370) = happyShift action_100 action_517 (371) = happyShift action_101 action_517 (373) = happyShift action_102 action_517 (378) = happyShift action_103 action_517 (380) = happyShift action_104 action_517 (381) = happyShift action_105 action_517 (383) = happyShift action_106 action_517 (384) = happyShift action_107 action_517 (391) = happyShift action_159 action_517 (392) = happyShift action_109 action_517 (396) = happyShift action_110 action_517 (402) = happyShift action_112 action_517 (403) = happyShift action_113 action_517 (411) = happyShift action_114 action_517 (412) = happyShift action_115 action_517 (413) = happyShift action_116 action_517 (169) = happyGoto action_630 action_517 (170) = happyGoto action_25 action_517 (171) = happyGoto action_26 action_517 (172) = happyGoto action_27 action_517 (173) = happyGoto action_28 action_517 (176) = happyGoto action_29 action_517 (177) = happyGoto action_30 action_517 (178) = happyGoto action_31 action_517 (181) = happyGoto action_32 action_517 (182) = happyGoto action_33 action_517 (183) = happyGoto action_34 action_517 (188) = happyGoto action_631 action_517 (190) = happyGoto action_35 action_517 (228) = happyGoto action_38 action_517 (231) = happyGoto action_39 action_517 (232) = happyGoto action_40 action_517 (234) = happyGoto action_41 action_517 (244) = happyGoto action_42 action_517 (245) = happyGoto action_43 action_517 (246) = happyGoto action_44 action_517 (247) = happyGoto action_45 action_517 (248) = happyGoto action_46 action_517 (249) = happyGoto action_47 action_517 (257) = happyGoto action_48 action_517 _ = happyFail action_518 (304) = happyShift action_458 action_518 (208) = happyGoto action_629 action_518 (258) = happyGoto action_457 action_518 _ = happyReduce_714 action_519 (303) = happyShift action_566 action_519 (320) = happyShift action_628 action_519 (214) = happyGoto action_626 action_519 (218) = happyGoto action_627 action_519 _ = happyFail action_520 (305) = happyShift action_625 action_520 _ = happyFail action_521 (1) = happyShift action_400 action_521 (306) = happyShift action_401 action_521 (259) = happyGoto action_624 action_521 _ = happyFail action_522 (398) = happyShift action_623 action_522 _ = happyFail action_523 _ = happyReduce_420 action_524 (278) = happyShift action_49 action_524 (279) = happyShift action_50 action_524 (280) = happyShift action_51 action_524 (281) = happyShift action_52 action_524 (282) = happyShift action_53 action_524 (283) = happyShift action_54 action_524 (289) = happyShift action_55 action_524 (290) = happyShift action_56 action_524 (291) = happyShift action_57 action_524 (292) = happyShift action_58 action_524 (293) = happyShift action_59 action_524 (294) = happyShift action_60 action_524 (295) = happyShift action_61 action_524 (296) = happyShift action_62 action_524 (297) = happyShift action_63 action_524 (298) = happyShift action_64 action_524 (299) = happyShift action_65 action_524 (301) = happyShift action_66 action_524 (307) = happyShift action_67 action_524 (309) = happyShift action_68 action_524 (312) = happyShift action_69 action_524 (319) = happyShift action_70 action_524 (324) = happyShift action_71 action_524 (325) = happyShift action_72 action_524 (327) = happyShift action_73 action_524 (334) = happyShift action_75 action_524 (337) = happyShift action_76 action_524 (338) = happyShift action_77 action_524 (339) = happyShift action_78 action_524 (340) = happyShift action_79 action_524 (341) = happyShift action_80 action_524 (342) = happyShift action_81 action_524 (344) = happyShift action_82 action_524 (345) = happyShift action_83 action_524 (346) = happyShift action_84 action_524 (348) = happyShift action_85 action_524 (350) = happyShift action_86 action_524 (351) = happyShift action_87 action_524 (358) = happyShift action_88 action_524 (359) = happyShift action_89 action_524 (360) = happyShift action_90 action_524 (361) = happyShift action_91 action_524 (362) = happyShift action_92 action_524 (363) = happyShift action_93 action_524 (364) = happyShift action_94 action_524 (365) = happyShift action_95 action_524 (366) = happyShift action_96 action_524 (367) = happyShift action_97 action_524 (368) = happyShift action_98 action_524 (369) = happyShift action_99 action_524 (370) = happyShift action_100 action_524 (371) = happyShift action_101 action_524 (373) = happyShift action_102 action_524 (378) = happyShift action_103 action_524 (380) = happyShift action_104 action_524 (381) = happyShift action_105 action_524 (383) = happyShift action_106 action_524 (384) = happyShift action_107 action_524 (391) = happyShift action_159 action_524 (392) = happyShift action_109 action_524 (396) = happyShift action_110 action_524 (402) = happyShift action_112 action_524 (403) = happyShift action_113 action_524 (411) = happyShift action_114 action_524 (412) = happyShift action_115 action_524 (413) = happyShift action_116 action_524 (169) = happyGoto action_622 action_524 (170) = happyGoto action_25 action_524 (171) = happyGoto action_26 action_524 (172) = happyGoto action_27 action_524 (173) = happyGoto action_28 action_524 (176) = happyGoto action_29 action_524 (177) = happyGoto action_30 action_524 (178) = happyGoto action_31 action_524 (181) = happyGoto action_32 action_524 (182) = happyGoto action_33 action_524 (183) = happyGoto action_34 action_524 (190) = happyGoto action_35 action_524 (228) = happyGoto action_38 action_524 (231) = happyGoto action_39 action_524 (232) = happyGoto action_40 action_524 (234) = happyGoto action_41 action_524 (244) = happyGoto action_42 action_524 (245) = happyGoto action_43 action_524 (246) = happyGoto action_44 action_524 (247) = happyGoto action_45 action_524 (248) = happyGoto action_46 action_524 (249) = happyGoto action_47 action_524 (257) = happyGoto action_48 action_524 _ = happyFail action_525 _ = happyReduce_438 action_526 (278) = happyShift action_49 action_526 (279) = happyShift action_50 action_526 (280) = happyShift action_51 action_526 (281) = happyShift action_52 action_526 (282) = happyShift action_53 action_526 (283) = happyShift action_54 action_526 (289) = happyShift action_55 action_526 (290) = happyShift action_56 action_526 (291) = happyShift action_57 action_526 (292) = happyShift action_58 action_526 (293) = happyShift action_59 action_526 (294) = happyShift action_60 action_526 (295) = happyShift action_61 action_526 (296) = happyShift action_62 action_526 (297) = happyShift action_63 action_526 (298) = happyShift action_64 action_526 (299) = happyShift action_65 action_526 (301) = happyShift action_66 action_526 (307) = happyShift action_67 action_526 (309) = happyShift action_68 action_526 (312) = happyShift action_69 action_526 (319) = happyShift action_70 action_526 (324) = happyShift action_71 action_526 (325) = happyShift action_72 action_526 (327) = happyShift action_73 action_526 (334) = happyShift action_75 action_526 (337) = happyShift action_76 action_526 (338) = happyShift action_77 action_526 (339) = happyShift action_78 action_526 (340) = happyShift action_79 action_526 (341) = happyShift action_80 action_526 (342) = happyShift action_81 action_526 (344) = happyShift action_82 action_526 (345) = happyShift action_83 action_526 (346) = happyShift action_84 action_526 (348) = happyShift action_85 action_526 (350) = happyShift action_86 action_526 (351) = happyShift action_87 action_526 (358) = happyShift action_88 action_526 (359) = happyShift action_89 action_526 (360) = happyShift action_90 action_526 (361) = happyShift action_91 action_526 (362) = happyShift action_92 action_526 (363) = happyShift action_93 action_526 (364) = happyShift action_94 action_526 (365) = happyShift action_95 action_526 (366) = happyShift action_96 action_526 (367) = happyShift action_97 action_526 (368) = happyShift action_98 action_526 (369) = happyShift action_99 action_526 (370) = happyShift action_100 action_526 (371) = happyShift action_101 action_526 (373) = happyShift action_102 action_526 (378) = happyShift action_103 action_526 (380) = happyShift action_104 action_526 (381) = happyShift action_105 action_526 (383) = happyShift action_106 action_526 (384) = happyShift action_107 action_526 (391) = happyShift action_159 action_526 (392) = happyShift action_109 action_526 (396) = happyShift action_110 action_526 (402) = happyShift action_112 action_526 (403) = happyShift action_113 action_526 (411) = happyShift action_114 action_526 (412) = happyShift action_115 action_526 (413) = happyShift action_116 action_526 (169) = happyGoto action_621 action_526 (170) = happyGoto action_25 action_526 (171) = happyGoto action_26 action_526 (172) = happyGoto action_27 action_526 (173) = happyGoto action_28 action_526 (176) = happyGoto action_29 action_526 (177) = happyGoto action_30 action_526 (178) = happyGoto action_31 action_526 (181) = happyGoto action_32 action_526 (182) = happyGoto action_33 action_526 (183) = happyGoto action_34 action_526 (190) = happyGoto action_35 action_526 (228) = happyGoto action_38 action_526 (231) = happyGoto action_39 action_526 (232) = happyGoto action_40 action_526 (234) = happyGoto action_41 action_526 (244) = happyGoto action_42 action_526 (245) = happyGoto action_43 action_526 (246) = happyGoto action_44 action_526 (247) = happyGoto action_45 action_526 (248) = happyGoto action_46 action_526 (249) = happyGoto action_47 action_526 (257) = happyGoto action_48 action_526 _ = happyFail action_527 (305) = happyShift action_620 action_527 _ = happyFail action_528 (303) = happyShift action_619 action_528 (221) = happyGoto action_618 action_528 _ = happyReduce_613 action_529 (278) = happyShift action_49 action_529 (279) = happyShift action_50 action_529 (280) = happyShift action_51 action_529 (281) = happyShift action_52 action_529 (282) = happyShift action_53 action_529 (283) = happyShift action_54 action_529 (289) = happyShift action_55 action_529 (290) = happyShift action_56 action_529 (291) = happyShift action_57 action_529 (292) = happyShift action_58 action_529 (293) = happyShift action_59 action_529 (294) = happyShift action_60 action_529 (295) = happyShift action_61 action_529 (296) = happyShift action_62 action_529 (297) = happyShift action_63 action_529 (298) = happyShift action_64 action_529 (299) = happyShift action_65 action_529 (301) = happyShift action_66 action_529 (303) = happyShift action_529 action_529 (307) = happyShift action_67 action_529 (309) = happyShift action_68 action_529 (312) = happyShift action_69 action_529 (319) = happyShift action_70 action_529 (324) = happyShift action_71 action_529 (325) = happyShift action_72 action_529 (327) = happyShift action_73 action_529 (328) = happyShift action_74 action_529 (334) = happyShift action_75 action_529 (337) = happyShift action_76 action_529 (338) = happyShift action_77 action_529 (339) = happyShift action_78 action_529 (340) = happyShift action_79 action_529 (341) = happyShift action_80 action_529 (342) = happyShift action_81 action_529 (344) = happyShift action_82 action_529 (345) = happyShift action_83 action_529 (346) = happyShift action_84 action_529 (348) = happyShift action_85 action_529 (350) = happyShift action_86 action_529 (351) = happyShift action_87 action_529 (358) = happyShift action_88 action_529 (359) = happyShift action_89 action_529 (360) = happyShift action_90 action_529 (361) = happyShift action_91 action_529 (362) = happyShift action_92 action_529 (363) = happyShift action_93 action_529 (364) = happyShift action_94 action_529 (365) = happyShift action_95 action_529 (366) = happyShift action_96 action_529 (367) = happyShift action_97 action_529 (368) = happyShift action_98 action_529 (369) = happyShift action_99 action_529 (370) = happyShift action_100 action_529 (371) = happyShift action_101 action_529 (373) = happyShift action_102 action_529 (378) = happyShift action_103 action_529 (380) = happyShift action_104 action_529 (381) = happyShift action_105 action_529 (383) = happyShift action_106 action_529 (384) = happyShift action_107 action_529 (391) = happyShift action_108 action_529 (392) = happyShift action_109 action_529 (396) = happyShift action_110 action_529 (397) = happyShift action_111 action_529 (402) = happyShift action_112 action_529 (403) = happyShift action_113 action_529 (411) = happyShift action_114 action_529 (412) = happyShift action_115 action_529 (413) = happyShift action_116 action_529 (168) = happyGoto action_23 action_529 (169) = happyGoto action_24 action_529 (170) = happyGoto action_25 action_529 (171) = happyGoto action_26 action_529 (172) = happyGoto action_27 action_529 (173) = happyGoto action_28 action_529 (176) = happyGoto action_29 action_529 (177) = happyGoto action_30 action_529 (178) = happyGoto action_31 action_529 (181) = happyGoto action_32 action_529 (182) = happyGoto action_33 action_529 (183) = happyGoto action_34 action_529 (190) = happyGoto action_35 action_529 (215) = happyGoto action_36 action_529 (220) = happyGoto action_617 action_529 (222) = happyGoto action_528 action_529 (228) = happyGoto action_38 action_529 (231) = happyGoto action_39 action_529 (232) = happyGoto action_40 action_529 (234) = happyGoto action_41 action_529 (244) = happyGoto action_42 action_529 (245) = happyGoto action_43 action_529 (246) = happyGoto action_44 action_529 (247) = happyGoto action_45 action_529 (248) = happyGoto action_46 action_529 (249) = happyGoto action_47 action_529 (257) = happyGoto action_48 action_529 _ = happyReduce_611 action_530 (1) = happyShift action_400 action_530 (306) = happyShift action_401 action_530 (259) = happyGoto action_616 action_530 _ = happyFail action_531 (278) = happyShift action_49 action_531 (279) = happyShift action_50 action_531 (280) = happyShift action_51 action_531 (281) = happyShift action_52 action_531 (282) = happyShift action_53 action_531 (283) = happyShift action_54 action_531 (289) = happyShift action_55 action_531 (290) = happyShift action_56 action_531 (291) = happyShift action_57 action_531 (292) = happyShift action_58 action_531 (293) = happyShift action_59 action_531 (294) = happyShift action_60 action_531 (295) = happyShift action_61 action_531 (296) = happyShift action_62 action_531 (297) = happyShift action_63 action_531 (298) = happyShift action_64 action_531 (299) = happyShift action_65 action_531 (301) = happyShift action_66 action_531 (307) = happyShift action_67 action_531 (309) = happyShift action_68 action_531 (312) = happyShift action_69 action_531 (319) = happyShift action_70 action_531 (324) = happyShift action_71 action_531 (325) = happyShift action_72 action_531 (327) = happyShift action_73 action_531 (334) = happyShift action_75 action_531 (337) = happyShift action_76 action_531 (338) = happyShift action_77 action_531 (339) = happyShift action_78 action_531 (340) = happyShift action_79 action_531 (341) = happyShift action_80 action_531 (342) = happyShift action_81 action_531 (344) = happyShift action_82 action_531 (345) = happyShift action_83 action_531 (346) = happyShift action_84 action_531 (348) = happyShift action_85 action_531 (350) = happyShift action_86 action_531 (351) = happyShift action_87 action_531 (358) = happyShift action_88 action_531 (359) = happyShift action_89 action_531 (360) = happyShift action_90 action_531 (361) = happyShift action_91 action_531 (362) = happyShift action_92 action_531 (363) = happyShift action_93 action_531 (364) = happyShift action_94 action_531 (365) = happyShift action_95 action_531 (366) = happyShift action_96 action_531 (367) = happyShift action_97 action_531 (368) = happyShift action_98 action_531 (369) = happyShift action_99 action_531 (370) = happyShift action_100 action_531 (371) = happyShift action_101 action_531 (373) = happyShift action_102 action_531 (378) = happyShift action_103 action_531 (380) = happyShift action_104 action_531 (381) = happyShift action_105 action_531 (383) = happyShift action_106 action_531 (384) = happyShift action_107 action_531 (391) = happyShift action_159 action_531 (392) = happyShift action_109 action_531 (396) = happyShift action_110 action_531 (402) = happyShift action_112 action_531 (403) = happyShift action_113 action_531 (411) = happyShift action_114 action_531 (412) = happyShift action_115 action_531 (413) = happyShift action_116 action_531 (169) = happyGoto action_615 action_531 (170) = happyGoto action_25 action_531 (171) = happyGoto action_26 action_531 (172) = happyGoto action_27 action_531 (173) = happyGoto action_28 action_531 (176) = happyGoto action_29 action_531 (177) = happyGoto action_30 action_531 (178) = happyGoto action_31 action_531 (181) = happyGoto action_32 action_531 (182) = happyGoto action_33 action_531 (183) = happyGoto action_34 action_531 (190) = happyGoto action_35 action_531 (228) = happyGoto action_38 action_531 (231) = happyGoto action_39 action_531 (232) = happyGoto action_40 action_531 (234) = happyGoto action_41 action_531 (244) = happyGoto action_42 action_531 (245) = happyGoto action_43 action_531 (246) = happyGoto action_44 action_531 (247) = happyGoto action_45 action_531 (248) = happyGoto action_46 action_531 (249) = happyGoto action_47 action_531 (257) = happyGoto action_48 action_531 _ = happyFail action_532 (278) = happyShift action_49 action_532 (279) = happyShift action_50 action_532 (280) = happyShift action_51 action_532 (281) = happyShift action_52 action_532 (282) = happyShift action_53 action_532 (283) = happyShift action_54 action_532 (289) = happyShift action_55 action_532 (290) = happyShift action_56 action_532 (291) = happyShift action_57 action_532 (292) = happyShift action_58 action_532 (293) = happyShift action_59 action_532 (294) = happyShift action_60 action_532 (295) = happyShift action_61 action_532 (296) = happyShift action_62 action_532 (297) = happyShift action_63 action_532 (298) = happyShift action_64 action_532 (299) = happyShift action_65 action_532 (301) = happyShift action_66 action_532 (307) = happyShift action_67 action_532 (309) = happyShift action_68 action_532 (312) = happyShift action_69 action_532 (319) = happyShift action_70 action_532 (324) = happyShift action_71 action_532 (325) = happyShift action_72 action_532 (327) = happyShift action_73 action_532 (334) = happyShift action_75 action_532 (337) = happyShift action_76 action_532 (338) = happyShift action_77 action_532 (339) = happyShift action_78 action_532 (340) = happyShift action_79 action_532 (341) = happyShift action_80 action_532 (342) = happyShift action_81 action_532 (344) = happyShift action_82 action_532 (345) = happyShift action_83 action_532 (346) = happyShift action_84 action_532 (348) = happyShift action_85 action_532 (350) = happyShift action_86 action_532 (351) = happyShift action_87 action_532 (358) = happyShift action_88 action_532 (359) = happyShift action_89 action_532 (360) = happyShift action_90 action_532 (361) = happyShift action_91 action_532 (362) = happyShift action_92 action_532 (363) = happyShift action_93 action_532 (364) = happyShift action_94 action_532 (365) = happyShift action_95 action_532 (366) = happyShift action_96 action_532 (367) = happyShift action_97 action_532 (368) = happyShift action_98 action_532 (369) = happyShift action_99 action_532 (370) = happyShift action_100 action_532 (371) = happyShift action_101 action_532 (373) = happyShift action_102 action_532 (378) = happyShift action_103 action_532 (380) = happyShift action_104 action_532 (381) = happyShift action_105 action_532 (383) = happyShift action_106 action_532 (384) = happyShift action_107 action_532 (391) = happyShift action_159 action_532 (392) = happyShift action_109 action_532 (396) = happyShift action_110 action_532 (402) = happyShift action_112 action_532 (403) = happyShift action_113 action_532 (411) = happyShift action_114 action_532 (412) = happyShift action_115 action_532 (413) = happyShift action_116 action_532 (169) = happyGoto action_614 action_532 (170) = happyGoto action_25 action_532 (171) = happyGoto action_26 action_532 (172) = happyGoto action_27 action_532 (173) = happyGoto action_28 action_532 (176) = happyGoto action_29 action_532 (177) = happyGoto action_30 action_532 (178) = happyGoto action_31 action_532 (181) = happyGoto action_32 action_532 (182) = happyGoto action_33 action_532 (183) = happyGoto action_34 action_532 (190) = happyGoto action_35 action_532 (228) = happyGoto action_38 action_532 (231) = happyGoto action_39 action_532 (232) = happyGoto action_40 action_532 (234) = happyGoto action_41 action_532 (244) = happyGoto action_42 action_532 (245) = happyGoto action_43 action_532 (246) = happyGoto action_44 action_532 (247) = happyGoto action_45 action_532 (248) = happyGoto action_46 action_532 (249) = happyGoto action_47 action_532 (257) = happyGoto action_48 action_532 _ = happyFail action_533 (316) = happyShift action_613 action_533 _ = happyFail action_534 _ = happyReduce_244 action_535 (313) = happyShift action_612 action_535 _ = happyFail action_536 _ = happyReduce_243 action_537 _ = happyReduce_242 action_538 _ = happyReduce_246 action_539 _ = happyReduce_284 action_540 _ = happyReduce_291 action_541 _ = happyReduce_290 action_542 _ = happyReduce_286 action_543 _ = happyReduce_255 action_544 _ = happyReduce_259 action_545 (278) = happyShift action_49 action_545 (279) = happyShift action_50 action_545 (282) = happyShift action_53 action_545 (283) = happyShift action_54 action_545 (299) = happyShift action_609 action_545 (307) = happyShift action_610 action_545 (329) = happyShift action_611 action_545 (358) = happyShift action_88 action_545 (359) = happyShift action_89 action_545 (360) = happyShift action_90 action_545 (361) = happyShift action_91 action_545 (362) = happyShift action_92 action_545 (363) = happyShift action_93 action_545 (364) = happyShift action_94 action_545 (365) = happyShift action_95 action_545 (366) = happyShift action_96 action_545 (367) = happyShift action_97 action_545 (368) = happyShift action_98 action_545 (369) = happyShift action_99 action_545 (370) = happyShift action_100 action_545 (371) = happyShift action_101 action_545 (380) = happyShift action_104 action_545 (381) = happyShift action_105 action_545 (383) = happyShift action_106 action_545 (402) = happyShift action_112 action_545 (403) = happyShift action_113 action_545 (144) = happyGoto action_602 action_545 (145) = happyGoto action_603 action_545 (146) = happyGoto action_604 action_545 (147) = happyGoto action_605 action_545 (148) = happyGoto action_606 action_545 (234) = happyGoto action_181 action_545 (244) = happyGoto action_607 action_545 (245) = happyGoto action_43 action_545 (246) = happyGoto action_44 action_545 (248) = happyGoto action_46 action_545 (249) = happyGoto action_47 action_545 (269) = happyGoto action_608 action_545 _ = happyFail action_546 _ = happyReduce_288 action_547 _ = happyReduce_256 action_548 (278) = happyShift action_49 action_548 (280) = happyShift action_51 action_548 (281) = happyShift action_52 action_548 (282) = happyShift action_53 action_548 (283) = happyShift action_54 action_548 (289) = happyShift action_135 action_548 (292) = happyShift action_136 action_548 (299) = happyShift action_137 action_548 (301) = happyShift action_138 action_548 (307) = happyShift action_139 action_548 (309) = happyShift action_140 action_548 (312) = happyShift action_141 action_548 (325) = happyShift action_142 action_548 (328) = happyShift action_143 action_548 (337) = happyShift action_144 action_548 (338) = happyShift action_145 action_548 (344) = happyShift action_146 action_548 (346) = happyShift action_147 action_548 (358) = happyShift action_88 action_548 (359) = happyShift action_148 action_548 (360) = happyShift action_149 action_548 (361) = happyShift action_150 action_548 (363) = happyShift action_93 action_548 (364) = happyShift action_94 action_548 (365) = happyShift action_95 action_548 (366) = happyShift action_96 action_548 (367) = happyShift action_97 action_548 (368) = happyShift action_98 action_548 (369) = happyShift action_99 action_548 (370) = happyShift action_100 action_548 (371) = happyShift action_101 action_548 (381) = happyShift action_151 action_548 (383) = happyShift action_106 action_548 (402) = happyShift action_112 action_548 (416) = happyShift action_152 action_548 (417) = happyShift action_153 action_548 (103) = happyGoto action_117 action_548 (105) = happyGoto action_118 action_548 (108) = happyGoto action_119 action_548 (109) = happyGoto action_120 action_548 (110) = happyGoto action_121 action_548 (111) = happyGoto action_122 action_548 (112) = happyGoto action_123 action_548 (113) = happyGoto action_124 action_548 (114) = happyGoto action_125 action_548 (115) = happyGoto action_126 action_548 (118) = happyGoto action_601 action_548 (119) = happyGoto action_129 action_548 (232) = happyGoto action_130 action_548 (245) = happyGoto action_131 action_548 (247) = happyGoto action_45 action_548 (248) = happyGoto action_132 action_548 (249) = happyGoto action_47 action_548 (270) = happyGoto action_133 action_548 (271) = happyGoto action_134 action_548 _ = happyFail action_549 (278) = happyShift action_49 action_549 (280) = happyShift action_51 action_549 (281) = happyShift action_52 action_549 (282) = happyShift action_53 action_549 (283) = happyShift action_54 action_549 (289) = happyShift action_135 action_549 (292) = happyShift action_136 action_549 (299) = happyShift action_137 action_549 (301) = happyShift action_138 action_549 (307) = happyShift action_139 action_549 (309) = happyShift action_140 action_549 (312) = happyShift action_141 action_549 (325) = happyShift action_142 action_549 (328) = happyShift action_143 action_549 (337) = happyShift action_144 action_549 (338) = happyShift action_145 action_549 (344) = happyShift action_146 action_549 (346) = happyShift action_147 action_549 (358) = happyShift action_88 action_549 (359) = happyShift action_148 action_549 (360) = happyShift action_149 action_549 (361) = happyShift action_150 action_549 (363) = happyShift action_93 action_549 (364) = happyShift action_94 action_549 (365) = happyShift action_95 action_549 (366) = happyShift action_96 action_549 (367) = happyShift action_97 action_549 (368) = happyShift action_98 action_549 (369) = happyShift action_99 action_549 (370) = happyShift action_100 action_549 (371) = happyShift action_101 action_549 (381) = happyShift action_151 action_549 (383) = happyShift action_106 action_549 (402) = happyShift action_112 action_549 (416) = happyShift action_152 action_549 (417) = happyShift action_153 action_549 (103) = happyGoto action_117 action_549 (105) = happyGoto action_118 action_549 (108) = happyGoto action_119 action_549 (109) = happyGoto action_120 action_549 (110) = happyGoto action_121 action_549 (111) = happyGoto action_122 action_549 (112) = happyGoto action_123 action_549 (113) = happyGoto action_124 action_549 (114) = happyGoto action_125 action_549 (115) = happyGoto action_126 action_549 (118) = happyGoto action_600 action_549 (119) = happyGoto action_129 action_549 (232) = happyGoto action_130 action_549 (245) = happyGoto action_131 action_549 (247) = happyGoto action_45 action_549 (248) = happyGoto action_132 action_549 (249) = happyGoto action_47 action_549 (270) = happyGoto action_133 action_549 (271) = happyGoto action_134 action_549 _ = happyFail action_550 _ = happyReduce_268 action_551 _ = happyReduce_257 action_552 _ = happyReduce_258 action_553 _ = happyReduce_261 action_554 (308) = happyShift action_599 action_554 (311) = happyShift action_548 action_554 _ = happyFail action_555 _ = happyReduce_267 action_556 (300) = happyShift action_598 action_556 (311) = happyShift action_548 action_556 _ = happyFail action_557 _ = happyReduce_270 action_558 _ = happyReduce_301 action_559 _ = happyReduce_303 action_560 (278) = happyShift action_49 action_560 (358) = happyShift action_88 action_560 (359) = happyShift action_148 action_560 (360) = happyShift action_149 action_560 (361) = happyShift action_150 action_560 (363) = happyShift action_93 action_560 (364) = happyShift action_94 action_560 (365) = happyShift action_95 action_560 (366) = happyShift action_96 action_560 (367) = happyShift action_97 action_560 (368) = happyShift action_98 action_560 (369) = happyShift action_99 action_560 (370) = happyShift action_100 action_560 (371) = happyShift action_101 action_560 (383) = happyShift action_106 action_560 (402) = happyShift action_112 action_560 (245) = happyGoto action_131 action_560 (270) = happyGoto action_597 action_560 (271) = happyGoto action_134 action_560 _ = happyFail action_561 (278) = happyShift action_49 action_561 (280) = happyShift action_51 action_561 (281) = happyShift action_52 action_561 (282) = happyShift action_53 action_561 (283) = happyShift action_54 action_561 (289) = happyShift action_135 action_561 (292) = happyShift action_136 action_561 (299) = happyShift action_137 action_561 (301) = happyShift action_138 action_561 (307) = happyShift action_139 action_561 (309) = happyShift action_140 action_561 (312) = happyShift action_141 action_561 (325) = happyShift action_142 action_561 (328) = happyShift action_143 action_561 (337) = happyShift action_144 action_561 (338) = happyShift action_145 action_561 (344) = happyShift action_146 action_561 (346) = happyShift action_147 action_561 (358) = happyShift action_88 action_561 (359) = happyShift action_148 action_561 (360) = happyShift action_149 action_561 (361) = happyShift action_150 action_561 (363) = happyShift action_93 action_561 (364) = happyShift action_94 action_561 (365) = happyShift action_95 action_561 (366) = happyShift action_96 action_561 (367) = happyShift action_97 action_561 (368) = happyShift action_98 action_561 (369) = happyShift action_99 action_561 (370) = happyShift action_100 action_561 (371) = happyShift action_101 action_561 (381) = happyShift action_151 action_561 (383) = happyShift action_106 action_561 (402) = happyShift action_112 action_561 (416) = happyShift action_152 action_561 (417) = happyShift action_153 action_561 (103) = happyGoto action_117 action_561 (105) = happyGoto action_118 action_561 (108) = happyGoto action_119 action_561 (109) = happyGoto action_120 action_561 (110) = happyGoto action_121 action_561 (111) = happyGoto action_122 action_561 (112) = happyGoto action_123 action_561 (113) = happyGoto action_124 action_561 (114) = happyGoto action_125 action_561 (115) = happyGoto action_126 action_561 (118) = happyGoto action_596 action_561 (119) = happyGoto action_129 action_561 (232) = happyGoto action_130 action_561 (245) = happyGoto action_131 action_561 (247) = happyGoto action_45 action_561 (248) = happyGoto action_132 action_561 (249) = happyGoto action_47 action_561 (270) = happyGoto action_133 action_561 (271) = happyGoto action_134 action_561 _ = happyFail action_562 (27) = happyGoto action_175 action_562 (28) = happyGoto action_595 action_562 _ = happyReduce_41 action_563 (27) = happyGoto action_593 action_563 (28) = happyGoto action_594 action_563 _ = happyReduce_41 action_564 _ = happyReduce_61 action_565 _ = happyReduce_36 action_566 _ = happyReduce_39 action_567 _ = happyReduce_33 action_568 (278) = happyShift action_49 action_568 (279) = happyShift action_50 action_568 (280) = happyShift action_51 action_568 (281) = happyShift action_52 action_568 (282) = happyShift action_53 action_568 (283) = happyShift action_54 action_568 (289) = happyShift action_55 action_568 (290) = happyShift action_56 action_568 (291) = happyShift action_57 action_568 (292) = happyShift action_58 action_568 (293) = happyShift action_59 action_568 (294) = happyShift action_60 action_568 (295) = happyShift action_61 action_568 (296) = happyShift action_62 action_568 (297) = happyShift action_63 action_568 (298) = happyShift action_64 action_568 (299) = happyShift action_65 action_568 (301) = happyShift action_66 action_568 (303) = happyShift action_566 action_568 (307) = happyShift action_67 action_568 (309) = happyShift action_68 action_568 (312) = happyShift action_69 action_568 (319) = happyShift action_592 action_568 (324) = happyShift action_71 action_568 (325) = happyShift action_72 action_568 (327) = happyShift action_73 action_568 (328) = happyShift action_486 action_568 (334) = happyShift action_75 action_568 (337) = happyShift action_76 action_568 (338) = happyShift action_77 action_568 (339) = happyShift action_78 action_568 (340) = happyShift action_79 action_568 (341) = happyShift action_80 action_568 (342) = happyShift action_81 action_568 (344) = happyShift action_82 action_568 (345) = happyShift action_83 action_568 (346) = happyShift action_84 action_568 (348) = happyShift action_85 action_568 (350) = happyShift action_86 action_568 (351) = happyShift action_87 action_568 (358) = happyShift action_88 action_568 (359) = happyShift action_89 action_568 (360) = happyShift action_90 action_568 (361) = happyShift action_91 action_568 (362) = happyShift action_92 action_568 (363) = happyShift action_93 action_568 (364) = happyShift action_94 action_568 (365) = happyShift action_95 action_568 (366) = happyShift action_96 action_568 (367) = happyShift action_97 action_568 (368) = happyShift action_98 action_568 (369) = happyShift action_99 action_568 (370) = happyShift action_100 action_568 (371) = happyShift action_101 action_568 (373) = happyShift action_102 action_568 (378) = happyShift action_103 action_568 (380) = happyShift action_104 action_568 (381) = happyShift action_105 action_568 (383) = happyShift action_106 action_568 (387) = happyShift action_492 action_568 (388) = happyShift action_493 action_568 (389) = happyShift action_494 action_568 (392) = happyShift action_109 action_568 (402) = happyShift action_112 action_568 (403) = happyShift action_113 action_568 (404) = happyShift action_498 action_568 (405) = happyShift action_499 action_568 (406) = happyShift action_500 action_568 (407) = happyShift action_501 action_568 (408) = happyShift action_502 action_568 (421) = happyShift action_507 action_568 (49) = happyGoto action_469 action_568 (51) = happyGoto action_470 action_568 (74) = happyGoto action_586 action_568 (75) = happyGoto action_587 action_568 (77) = happyGoto action_477 action_568 (78) = happyGoto action_478 action_568 (79) = happyGoto action_479 action_568 (162) = happyGoto action_480 action_568 (172) = happyGoto action_588 action_568 (176) = happyGoto action_29 action_568 (178) = happyGoto action_31 action_568 (181) = happyGoto action_32 action_568 (182) = happyGoto action_33 action_568 (183) = happyGoto action_34 action_568 (190) = happyGoto action_35 action_568 (226) = happyGoto action_589 action_568 (227) = happyGoto action_590 action_568 (228) = happyGoto action_38 action_568 (231) = happyGoto action_39 action_568 (232) = happyGoto action_591 action_568 (234) = happyGoto action_41 action_568 (244) = happyGoto action_42 action_568 (245) = happyGoto action_43 action_568 (246) = happyGoto action_44 action_568 (247) = happyGoto action_45 action_568 (248) = happyGoto action_46 action_568 (249) = happyGoto action_47 action_568 (257) = happyGoto action_48 action_568 (260) = happyGoto action_483 action_568 (261) = happyGoto action_484 action_568 (265) = happyGoto action_485 action_568 _ = happyReduce_163 action_569 (305) = happyShift action_585 action_569 _ = happyFail action_570 (305) = happyShift action_584 action_570 _ = happyFail action_571 (1) = happyShift action_400 action_571 (306) = happyShift action_401 action_571 (259) = happyGoto action_583 action_571 _ = happyFail action_572 (1) = happyShift action_400 action_572 (306) = happyShift action_401 action_572 (259) = happyGoto action_582 action_572 _ = happyFail action_573 (414) = happyShift action_580 action_573 (415) = happyShift action_581 action_573 (24) = happyGoto action_579 action_573 _ = happyReduce_32 action_574 (354) = happyShift action_578 action_574 _ = happyFail action_575 (196) = happyGoto action_577 action_575 _ = happyReduce_554 action_576 _ = happyReduce_27 action_577 (278) = happyShift action_637 action_577 (279) = happyShift action_50 action_577 (280) = happyShift action_51 action_577 (281) = happyShift action_52 action_577 (282) = happyShift action_638 action_577 (283) = happyShift action_54 action_577 (284) = happyShift action_258 action_577 (289) = happyShift action_55 action_577 (290) = happyShift action_56 action_577 (291) = happyShift action_57 action_577 (292) = happyShift action_58 action_577 (293) = happyShift action_59 action_577 (294) = happyShift action_60 action_577 (295) = happyShift action_61 action_577 (296) = happyShift action_62 action_577 (297) = happyShift action_63 action_577 (298) = happyShift action_64 action_577 (299) = happyShift action_65 action_577 (301) = happyShift action_66 action_577 (307) = happyShift action_67 action_577 (309) = happyShift action_68 action_577 (312) = happyShift action_69 action_577 (324) = happyShift action_71 action_577 (325) = happyShift action_72 action_577 (334) = happyShift action_75 action_577 (337) = happyShift action_76 action_577 (338) = happyShift action_77 action_577 (339) = happyShift action_78 action_577 (340) = happyShift action_79 action_577 (341) = happyShift action_80 action_577 (342) = happyShift action_81 action_577 (344) = happyShift action_82 action_577 (345) = happyShift action_83 action_577 (346) = happyShift action_84 action_577 (348) = happyShift action_85 action_577 (350) = happyShift action_86 action_577 (351) = happyShift action_87 action_577 (357) = happyShift action_259 action_577 (358) = happyShift action_639 action_577 (359) = happyShift action_640 action_577 (360) = happyShift action_641 action_577 (361) = happyShift action_642 action_577 (362) = happyShift action_643 action_577 (363) = happyShift action_644 action_577 (364) = happyShift action_645 action_577 (365) = happyShift action_646 action_577 (366) = happyShift action_647 action_577 (367) = happyShift action_648 action_577 (368) = happyShift action_649 action_577 (369) = happyShift action_650 action_577 (370) = happyShift action_651 action_577 (371) = happyShift action_652 action_577 (372) = happyShift action_274 action_577 (373) = happyShift action_275 action_577 (374) = happyShift action_276 action_577 (375) = happyShift action_277 action_577 (376) = happyShift action_278 action_577 (377) = happyShift action_279 action_577 (378) = happyShift action_280 action_577 (379) = happyShift action_281 action_577 (380) = happyShift action_653 action_577 (381) = happyShift action_654 action_577 (382) = happyShift action_284 action_577 (383) = happyShift action_655 action_577 (384) = happyShift action_286 action_577 (385) = happyShift action_287 action_577 (386) = happyShift action_288 action_577 (387) = happyShift action_289 action_577 (388) = happyShift action_290 action_577 (389) = happyShift action_291 action_577 (390) = happyShift action_292 action_577 (391) = happyShift action_293 action_577 (392) = happyShift action_294 action_577 (393) = happyShift action_295 action_577 (394) = happyShift action_296 action_577 (395) = happyShift action_297 action_577 (396) = happyShift action_298 action_577 (397) = happyShift action_299 action_577 (398) = happyShift action_300 action_577 (399) = happyShift action_301 action_577 (400) = happyShift action_302 action_577 (401) = happyShift action_303 action_577 (402) = happyShift action_656 action_577 (403) = happyShift action_113 action_577 (181) = happyGoto action_633 action_577 (182) = happyGoto action_33 action_577 (183) = happyGoto action_34 action_577 (190) = happyGoto action_35 action_577 (193) = happyGoto action_634 action_577 (194) = happyGoto action_254 action_577 (195) = happyGoto action_255 action_577 (197) = happyGoto action_635 action_577 (198) = happyGoto action_902 action_577 (228) = happyGoto action_38 action_577 (231) = happyGoto action_39 action_577 (232) = happyGoto action_40 action_577 (234) = happyGoto action_41 action_577 (244) = happyGoto action_42 action_577 (245) = happyGoto action_43 action_577 (246) = happyGoto action_44 action_577 (247) = happyGoto action_45 action_577 (248) = happyGoto action_46 action_577 (249) = happyGoto action_47 action_577 (257) = happyGoto action_48 action_577 _ = happyReduce_557 action_578 (348) = happyShift action_167 action_578 (17) = happyGoto action_901 action_578 _ = happyFail action_579 (299) = happyShift action_900 action_579 (29) = happyGoto action_898 action_579 (30) = happyGoto action_899 action_579 _ = happyReduce_43 action_580 (292) = happyShift action_897 action_580 _ = happyFail action_581 (292) = happyShift action_896 action_581 _ = happyFail action_582 _ = happyReduce_196 action_583 _ = happyReduce_172 action_584 _ = happyReduce_195 action_585 _ = happyReduce_171 action_586 (27) = happyGoto action_894 action_586 (28) = happyGoto action_895 action_586 _ = happyReduce_41 action_587 _ = happyReduce_165 action_588 (285) = happyShift action_211 action_588 (286) = happyShift action_186 action_588 (287) = happyShift action_212 action_588 (288) = happyShift action_187 action_588 (311) = happyShift action_699 action_588 (313) = happyShift action_367 action_588 (314) = happyShift action_214 action_588 (316) = happyShift action_190 action_588 (317) = happyShift action_700 action_588 (327) = happyShift action_216 action_588 (328) = happyShift action_340 action_588 (329) = happyShift action_218 action_588 (164) = happyGoto action_698 action_588 (236) = happyGoto action_363 action_588 (239) = happyGoto action_364 action_588 (241) = happyGoto action_893 action_588 (243) = happyGoto action_226 action_588 (250) = happyGoto action_183 action_588 (251) = happyGoto action_184 action_588 (252) = happyGoto action_366 action_588 (254) = happyGoto action_208 action_588 (255) = happyGoto action_209 action_588 (256) = happyGoto action_210 action_588 _ = happyReduce_394 action_589 (27) = happyGoto action_891 action_589 (28) = happyGoto action_892 action_589 _ = happyReduce_41 action_590 _ = happyReduce_625 action_591 (318) = happyShift action_890 action_591 _ = happyReduce_447 action_592 (373) = happyShift action_328 action_592 _ = happyFail action_593 (278) = happyShift action_49 action_593 (279) = happyShift action_50 action_593 (280) = happyShift action_51 action_593 (281) = happyShift action_52 action_593 (282) = happyShift action_53 action_593 (283) = happyShift action_54 action_593 (289) = happyShift action_55 action_593 (290) = happyShift action_56 action_593 (291) = happyShift action_57 action_593 (292) = happyShift action_58 action_593 (293) = happyShift action_59 action_593 (294) = happyShift action_60 action_593 (295) = happyShift action_61 action_593 (296) = happyShift action_62 action_593 (297) = happyShift action_63 action_593 (298) = happyShift action_64 action_593 (299) = happyShift action_65 action_593 (301) = happyShift action_66 action_593 (307) = happyShift action_67 action_593 (309) = happyShift action_68 action_593 (312) = happyShift action_69 action_593 (319) = happyShift action_70 action_593 (324) = happyShift action_71 action_593 (325) = happyShift action_72 action_593 (327) = happyShift action_73 action_593 (328) = happyShift action_486 action_593 (334) = happyShift action_75 action_593 (337) = happyShift action_76 action_593 (338) = happyShift action_77 action_593 (339) = happyShift action_78 action_593 (340) = happyShift action_79 action_593 (341) = happyShift action_80 action_593 (342) = happyShift action_81 action_593 (344) = happyShift action_82 action_593 (345) = happyShift action_83 action_593 (346) = happyShift action_84 action_593 (348) = happyShift action_85 action_593 (350) = happyShift action_86 action_593 (351) = happyShift action_87 action_593 (357) = happyShift action_487 action_593 (358) = happyShift action_88 action_593 (359) = happyShift action_89 action_593 (360) = happyShift action_90 action_593 (361) = happyShift action_91 action_593 (362) = happyShift action_92 action_593 (363) = happyShift action_93 action_593 (364) = happyShift action_94 action_593 (365) = happyShift action_95 action_593 (366) = happyShift action_96 action_593 (367) = happyShift action_97 action_593 (368) = happyShift action_98 action_593 (369) = happyShift action_99 action_593 (370) = happyShift action_100 action_593 (371) = happyShift action_101 action_593 (373) = happyShift action_102 action_593 (374) = happyShift action_488 action_593 (375) = happyShift action_489 action_593 (376) = happyShift action_490 action_593 (377) = happyShift action_491 action_593 (378) = happyShift action_103 action_593 (380) = happyShift action_104 action_593 (381) = happyShift action_105 action_593 (383) = happyShift action_106 action_593 (384) = happyShift action_107 action_593 (385) = happyShift action_22 action_593 (387) = happyShift action_492 action_593 (388) = happyShift action_493 action_593 (389) = happyShift action_494 action_593 (390) = happyShift action_495 action_593 (391) = happyShift action_159 action_593 (392) = happyShift action_109 action_593 (394) = happyShift action_496 action_593 (396) = happyShift action_110 action_593 (399) = happyShift action_497 action_593 (402) = happyShift action_112 action_593 (403) = happyShift action_113 action_593 (404) = happyShift action_498 action_593 (405) = happyShift action_499 action_593 (406) = happyShift action_500 action_593 (407) = happyShift action_501 action_593 (408) = happyShift action_502 action_593 (410) = happyShift action_503 action_593 (411) = happyShift action_114 action_593 (412) = happyShift action_115 action_593 (413) = happyShift action_116 action_593 (414) = happyShift action_504 action_593 (415) = happyShift action_505 action_593 (420) = happyShift action_506 action_593 (421) = happyShift action_507 action_593 (36) = happyGoto action_888 action_593 (49) = happyGoto action_469 action_593 (51) = happyGoto action_470 action_593 (56) = happyGoto action_889 action_593 (57) = happyGoto action_472 action_593 (58) = happyGoto action_473 action_593 (63) = happyGoto action_474 action_593 (71) = happyGoto action_475 action_593 (75) = happyGoto action_476 action_593 (77) = happyGoto action_477 action_593 (78) = happyGoto action_478 action_593 (79) = happyGoto action_479 action_593 (162) = happyGoto action_480 action_593 (170) = happyGoto action_481 action_593 (171) = happyGoto action_26 action_593 (172) = happyGoto action_482 action_593 (173) = happyGoto action_28 action_593 (176) = happyGoto action_29 action_593 (177) = happyGoto action_30 action_593 (178) = happyGoto action_31 action_593 (181) = happyGoto action_32 action_593 (182) = happyGoto action_33 action_593 (183) = happyGoto action_34 action_593 (190) = happyGoto action_35 action_593 (228) = happyGoto action_38 action_593 (231) = happyGoto action_39 action_593 (232) = happyGoto action_40 action_593 (234) = happyGoto action_41 action_593 (244) = happyGoto action_42 action_593 (245) = happyGoto action_43 action_593 (246) = happyGoto action_44 action_593 (247) = happyGoto action_45 action_593 (248) = happyGoto action_46 action_593 (249) = happyGoto action_47 action_593 (257) = happyGoto action_48 action_593 (260) = happyGoto action_483 action_593 (261) = happyGoto action_484 action_593 (265) = happyGoto action_485 action_593 _ = happyReduce_40 action_594 (303) = happyShift action_566 action_594 _ = happyReduce_37 action_595 (303) = happyShift action_566 action_595 _ = happyReduce_34 action_596 _ = happyReduce_294 action_597 (317) = happyShift action_887 action_597 _ = happyFail action_598 _ = happyReduce_269 action_599 _ = happyReduce_266 action_600 (311) = happyReduce_300 action_600 _ = happyReduce_298 action_601 _ = happyReduce_300 action_602 (300) = happyShift action_886 action_602 _ = happyFail action_603 _ = happyReduce_342 action_604 (278) = happyShift action_49 action_604 (279) = happyShift action_50 action_604 (282) = happyShift action_53 action_604 (283) = happyShift action_54 action_604 (299) = happyShift action_609 action_604 (307) = happyShift action_610 action_604 (322) = happyShift action_885 action_604 (329) = happyShift action_611 action_604 (358) = happyShift action_88 action_604 (359) = happyShift action_89 action_604 (360) = happyShift action_90 action_604 (361) = happyShift action_91 action_604 (362) = happyShift action_92 action_604 (363) = happyShift action_93 action_604 (364) = happyShift action_94 action_604 (365) = happyShift action_95 action_604 (366) = happyShift action_96 action_604 (367) = happyShift action_97 action_604 (368) = happyShift action_98 action_604 (369) = happyShift action_99 action_604 (370) = happyShift action_100 action_604 (371) = happyShift action_101 action_604 (380) = happyShift action_104 action_604 (381) = happyShift action_105 action_604 (383) = happyShift action_106 action_604 (402) = happyShift action_112 action_604 (403) = happyShift action_113 action_604 (147) = happyGoto action_884 action_604 (148) = happyGoto action_606 action_604 (234) = happyGoto action_181 action_604 (244) = happyGoto action_607 action_604 (245) = happyGoto action_43 action_604 (246) = happyGoto action_44 action_604 (248) = happyGoto action_46 action_604 (249) = happyGoto action_47 action_604 (269) = happyGoto action_608 action_604 _ = happyReduce_343 action_605 _ = happyReduce_345 action_606 _ = happyReduce_349 action_607 _ = happyReduce_350 action_608 _ = happyReduce_351 action_609 (278) = happyShift action_49 action_609 (279) = happyShift action_50 action_609 (282) = happyShift action_53 action_609 (283) = happyShift action_54 action_609 (286) = happyShift action_186 action_609 (288) = happyShift action_187 action_609 (299) = happyShift action_609 action_609 (300) = happyShift action_883 action_609 (307) = happyShift action_610 action_609 (316) = happyShift action_190 action_609 (329) = happyShift action_611 action_609 (358) = happyShift action_88 action_609 (359) = happyShift action_89 action_609 (360) = happyShift action_90 action_609 (361) = happyShift action_91 action_609 (362) = happyShift action_92 action_609 (363) = happyShift action_93 action_609 (364) = happyShift action_94 action_609 (365) = happyShift action_95 action_609 (366) = happyShift action_96 action_609 (367) = happyShift action_97 action_609 (368) = happyShift action_98 action_609 (369) = happyShift action_99 action_609 (370) = happyShift action_100 action_609 (371) = happyShift action_101 action_609 (380) = happyShift action_104 action_609 (381) = happyShift action_105 action_609 (383) = happyShift action_106 action_609 (402) = happyShift action_112 action_609 (403) = happyShift action_113 action_609 (144) = happyGoto action_881 action_609 (145) = happyGoto action_882 action_609 (146) = happyGoto action_604 action_609 (147) = happyGoto action_605 action_609 (148) = happyGoto action_606 action_609 (234) = happyGoto action_181 action_609 (243) = happyGoto action_508 action_609 (244) = happyGoto action_607 action_609 (245) = happyGoto action_43 action_609 (246) = happyGoto action_44 action_609 (248) = happyGoto action_46 action_609 (249) = happyGoto action_47 action_609 (250) = happyGoto action_183 action_609 (251) = happyGoto action_184 action_609 (269) = happyGoto action_608 action_609 _ = happyFail action_610 (278) = happyShift action_49 action_610 (279) = happyShift action_50 action_610 (282) = happyShift action_53 action_610 (283) = happyShift action_54 action_610 (299) = happyShift action_609 action_610 (307) = happyShift action_610 action_610 (329) = happyShift action_611 action_610 (358) = happyShift action_88 action_610 (359) = happyShift action_89 action_610 (360) = happyShift action_90 action_610 (361) = happyShift action_91 action_610 (362) = happyShift action_92 action_610 (363) = happyShift action_93 action_610 (364) = happyShift action_94 action_610 (365) = happyShift action_95 action_610 (366) = happyShift action_96 action_610 (367) = happyShift action_97 action_610 (368) = happyShift action_98 action_610 (369) = happyShift action_99 action_610 (370) = happyShift action_100 action_610 (371) = happyShift action_101 action_610 (380) = happyShift action_104 action_610 (381) = happyShift action_105 action_610 (383) = happyShift action_106 action_610 (402) = happyShift action_112 action_610 (403) = happyShift action_113 action_610 (144) = happyGoto action_880 action_610 (145) = happyGoto action_603 action_610 (146) = happyGoto action_604 action_610 (147) = happyGoto action_605 action_610 (148) = happyGoto action_606 action_610 (234) = happyGoto action_181 action_610 (244) = happyGoto action_607 action_610 (245) = happyGoto action_43 action_610 (246) = happyGoto action_44 action_610 (248) = happyGoto action_46 action_610 (249) = happyGoto action_47 action_610 (269) = happyGoto action_608 action_610 _ = happyFail action_611 _ = happyReduce_347 action_612 _ = happyReduce_741 action_613 (289) = happyShift action_879 action_613 _ = happyFail action_614 _ = happyReduce_431 action_615 _ = happyReduce_430 action_616 _ = happyReduce_608 action_617 _ = happyReduce_610 action_618 _ = happyReduce_609 action_619 (278) = happyShift action_49 action_619 (279) = happyShift action_50 action_619 (280) = happyShift action_51 action_619 (281) = happyShift action_52 action_619 (282) = happyShift action_53 action_619 (283) = happyShift action_54 action_619 (289) = happyShift action_55 action_619 (290) = happyShift action_56 action_619 (291) = happyShift action_57 action_619 (292) = happyShift action_58 action_619 (293) = happyShift action_59 action_619 (294) = happyShift action_60 action_619 (295) = happyShift action_61 action_619 (296) = happyShift action_62 action_619 (297) = happyShift action_63 action_619 (298) = happyShift action_64 action_619 (299) = happyShift action_65 action_619 (301) = happyShift action_66 action_619 (303) = happyShift action_529 action_619 (307) = happyShift action_67 action_619 (309) = happyShift action_68 action_619 (312) = happyShift action_69 action_619 (319) = happyShift action_70 action_619 (324) = happyShift action_71 action_619 (325) = happyShift action_72 action_619 (327) = happyShift action_73 action_619 (328) = happyShift action_74 action_619 (334) = happyShift action_75 action_619 (337) = happyShift action_76 action_619 (338) = happyShift action_77 action_619 (339) = happyShift action_78 action_619 (340) = happyShift action_79 action_619 (341) = happyShift action_80 action_619 (342) = happyShift action_81 action_619 (344) = happyShift action_82 action_619 (345) = happyShift action_83 action_619 (346) = happyShift action_84 action_619 (348) = happyShift action_85 action_619 (350) = happyShift action_86 action_619 (351) = happyShift action_87 action_619 (358) = happyShift action_88 action_619 (359) = happyShift action_89 action_619 (360) = happyShift action_90 action_619 (361) = happyShift action_91 action_619 (362) = happyShift action_92 action_619 (363) = happyShift action_93 action_619 (364) = happyShift action_94 action_619 (365) = happyShift action_95 action_619 (366) = happyShift action_96 action_619 (367) = happyShift action_97 action_619 (368) = happyShift action_98 action_619 (369) = happyShift action_99 action_619 (370) = happyShift action_100 action_619 (371) = happyShift action_101 action_619 (373) = happyShift action_102 action_619 (378) = happyShift action_103 action_619 (380) = happyShift action_104 action_619 (381) = happyShift action_105 action_619 (383) = happyShift action_106 action_619 (384) = happyShift action_107 action_619 (391) = happyShift action_108 action_619 (392) = happyShift action_109 action_619 (396) = happyShift action_110 action_619 (397) = happyShift action_111 action_619 (402) = happyShift action_112 action_619 (403) = happyShift action_113 action_619 (411) = happyShift action_114 action_619 (412) = happyShift action_115 action_619 (413) = happyShift action_116 action_619 (168) = happyGoto action_23 action_619 (169) = happyGoto action_24 action_619 (170) = happyGoto action_25 action_619 (171) = happyGoto action_26 action_619 (172) = happyGoto action_27 action_619 (173) = happyGoto action_28 action_619 (176) = happyGoto action_29 action_619 (177) = happyGoto action_30 action_619 (178) = happyGoto action_31 action_619 (181) = happyGoto action_32 action_619 (182) = happyGoto action_33 action_619 (183) = happyGoto action_34 action_619 (190) = happyGoto action_35 action_619 (215) = happyGoto action_36 action_619 (220) = happyGoto action_878 action_619 (222) = happyGoto action_528 action_619 (228) = happyGoto action_38 action_619 (231) = happyGoto action_39 action_619 (232) = happyGoto action_40 action_619 (234) = happyGoto action_41 action_619 (244) = happyGoto action_42 action_619 (245) = happyGoto action_43 action_619 (246) = happyGoto action_44 action_619 (247) = happyGoto action_45 action_619 (248) = happyGoto action_46 action_619 (249) = happyGoto action_47 action_619 (257) = happyGoto action_48 action_619 _ = happyReduce_611 action_620 _ = happyReduce_607 action_621 _ = happyReduce_418 action_622 _ = happyReduce_415 action_623 (278) = happyShift action_49 action_623 (279) = happyShift action_50 action_623 (280) = happyShift action_51 action_623 (281) = happyShift action_52 action_623 (282) = happyShift action_53 action_623 (283) = happyShift action_54 action_623 (289) = happyShift action_55 action_623 (290) = happyShift action_56 action_623 (291) = happyShift action_57 action_623 (292) = happyShift action_58 action_623 (293) = happyShift action_59 action_623 (294) = happyShift action_60 action_623 (295) = happyShift action_61 action_623 (296) = happyShift action_62 action_623 (297) = happyShift action_63 action_623 (298) = happyShift action_64 action_623 (299) = happyShift action_65 action_623 (301) = happyShift action_66 action_623 (307) = happyShift action_67 action_623 (309) = happyShift action_68 action_623 (312) = happyShift action_69 action_623 (319) = happyShift action_70 action_623 (324) = happyShift action_71 action_623 (325) = happyShift action_72 action_623 (327) = happyShift action_73 action_623 (334) = happyShift action_75 action_623 (337) = happyShift action_76 action_623 (338) = happyShift action_77 action_623 (339) = happyShift action_78 action_623 (340) = happyShift action_79 action_623 (341) = happyShift action_80 action_623 (342) = happyShift action_81 action_623 (344) = happyShift action_82 action_623 (345) = happyShift action_83 action_623 (346) = happyShift action_84 action_623 (348) = happyShift action_85 action_623 (350) = happyShift action_86 action_623 (351) = happyShift action_87 action_623 (358) = happyShift action_88 action_623 (359) = happyShift action_89 action_623 (360) = happyShift action_90 action_623 (361) = happyShift action_91 action_623 (362) = happyShift action_92 action_623 (363) = happyShift action_93 action_623 (364) = happyShift action_94 action_623 (365) = happyShift action_95 action_623 (366) = happyShift action_96 action_623 (367) = happyShift action_97 action_623 (368) = happyShift action_98 action_623 (369) = happyShift action_99 action_623 (370) = happyShift action_100 action_623 (371) = happyShift action_101 action_623 (373) = happyShift action_102 action_623 (378) = happyShift action_103 action_623 (380) = happyShift action_104 action_623 (381) = happyShift action_105 action_623 (383) = happyShift action_106 action_623 (384) = happyShift action_107 action_623 (391) = happyShift action_159 action_623 (392) = happyShift action_109 action_623 (396) = happyShift action_110 action_623 (402) = happyShift action_112 action_623 (403) = happyShift action_113 action_623 (411) = happyShift action_114 action_623 (412) = happyShift action_115 action_623 (413) = happyShift action_116 action_623 (169) = happyGoto action_877 action_623 (170) = happyGoto action_25 action_623 (171) = happyGoto action_26 action_623 (172) = happyGoto action_27 action_623 (173) = happyGoto action_28 action_623 (176) = happyGoto action_29 action_623 (177) = happyGoto action_30 action_623 (178) = happyGoto action_31 action_623 (181) = happyGoto action_32 action_623 (182) = happyGoto action_33 action_623 (183) = happyGoto action_34 action_623 (190) = happyGoto action_35 action_623 (228) = happyGoto action_38 action_623 (231) = happyGoto action_39 action_623 (232) = happyGoto action_40 action_623 (234) = happyGoto action_41 action_623 (244) = happyGoto action_42 action_623 (245) = happyGoto action_43 action_623 (246) = happyGoto action_44 action_623 (247) = happyGoto action_45 action_623 (248) = happyGoto action_46 action_623 (249) = happyGoto action_47 action_623 (257) = happyGoto action_48 action_623 _ = happyFail action_624 _ = happyReduce_603 action_625 _ = happyReduce_602 action_626 _ = happyReduce_606 action_627 (27) = happyGoto action_175 action_627 (28) = happyGoto action_876 action_627 _ = happyReduce_41 action_628 (278) = happyShift action_49 action_628 (279) = happyShift action_50 action_628 (280) = happyShift action_51 action_628 (281) = happyShift action_52 action_628 (282) = happyShift action_53 action_628 (283) = happyShift action_54 action_628 (289) = happyShift action_55 action_628 (290) = happyShift action_56 action_628 (291) = happyShift action_57 action_628 (292) = happyShift action_58 action_628 (293) = happyShift action_59 action_628 (294) = happyShift action_60 action_628 (295) = happyShift action_61 action_628 (296) = happyShift action_62 action_628 (297) = happyShift action_63 action_628 (298) = happyShift action_64 action_628 (299) = happyShift action_65 action_628 (301) = happyShift action_66 action_628 (307) = happyShift action_67 action_628 (309) = happyShift action_68 action_628 (312) = happyShift action_69 action_628 (319) = happyShift action_70 action_628 (324) = happyShift action_71 action_628 (325) = happyShift action_72 action_628 (327) = happyShift action_73 action_628 (328) = happyShift action_74 action_628 (334) = happyShift action_75 action_628 (337) = happyShift action_76 action_628 (338) = happyShift action_77 action_628 (339) = happyShift action_78 action_628 (340) = happyShift action_79 action_628 (341) = happyShift action_80 action_628 (342) = happyShift action_81 action_628 (344) = happyShift action_82 action_628 (345) = happyShift action_83 action_628 (346) = happyShift action_84 action_628 (348) = happyShift action_85 action_628 (350) = happyShift action_86 action_628 (351) = happyShift action_87 action_628 (358) = happyShift action_88 action_628 (359) = happyShift action_89 action_628 (360) = happyShift action_90 action_628 (361) = happyShift action_91 action_628 (362) = happyShift action_92 action_628 (363) = happyShift action_93 action_628 (364) = happyShift action_94 action_628 (365) = happyShift action_95 action_628 (366) = happyShift action_96 action_628 (367) = happyShift action_97 action_628 (368) = happyShift action_98 action_628 (369) = happyShift action_99 action_628 (370) = happyShift action_100 action_628 (371) = happyShift action_101 action_628 (373) = happyShift action_102 action_628 (378) = happyShift action_103 action_628 (380) = happyShift action_104 action_628 (381) = happyShift action_105 action_628 (383) = happyShift action_106 action_628 (384) = happyShift action_107 action_628 (391) = happyShift action_712 action_628 (392) = happyShift action_109 action_628 (396) = happyShift action_110 action_628 (402) = happyShift action_112 action_628 (403) = happyShift action_113 action_628 (411) = happyShift action_114 action_628 (412) = happyShift action_115 action_628 (413) = happyShift action_116 action_628 (168) = happyGoto action_708 action_628 (169) = happyGoto action_24 action_628 (170) = happyGoto action_25 action_628 (171) = happyGoto action_26 action_628 (172) = happyGoto action_27 action_628 (173) = happyGoto action_28 action_628 (176) = happyGoto action_29 action_628 (177) = happyGoto action_30 action_628 (178) = happyGoto action_31 action_628 (181) = happyGoto action_32 action_628 (182) = happyGoto action_33 action_628 (183) = happyGoto action_34 action_628 (190) = happyGoto action_35 action_628 (205) = happyGoto action_875 action_628 (206) = happyGoto action_710 action_628 (215) = happyGoto action_711 action_628 (228) = happyGoto action_38 action_628 (231) = happyGoto action_39 action_628 (232) = happyGoto action_40 action_628 (234) = happyGoto action_41 action_628 (244) = happyGoto action_42 action_628 (245) = happyGoto action_43 action_628 (246) = happyGoto action_44 action_628 (247) = happyGoto action_45 action_628 (248) = happyGoto action_46 action_628 (249) = happyGoto action_47 action_628 (257) = happyGoto action_48 action_628 _ = happyFail action_629 _ = happyReduce_424 action_630 _ = happyReduce_489 action_631 (311) = happyShift action_461 action_631 (356) = happyShift action_874 action_631 _ = happyFail action_632 (354) = happyShift action_873 action_632 _ = happyFail action_633 _ = happyReduce_556 action_634 (318) = happyShift action_872 action_634 _ = happyFail action_635 _ = happyReduce_553 action_636 (352) = happyShift action_870 action_636 (353) = happyShift action_871 action_636 _ = happyFail action_637 (316) = happyReduce_503 action_637 (318) = happyReduce_503 action_637 _ = happyReduce_664 action_638 (316) = happyReduce_504 action_638 (318) = happyReduce_504 action_638 _ = happyReduce_689 action_639 (316) = happyReduce_511 action_639 (318) = happyReduce_511 action_639 _ = happyReduce_668 action_640 (316) = happyReduce_512 action_640 (318) = happyReduce_512 action_640 _ = happyReduce_678 action_641 (316) = happyReduce_513 action_641 (318) = happyReduce_513 action_641 _ = happyReduce_679 action_642 (316) = happyReduce_515 action_642 (318) = happyReduce_515 action_642 _ = happyReduce_681 action_643 (316) = happyReduce_514 action_643 (318) = happyReduce_514 action_643 _ = happyReduce_680 action_644 (316) = happyReduce_516 action_644 (318) = happyReduce_516 action_644 _ = happyReduce_669 action_645 (316) = happyReduce_517 action_645 (318) = happyReduce_517 action_645 _ = happyReduce_670 action_646 (316) = happyReduce_518 action_646 (318) = happyReduce_518 action_646 _ = happyReduce_671 action_647 (316) = happyReduce_519 action_647 (318) = happyReduce_519 action_647 _ = happyReduce_672 action_648 (316) = happyReduce_520 action_648 (318) = happyReduce_520 action_648 _ = happyReduce_673 action_649 (316) = happyReduce_521 action_649 (318) = happyReduce_521 action_649 _ = happyReduce_674 action_650 (316) = happyReduce_522 action_650 (318) = happyReduce_522 action_650 _ = happyReduce_675 action_651 (316) = happyReduce_523 action_651 (318) = happyReduce_523 action_651 _ = happyReduce_676 action_652 (316) = happyReduce_524 action_652 (318) = happyReduce_524 action_652 _ = happyReduce_665 action_653 (316) = happyReduce_531 action_653 (318) = happyReduce_531 action_653 _ = happyReduce_683 action_654 (316) = happyReduce_532 action_654 (318) = happyReduce_532 action_654 _ = happyReduce_682 action_655 (316) = happyReduce_534 action_655 (318) = happyReduce_534 action_655 _ = happyReduce_667 action_656 (316) = happyReduce_552 action_656 (318) = happyReduce_552 action_656 _ = happyReduce_666 action_657 _ = happyReduce_501 action_658 (425) = happyShift action_869 action_658 _ = happyFail action_659 _ = happyReduce_186 action_660 (320) = happyShift action_868 action_660 _ = happyReduce_188 action_661 (311) = happyShift action_867 action_661 _ = happyReduce_190 action_662 _ = happyReduce_193 action_663 (278) = happyShift action_49 action_663 (285) = happyShift action_211 action_663 (299) = happyShift action_663 action_663 (314) = happyShift action_214 action_663 (327) = happyShift action_216 action_663 (328) = happyShift action_340 action_663 (329) = happyShift action_218 action_663 (358) = happyShift action_88 action_663 (359) = happyShift action_89 action_663 (360) = happyShift action_90 action_663 (361) = happyShift action_91 action_663 (362) = happyShift action_92 action_663 (363) = happyShift action_93 action_663 (364) = happyShift action_94 action_663 (365) = happyShift action_95 action_663 (366) = happyShift action_96 action_663 (367) = happyShift action_97 action_663 (368) = happyShift action_98 action_663 (369) = happyShift action_99 action_663 (370) = happyShift action_100 action_663 (371) = happyShift action_101 action_663 (380) = happyShift action_104 action_663 (381) = happyShift action_105 action_663 (383) = happyShift action_106 action_663 (402) = happyShift action_112 action_663 (403) = happyShift action_113 action_663 (83) = happyGoto action_866 action_663 (84) = happyGoto action_660 action_663 (85) = happyGoto action_661 action_663 (229) = happyGoto action_662 action_663 (245) = happyGoto action_43 action_663 (246) = happyGoto action_390 action_663 (254) = happyGoto action_760 action_663 (255) = happyGoto action_209 action_663 _ = happyFail action_664 (425) = happyShift action_865 action_664 _ = happyFail action_665 (303) = happyShift action_860 action_665 (425) = happyShift action_864 action_665 _ = happyFail action_666 _ = happyReduce_230 action_667 (292) = happyShift action_863 action_667 _ = happyFail action_668 (311) = happyShift action_862 action_668 _ = happyReduce_233 action_669 (303) = happyShift action_860 action_669 (425) = happyShift action_861 action_669 _ = happyFail action_670 (303) = happyShift action_858 action_670 (425) = happyShift action_859 action_670 _ = happyFail action_671 _ = happyReduce_216 action_672 (307) = happyShift action_674 action_672 (93) = happyGoto action_857 action_672 _ = happyReduce_219 action_673 (278) = happyShift action_49 action_673 (279) = happyShift action_50 action_673 (299) = happyShift action_423 action_673 (358) = happyShift action_88 action_673 (359) = happyShift action_89 action_673 (360) = happyShift action_90 action_673 (361) = happyShift action_91 action_673 (362) = happyShift action_92 action_673 (363) = happyShift action_93 action_673 (364) = happyShift action_94 action_673 (365) = happyShift action_95 action_673 (366) = happyShift action_96 action_673 (367) = happyShift action_97 action_673 (368) = happyShift action_98 action_673 (369) = happyShift action_99 action_673 (370) = happyShift action_100 action_673 (371) = happyShift action_101 action_673 (380) = happyShift action_104 action_673 (381) = happyShift action_105 action_673 (383) = happyShift action_106 action_673 (402) = happyShift action_112 action_673 (403) = happyShift action_113 action_673 (231) = happyGoto action_856 action_673 (244) = happyGoto action_42 action_673 (245) = happyGoto action_43 action_673 (246) = happyGoto action_44 action_673 _ = happyFail action_674 (289) = happyShift action_854 action_674 (325) = happyShift action_855 action_674 _ = happyFail action_675 (278) = happyShift action_49 action_675 (279) = happyShift action_50 action_675 (299) = happyShift action_423 action_675 (358) = happyShift action_88 action_675 (359) = happyShift action_89 action_675 (360) = happyShift action_90 action_675 (361) = happyShift action_91 action_675 (362) = happyShift action_92 action_675 (363) = happyShift action_93 action_675 (364) = happyShift action_94 action_675 (365) = happyShift action_95 action_675 (366) = happyShift action_96 action_675 (367) = happyShift action_97 action_675 (368) = happyShift action_98 action_675 (369) = happyShift action_99 action_675 (370) = happyShift action_100 action_675 (371) = happyShift action_101 action_675 (380) = happyShift action_104 action_675 (381) = happyShift action_105 action_675 (383) = happyShift action_106 action_675 (402) = happyShift action_112 action_675 (403) = happyShift action_113 action_675 (231) = happyGoto action_853 action_675 (244) = happyGoto action_42 action_675 (245) = happyGoto action_43 action_675 (246) = happyGoto action_44 action_675 _ = happyFail action_676 (278) = happyShift action_49 action_676 (280) = happyShift action_51 action_676 (281) = happyShift action_52 action_676 (282) = happyShift action_53 action_676 (283) = happyShift action_54 action_676 (289) = happyShift action_135 action_676 (292) = happyShift action_136 action_676 (299) = happyShift action_137 action_676 (301) = happyShift action_138 action_676 (307) = happyShift action_139 action_676 (309) = happyShift action_140 action_676 (312) = happyShift action_141 action_676 (325) = happyShift action_142 action_676 (328) = happyShift action_143 action_676 (337) = happyShift action_144 action_676 (338) = happyShift action_145 action_676 (344) = happyShift action_146 action_676 (346) = happyShift action_147 action_676 (358) = happyShift action_88 action_676 (359) = happyShift action_148 action_676 (360) = happyShift action_149 action_676 (361) = happyShift action_150 action_676 (363) = happyShift action_93 action_676 (364) = happyShift action_94 action_676 (365) = happyShift action_95 action_676 (366) = happyShift action_96 action_676 (367) = happyShift action_97 action_676 (368) = happyShift action_98 action_676 (369) = happyShift action_99 action_676 (370) = happyShift action_100 action_676 (371) = happyShift action_101 action_676 (381) = happyShift action_151 action_676 (383) = happyShift action_106 action_676 (402) = happyShift action_112 action_676 (416) = happyShift action_152 action_676 (417) = happyShift action_153 action_676 (103) = happyGoto action_117 action_676 (105) = happyGoto action_118 action_676 (108) = happyGoto action_119 action_676 (109) = happyGoto action_120 action_676 (110) = happyGoto action_121 action_676 (111) = happyGoto action_122 action_676 (112) = happyGoto action_123 action_676 (113) = happyGoto action_124 action_676 (114) = happyGoto action_125 action_676 (115) = happyGoto action_126 action_676 (118) = happyGoto action_852 action_676 (119) = happyGoto action_129 action_676 (232) = happyGoto action_130 action_676 (245) = happyGoto action_131 action_676 (247) = happyGoto action_45 action_676 (248) = happyGoto action_132 action_676 (249) = happyGoto action_47 action_676 (270) = happyGoto action_133 action_676 (271) = happyGoto action_134 action_676 _ = happyFail action_677 (278) = happyShift action_49 action_677 (279) = happyShift action_50 action_677 (299) = happyShift action_423 action_677 (358) = happyShift action_88 action_677 (359) = happyShift action_89 action_677 (360) = happyShift action_90 action_677 (361) = happyShift action_91 action_677 (362) = happyShift action_92 action_677 (363) = happyShift action_93 action_677 (364) = happyShift action_94 action_677 (365) = happyShift action_95 action_677 (366) = happyShift action_96 action_677 (367) = happyShift action_97 action_677 (368) = happyShift action_98 action_677 (369) = happyShift action_99 action_677 (370) = happyShift action_100 action_677 (371) = happyShift action_101 action_677 (380) = happyShift action_104 action_677 (381) = happyShift action_105 action_677 (383) = happyShift action_106 action_677 (402) = happyShift action_112 action_677 (403) = happyShift action_113 action_677 (231) = happyGoto action_851 action_677 (244) = happyGoto action_42 action_677 (245) = happyGoto action_43 action_677 (246) = happyGoto action_44 action_677 _ = happyFail action_678 (278) = happyShift action_49 action_678 (279) = happyShift action_50 action_678 (299) = happyShift action_423 action_678 (358) = happyShift action_88 action_678 (359) = happyShift action_89 action_678 (360) = happyShift action_90 action_678 (361) = happyShift action_91 action_678 (362) = happyShift action_92 action_678 (363) = happyShift action_93 action_678 (364) = happyShift action_94 action_678 (365) = happyShift action_95 action_678 (366) = happyShift action_96 action_678 (367) = happyShift action_97 action_678 (368) = happyShift action_98 action_678 (369) = happyShift action_99 action_678 (370) = happyShift action_100 action_678 (371) = happyShift action_101 action_678 (380) = happyShift action_104 action_678 (381) = happyShift action_105 action_678 (383) = happyShift action_106 action_678 (402) = happyShift action_112 action_678 (403) = happyShift action_113 action_678 (231) = happyGoto action_850 action_678 (244) = happyGoto action_42 action_678 (245) = happyGoto action_43 action_678 (246) = happyGoto action_44 action_678 _ = happyFail action_679 (278) = happyShift action_49 action_679 (317) = happyShift action_849 action_679 (358) = happyShift action_88 action_679 (359) = happyShift action_89 action_679 (360) = happyShift action_90 action_679 (361) = happyShift action_91 action_679 (362) = happyShift action_92 action_679 (363) = happyShift action_93 action_679 (364) = happyShift action_94 action_679 (365) = happyShift action_95 action_679 (366) = happyShift action_96 action_679 (367) = happyShift action_97 action_679 (368) = happyShift action_98 action_679 (369) = happyShift action_99 action_679 (370) = happyShift action_100 action_679 (371) = happyShift action_101 action_679 (380) = happyShift action_104 action_679 (381) = happyShift action_105 action_679 (383) = happyShift action_106 action_679 (402) = happyShift action_112 action_679 (403) = happyShift action_113 action_679 (245) = happyGoto action_43 action_679 (246) = happyGoto action_847 action_679 (263) = happyGoto action_848 action_679 _ = happyReduce_723 action_680 (286) = happyShift action_186 action_680 (288) = happyShift action_187 action_680 (250) = happyGoto action_846 action_680 (251) = happyGoto action_184 action_680 _ = happyFail action_681 (318) = happyShift action_844 action_681 (321) = happyShift action_845 action_681 _ = happyFail action_682 (286) = happyShift action_186 action_682 (251) = happyGoto action_759 action_682 _ = happyFail action_683 (318) = happyShift action_843 action_683 _ = happyFail action_684 (278) = happyShift action_49 action_684 (280) = happyShift action_51 action_684 (281) = happyShift action_52 action_684 (282) = happyShift action_53 action_684 (283) = happyShift action_54 action_684 (289) = happyShift action_135 action_684 (292) = happyShift action_136 action_684 (299) = happyShift action_137 action_684 (301) = happyShift action_138 action_684 (307) = happyShift action_139 action_684 (309) = happyShift action_140 action_684 (312) = happyShift action_141 action_684 (325) = happyShift action_142 action_684 (328) = happyShift action_143 action_684 (337) = happyShift action_144 action_684 (338) = happyShift action_145 action_684 (344) = happyShift action_146 action_684 (346) = happyShift action_147 action_684 (358) = happyShift action_88 action_684 (359) = happyShift action_148 action_684 (360) = happyShift action_149 action_684 (361) = happyShift action_150 action_684 (363) = happyShift action_93 action_684 (364) = happyShift action_94 action_684 (365) = happyShift action_95 action_684 (366) = happyShift action_96 action_684 (367) = happyShift action_97 action_684 (368) = happyShift action_98 action_684 (369) = happyShift action_99 action_684 (370) = happyShift action_100 action_684 (371) = happyShift action_101 action_684 (383) = happyShift action_106 action_684 (402) = happyShift action_112 action_684 (416) = happyShift action_152 action_684 (417) = happyShift action_153 action_684 (103) = happyGoto action_117 action_684 (105) = happyGoto action_842 action_684 (108) = happyGoto action_193 action_684 (109) = happyGoto action_120 action_684 (110) = happyGoto action_121 action_684 (111) = happyGoto action_122 action_684 (112) = happyGoto action_123 action_684 (113) = happyGoto action_124 action_684 (114) = happyGoto action_125 action_684 (115) = happyGoto action_126 action_684 (232) = happyGoto action_130 action_684 (245) = happyGoto action_131 action_684 (247) = happyGoto action_45 action_684 (248) = happyGoto action_132 action_684 (249) = happyGoto action_47 action_684 (270) = happyGoto action_133 action_684 (271) = happyGoto action_134 action_684 _ = happyFail action_685 (278) = happyShift action_49 action_685 (282) = happyShift action_53 action_685 (283) = happyShift action_54 action_685 (289) = happyShift action_135 action_685 (292) = happyShift action_136 action_685 (299) = happyShift action_137 action_685 (301) = happyShift action_138 action_685 (307) = happyShift action_139 action_685 (309) = happyShift action_140 action_685 (312) = happyShift action_141 action_685 (325) = happyShift action_142 action_685 (328) = happyShift action_143 action_685 (337) = happyShift action_144 action_685 (338) = happyShift action_145 action_685 (344) = happyShift action_146 action_685 (346) = happyShift action_147 action_685 (358) = happyShift action_88 action_685 (359) = happyShift action_148 action_685 (360) = happyShift action_149 action_685 (361) = happyShift action_150 action_685 (363) = happyShift action_93 action_685 (364) = happyShift action_94 action_685 (365) = happyShift action_95 action_685 (366) = happyShift action_96 action_685 (367) = happyShift action_97 action_685 (368) = happyShift action_98 action_685 (369) = happyShift action_99 action_685 (370) = happyShift action_100 action_685 (371) = happyShift action_101 action_685 (383) = happyShift action_106 action_685 (402) = happyShift action_112 action_685 (416) = happyShift action_152 action_685 (417) = happyShift action_153 action_685 (102) = happyGoto action_840 action_685 (103) = happyGoto action_841 action_685 (108) = happyGoto action_193 action_685 (109) = happyGoto action_120 action_685 (110) = happyGoto action_121 action_685 (111) = happyGoto action_122 action_685 (112) = happyGoto action_123 action_685 (113) = happyGoto action_124 action_685 (114) = happyGoto action_125 action_685 (115) = happyGoto action_126 action_685 (245) = happyGoto action_131 action_685 (248) = happyGoto action_132 action_685 (249) = happyGoto action_47 action_685 (270) = happyGoto action_133 action_685 (271) = happyGoto action_134 action_685 _ = happyFail action_686 (282) = happyShift action_53 action_686 (283) = happyShift action_54 action_686 (299) = happyShift action_839 action_686 (115) = happyGoto action_838 action_686 (248) = happyGoto action_132 action_686 (249) = happyGoto action_47 action_686 _ = happyFail action_687 (278) = happyShift action_49 action_687 (280) = happyShift action_51 action_687 (281) = happyShift action_52 action_687 (282) = happyShift action_53 action_687 (283) = happyShift action_54 action_687 (289) = happyShift action_135 action_687 (292) = happyShift action_136 action_687 (299) = happyShift action_137 action_687 (301) = happyShift action_138 action_687 (307) = happyShift action_139 action_687 (309) = happyShift action_140 action_687 (312) = happyShift action_141 action_687 (325) = happyShift action_142 action_687 (328) = happyShift action_143 action_687 (337) = happyShift action_144 action_687 (338) = happyShift action_145 action_687 (344) = happyShift action_146 action_687 (346) = happyShift action_147 action_687 (358) = happyShift action_88 action_687 (359) = happyShift action_148 action_687 (360) = happyShift action_149 action_687 (361) = happyShift action_150 action_687 (363) = happyShift action_93 action_687 (364) = happyShift action_94 action_687 (365) = happyShift action_95 action_687 (366) = happyShift action_96 action_687 (367) = happyShift action_97 action_687 (368) = happyShift action_98 action_687 (369) = happyShift action_99 action_687 (370) = happyShift action_100 action_687 (371) = happyShift action_101 action_687 (381) = happyShift action_151 action_687 (383) = happyShift action_106 action_687 (402) = happyShift action_112 action_687 (416) = happyShift action_152 action_687 (417) = happyShift action_153 action_687 (103) = happyGoto action_117 action_687 (105) = happyGoto action_118 action_687 (108) = happyGoto action_119 action_687 (109) = happyGoto action_120 action_687 (110) = happyGoto action_121 action_687 (111) = happyGoto action_122 action_687 (112) = happyGoto action_123 action_687 (113) = happyGoto action_124 action_687 (114) = happyGoto action_125 action_687 (115) = happyGoto action_126 action_687 (118) = happyGoto action_837 action_687 (119) = happyGoto action_129 action_687 (232) = happyGoto action_130 action_687 (245) = happyGoto action_131 action_687 (247) = happyGoto action_45 action_687 (248) = happyGoto action_132 action_687 (249) = happyGoto action_47 action_687 (270) = happyGoto action_133 action_687 (271) = happyGoto action_134 action_687 _ = happyFail action_688 (425) = happyShift action_836 action_688 _ = happyFail action_689 (425) = happyShift action_835 action_689 _ = happyFail action_690 (425) = happyShift action_834 action_690 _ = happyFail action_691 (422) = happyShift action_688 action_691 (423) = happyShift action_689 action_691 (424) = happyShift action_690 action_691 (66) = happyGoto action_833 action_691 _ = happyReduce_148 action_692 (278) = happyShift action_49 action_692 (280) = happyShift action_51 action_692 (281) = happyShift action_52 action_692 (282) = happyShift action_53 action_692 (283) = happyShift action_54 action_692 (289) = happyShift action_135 action_692 (292) = happyShift action_136 action_692 (299) = happyShift action_137 action_692 (301) = happyShift action_138 action_692 (307) = happyShift action_139 action_692 (309) = happyShift action_140 action_692 (312) = happyShift action_141 action_692 (325) = happyShift action_142 action_692 (328) = happyShift action_143 action_692 (337) = happyShift action_144 action_692 (338) = happyShift action_145 action_692 (344) = happyShift action_146 action_692 (346) = happyShift action_147 action_692 (358) = happyShift action_88 action_692 (359) = happyShift action_148 action_692 (360) = happyShift action_149 action_692 (361) = happyShift action_150 action_692 (363) = happyShift action_93 action_692 (364) = happyShift action_94 action_692 (365) = happyShift action_95 action_692 (366) = happyShift action_96 action_692 (367) = happyShift action_97 action_692 (368) = happyShift action_98 action_692 (369) = happyShift action_99 action_692 (370) = happyShift action_100 action_692 (371) = happyShift action_101 action_692 (381) = happyShift action_151 action_692 (383) = happyShift action_106 action_692 (402) = happyShift action_112 action_692 (416) = happyShift action_152 action_692 (417) = happyShift action_153 action_692 (72) = happyGoto action_829 action_692 (103) = happyGoto action_117 action_692 (104) = happyGoto action_830 action_692 (105) = happyGoto action_831 action_692 (108) = happyGoto action_119 action_692 (109) = happyGoto action_120 action_692 (110) = happyGoto action_121 action_692 (111) = happyGoto action_122 action_692 (112) = happyGoto action_123 action_692 (113) = happyGoto action_124 action_692 (114) = happyGoto action_125 action_692 (115) = happyGoto action_126 action_692 (118) = happyGoto action_195 action_692 (119) = happyGoto action_129 action_692 (120) = happyGoto action_832 action_692 (121) = happyGoto action_197 action_692 (232) = happyGoto action_130 action_692 (245) = happyGoto action_131 action_692 (247) = happyGoto action_45 action_692 (248) = happyGoto action_132 action_692 (249) = happyGoto action_47 action_692 (270) = happyGoto action_133 action_692 (271) = happyGoto action_134 action_692 _ = happyReduce_161 action_693 (278) = happyShift action_49 action_693 (280) = happyShift action_51 action_693 (281) = happyShift action_52 action_693 (282) = happyShift action_53 action_693 (283) = happyShift action_54 action_693 (289) = happyShift action_135 action_693 (292) = happyShift action_136 action_693 (299) = happyShift action_137 action_693 (301) = happyShift action_138 action_693 (307) = happyShift action_139 action_693 (309) = happyShift action_140 action_693 (312) = happyShift action_141 action_693 (325) = happyShift action_142 action_693 (328) = happyShift action_143 action_693 (337) = happyShift action_144 action_693 (338) = happyShift action_145 action_693 (344) = happyShift action_146 action_693 (346) = happyShift action_147 action_693 (358) = happyShift action_88 action_693 (359) = happyShift action_148 action_693 (360) = happyShift action_149 action_693 (361) = happyShift action_150 action_693 (363) = happyShift action_93 action_693 (364) = happyShift action_94 action_693 (365) = happyShift action_95 action_693 (366) = happyShift action_96 action_693 (367) = happyShift action_97 action_693 (368) = happyShift action_98 action_693 (369) = happyShift action_99 action_693 (370) = happyShift action_100 action_693 (371) = happyShift action_101 action_693 (381) = happyShift action_151 action_693 (383) = happyShift action_106 action_693 (402) = happyShift action_112 action_693 (416) = happyShift action_152 action_693 (417) = happyShift action_153 action_693 (103) = happyGoto action_117 action_693 (105) = happyGoto action_118 action_693 (108) = happyGoto action_119 action_693 (109) = happyGoto action_120 action_693 (110) = happyGoto action_121 action_693 (111) = happyGoto action_122 action_693 (112) = happyGoto action_123 action_693 (113) = happyGoto action_124 action_693 (114) = happyGoto action_125 action_693 (115) = happyGoto action_126 action_693 (118) = happyGoto action_828 action_693 (119) = happyGoto action_129 action_693 (232) = happyGoto action_130 action_693 (245) = happyGoto action_131 action_693 (247) = happyGoto action_45 action_693 (248) = happyGoto action_132 action_693 (249) = happyGoto action_47 action_693 (270) = happyGoto action_133 action_693 (271) = happyGoto action_134 action_693 _ = happyFail action_694 (320) = happyShift action_827 action_694 (126) = happyGoto action_826 action_694 _ = happyReduce_308 action_695 (363) = happyShift action_817 action_695 (364) = happyShift action_818 action_695 (365) = happyShift action_819 action_695 (366) = happyShift action_820 action_695 (367) = happyShift action_821 action_695 (368) = happyShift action_822 action_695 (369) = happyShift action_823 action_695 (370) = happyShift action_824 action_695 (88) = happyGoto action_825 action_695 _ = happyFail action_696 (363) = happyShift action_817 action_696 (364) = happyShift action_818 action_696 (365) = happyShift action_819 action_696 (366) = happyShift action_820 action_696 (367) = happyShift action_821 action_696 (368) = happyShift action_822 action_696 (369) = happyShift action_823 action_696 (370) = happyShift action_824 action_696 (88) = happyGoto action_816 action_696 _ = happyFail action_697 (318) = happyShift action_813 action_697 (320) = happyShift action_814 action_697 (165) = happyGoto action_815 action_697 (166) = happyGoto action_811 action_697 (167) = happyGoto action_812 action_697 _ = happyFail action_698 (318) = happyShift action_813 action_698 (320) = happyShift action_814 action_698 (165) = happyGoto action_810 action_698 (166) = happyGoto action_811 action_698 (167) = happyGoto action_812 action_698 _ = happyFail action_699 (278) = happyShift action_49 action_699 (279) = happyShift action_50 action_699 (299) = happyShift action_423 action_699 (358) = happyShift action_88 action_699 (359) = happyShift action_89 action_699 (360) = happyShift action_90 action_699 (361) = happyShift action_91 action_699 (362) = happyShift action_92 action_699 (363) = happyShift action_93 action_699 (364) = happyShift action_94 action_699 (365) = happyShift action_95 action_699 (366) = happyShift action_96 action_699 (367) = happyShift action_97 action_699 (368) = happyShift action_98 action_699 (369) = happyShift action_99 action_699 (370) = happyShift action_100 action_699 (371) = happyShift action_101 action_699 (380) = happyShift action_104 action_699 (381) = happyShift action_105 action_699 (383) = happyShift action_106 action_699 (402) = happyShift action_112 action_699 (403) = happyShift action_113 action_699 (87) = happyGoto action_808 action_699 (231) = happyGoto action_809 action_699 (244) = happyGoto action_42 action_699 (245) = happyGoto action_43 action_699 (246) = happyGoto action_44 action_699 _ = happyFail action_700 (278) = happyShift action_49 action_700 (280) = happyShift action_51 action_700 (281) = happyShift action_52 action_700 (282) = happyShift action_53 action_700 (283) = happyShift action_54 action_700 (289) = happyShift action_135 action_700 (292) = happyShift action_136 action_700 (299) = happyShift action_137 action_700 (301) = happyShift action_138 action_700 (307) = happyShift action_139 action_700 (309) = happyShift action_140 action_700 (312) = happyShift action_141 action_700 (325) = happyShift action_142 action_700 (328) = happyShift action_143 action_700 (337) = happyShift action_144 action_700 (338) = happyShift action_145 action_700 (344) = happyShift action_146 action_700 (346) = happyShift action_147 action_700 (358) = happyShift action_88 action_700 (359) = happyShift action_148 action_700 (360) = happyShift action_149 action_700 (361) = happyShift action_150 action_700 (363) = happyShift action_93 action_700 (364) = happyShift action_94 action_700 (365) = happyShift action_95 action_700 (366) = happyShift action_96 action_700 (367) = happyShift action_97 action_700 (368) = happyShift action_98 action_700 (369) = happyShift action_99 action_700 (370) = happyShift action_100 action_700 (371) = happyShift action_101 action_700 (381) = happyShift action_151 action_700 (383) = happyShift action_106 action_700 (402) = happyShift action_112 action_700 (416) = happyShift action_152 action_700 (417) = happyShift action_153 action_700 (103) = happyGoto action_117 action_700 (105) = happyGoto action_118 action_700 (108) = happyGoto action_119 action_700 (109) = happyGoto action_120 action_700 (110) = happyGoto action_121 action_700 (111) = happyGoto action_122 action_700 (112) = happyGoto action_123 action_700 (113) = happyGoto action_124 action_700 (114) = happyGoto action_125 action_700 (115) = happyGoto action_126 action_700 (117) = happyGoto action_807 action_700 (118) = happyGoto action_128 action_700 (119) = happyGoto action_129 action_700 (232) = happyGoto action_130 action_700 (245) = happyGoto action_131 action_700 (247) = happyGoto action_45 action_700 (248) = happyGoto action_132 action_700 (249) = happyGoto action_47 action_700 (270) = happyGoto action_133 action_700 (271) = happyGoto action_134 action_700 _ = happyFail action_701 (317) = happyShift action_805 action_701 (318) = happyShift action_806 action_701 (133) = happyGoto action_803 action_701 (150) = happyGoto action_804 action_701 _ = happyReduce_357 action_702 (278) = happyShift action_49 action_702 (280) = happyShift action_51 action_702 (281) = happyShift action_52 action_702 (282) = happyShift action_53 action_702 (283) = happyShift action_54 action_702 (289) = happyShift action_135 action_702 (292) = happyShift action_136 action_702 (299) = happyShift action_137 action_702 (301) = happyShift action_138 action_702 (307) = happyShift action_139 action_702 (309) = happyShift action_140 action_702 (312) = happyShift action_141 action_702 (325) = happyShift action_142 action_702 (328) = happyShift action_143 action_702 (337) = happyShift action_144 action_702 (338) = happyShift action_145 action_702 (344) = happyShift action_146 action_702 (346) = happyShift action_147 action_702 (358) = happyShift action_88 action_702 (359) = happyShift action_148 action_702 (360) = happyShift action_149 action_702 (361) = happyShift action_150 action_702 (363) = happyShift action_93 action_702 (364) = happyShift action_94 action_702 (365) = happyShift action_95 action_702 (366) = happyShift action_96 action_702 (367) = happyShift action_97 action_702 (368) = happyShift action_98 action_702 (369) = happyShift action_99 action_702 (370) = happyShift action_100 action_702 (371) = happyShift action_101 action_702 (381) = happyShift action_151 action_702 (383) = happyShift action_106 action_702 (402) = happyShift action_112 action_702 (416) = happyShift action_152 action_702 (417) = happyShift action_153 action_702 (103) = happyGoto action_117 action_702 (105) = happyGoto action_118 action_702 (108) = happyGoto action_119 action_702 (109) = happyGoto action_120 action_702 (110) = happyGoto action_121 action_702 (111) = happyGoto action_122 action_702 (112) = happyGoto action_123 action_702 (113) = happyGoto action_124 action_702 (114) = happyGoto action_125 action_702 (115) = happyGoto action_126 action_702 (117) = happyGoto action_802 action_702 (118) = happyGoto action_128 action_702 (119) = happyGoto action_129 action_702 (232) = happyGoto action_130 action_702 (245) = happyGoto action_131 action_702 (247) = happyGoto action_45 action_702 (248) = happyGoto action_132 action_702 (249) = happyGoto action_47 action_702 (270) = happyGoto action_133 action_702 (271) = happyGoto action_134 action_702 _ = happyFail action_703 (278) = happyShift action_49 action_703 (279) = happyShift action_50 action_703 (280) = happyShift action_51 action_703 (281) = happyShift action_52 action_703 (282) = happyShift action_53 action_703 (283) = happyShift action_54 action_703 (289) = happyShift action_55 action_703 (290) = happyShift action_56 action_703 (291) = happyShift action_57 action_703 (292) = happyShift action_58 action_703 (293) = happyShift action_59 action_703 (294) = happyShift action_60 action_703 (295) = happyShift action_61 action_703 (296) = happyShift action_62 action_703 (297) = happyShift action_63 action_703 (298) = happyShift action_64 action_703 (299) = happyShift action_65 action_703 (301) = happyShift action_66 action_703 (307) = happyShift action_67 action_703 (309) = happyShift action_68 action_703 (312) = happyShift action_69 action_703 (319) = happyShift action_70 action_703 (324) = happyShift action_71 action_703 (325) = happyShift action_72 action_703 (327) = happyShift action_73 action_703 (328) = happyShift action_486 action_703 (334) = happyShift action_75 action_703 (337) = happyShift action_76 action_703 (338) = happyShift action_77 action_703 (339) = happyShift action_78 action_703 (340) = happyShift action_79 action_703 (341) = happyShift action_80 action_703 (342) = happyShift action_81 action_703 (344) = happyShift action_82 action_703 (345) = happyShift action_83 action_703 (346) = happyShift action_84 action_703 (348) = happyShift action_85 action_703 (350) = happyShift action_86 action_703 (351) = happyShift action_87 action_703 (357) = happyShift action_487 action_703 (358) = happyShift action_88 action_703 (359) = happyShift action_89 action_703 (360) = happyShift action_90 action_703 (361) = happyShift action_91 action_703 (362) = happyShift action_92 action_703 (363) = happyShift action_93 action_703 (364) = happyShift action_94 action_703 (365) = happyShift action_95 action_703 (366) = happyShift action_96 action_703 (367) = happyShift action_97 action_703 (368) = happyShift action_98 action_703 (369) = happyShift action_99 action_703 (370) = happyShift action_100 action_703 (371) = happyShift action_101 action_703 (373) = happyShift action_102 action_703 (374) = happyShift action_488 action_703 (375) = happyShift action_489 action_703 (376) = happyShift action_490 action_703 (377) = happyShift action_491 action_703 (378) = happyShift action_103 action_703 (380) = happyShift action_104 action_703 (381) = happyShift action_105 action_703 (383) = happyShift action_106 action_703 (384) = happyShift action_107 action_703 (387) = happyShift action_492 action_703 (388) = happyShift action_493 action_703 (389) = happyShift action_494 action_703 (390) = happyShift action_495 action_703 (391) = happyShift action_159 action_703 (392) = happyShift action_109 action_703 (394) = happyShift action_496 action_703 (396) = happyShift action_110 action_703 (399) = happyShift action_497 action_703 (402) = happyShift action_112 action_703 (403) = happyShift action_113 action_703 (404) = happyShift action_498 action_703 (405) = happyShift action_499 action_703 (406) = happyShift action_500 action_703 (407) = happyShift action_501 action_703 (408) = happyShift action_502 action_703 (410) = happyShift action_503 action_703 (411) = happyShift action_114 action_703 (412) = happyShift action_115 action_703 (413) = happyShift action_116 action_703 (414) = happyShift action_504 action_703 (415) = happyShift action_505 action_703 (420) = happyShift action_506 action_703 (421) = happyShift action_507 action_703 (49) = happyGoto action_469 action_703 (51) = happyGoto action_470 action_703 (58) = happyGoto action_801 action_703 (63) = happyGoto action_474 action_703 (71) = happyGoto action_475 action_703 (75) = happyGoto action_476 action_703 (77) = happyGoto action_477 action_703 (78) = happyGoto action_478 action_703 (79) = happyGoto action_479 action_703 (162) = happyGoto action_480 action_703 (170) = happyGoto action_481 action_703 (171) = happyGoto action_26 action_703 (172) = happyGoto action_482 action_703 (173) = happyGoto action_28 action_703 (176) = happyGoto action_29 action_703 (177) = happyGoto action_30 action_703 (178) = happyGoto action_31 action_703 (181) = happyGoto action_32 action_703 (182) = happyGoto action_33 action_703 (183) = happyGoto action_34 action_703 (190) = happyGoto action_35 action_703 (228) = happyGoto action_38 action_703 (231) = happyGoto action_39 action_703 (232) = happyGoto action_40 action_703 (234) = happyGoto action_41 action_703 (244) = happyGoto action_42 action_703 (245) = happyGoto action_43 action_703 (246) = happyGoto action_44 action_703 (247) = happyGoto action_45 action_703 (248) = happyGoto action_46 action_703 (249) = happyGoto action_47 action_703 (257) = happyGoto action_48 action_703 (260) = happyGoto action_483 action_703 (261) = happyGoto action_484 action_703 (265) = happyGoto action_485 action_703 _ = happyReduce_40 action_704 (303) = happyShift action_566 action_704 _ = happyReduce_105 action_705 (343) = happyShift action_800 action_705 _ = happyFail action_706 (285) = happyShift action_211 action_706 (286) = happyShift action_186 action_706 (313) = happyShift action_799 action_706 (314) = happyShift action_214 action_706 (327) = happyShift action_216 action_706 (328) = happyShift action_340 action_706 (329) = happyShift action_218 action_706 (52) = happyGoto action_793 action_706 (235) = happyGoto action_794 action_706 (238) = happyGoto action_795 action_706 (240) = happyGoto action_796 action_706 (251) = happyGoto action_797 action_706 (254) = happyGoto action_798 action_706 (255) = happyGoto action_209 action_706 _ = happyFail action_707 _ = happyReduce_94 action_708 _ = happyReduce_581 action_709 (311) = happyShift action_791 action_709 (335) = happyShift action_792 action_709 _ = happyFail action_710 _ = happyReduce_579 action_711 (321) = happyShift action_790 action_711 _ = happyFail action_712 (304) = happyShift action_173 action_712 (76) = happyGoto action_170 action_712 (86) = happyGoto action_789 action_712 (258) = happyGoto action_172 action_712 _ = happyReduce_714 action_713 _ = happyReduce_488 action_714 _ = happyReduce_414 action_715 (278) = happyShift action_49 action_715 (279) = happyShift action_50 action_715 (280) = happyShift action_51 action_715 (281) = happyShift action_52 action_715 (282) = happyShift action_53 action_715 (283) = happyShift action_54 action_715 (289) = happyShift action_55 action_715 (290) = happyShift action_56 action_715 (291) = happyShift action_57 action_715 (292) = happyShift action_58 action_715 (293) = happyShift action_59 action_715 (294) = happyShift action_60 action_715 (295) = happyShift action_61 action_715 (296) = happyShift action_62 action_715 (297) = happyShift action_63 action_715 (298) = happyShift action_64 action_715 (299) = happyShift action_65 action_715 (301) = happyShift action_66 action_715 (303) = happyShift action_566 action_715 (307) = happyShift action_67 action_715 (309) = happyShift action_68 action_715 (312) = happyShift action_69 action_715 (319) = happyShift action_70 action_715 (324) = happyShift action_71 action_715 (325) = happyShift action_72 action_715 (327) = happyShift action_73 action_715 (328) = happyShift action_74 action_715 (334) = happyShift action_75 action_715 (337) = happyShift action_76 action_715 (338) = happyShift action_77 action_715 (339) = happyShift action_78 action_715 (340) = happyShift action_79 action_715 (341) = happyShift action_80 action_715 (342) = happyShift action_81 action_715 (344) = happyShift action_82 action_715 (345) = happyShift action_83 action_715 (346) = happyShift action_84 action_715 (348) = happyShift action_85 action_715 (350) = happyShift action_86 action_715 (351) = happyShift action_87 action_715 (358) = happyShift action_88 action_715 (359) = happyShift action_89 action_715 (360) = happyShift action_90 action_715 (361) = happyShift action_91 action_715 (362) = happyShift action_92 action_715 (363) = happyShift action_93 action_715 (364) = happyShift action_94 action_715 (365) = happyShift action_95 action_715 (366) = happyShift action_96 action_715 (367) = happyShift action_97 action_715 (368) = happyShift action_98 action_715 (369) = happyShift action_99 action_715 (370) = happyShift action_100 action_715 (371) = happyShift action_101 action_715 (373) = happyShift action_102 action_715 (378) = happyShift action_103 action_715 (380) = happyShift action_104 action_715 (381) = happyShift action_105 action_715 (383) = happyShift action_106 action_715 (384) = happyShift action_107 action_715 (391) = happyShift action_159 action_715 (392) = happyShift action_109 action_715 (396) = happyShift action_110 action_715 (402) = happyShift action_112 action_715 (403) = happyShift action_113 action_715 (411) = happyShift action_114 action_715 (412) = happyShift action_115 action_715 (413) = happyShift action_116 action_715 (169) = happyGoto action_157 action_715 (170) = happyGoto action_25 action_715 (171) = happyGoto action_26 action_715 (172) = happyGoto action_27 action_715 (173) = happyGoto action_28 action_715 (176) = happyGoto action_29 action_715 (177) = happyGoto action_30 action_715 (178) = happyGoto action_31 action_715 (181) = happyGoto action_32 action_715 (182) = happyGoto action_33 action_715 (183) = happyGoto action_34 action_715 (190) = happyGoto action_35 action_715 (210) = happyGoto action_786 action_715 (211) = happyGoto action_787 action_715 (215) = happyGoto action_788 action_715 (228) = happyGoto action_38 action_715 (231) = happyGoto action_39 action_715 (232) = happyGoto action_40 action_715 (234) = happyGoto action_41 action_715 (244) = happyGoto action_42 action_715 (245) = happyGoto action_43 action_715 (246) = happyGoto action_44 action_715 (247) = happyGoto action_45 action_715 (248) = happyGoto action_46 action_715 (249) = happyGoto action_47 action_715 (257) = happyGoto action_48 action_715 _ = happyFail action_716 (305) = happyShift action_785 action_716 _ = happyFail action_717 (1) = happyShift action_400 action_717 (306) = happyShift action_401 action_717 (259) = happyGoto action_784 action_717 _ = happyFail action_718 (320) = happyShift action_779 action_718 _ = happyReduce_588 action_719 (311) = happyShift action_783 action_719 _ = happyReduce_568 action_720 _ = happyReduce_570 action_721 _ = happyReduce_571 action_722 _ = happyReduce_572 action_723 (278) = happyShift action_49 action_723 (279) = happyShift action_50 action_723 (280) = happyShift action_51 action_723 (281) = happyShift action_52 action_723 (282) = happyShift action_53 action_723 (283) = happyShift action_54 action_723 (289) = happyShift action_55 action_723 (290) = happyShift action_56 action_723 (291) = happyShift action_57 action_723 (292) = happyShift action_58 action_723 (293) = happyShift action_59 action_723 (294) = happyShift action_60 action_723 (295) = happyShift action_61 action_723 (296) = happyShift action_62 action_723 (297) = happyShift action_63 action_723 (298) = happyShift action_64 action_723 (299) = happyShift action_65 action_723 (301) = happyShift action_66 action_723 (307) = happyShift action_67 action_723 (309) = happyShift action_68 action_723 (312) = happyShift action_69 action_723 (319) = happyShift action_70 action_723 (324) = happyShift action_71 action_723 (325) = happyShift action_72 action_723 (327) = happyShift action_73 action_723 (334) = happyShift action_75 action_723 (337) = happyShift action_76 action_723 (338) = happyShift action_77 action_723 (339) = happyShift action_78 action_723 (340) = happyShift action_79 action_723 (341) = happyShift action_80 action_723 (342) = happyShift action_81 action_723 (344) = happyShift action_82 action_723 (345) = happyShift action_83 action_723 (346) = happyShift action_84 action_723 (348) = happyShift action_85 action_723 (350) = happyShift action_86 action_723 (351) = happyShift action_87 action_723 (358) = happyShift action_88 action_723 (359) = happyShift action_89 action_723 (360) = happyShift action_90 action_723 (361) = happyShift action_91 action_723 (362) = happyShift action_92 action_723 (363) = happyShift action_93 action_723 (364) = happyShift action_94 action_723 (365) = happyShift action_95 action_723 (366) = happyShift action_96 action_723 (367) = happyShift action_97 action_723 (368) = happyShift action_98 action_723 (369) = happyShift action_99 action_723 (370) = happyShift action_100 action_723 (371) = happyShift action_101 action_723 (373) = happyShift action_102 action_723 (378) = happyShift action_103 action_723 (380) = happyShift action_104 action_723 (381) = happyShift action_105 action_723 (382) = happyShift action_782 action_723 (383) = happyShift action_106 action_723 (384) = happyShift action_107 action_723 (391) = happyShift action_159 action_723 (392) = happyShift action_109 action_723 (396) = happyShift action_110 action_723 (402) = happyShift action_112 action_723 (403) = happyShift action_113 action_723 (411) = happyShift action_114 action_723 (412) = happyShift action_115 action_723 (413) = happyShift action_116 action_723 (168) = happyGoto action_781 action_723 (169) = happyGoto action_161 action_723 (170) = happyGoto action_25 action_723 (171) = happyGoto action_26 action_723 (172) = happyGoto action_27 action_723 (173) = happyGoto action_28 action_723 (176) = happyGoto action_29 action_723 (177) = happyGoto action_30 action_723 (178) = happyGoto action_31 action_723 (181) = happyGoto action_32 action_723 (182) = happyGoto action_33 action_723 (183) = happyGoto action_34 action_723 (190) = happyGoto action_35 action_723 (228) = happyGoto action_38 action_723 (231) = happyGoto action_39 action_723 (232) = happyGoto action_40 action_723 (234) = happyGoto action_41 action_723 (244) = happyGoto action_42 action_723 (245) = happyGoto action_43 action_723 (246) = happyGoto action_44 action_723 (247) = happyGoto action_45 action_723 (248) = happyGoto action_46 action_723 (249) = happyGoto action_47 action_723 (257) = happyGoto action_48 action_723 _ = happyFail action_724 _ = happyReduce_586 action_725 (315) = happyShift action_780 action_725 (322) = happyShift action_439 action_725 _ = happyReduce_479 action_726 _ = happyReduce_566 action_727 _ = happyReduce_649 action_728 (320) = happyShift action_779 action_728 _ = happyReduce_564 action_729 _ = happyReduce_562 action_730 (315) = happyShift action_778 action_730 (322) = happyShift action_439 action_730 _ = happyReduce_479 action_731 _ = happyReduce_565 action_732 _ = happyReduce_458 action_733 _ = happyReduce_457 action_734 (302) = happyShift action_777 action_734 (311) = happyShift action_202 action_734 (184) = happyGoto action_440 action_734 (187) = happyGoto action_776 action_734 _ = happyFail action_735 _ = happyReduce_487 action_736 _ = happyReduce_481 action_737 (320) = happyShift action_438 action_737 _ = happyReduce_491 action_738 _ = happyReduce_490 action_739 _ = happyReduce_454 action_740 _ = happyReduce_453 action_741 (300) = happyShift action_775 action_741 (311) = happyShift action_202 action_741 (184) = happyGoto action_432 action_741 (186) = happyGoto action_774 action_741 _ = happyFail action_742 _ = happyReduce_484 action_743 (278) = happyShift action_49 action_743 (279) = happyShift action_50 action_743 (280) = happyShift action_51 action_743 (281) = happyShift action_52 action_743 (282) = happyShift action_53 action_743 (283) = happyShift action_54 action_743 (289) = happyShift action_55 action_743 (290) = happyShift action_56 action_743 (291) = happyShift action_57 action_743 (292) = happyShift action_58 action_743 (293) = happyShift action_59 action_743 (294) = happyShift action_60 action_743 (295) = happyShift action_61 action_743 (296) = happyShift action_62 action_743 (297) = happyShift action_63 action_743 (298) = happyShift action_64 action_743 (299) = happyShift action_65 action_743 (301) = happyShift action_66 action_743 (307) = happyShift action_67 action_743 (309) = happyShift action_68 action_743 (312) = happyShift action_69 action_743 (319) = happyShift action_70 action_743 (324) = happyShift action_71 action_743 (325) = happyShift action_72 action_743 (327) = happyShift action_73 action_743 (334) = happyShift action_75 action_743 (337) = happyShift action_76 action_743 (338) = happyShift action_77 action_743 (339) = happyShift action_78 action_743 (340) = happyShift action_79 action_743 (341) = happyShift action_80 action_743 (342) = happyShift action_81 action_743 (344) = happyShift action_82 action_743 (345) = happyShift action_83 action_743 (346) = happyShift action_84 action_743 (348) = happyShift action_85 action_743 (350) = happyShift action_86 action_743 (351) = happyShift action_87 action_743 (358) = happyShift action_88 action_743 (359) = happyShift action_89 action_743 (360) = happyShift action_90 action_743 (361) = happyShift action_91 action_743 (362) = happyShift action_92 action_743 (363) = happyShift action_93 action_743 (364) = happyShift action_94 action_743 (365) = happyShift action_95 action_743 (366) = happyShift action_96 action_743 (367) = happyShift action_97 action_743 (368) = happyShift action_98 action_743 (369) = happyShift action_99 action_743 (370) = happyShift action_100 action_743 (371) = happyShift action_101 action_743 (373) = happyShift action_102 action_743 (378) = happyShift action_103 action_743 (380) = happyShift action_104 action_743 (381) = happyShift action_105 action_743 (383) = happyShift action_106 action_743 (384) = happyShift action_107 action_743 (391) = happyShift action_159 action_743 (392) = happyShift action_109 action_743 (396) = happyShift action_110 action_743 (402) = happyShift action_112 action_743 (403) = happyShift action_113 action_743 (411) = happyShift action_114 action_743 (412) = happyShift action_115 action_743 (413) = happyShift action_116 action_743 (169) = happyGoto action_773 action_743 (170) = happyGoto action_25 action_743 (171) = happyGoto action_26 action_743 (172) = happyGoto action_27 action_743 (173) = happyGoto action_28 action_743 (176) = happyGoto action_29 action_743 (177) = happyGoto action_30 action_743 (178) = happyGoto action_31 action_743 (181) = happyGoto action_32 action_743 (182) = happyGoto action_33 action_743 (183) = happyGoto action_34 action_743 (190) = happyGoto action_35 action_743 (228) = happyGoto action_38 action_743 (231) = happyGoto action_39 action_743 (232) = happyGoto action_40 action_743 (234) = happyGoto action_41 action_743 (244) = happyGoto action_42 action_743 (245) = happyGoto action_43 action_743 (246) = happyGoto action_44 action_743 (247) = happyGoto action_45 action_743 (248) = happyGoto action_46 action_743 (249) = happyGoto action_47 action_743 (257) = happyGoto action_48 action_743 _ = happyFail action_744 (278) = happyShift action_49 action_744 (279) = happyShift action_50 action_744 (299) = happyShift action_423 action_744 (315) = happyShift action_425 action_744 (358) = happyShift action_88 action_744 (359) = happyShift action_89 action_744 (360) = happyShift action_90 action_744 (361) = happyShift action_91 action_744 (362) = happyShift action_92 action_744 (363) = happyShift action_93 action_744 (364) = happyShift action_94 action_744 (365) = happyShift action_95 action_744 (366) = happyShift action_96 action_744 (367) = happyShift action_97 action_744 (368) = happyShift action_98 action_744 (369) = happyShift action_99 action_744 (370) = happyShift action_100 action_744 (371) = happyShift action_101 action_744 (380) = happyShift action_104 action_744 (381) = happyShift action_105 action_744 (383) = happyShift action_106 action_744 (402) = happyShift action_112 action_744 (403) = happyShift action_113 action_744 (223) = happyGoto action_772 action_744 (224) = happyGoto action_421 action_744 (231) = happyGoto action_422 action_744 (244) = happyGoto action_42 action_744 (245) = happyGoto action_43 action_744 (246) = happyGoto action_44 action_744 _ = happyFail action_745 _ = happyReduce_445 action_746 _ = happyReduce_653 action_747 _ = happyReduce_647 action_748 (292) = happyShift action_771 action_748 (40) = happyGoto action_770 action_748 _ = happyReduce_70 action_749 _ = happyReduce_67 action_750 (303) = happyShift action_566 action_750 (385) = happyShift action_22 action_750 (35) = happyGoto action_769 action_750 (36) = happyGoto action_564 action_750 _ = happyFail action_751 (303) = happyShift action_566 action_751 (385) = happyShift action_22 action_751 (35) = happyGoto action_768 action_751 (36) = happyGoto action_564 action_751 _ = happyFail action_752 _ = happyReduce_20 action_753 _ = happyReduce_23 action_754 _ = happyReduce_26 action_755 (303) = happyShift action_566 action_755 (425) = happyShift action_767 action_755 _ = happyFail action_756 (282) = happyShift action_53 action_756 (249) = happyGoto action_766 action_756 _ = happyFail action_757 (278) = happyShift action_49 action_757 (279) = happyShift action_50 action_757 (280) = happyShift action_51 action_757 (281) = happyShift action_52 action_757 (282) = happyShift action_53 action_757 (283) = happyShift action_54 action_757 (289) = happyShift action_55 action_757 (290) = happyShift action_56 action_757 (291) = happyShift action_57 action_757 (292) = happyShift action_58 action_757 (293) = happyShift action_59 action_757 (294) = happyShift action_60 action_757 (295) = happyShift action_61 action_757 (296) = happyShift action_62 action_757 (297) = happyShift action_63 action_757 (298) = happyShift action_64 action_757 (299) = happyShift action_65 action_757 (301) = happyShift action_66 action_757 (307) = happyShift action_67 action_757 (309) = happyShift action_68 action_757 (312) = happyShift action_69 action_757 (324) = happyShift action_71 action_757 (325) = happyShift action_72 action_757 (334) = happyShift action_75 action_757 (337) = happyShift action_76 action_757 (338) = happyShift action_77 action_757 (339) = happyShift action_78 action_757 (340) = happyShift action_79 action_757 (341) = happyShift action_80 action_757 (342) = happyShift action_81 action_757 (344) = happyShift action_82 action_757 (345) = happyShift action_83 action_757 (346) = happyShift action_84 action_757 (348) = happyShift action_85 action_757 (350) = happyShift action_86 action_757 (351) = happyShift action_87 action_757 (358) = happyShift action_88 action_757 (359) = happyShift action_89 action_757 (360) = happyShift action_90 action_757 (361) = happyShift action_91 action_757 (362) = happyShift action_92 action_757 (363) = happyShift action_93 action_757 (364) = happyShift action_94 action_757 (365) = happyShift action_95 action_757 (366) = happyShift action_96 action_757 (367) = happyShift action_97 action_757 (368) = happyShift action_98 action_757 (369) = happyShift action_99 action_757 (370) = happyShift action_100 action_757 (371) = happyShift action_101 action_757 (380) = happyShift action_104 action_757 (381) = happyShift action_105 action_757 (383) = happyShift action_106 action_757 (402) = happyShift action_112 action_757 (403) = happyShift action_113 action_757 (181) = happyGoto action_765 action_757 (182) = happyGoto action_33 action_757 (183) = happyGoto action_34 action_757 (190) = happyGoto action_35 action_757 (228) = happyGoto action_38 action_757 (231) = happyGoto action_39 action_757 (232) = happyGoto action_40 action_757 (234) = happyGoto action_41 action_757 (244) = happyGoto action_42 action_757 (245) = happyGoto action_43 action_757 (246) = happyGoto action_44 action_757 (247) = happyGoto action_45 action_757 (248) = happyGoto action_46 action_757 (249) = happyGoto action_47 action_757 (257) = happyGoto action_48 action_757 _ = happyFail action_758 _ = happyReduce_238 action_759 (300) = happyShift action_764 action_759 _ = happyFail action_760 (300) = happyShift action_763 action_760 _ = happyFail action_761 _ = happyReduce_24 action_762 _ = happyReduce_239 action_763 _ = happyReduce_634 action_764 _ = happyReduce_641 action_765 _ = happyReduce_237 action_766 _ = happyReduce_25 action_767 _ = happyReduce_22 action_768 (27) = happyGoto action_1020 action_768 (28) = happyGoto action_1022 action_768 _ = happyReduce_41 action_769 (27) = happyGoto action_1020 action_769 (28) = happyGoto action_1021 action_769 _ = happyReduce_41 action_770 (282) = happyShift action_403 action_770 (283) = happyShift action_404 action_770 (267) = happyGoto action_1019 action_770 _ = happyFail action_771 _ = happyReduce_69 action_772 _ = happyReduce_618 action_773 _ = happyReduce_621 action_774 _ = happyReduce_482 action_775 _ = happyReduce_483 action_776 _ = happyReduce_485 action_777 _ = happyReduce_486 action_778 (278) = happyShift action_49 action_778 (279) = happyShift action_50 action_778 (280) = happyShift action_51 action_778 (281) = happyShift action_52 action_778 (282) = happyShift action_53 action_778 (283) = happyShift action_54 action_778 (289) = happyShift action_55 action_778 (290) = happyShift action_56 action_778 (291) = happyShift action_57 action_778 (292) = happyShift action_58 action_778 (293) = happyShift action_59 action_778 (294) = happyShift action_60 action_778 (295) = happyShift action_61 action_778 (296) = happyShift action_62 action_778 (297) = happyShift action_63 action_778 (298) = happyShift action_64 action_778 (299) = happyShift action_65 action_778 (301) = happyShift action_66 action_778 (307) = happyShift action_67 action_778 (309) = happyShift action_68 action_778 (312) = happyShift action_69 action_778 (319) = happyShift action_70 action_778 (324) = happyShift action_71 action_778 (325) = happyShift action_72 action_778 (327) = happyShift action_73 action_778 (334) = happyShift action_75 action_778 (337) = happyShift action_76 action_778 (338) = happyShift action_77 action_778 (339) = happyShift action_78 action_778 (340) = happyShift action_79 action_778 (341) = happyShift action_80 action_778 (342) = happyShift action_81 action_778 (344) = happyShift action_82 action_778 (345) = happyShift action_83 action_778 (346) = happyShift action_84 action_778 (348) = happyShift action_85 action_778 (350) = happyShift action_86 action_778 (351) = happyShift action_87 action_778 (358) = happyShift action_88 action_778 (359) = happyShift action_89 action_778 (360) = happyShift action_90 action_778 (361) = happyShift action_91 action_778 (362) = happyShift action_92 action_778 (363) = happyShift action_93 action_778 (364) = happyShift action_94 action_778 (365) = happyShift action_95 action_778 (366) = happyShift action_96 action_778 (367) = happyShift action_97 action_778 (368) = happyShift action_98 action_778 (369) = happyShift action_99 action_778 (370) = happyShift action_100 action_778 (371) = happyShift action_101 action_778 (373) = happyShift action_102 action_778 (378) = happyShift action_103 action_778 (380) = happyShift action_104 action_778 (381) = happyShift action_105 action_778 (383) = happyShift action_106 action_778 (384) = happyShift action_107 action_778 (391) = happyShift action_159 action_778 (392) = happyShift action_109 action_778 (396) = happyShift action_110 action_778 (402) = happyShift action_112 action_778 (403) = happyShift action_113 action_778 (411) = happyShift action_114 action_778 (412) = happyShift action_115 action_778 (413) = happyShift action_116 action_778 (169) = happyGoto action_1018 action_778 (170) = happyGoto action_25 action_778 (171) = happyGoto action_26 action_778 (172) = happyGoto action_27 action_778 (173) = happyGoto action_28 action_778 (176) = happyGoto action_29 action_778 (177) = happyGoto action_30 action_778 (178) = happyGoto action_31 action_778 (181) = happyGoto action_32 action_778 (182) = happyGoto action_33 action_778 (183) = happyGoto action_34 action_778 (190) = happyGoto action_35 action_778 (228) = happyGoto action_38 action_778 (231) = happyGoto action_39 action_778 (232) = happyGoto action_40 action_778 (234) = happyGoto action_41 action_778 (244) = happyGoto action_42 action_778 (245) = happyGoto action_43 action_778 (246) = happyGoto action_44 action_778 (247) = happyGoto action_45 action_778 (248) = happyGoto action_46 action_778 (249) = happyGoto action_47 action_778 (257) = happyGoto action_48 action_778 _ = happyReduce_561 action_779 (278) = happyShift action_49 action_779 (279) = happyShift action_50 action_779 (280) = happyShift action_51 action_779 (281) = happyShift action_52 action_779 (282) = happyShift action_53 action_779 (283) = happyShift action_54 action_779 (289) = happyShift action_55 action_779 (290) = happyShift action_56 action_779 (291) = happyShift action_57 action_779 (292) = happyShift action_58 action_779 (293) = happyShift action_59 action_779 (294) = happyShift action_60 action_779 (295) = happyShift action_61 action_779 (296) = happyShift action_62 action_779 (297) = happyShift action_63 action_779 (298) = happyShift action_64 action_779 (299) = happyShift action_65 action_779 (301) = happyShift action_66 action_779 (307) = happyShift action_67 action_779 (309) = happyShift action_68 action_779 (312) = happyShift action_69 action_779 (319) = happyShift action_70 action_779 (324) = happyShift action_71 action_779 (325) = happyShift action_72 action_779 (327) = happyShift action_73 action_779 (328) = happyShift action_74 action_779 (334) = happyShift action_75 action_779 (337) = happyShift action_76 action_779 (338) = happyShift action_77 action_779 (339) = happyShift action_78 action_779 (340) = happyShift action_79 action_779 (341) = happyShift action_80 action_779 (342) = happyShift action_81 action_779 (344) = happyShift action_82 action_779 (345) = happyShift action_83 action_779 (346) = happyShift action_84 action_779 (348) = happyShift action_85 action_779 (350) = happyShift action_86 action_779 (351) = happyShift action_87 action_779 (358) = happyShift action_88 action_779 (359) = happyShift action_89 action_779 (360) = happyShift action_90 action_779 (361) = happyShift action_91 action_779 (362) = happyShift action_92 action_779 (363) = happyShift action_93 action_779 (364) = happyShift action_94 action_779 (365) = happyShift action_95 action_779 (366) = happyShift action_96 action_779 (367) = happyShift action_97 action_779 (368) = happyShift action_98 action_779 (369) = happyShift action_99 action_779 (370) = happyShift action_100 action_779 (371) = happyShift action_101 action_779 (373) = happyShift action_102 action_779 (378) = happyShift action_103 action_779 (380) = happyShift action_104 action_779 (381) = happyShift action_105 action_779 (383) = happyShift action_106 action_779 (384) = happyShift action_107 action_779 (391) = happyShift action_712 action_779 (392) = happyShift action_109 action_779 (396) = happyShift action_110 action_779 (398) = happyShift action_723 action_779 (402) = happyShift action_112 action_779 (403) = happyShift action_113 action_779 (411) = happyShift action_114 action_779 (412) = happyShift action_115 action_779 (413) = happyShift action_116 action_779 (168) = happyGoto action_708 action_779 (169) = happyGoto action_24 action_779 (170) = happyGoto action_25 action_779 (171) = happyGoto action_26 action_779 (172) = happyGoto action_27 action_779 (173) = happyGoto action_28 action_779 (176) = happyGoto action_29 action_779 (177) = happyGoto action_30 action_779 (178) = happyGoto action_31 action_779 (181) = happyGoto action_32 action_779 (182) = happyGoto action_33 action_779 (183) = happyGoto action_34 action_779 (190) = happyGoto action_35 action_779 (202) = happyGoto action_1017 action_779 (203) = happyGoto action_720 action_779 (204) = happyGoto action_721 action_779 (206) = happyGoto action_722 action_779 (215) = happyGoto action_711 action_779 (228) = happyGoto action_38 action_779 (231) = happyGoto action_39 action_779 (232) = happyGoto action_40 action_779 (234) = happyGoto action_41 action_779 (244) = happyGoto action_42 action_779 (245) = happyGoto action_43 action_779 (246) = happyGoto action_44 action_779 (247) = happyGoto action_45 action_779 (248) = happyGoto action_46 action_779 (249) = happyGoto action_47 action_779 (257) = happyGoto action_48 action_779 _ = happyFail action_780 (278) = happyShift action_49 action_780 (279) = happyShift action_50 action_780 (280) = happyShift action_51 action_780 (281) = happyShift action_52 action_780 (282) = happyShift action_53 action_780 (283) = happyShift action_54 action_780 (289) = happyShift action_55 action_780 (290) = happyShift action_56 action_780 (291) = happyShift action_57 action_780 (292) = happyShift action_58 action_780 (293) = happyShift action_59 action_780 (294) = happyShift action_60 action_780 (295) = happyShift action_61 action_780 (296) = happyShift action_62 action_780 (297) = happyShift action_63 action_780 (298) = happyShift action_64 action_780 (299) = happyShift action_65 action_780 (301) = happyShift action_66 action_780 (307) = happyShift action_67 action_780 (309) = happyShift action_68 action_780 (312) = happyShift action_69 action_780 (319) = happyShift action_70 action_780 (324) = happyShift action_71 action_780 (325) = happyShift action_72 action_780 (327) = happyShift action_73 action_780 (334) = happyShift action_75 action_780 (337) = happyShift action_76 action_780 (338) = happyShift action_77 action_780 (339) = happyShift action_78 action_780 (340) = happyShift action_79 action_780 (341) = happyShift action_80 action_780 (342) = happyShift action_81 action_780 (344) = happyShift action_82 action_780 (345) = happyShift action_83 action_780 (346) = happyShift action_84 action_780 (348) = happyShift action_85 action_780 (350) = happyShift action_86 action_780 (351) = happyShift action_87 action_780 (358) = happyShift action_88 action_780 (359) = happyShift action_89 action_780 (360) = happyShift action_90 action_780 (361) = happyShift action_91 action_780 (362) = happyShift action_92 action_780 (363) = happyShift action_93 action_780 (364) = happyShift action_94 action_780 (365) = happyShift action_95 action_780 (366) = happyShift action_96 action_780 (367) = happyShift action_97 action_780 (368) = happyShift action_98 action_780 (369) = happyShift action_99 action_780 (370) = happyShift action_100 action_780 (371) = happyShift action_101 action_780 (373) = happyShift action_102 action_780 (378) = happyShift action_103 action_780 (380) = happyShift action_104 action_780 (381) = happyShift action_105 action_780 (383) = happyShift action_106 action_780 (384) = happyShift action_107 action_780 (391) = happyShift action_159 action_780 (392) = happyShift action_109 action_780 (396) = happyShift action_110 action_780 (402) = happyShift action_112 action_780 (403) = happyShift action_113 action_780 (411) = happyShift action_114 action_780 (412) = happyShift action_115 action_780 (413) = happyShift action_116 action_780 (169) = happyGoto action_1016 action_780 (170) = happyGoto action_25 action_780 (171) = happyGoto action_26 action_780 (172) = happyGoto action_27 action_780 (173) = happyGoto action_28 action_780 (176) = happyGoto action_29 action_780 (177) = happyGoto action_30 action_780 (178) = happyGoto action_31 action_780 (181) = happyGoto action_32 action_780 (182) = happyGoto action_33 action_780 (183) = happyGoto action_34 action_780 (190) = happyGoto action_35 action_780 (228) = happyGoto action_38 action_780 (231) = happyGoto action_39 action_780 (232) = happyGoto action_40 action_780 (234) = happyGoto action_41 action_780 (244) = happyGoto action_42 action_780 (245) = happyGoto action_43 action_780 (246) = happyGoto action_44 action_780 (247) = happyGoto action_45 action_780 (248) = happyGoto action_46 action_780 (249) = happyGoto action_47 action_780 (257) = happyGoto action_48 action_780 _ = happyFail action_781 (372) = happyShift action_1015 action_781 _ = happyReduce_573 action_782 (372) = happyShift action_1013 action_782 (400) = happyShift action_1014 action_782 _ = happyFail action_783 (278) = happyShift action_49 action_783 (279) = happyShift action_50 action_783 (280) = happyShift action_51 action_783 (281) = happyShift action_52 action_783 (282) = happyShift action_53 action_783 (283) = happyShift action_54 action_783 (289) = happyShift action_55 action_783 (290) = happyShift action_56 action_783 (291) = happyShift action_57 action_783 (292) = happyShift action_58 action_783 (293) = happyShift action_59 action_783 (294) = happyShift action_60 action_783 (295) = happyShift action_61 action_783 (296) = happyShift action_62 action_783 (297) = happyShift action_63 action_783 (298) = happyShift action_64 action_783 (299) = happyShift action_65 action_783 (301) = happyShift action_66 action_783 (307) = happyShift action_67 action_783 (309) = happyShift action_68 action_783 (312) = happyShift action_69 action_783 (319) = happyShift action_70 action_783 (324) = happyShift action_71 action_783 (325) = happyShift action_72 action_783 (327) = happyShift action_73 action_783 (328) = happyShift action_74 action_783 (334) = happyShift action_75 action_783 (337) = happyShift action_76 action_783 (338) = happyShift action_77 action_783 (339) = happyShift action_78 action_783 (340) = happyShift action_79 action_783 (341) = happyShift action_80 action_783 (342) = happyShift action_81 action_783 (344) = happyShift action_82 action_783 (345) = happyShift action_83 action_783 (346) = happyShift action_84 action_783 (348) = happyShift action_85 action_783 (350) = happyShift action_86 action_783 (351) = happyShift action_87 action_783 (358) = happyShift action_88 action_783 (359) = happyShift action_89 action_783 (360) = happyShift action_90 action_783 (361) = happyShift action_91 action_783 (362) = happyShift action_92 action_783 (363) = happyShift action_93 action_783 (364) = happyShift action_94 action_783 (365) = happyShift action_95 action_783 (366) = happyShift action_96 action_783 (367) = happyShift action_97 action_783 (368) = happyShift action_98 action_783 (369) = happyShift action_99 action_783 (370) = happyShift action_100 action_783 (371) = happyShift action_101 action_783 (373) = happyShift action_102 action_783 (378) = happyShift action_103 action_783 (380) = happyShift action_104 action_783 (381) = happyShift action_105 action_783 (383) = happyShift action_106 action_783 (384) = happyShift action_107 action_783 (391) = happyShift action_712 action_783 (392) = happyShift action_109 action_783 (396) = happyShift action_110 action_783 (398) = happyShift action_723 action_783 (402) = happyShift action_112 action_783 (403) = happyShift action_113 action_783 (411) = happyShift action_114 action_783 (412) = happyShift action_115 action_783 (413) = happyShift action_116 action_783 (168) = happyGoto action_708 action_783 (169) = happyGoto action_24 action_783 (170) = happyGoto action_25 action_783 (171) = happyGoto action_26 action_783 (172) = happyGoto action_27 action_783 (173) = happyGoto action_28 action_783 (176) = happyGoto action_29 action_783 (177) = happyGoto action_30 action_783 (178) = happyGoto action_31 action_783 (181) = happyGoto action_32 action_783 (182) = happyGoto action_33 action_783 (183) = happyGoto action_34 action_783 (190) = happyGoto action_35 action_783 (203) = happyGoto action_1012 action_783 (204) = happyGoto action_721 action_783 (206) = happyGoto action_722 action_783 (215) = happyGoto action_711 action_783 (228) = happyGoto action_38 action_783 (231) = happyGoto action_39 action_783 (232) = happyGoto action_40 action_783 (234) = happyGoto action_41 action_783 (244) = happyGoto action_42 action_783 (245) = happyGoto action_43 action_783 (246) = happyGoto action_44 action_783 (247) = happyGoto action_45 action_783 (248) = happyGoto action_46 action_783 (249) = happyGoto action_47 action_783 (257) = happyGoto action_48 action_783 _ = happyFail action_784 _ = happyReduce_590 action_785 _ = happyReduce_589 action_786 (27) = happyGoto action_1010 action_786 (28) = happyGoto action_1011 action_786 _ = happyReduce_41 action_787 _ = happyReduce_593 action_788 (320) = happyShift action_628 action_788 (322) = happyShift action_1009 action_788 (212) = happyGoto action_1006 action_788 (213) = happyGoto action_1007 action_788 (214) = happyGoto action_1008 action_788 _ = happyFail action_789 (386) = happyShift action_524 action_789 _ = happyReduce_582 action_790 (278) = happyShift action_49 action_790 (279) = happyShift action_50 action_790 (280) = happyShift action_51 action_790 (281) = happyShift action_52 action_790 (282) = happyShift action_53 action_790 (283) = happyShift action_54 action_790 (289) = happyShift action_55 action_790 (290) = happyShift action_56 action_790 (291) = happyShift action_57 action_790 (292) = happyShift action_58 action_790 (293) = happyShift action_59 action_790 (294) = happyShift action_60 action_790 (295) = happyShift action_61 action_790 (296) = happyShift action_62 action_790 (297) = happyShift action_63 action_790 (298) = happyShift action_64 action_790 (299) = happyShift action_65 action_790 (301) = happyShift action_66 action_790 (307) = happyShift action_67 action_790 (309) = happyShift action_68 action_790 (312) = happyShift action_69 action_790 (319) = happyShift action_70 action_790 (324) = happyShift action_71 action_790 (325) = happyShift action_72 action_790 (327) = happyShift action_73 action_790 (334) = happyShift action_75 action_790 (337) = happyShift action_76 action_790 (338) = happyShift action_77 action_790 (339) = happyShift action_78 action_790 (340) = happyShift action_79 action_790 (341) = happyShift action_80 action_790 (342) = happyShift action_81 action_790 (344) = happyShift action_82 action_790 (345) = happyShift action_83 action_790 (346) = happyShift action_84 action_790 (348) = happyShift action_85 action_790 (350) = happyShift action_86 action_790 (351) = happyShift action_87 action_790 (358) = happyShift action_88 action_790 (359) = happyShift action_89 action_790 (360) = happyShift action_90 action_790 (361) = happyShift action_91 action_790 (362) = happyShift action_92 action_790 (363) = happyShift action_93 action_790 (364) = happyShift action_94 action_790 (365) = happyShift action_95 action_790 (366) = happyShift action_96 action_790 (367) = happyShift action_97 action_790 (368) = happyShift action_98 action_790 (369) = happyShift action_99 action_790 (370) = happyShift action_100 action_790 (371) = happyShift action_101 action_790 (373) = happyShift action_102 action_790 (378) = happyShift action_103 action_790 (380) = happyShift action_104 action_790 (381) = happyShift action_105 action_790 (383) = happyShift action_106 action_790 (384) = happyShift action_107 action_790 (391) = happyShift action_159 action_790 (392) = happyShift action_109 action_790 (396) = happyShift action_110 action_790 (402) = happyShift action_112 action_790 (403) = happyShift action_113 action_790 (411) = happyShift action_114 action_790 (412) = happyShift action_115 action_790 (413) = happyShift action_116 action_790 (168) = happyGoto action_1005 action_790 (169) = happyGoto action_161 action_790 (170) = happyGoto action_25 action_790 (171) = happyGoto action_26 action_790 (172) = happyGoto action_27 action_790 (173) = happyGoto action_28 action_790 (176) = happyGoto action_29 action_790 (177) = happyGoto action_30 action_790 (178) = happyGoto action_31 action_790 (181) = happyGoto action_32 action_790 (182) = happyGoto action_33 action_790 (183) = happyGoto action_34 action_790 (190) = happyGoto action_35 action_790 (228) = happyGoto action_38 action_790 (231) = happyGoto action_39 action_790 (232) = happyGoto action_40 action_790 (234) = happyGoto action_41 action_790 (244) = happyGoto action_42 action_790 (245) = happyGoto action_43 action_790 (246) = happyGoto action_44 action_790 (247) = happyGoto action_45 action_790 (248) = happyGoto action_46 action_790 (249) = happyGoto action_47 action_790 (257) = happyGoto action_48 action_790 _ = happyFail action_791 (278) = happyShift action_49 action_791 (279) = happyShift action_50 action_791 (280) = happyShift action_51 action_791 (281) = happyShift action_52 action_791 (282) = happyShift action_53 action_791 (283) = happyShift action_54 action_791 (289) = happyShift action_55 action_791 (290) = happyShift action_56 action_791 (291) = happyShift action_57 action_791 (292) = happyShift action_58 action_791 (293) = happyShift action_59 action_791 (294) = happyShift action_60 action_791 (295) = happyShift action_61 action_791 (296) = happyShift action_62 action_791 (297) = happyShift action_63 action_791 (298) = happyShift action_64 action_791 (299) = happyShift action_65 action_791 (301) = happyShift action_66 action_791 (307) = happyShift action_67 action_791 (309) = happyShift action_68 action_791 (312) = happyShift action_69 action_791 (319) = happyShift action_70 action_791 (324) = happyShift action_71 action_791 (325) = happyShift action_72 action_791 (327) = happyShift action_73 action_791 (328) = happyShift action_74 action_791 (334) = happyShift action_75 action_791 (337) = happyShift action_76 action_791 (338) = happyShift action_77 action_791 (339) = happyShift action_78 action_791 (340) = happyShift action_79 action_791 (341) = happyShift action_80 action_791 (342) = happyShift action_81 action_791 (344) = happyShift action_82 action_791 (345) = happyShift action_83 action_791 (346) = happyShift action_84 action_791 (348) = happyShift action_85 action_791 (350) = happyShift action_86 action_791 (351) = happyShift action_87 action_791 (358) = happyShift action_88 action_791 (359) = happyShift action_89 action_791 (360) = happyShift action_90 action_791 (361) = happyShift action_91 action_791 (362) = happyShift action_92 action_791 (363) = happyShift action_93 action_791 (364) = happyShift action_94 action_791 (365) = happyShift action_95 action_791 (366) = happyShift action_96 action_791 (367) = happyShift action_97 action_791 (368) = happyShift action_98 action_791 (369) = happyShift action_99 action_791 (370) = happyShift action_100 action_791 (371) = happyShift action_101 action_791 (373) = happyShift action_102 action_791 (378) = happyShift action_103 action_791 (380) = happyShift action_104 action_791 (381) = happyShift action_105 action_791 (383) = happyShift action_106 action_791 (384) = happyShift action_107 action_791 (391) = happyShift action_712 action_791 (392) = happyShift action_109 action_791 (396) = happyShift action_110 action_791 (402) = happyShift action_112 action_791 (403) = happyShift action_113 action_791 (411) = happyShift action_114 action_791 (412) = happyShift action_115 action_791 (413) = happyShift action_116 action_791 (168) = happyGoto action_708 action_791 (169) = happyGoto action_24 action_791 (170) = happyGoto action_25 action_791 (171) = happyGoto action_26 action_791 (172) = happyGoto action_27 action_791 (173) = happyGoto action_28 action_791 (176) = happyGoto action_29 action_791 (177) = happyGoto action_30 action_791 (178) = happyGoto action_31 action_791 (181) = happyGoto action_32 action_791 (182) = happyGoto action_33 action_791 (183) = happyGoto action_34 action_791 (190) = happyGoto action_35 action_791 (206) = happyGoto action_1004 action_791 (215) = happyGoto action_711 action_791 (228) = happyGoto action_38 action_791 (231) = happyGoto action_39 action_791 (232) = happyGoto action_40 action_791 (234) = happyGoto action_41 action_791 (244) = happyGoto action_42 action_791 (245) = happyGoto action_43 action_791 (246) = happyGoto action_44 action_791 (247) = happyGoto action_45 action_791 (248) = happyGoto action_46 action_791 (249) = happyGoto action_47 action_791 (257) = happyGoto action_48 action_791 _ = happyFail action_792 _ = happyReduce_464 action_793 (311) = happyShift action_1003 action_793 _ = happyReduce_92 action_794 _ = happyReduce_654 action_795 _ = happyReduce_655 action_796 _ = happyReduce_99 action_797 _ = happyReduce_650 action_798 _ = happyReduce_644 action_799 (278) = happyShift action_49 action_799 (282) = happyShift action_53 action_799 (358) = happyShift action_88 action_799 (359) = happyShift action_89 action_799 (360) = happyShift action_90 action_799 (361) = happyShift action_91 action_799 (362) = happyShift action_92 action_799 (363) = happyShift action_93 action_799 (364) = happyShift action_94 action_799 (365) = happyShift action_95 action_799 (366) = happyShift action_96 action_799 (367) = happyShift action_97 action_799 (368) = happyShift action_98 action_799 (369) = happyShift action_99 action_799 (370) = happyShift action_100 action_799 (371) = happyShift action_101 action_799 (380) = happyShift action_104 action_799 (381) = happyShift action_105 action_799 (383) = happyShift action_106 action_799 (402) = happyShift action_112 action_799 (403) = happyShift action_113 action_799 (245) = happyGoto action_43 action_799 (246) = happyGoto action_1001 action_799 (249) = happyGoto action_1002 action_799 _ = happyFail action_800 _ = happyReduce_471 action_801 _ = happyReduce_106 action_802 (317) = happyShift action_805 action_802 (318) = happyShift action_806 action_802 (133) = happyGoto action_999 action_802 (150) = happyGoto action_1000 action_802 _ = happyReduce_357 action_803 (377) = happyShift action_998 action_803 (141) = happyGoto action_997 action_803 _ = happyReduce_336 action_804 (401) = happyShift action_996 action_804 (129) = happyGoto action_995 action_804 _ = happyReduce_315 action_805 (278) = happyShift action_49 action_805 (279) = happyShift action_50 action_805 (282) = happyShift action_53 action_805 (283) = happyShift action_54 action_805 (299) = happyShift action_609 action_805 (307) = happyShift action_610 action_805 (329) = happyShift action_611 action_805 (358) = happyShift action_88 action_805 (359) = happyShift action_89 action_805 (360) = happyShift action_90 action_805 (361) = happyShift action_91 action_805 (362) = happyShift action_92 action_805 (363) = happyShift action_93 action_805 (364) = happyShift action_94 action_805 (365) = happyShift action_95 action_805 (366) = happyShift action_96 action_805 (367) = happyShift action_97 action_805 (368) = happyShift action_98 action_805 (369) = happyShift action_99 action_805 (370) = happyShift action_100 action_805 (371) = happyShift action_101 action_805 (380) = happyShift action_104 action_805 (381) = happyShift action_105 action_805 (383) = happyShift action_106 action_805 (402) = happyShift action_112 action_805 (403) = happyShift action_113 action_805 (144) = happyGoto action_994 action_805 (145) = happyGoto action_603 action_805 (146) = happyGoto action_604 action_805 (147) = happyGoto action_605 action_805 (148) = happyGoto action_606 action_805 (234) = happyGoto action_181 action_805 (244) = happyGoto action_607 action_805 (245) = happyGoto action_43 action_805 (246) = happyGoto action_44 action_805 (248) = happyGoto action_46 action_805 (249) = happyGoto action_47 action_805 (269) = happyGoto action_608 action_805 _ = happyFail action_806 (381) = happyShift action_993 action_806 (134) = happyGoto action_990 action_806 (135) = happyGoto action_991 action_806 (136) = happyGoto action_992 action_806 _ = happyReduce_327 action_807 (318) = happyReduce_393 action_807 (320) = happyReduce_393 action_807 _ = happyReduce_175 action_808 (311) = happyShift action_988 action_808 (317) = happyShift action_989 action_808 _ = happyFail action_809 _ = happyReduce_198 action_810 (401) = happyShift action_983 action_810 (163) = happyGoto action_987 action_810 _ = happyReduce_392 action_811 (320) = happyShift action_814 action_811 (167) = happyGoto action_986 action_811 _ = happyReduce_396 action_812 _ = happyReduce_398 action_813 (278) = happyShift action_49 action_813 (279) = happyShift action_50 action_813 (280) = happyShift action_51 action_813 (281) = happyShift action_52 action_813 (282) = happyShift action_53 action_813 (283) = happyShift action_54 action_813 (289) = happyShift action_55 action_813 (290) = happyShift action_56 action_813 (291) = happyShift action_57 action_813 (292) = happyShift action_58 action_813 (293) = happyShift action_59 action_813 (294) = happyShift action_60 action_813 (295) = happyShift action_61 action_813 (296) = happyShift action_62 action_813 (297) = happyShift action_63 action_813 (298) = happyShift action_64 action_813 (299) = happyShift action_65 action_813 (301) = happyShift action_66 action_813 (307) = happyShift action_67 action_813 (309) = happyShift action_68 action_813 (312) = happyShift action_69 action_813 (319) = happyShift action_70 action_813 (324) = happyShift action_71 action_813 (325) = happyShift action_72 action_813 (327) = happyShift action_73 action_813 (334) = happyShift action_75 action_813 (337) = happyShift action_76 action_813 (338) = happyShift action_77 action_813 (339) = happyShift action_78 action_813 (340) = happyShift action_79 action_813 (341) = happyShift action_80 action_813 (342) = happyShift action_81 action_813 (344) = happyShift action_82 action_813 (345) = happyShift action_83 action_813 (346) = happyShift action_84 action_813 (348) = happyShift action_85 action_813 (350) = happyShift action_86 action_813 (351) = happyShift action_87 action_813 (358) = happyShift action_88 action_813 (359) = happyShift action_89 action_813 (360) = happyShift action_90 action_813 (361) = happyShift action_91 action_813 (362) = happyShift action_92 action_813 (363) = happyShift action_93 action_813 (364) = happyShift action_94 action_813 (365) = happyShift action_95 action_813 (366) = happyShift action_96 action_813 (367) = happyShift action_97 action_813 (368) = happyShift action_98 action_813 (369) = happyShift action_99 action_813 (370) = happyShift action_100 action_813 (371) = happyShift action_101 action_813 (373) = happyShift action_102 action_813 (378) = happyShift action_103 action_813 (380) = happyShift action_104 action_813 (381) = happyShift action_105 action_813 (383) = happyShift action_106 action_813 (384) = happyShift action_107 action_813 (391) = happyShift action_159 action_813 (392) = happyShift action_109 action_813 (396) = happyShift action_110 action_813 (402) = happyShift action_112 action_813 (403) = happyShift action_113 action_813 (411) = happyShift action_114 action_813 (412) = happyShift action_115 action_813 (413) = happyShift action_116 action_813 (168) = happyGoto action_985 action_813 (169) = happyGoto action_161 action_813 (170) = happyGoto action_25 action_813 (171) = happyGoto action_26 action_813 (172) = happyGoto action_27 action_813 (173) = happyGoto action_28 action_813 (176) = happyGoto action_29 action_813 (177) = happyGoto action_30 action_813 (178) = happyGoto action_31 action_813 (181) = happyGoto action_32 action_813 (182) = happyGoto action_33 action_813 (183) = happyGoto action_34 action_813 (190) = happyGoto action_35 action_813 (228) = happyGoto action_38 action_813 (231) = happyGoto action_39 action_813 (232) = happyGoto action_40 action_813 (234) = happyGoto action_41 action_813 (244) = happyGoto action_42 action_813 (245) = happyGoto action_43 action_813 (246) = happyGoto action_44 action_813 (247) = happyGoto action_45 action_813 (248) = happyGoto action_46 action_813 (249) = happyGoto action_47 action_813 (257) = happyGoto action_48 action_813 _ = happyFail action_814 (278) = happyShift action_49 action_814 (279) = happyShift action_50 action_814 (280) = happyShift action_51 action_814 (281) = happyShift action_52 action_814 (282) = happyShift action_53 action_814 (283) = happyShift action_54 action_814 (289) = happyShift action_55 action_814 (290) = happyShift action_56 action_814 (291) = happyShift action_57 action_814 (292) = happyShift action_58 action_814 (293) = happyShift action_59 action_814 (294) = happyShift action_60 action_814 (295) = happyShift action_61 action_814 (296) = happyShift action_62 action_814 (297) = happyShift action_63 action_814 (298) = happyShift action_64 action_814 (299) = happyShift action_65 action_814 (301) = happyShift action_66 action_814 (307) = happyShift action_67 action_814 (309) = happyShift action_68 action_814 (312) = happyShift action_69 action_814 (319) = happyShift action_70 action_814 (324) = happyShift action_71 action_814 (325) = happyShift action_72 action_814 (327) = happyShift action_73 action_814 (328) = happyShift action_74 action_814 (334) = happyShift action_75 action_814 (337) = happyShift action_76 action_814 (338) = happyShift action_77 action_814 (339) = happyShift action_78 action_814 (340) = happyShift action_79 action_814 (341) = happyShift action_80 action_814 (342) = happyShift action_81 action_814 (344) = happyShift action_82 action_814 (345) = happyShift action_83 action_814 (346) = happyShift action_84 action_814 (348) = happyShift action_85 action_814 (350) = happyShift action_86 action_814 (351) = happyShift action_87 action_814 (358) = happyShift action_88 action_814 (359) = happyShift action_89 action_814 (360) = happyShift action_90 action_814 (361) = happyShift action_91 action_814 (362) = happyShift action_92 action_814 (363) = happyShift action_93 action_814 (364) = happyShift action_94 action_814 (365) = happyShift action_95 action_814 (366) = happyShift action_96 action_814 (367) = happyShift action_97 action_814 (368) = happyShift action_98 action_814 (369) = happyShift action_99 action_814 (370) = happyShift action_100 action_814 (371) = happyShift action_101 action_814 (373) = happyShift action_102 action_814 (378) = happyShift action_103 action_814 (380) = happyShift action_104 action_814 (381) = happyShift action_105 action_814 (383) = happyShift action_106 action_814 (384) = happyShift action_107 action_814 (391) = happyShift action_712 action_814 (392) = happyShift action_109 action_814 (396) = happyShift action_110 action_814 (402) = happyShift action_112 action_814 (403) = happyShift action_113 action_814 (411) = happyShift action_114 action_814 (412) = happyShift action_115 action_814 (413) = happyShift action_116 action_814 (168) = happyGoto action_708 action_814 (169) = happyGoto action_24 action_814 (170) = happyGoto action_25 action_814 (171) = happyGoto action_26 action_814 (172) = happyGoto action_27 action_814 (173) = happyGoto action_28 action_814 (176) = happyGoto action_29 action_814 (177) = happyGoto action_30 action_814 (178) = happyGoto action_31 action_814 (181) = happyGoto action_32 action_814 (182) = happyGoto action_33 action_814 (183) = happyGoto action_34 action_814 (190) = happyGoto action_35 action_814 (205) = happyGoto action_984 action_814 (206) = happyGoto action_710 action_814 (215) = happyGoto action_711 action_814 (228) = happyGoto action_38 action_814 (231) = happyGoto action_39 action_814 (232) = happyGoto action_40 action_814 (234) = happyGoto action_41 action_814 (244) = happyGoto action_42 action_814 (245) = happyGoto action_43 action_814 (246) = happyGoto action_44 action_814 (247) = happyGoto action_45 action_814 (248) = happyGoto action_46 action_814 (249) = happyGoto action_47 action_814 (257) = happyGoto action_48 action_814 _ = happyFail action_815 (401) = happyShift action_983 action_815 (163) = happyGoto action_982 action_815 _ = happyReduce_392 action_816 (359) = happyShift action_978 action_816 (360) = happyShift action_979 action_816 (361) = happyShift action_980 action_816 (362) = happyShift action_981 action_816 (89) = happyGoto action_977 action_816 _ = happyReduce_211 action_817 _ = happyReduce_199 action_818 _ = happyReduce_200 action_819 _ = happyReduce_201 action_820 _ = happyReduce_202 action_821 _ = happyReduce_203 action_822 _ = happyReduce_204 action_823 _ = happyReduce_205 action_824 _ = happyReduce_206 action_825 (278) = happyShift action_49 action_825 (292) = happyShift action_975 action_825 (299) = happyShift action_976 action_825 (358) = happyShift action_88 action_825 (363) = happyShift action_93 action_825 (364) = happyShift action_94 action_825 (365) = happyShift action_95 action_825 (366) = happyShift action_96 action_825 (367) = happyShift action_97 action_825 (368) = happyShift action_98 action_825 (369) = happyShift action_99 action_825 (370) = happyShift action_100 action_825 (371) = happyShift action_101 action_825 (383) = happyShift action_106 action_825 (402) = happyShift action_112 action_825 (90) = happyGoto action_972 action_825 (230) = happyGoto action_973 action_825 (245) = happyGoto action_974 action_825 _ = happyFail action_826 (401) = happyShift action_971 action_826 (151) = happyGoto action_970 action_826 _ = happyReduce_361 action_827 (124) = happyGoto action_967 action_827 (127) = happyGoto action_968 action_827 (128) = happyGoto action_969 action_827 _ = happyReduce_306 action_828 (317) = happyShift action_966 action_828 (59) = happyGoto action_965 action_828 _ = happyReduce_129 action_829 (300) = happyShift action_964 action_829 _ = happyFail action_830 _ = happyReduce_160 action_831 (311) = happyReduce_296 action_831 _ = happyReduce_245 action_832 _ = happyReduce_159 action_833 (278) = happyShift action_49 action_833 (280) = happyShift action_51 action_833 (281) = happyShift action_52 action_833 (282) = happyShift action_53 action_833 (283) = happyShift action_54 action_833 (289) = happyShift action_135 action_833 (292) = happyShift action_136 action_833 (299) = happyShift action_137 action_833 (301) = happyShift action_138 action_833 (307) = happyShift action_139 action_833 (309) = happyShift action_140 action_833 (312) = happyShift action_141 action_833 (325) = happyShift action_142 action_833 (328) = happyShift action_143 action_833 (337) = happyShift action_144 action_833 (338) = happyShift action_145 action_833 (344) = happyShift action_146 action_833 (346) = happyShift action_147 action_833 (358) = happyShift action_88 action_833 (359) = happyShift action_148 action_833 (360) = happyShift action_149 action_833 (361) = happyShift action_150 action_833 (363) = happyShift action_93 action_833 (364) = happyShift action_94 action_833 (365) = happyShift action_95 action_833 (366) = happyShift action_96 action_833 (367) = happyShift action_97 action_833 (368) = happyShift action_98 action_833 (369) = happyShift action_99 action_833 (370) = happyShift action_100 action_833 (371) = happyShift action_101 action_833 (381) = happyShift action_151 action_833 (383) = happyShift action_106 action_833 (402) = happyShift action_112 action_833 (416) = happyShift action_152 action_833 (417) = happyShift action_153 action_833 (103) = happyGoto action_117 action_833 (105) = happyGoto action_118 action_833 (108) = happyGoto action_119 action_833 (109) = happyGoto action_120 action_833 (110) = happyGoto action_121 action_833 (111) = happyGoto action_122 action_833 (112) = happyGoto action_123 action_833 (113) = happyGoto action_124 action_833 (114) = happyGoto action_125 action_833 (115) = happyGoto action_126 action_833 (118) = happyGoto action_963 action_833 (119) = happyGoto action_129 action_833 (232) = happyGoto action_130 action_833 (245) = happyGoto action_131 action_833 (247) = happyGoto action_45 action_833 (248) = happyGoto action_132 action_833 (249) = happyGoto action_47 action_833 (270) = happyGoto action_133 action_833 (271) = happyGoto action_134 action_833 _ = happyFail action_834 _ = happyReduce_146 action_835 _ = happyReduce_145 action_836 _ = happyReduce_147 action_837 (401) = happyShift action_962 action_837 (157) = happyGoto action_961 action_837 _ = happyReduce_377 action_838 (64) = happyGoto action_960 action_838 _ = happyReduce_141 action_839 (285) = happyShift action_211 action_839 (286) = happyShift action_186 action_839 (287) = happyShift action_212 action_839 (288) = happyShift action_187 action_839 (314) = happyShift action_214 action_839 (316) = happyShift action_190 action_839 (327) = happyShift action_216 action_839 (328) = happyShift action_340 action_839 (329) = happyShift action_218 action_839 (243) = happyGoto action_206 action_839 (250) = happyGoto action_183 action_839 (251) = happyGoto action_184 action_839 (252) = happyGoto action_207 action_839 (254) = happyGoto action_208 action_839 (255) = happyGoto action_209 action_839 (256) = happyGoto action_210 action_839 _ = happyFail action_840 (318) = happyShift action_959 action_840 _ = happyFail action_841 _ = happyReduce_240 action_842 (317) = happyShift action_957 action_842 (318) = happyShift action_958 action_842 (60) = happyGoto action_956 action_842 _ = happyReduce_131 action_843 (278) = happyShift action_49 action_843 (280) = happyShift action_51 action_843 (281) = happyShift action_52 action_843 (282) = happyShift action_53 action_843 (283) = happyShift action_54 action_843 (289) = happyShift action_135 action_843 (292) = happyShift action_136 action_843 (299) = happyShift action_137 action_843 (301) = happyShift action_138 action_843 (307) = happyShift action_139 action_843 (309) = happyShift action_140 action_843 (312) = happyShift action_141 action_843 (325) = happyShift action_142 action_843 (328) = happyShift action_143 action_843 (337) = happyShift action_144 action_843 (338) = happyShift action_145 action_843 (344) = happyShift action_146 action_843 (346) = happyShift action_147 action_843 (358) = happyShift action_88 action_843 (359) = happyShift action_148 action_843 (360) = happyShift action_149 action_843 (361) = happyShift action_150 action_843 (363) = happyShift action_93 action_843 (364) = happyShift action_94 action_843 (365) = happyShift action_95 action_843 (366) = happyShift action_96 action_843 (367) = happyShift action_97 action_843 (368) = happyShift action_98 action_843 (369) = happyShift action_99 action_843 (370) = happyShift action_100 action_843 (371) = happyShift action_101 action_843 (381) = happyShift action_151 action_843 (383) = happyShift action_106 action_843 (402) = happyShift action_112 action_843 (416) = happyShift action_152 action_843 (417) = happyShift action_153 action_843 (103) = happyGoto action_117 action_843 (105) = happyGoto action_118 action_843 (108) = happyGoto action_119 action_843 (109) = happyGoto action_120 action_843 (110) = happyGoto action_121 action_843 (111) = happyGoto action_122 action_843 (112) = happyGoto action_123 action_843 (113) = happyGoto action_124 action_843 (114) = happyGoto action_125 action_843 (115) = happyGoto action_126 action_843 (117) = happyGoto action_955 action_843 (118) = happyGoto action_128 action_843 (119) = happyGoto action_129 action_843 (232) = happyGoto action_130 action_843 (245) = happyGoto action_131 action_843 (247) = happyGoto action_45 action_843 (248) = happyGoto action_132 action_843 (249) = happyGoto action_47 action_843 (270) = happyGoto action_133 action_843 (271) = happyGoto action_134 action_843 _ = happyFail action_844 (278) = happyShift action_49 action_844 (279) = happyShift action_50 action_844 (280) = happyShift action_51 action_844 (281) = happyShift action_52 action_844 (282) = happyShift action_53 action_844 (283) = happyShift action_54 action_844 (289) = happyShift action_55 action_844 (290) = happyShift action_56 action_844 (291) = happyShift action_57 action_844 (292) = happyShift action_58 action_844 (293) = happyShift action_59 action_844 (294) = happyShift action_60 action_844 (295) = happyShift action_61 action_844 (296) = happyShift action_62 action_844 (297) = happyShift action_63 action_844 (298) = happyShift action_64 action_844 (299) = happyShift action_65 action_844 (301) = happyShift action_66 action_844 (307) = happyShift action_67 action_844 (309) = happyShift action_68 action_844 (312) = happyShift action_69 action_844 (319) = happyShift action_70 action_844 (324) = happyShift action_71 action_844 (325) = happyShift action_72 action_844 (327) = happyShift action_73 action_844 (328) = happyShift action_74 action_844 (334) = happyShift action_75 action_844 (337) = happyShift action_76 action_844 (338) = happyShift action_77 action_844 (339) = happyShift action_78 action_844 (340) = happyShift action_79 action_844 (341) = happyShift action_80 action_844 (342) = happyShift action_81 action_844 (344) = happyShift action_82 action_844 (345) = happyShift action_83 action_844 (346) = happyShift action_84 action_844 (348) = happyShift action_85 action_844 (350) = happyShift action_86 action_844 (351) = happyShift action_87 action_844 (358) = happyShift action_88 action_844 (359) = happyShift action_89 action_844 (360) = happyShift action_90 action_844 (361) = happyShift action_91 action_844 (362) = happyShift action_92 action_844 (363) = happyShift action_93 action_844 (364) = happyShift action_94 action_844 (365) = happyShift action_95 action_844 (366) = happyShift action_96 action_844 (367) = happyShift action_97 action_844 (368) = happyShift action_98 action_844 (369) = happyShift action_99 action_844 (370) = happyShift action_100 action_844 (371) = happyShift action_101 action_844 (373) = happyShift action_102 action_844 (378) = happyShift action_103 action_844 (380) = happyShift action_104 action_844 (381) = happyShift action_105 action_844 (383) = happyShift action_106 action_844 (384) = happyShift action_107 action_844 (391) = happyShift action_159 action_844 (392) = happyShift action_109 action_844 (396) = happyShift action_110 action_844 (402) = happyShift action_112 action_844 (403) = happyShift action_113 action_844 (411) = happyShift action_114 action_844 (412) = happyShift action_115 action_844 (413) = happyShift action_116 action_844 (169) = happyGoto action_157 action_844 (170) = happyGoto action_25 action_844 (171) = happyGoto action_26 action_844 (172) = happyGoto action_27 action_844 (173) = happyGoto action_28 action_844 (176) = happyGoto action_29 action_844 (177) = happyGoto action_30 action_844 (178) = happyGoto action_31 action_844 (181) = happyGoto action_32 action_844 (182) = happyGoto action_33 action_844 (183) = happyGoto action_34 action_844 (190) = happyGoto action_35 action_844 (215) = happyGoto action_954 action_844 (228) = happyGoto action_38 action_844 (231) = happyGoto action_39 action_844 (232) = happyGoto action_40 action_844 (234) = happyGoto action_41 action_844 (244) = happyGoto action_42 action_844 (245) = happyGoto action_43 action_844 (246) = happyGoto action_44 action_844 (247) = happyGoto action_45 action_844 (248) = happyGoto action_46 action_844 (249) = happyGoto action_47 action_844 (257) = happyGoto action_48 action_844 _ = happyFail action_845 (278) = happyShift action_49 action_845 (279) = happyShift action_50 action_845 (280) = happyShift action_51 action_845 (281) = happyShift action_52 action_845 (282) = happyShift action_53 action_845 (283) = happyShift action_54 action_845 (289) = happyShift action_55 action_845 (290) = happyShift action_56 action_845 (291) = happyShift action_57 action_845 (292) = happyShift action_58 action_845 (293) = happyShift action_59 action_845 (294) = happyShift action_60 action_845 (295) = happyShift action_61 action_845 (296) = happyShift action_62 action_845 (297) = happyShift action_63 action_845 (298) = happyShift action_64 action_845 (299) = happyShift action_65 action_845 (301) = happyShift action_66 action_845 (307) = happyShift action_67 action_845 (309) = happyShift action_68 action_845 (312) = happyShift action_69 action_845 (319) = happyShift action_70 action_845 (324) = happyShift action_71 action_845 (325) = happyShift action_72 action_845 (327) = happyShift action_73 action_845 (328) = happyShift action_74 action_845 (334) = happyShift action_75 action_845 (337) = happyShift action_76 action_845 (338) = happyShift action_77 action_845 (339) = happyShift action_78 action_845 (340) = happyShift action_79 action_845 (341) = happyShift action_80 action_845 (342) = happyShift action_81 action_845 (344) = happyShift action_82 action_845 (345) = happyShift action_83 action_845 (346) = happyShift action_84 action_845 (348) = happyShift action_85 action_845 (350) = happyShift action_86 action_845 (351) = happyShift action_87 action_845 (358) = happyShift action_88 action_845 (359) = happyShift action_89 action_845 (360) = happyShift action_90 action_845 (361) = happyShift action_91 action_845 (362) = happyShift action_92 action_845 (363) = happyShift action_93 action_845 (364) = happyShift action_94 action_845 (365) = happyShift action_95 action_845 (366) = happyShift action_96 action_845 (367) = happyShift action_97 action_845 (368) = happyShift action_98 action_845 (369) = happyShift action_99 action_845 (370) = happyShift action_100 action_845 (371) = happyShift action_101 action_845 (373) = happyShift action_102 action_845 (378) = happyShift action_103 action_845 (380) = happyShift action_104 action_845 (381) = happyShift action_105 action_845 (383) = happyShift action_106 action_845 (384) = happyShift action_107 action_845 (391) = happyShift action_159 action_845 (392) = happyShift action_109 action_845 (396) = happyShift action_110 action_845 (402) = happyShift action_112 action_845 (403) = happyShift action_113 action_845 (411) = happyShift action_114 action_845 (412) = happyShift action_115 action_845 (413) = happyShift action_116 action_845 (169) = happyGoto action_157 action_845 (170) = happyGoto action_25 action_845 (171) = happyGoto action_26 action_845 (172) = happyGoto action_27 action_845 (173) = happyGoto action_28 action_845 (176) = happyGoto action_29 action_845 (177) = happyGoto action_30 action_845 (178) = happyGoto action_31 action_845 (181) = happyGoto action_32 action_845 (182) = happyGoto action_33 action_845 (183) = happyGoto action_34 action_845 (190) = happyGoto action_35 action_845 (215) = happyGoto action_953 action_845 (228) = happyGoto action_38 action_845 (231) = happyGoto action_39 action_845 (232) = happyGoto action_40 action_845 (234) = happyGoto action_41 action_845 (244) = happyGoto action_42 action_845 (245) = happyGoto action_43 action_845 (246) = happyGoto action_44 action_845 (247) = happyGoto action_45 action_845 (248) = happyGoto action_46 action_845 (249) = happyGoto action_47 action_845 (257) = happyGoto action_48 action_845 _ = happyFail action_846 (278) = happyShift action_49 action_846 (358) = happyShift action_88 action_846 (359) = happyShift action_89 action_846 (360) = happyShift action_90 action_846 (361) = happyShift action_91 action_846 (362) = happyShift action_92 action_846 (363) = happyShift action_93 action_846 (364) = happyShift action_94 action_846 (365) = happyShift action_95 action_846 (366) = happyShift action_96 action_846 (367) = happyShift action_97 action_846 (368) = happyShift action_98 action_846 (369) = happyShift action_99 action_846 (370) = happyShift action_100 action_846 (371) = happyShift action_101 action_846 (380) = happyShift action_104 action_846 (381) = happyShift action_105 action_846 (383) = happyShift action_106 action_846 (402) = happyShift action_112 action_846 (403) = happyShift action_113 action_846 (245) = happyGoto action_43 action_846 (246) = happyGoto action_952 action_846 _ = happyFail action_847 (278) = happyShift action_49 action_847 (358) = happyShift action_88 action_847 (359) = happyShift action_89 action_847 (360) = happyShift action_90 action_847 (361) = happyShift action_91 action_847 (362) = happyShift action_92 action_847 (363) = happyShift action_93 action_847 (364) = happyShift action_94 action_847 (365) = happyShift action_95 action_847 (366) = happyShift action_96 action_847 (367) = happyShift action_97 action_847 (368) = happyShift action_98 action_847 (369) = happyShift action_99 action_847 (370) = happyShift action_100 action_847 (371) = happyShift action_101 action_847 (380) = happyShift action_104 action_847 (381) = happyShift action_105 action_847 (383) = happyShift action_106 action_847 (402) = happyShift action_112 action_847 (403) = happyShift action_113 action_847 (245) = happyGoto action_43 action_847 (246) = happyGoto action_847 action_847 (263) = happyGoto action_951 action_847 _ = happyReduce_723 action_848 _ = happyReduce_721 action_849 (278) = happyShift action_49 action_849 (280) = happyShift action_51 action_849 (281) = happyShift action_52 action_849 (282) = happyShift action_53 action_849 (283) = happyShift action_54 action_849 (289) = happyShift action_135 action_849 (292) = happyShift action_136 action_849 (299) = happyShift action_137 action_849 (301) = happyShift action_138 action_849 (307) = happyShift action_139 action_849 (309) = happyShift action_140 action_849 (312) = happyShift action_141 action_849 (325) = happyShift action_142 action_849 (328) = happyShift action_143 action_849 (337) = happyShift action_144 action_849 (338) = happyShift action_145 action_849 (344) = happyShift action_146 action_849 (346) = happyShift action_147 action_849 (358) = happyShift action_88 action_849 (359) = happyShift action_148 action_849 (360) = happyShift action_149 action_849 (361) = happyShift action_150 action_849 (363) = happyShift action_93 action_849 (364) = happyShift action_94 action_849 (365) = happyShift action_95 action_849 (366) = happyShift action_96 action_849 (367) = happyShift action_97 action_849 (368) = happyShift action_98 action_849 (369) = happyShift action_99 action_849 (370) = happyShift action_100 action_849 (371) = happyShift action_101 action_849 (381) = happyShift action_950 action_849 (383) = happyShift action_106 action_849 (402) = happyShift action_112 action_849 (416) = happyShift action_152 action_849 (417) = happyShift action_153 action_849 (103) = happyGoto action_117 action_849 (105) = happyGoto action_947 action_849 (108) = happyGoto action_119 action_849 (109) = happyGoto action_120 action_849 (110) = happyGoto action_121 action_849 (111) = happyGoto action_122 action_849 (112) = happyGoto action_123 action_849 (113) = happyGoto action_124 action_849 (114) = happyGoto action_125 action_849 (115) = happyGoto action_126 action_849 (119) = happyGoto action_948 action_849 (232) = happyGoto action_130 action_849 (245) = happyGoto action_131 action_849 (247) = happyGoto action_45 action_849 (248) = happyGoto action_132 action_849 (249) = happyGoto action_47 action_849 (266) = happyGoto action_949 action_849 (270) = happyGoto action_133 action_849 (271) = happyGoto action_134 action_849 _ = happyFail action_850 (425) = happyShift action_946 action_850 _ = happyFail action_851 (425) = happyShift action_945 action_851 _ = happyFail action_852 (425) = happyShift action_944 action_852 _ = happyFail action_853 (317) = happyShift action_943 action_853 _ = happyFail action_854 (308) = happyShift action_942 action_854 _ = happyFail action_855 (289) = happyShift action_941 action_855 _ = happyFail action_856 (317) = happyShift action_940 action_856 _ = happyFail action_857 (381) = happyShift action_939 action_857 (94) = happyGoto action_938 action_857 _ = happyReduce_222 action_858 (292) = happyShift action_672 action_858 (92) = happyGoto action_937 action_858 _ = happyReduce_215 action_859 _ = happyReduce_124 action_860 (278) = happyShift action_49 action_860 (282) = happyShift action_53 action_860 (299) = happyShift action_392 action_860 (358) = happyShift action_88 action_860 (359) = happyShift action_89 action_860 (360) = happyShift action_90 action_860 (361) = happyShift action_91 action_860 (362) = happyShift action_92 action_860 (363) = happyShift action_93 action_860 (364) = happyShift action_94 action_860 (365) = happyShift action_95 action_860 (366) = happyShift action_96 action_860 (367) = happyShift action_97 action_860 (368) = happyShift action_98 action_860 (369) = happyShift action_99 action_860 (370) = happyShift action_100 action_860 (371) = happyShift action_101 action_860 (380) = happyShift action_104 action_860 (381) = happyShift action_105 action_860 (383) = happyShift action_106 action_860 (402) = happyShift action_112 action_860 (403) = happyShift action_113 action_860 (98) = happyGoto action_936 action_860 (99) = happyGoto action_667 action_860 (100) = happyGoto action_668 action_860 (229) = happyGoto action_388 action_860 (233) = happyGoto action_389 action_860 (245) = happyGoto action_43 action_860 (246) = happyGoto action_390 action_860 (249) = happyGoto action_391 action_860 _ = happyReduce_229 action_861 _ = happyReduce_125 action_862 (278) = happyShift action_49 action_862 (282) = happyShift action_53 action_862 (299) = happyShift action_392 action_862 (358) = happyShift action_88 action_862 (359) = happyShift action_89 action_862 (360) = happyShift action_90 action_862 (361) = happyShift action_91 action_862 (362) = happyShift action_92 action_862 (363) = happyShift action_93 action_862 (364) = happyShift action_94 action_862 (365) = happyShift action_95 action_862 (366) = happyShift action_96 action_862 (367) = happyShift action_97 action_862 (368) = happyShift action_98 action_862 (369) = happyShift action_99 action_862 (370) = happyShift action_100 action_862 (371) = happyShift action_101 action_862 (380) = happyShift action_104 action_862 (381) = happyShift action_105 action_862 (383) = happyShift action_106 action_862 (402) = happyShift action_112 action_862 (403) = happyShift action_113 action_862 (99) = happyGoto action_935 action_862 (100) = happyGoto action_668 action_862 (229) = happyGoto action_388 action_862 (233) = happyGoto action_389 action_862 (245) = happyGoto action_43 action_862 (246) = happyGoto action_390 action_862 (249) = happyGoto action_391 action_862 _ = happyFail action_863 _ = happyReduce_232 action_864 _ = happyReduce_126 action_865 _ = happyReduce_127 action_866 (300) = happyShift action_934 action_866 _ = happyFail action_867 (278) = happyShift action_49 action_867 (299) = happyShift action_663 action_867 (358) = happyShift action_88 action_867 (359) = happyShift action_89 action_867 (360) = happyShift action_90 action_867 (361) = happyShift action_91 action_867 (362) = happyShift action_92 action_867 (363) = happyShift action_93 action_867 (364) = happyShift action_94 action_867 (365) = happyShift action_95 action_867 (366) = happyShift action_96 action_867 (367) = happyShift action_97 action_867 (368) = happyShift action_98 action_867 (369) = happyShift action_99 action_867 (370) = happyShift action_100 action_867 (371) = happyShift action_101 action_867 (380) = happyShift action_104 action_867 (381) = happyShift action_105 action_867 (383) = happyShift action_106 action_867 (402) = happyShift action_112 action_867 (403) = happyShift action_113 action_867 (84) = happyGoto action_933 action_867 (85) = happyGoto action_661 action_867 (229) = happyGoto action_662 action_867 (245) = happyGoto action_43 action_867 (246) = happyGoto action_390 action_867 _ = happyFail action_868 (278) = happyShift action_49 action_868 (299) = happyShift action_663 action_868 (358) = happyShift action_88 action_868 (359) = happyShift action_89 action_868 (360) = happyShift action_90 action_868 (361) = happyShift action_91 action_868 (362) = happyShift action_92 action_868 (363) = happyShift action_93 action_868 (364) = happyShift action_94 action_868 (365) = happyShift action_95 action_868 (366) = happyShift action_96 action_868 (367) = happyShift action_97 action_868 (368) = happyShift action_98 action_868 (369) = happyShift action_99 action_868 (370) = happyShift action_100 action_868 (371) = happyShift action_101 action_868 (380) = happyShift action_104 action_868 (381) = happyShift action_105 action_868 (383) = happyShift action_106 action_868 (402) = happyShift action_112 action_868 (403) = happyShift action_113 action_868 (83) = happyGoto action_932 action_868 (84) = happyGoto action_660 action_868 (85) = happyGoto action_661 action_868 (229) = happyGoto action_662 action_868 (245) = happyGoto action_43 action_868 (246) = happyGoto action_390 action_868 _ = happyFail action_869 _ = happyReduce_182 action_870 (191) = happyGoto action_931 action_870 _ = happyReduce_497 action_871 _ = happyReduce_493 action_872 (278) = happyShift action_49 action_872 (279) = happyShift action_50 action_872 (280) = happyShift action_51 action_872 (281) = happyShift action_52 action_872 (282) = happyShift action_53 action_872 (283) = happyShift action_54 action_872 (289) = happyShift action_55 action_872 (290) = happyShift action_56 action_872 (291) = happyShift action_57 action_872 (292) = happyShift action_58 action_872 (293) = happyShift action_59 action_872 (294) = happyShift action_60 action_872 (295) = happyShift action_61 action_872 (296) = happyShift action_62 action_872 (297) = happyShift action_63 action_872 (298) = happyShift action_64 action_872 (299) = happyShift action_65 action_872 (301) = happyShift action_66 action_872 (307) = happyShift action_67 action_872 (309) = happyShift action_68 action_872 (312) = happyShift action_69 action_872 (324) = happyShift action_71 action_872 (325) = happyShift action_72 action_872 (334) = happyShift action_75 action_872 (337) = happyShift action_76 action_872 (338) = happyShift action_77 action_872 (339) = happyShift action_78 action_872 (340) = happyShift action_79 action_872 (341) = happyShift action_80 action_872 (342) = happyShift action_81 action_872 (344) = happyShift action_82 action_872 (345) = happyShift action_83 action_872 (346) = happyShift action_84 action_872 (348) = happyShift action_85 action_872 (350) = happyShift action_86 action_872 (351) = happyShift action_87 action_872 (358) = happyShift action_88 action_872 (359) = happyShift action_89 action_872 (360) = happyShift action_90 action_872 (361) = happyShift action_91 action_872 (362) = happyShift action_92 action_872 (363) = happyShift action_93 action_872 (364) = happyShift action_94 action_872 (365) = happyShift action_95 action_872 (366) = happyShift action_96 action_872 (367) = happyShift action_97 action_872 (368) = happyShift action_98 action_872 (369) = happyShift action_99 action_872 (370) = happyShift action_100 action_872 (371) = happyShift action_101 action_872 (380) = happyShift action_104 action_872 (381) = happyShift action_105 action_872 (383) = happyShift action_106 action_872 (402) = happyShift action_112 action_872 (403) = happyShift action_113 action_872 (181) = happyGoto action_930 action_872 (182) = happyGoto action_33 action_872 (183) = happyGoto action_34 action_872 (190) = happyGoto action_35 action_872 (228) = happyGoto action_38 action_872 (231) = happyGoto action_39 action_872 (232) = happyGoto action_40 action_872 (234) = happyGoto action_41 action_872 (244) = happyGoto action_42 action_872 (245) = happyGoto action_43 action_872 (246) = happyGoto action_44 action_872 (247) = happyGoto action_45 action_872 (248) = happyGoto action_46 action_872 (249) = happyGoto action_47 action_872 (257) = happyGoto action_48 action_872 _ = happyFail action_873 _ = happyReduce_495 action_874 _ = happyReduce_499 action_875 (311) = happyShift action_791 action_875 (322) = happyShift action_929 action_875 _ = happyFail action_876 (303) = happyShift action_566 action_876 (320) = happyShift action_628 action_876 (214) = happyGoto action_928 action_876 _ = happyReduce_604 action_877 (303) = happyShift action_523 action_877 (174) = happyGoto action_927 action_877 _ = happyReduce_421 action_878 _ = happyReduce_612 action_879 (327) = happyShift action_926 action_879 _ = happyFail action_880 (308) = happyShift action_925 action_880 _ = happyFail action_881 (311) = happyShift action_924 action_881 _ = happyFail action_882 (300) = happyShift action_923 action_882 _ = happyReduce_342 action_883 _ = happyReduce_352 action_884 _ = happyReduce_346 action_885 (278) = happyShift action_49 action_885 (279) = happyShift action_50 action_885 (282) = happyShift action_53 action_885 (283) = happyShift action_54 action_885 (299) = happyShift action_609 action_885 (307) = happyShift action_610 action_885 (329) = happyShift action_611 action_885 (358) = happyShift action_88 action_885 (359) = happyShift action_89 action_885 (360) = happyShift action_90 action_885 (361) = happyShift action_91 action_885 (362) = happyShift action_92 action_885 (363) = happyShift action_93 action_885 (364) = happyShift action_94 action_885 (365) = happyShift action_95 action_885 (366) = happyShift action_96 action_885 (367) = happyShift action_97 action_885 (368) = happyShift action_98 action_885 (369) = happyShift action_99 action_885 (370) = happyShift action_100 action_885 (371) = happyShift action_101 action_885 (380) = happyShift action_104 action_885 (381) = happyShift action_105 action_885 (383) = happyShift action_106 action_885 (402) = happyShift action_112 action_885 (403) = happyShift action_113 action_885 (145) = happyGoto action_922 action_885 (146) = happyGoto action_604 action_885 (147) = happyGoto action_605 action_885 (148) = happyGoto action_606 action_885 (234) = happyGoto action_181 action_885 (244) = happyGoto action_607 action_885 (245) = happyGoto action_43 action_885 (246) = happyGoto action_44 action_885 (248) = happyGoto action_46 action_885 (249) = happyGoto action_47 action_885 (269) = happyGoto action_608 action_885 _ = happyFail action_886 _ = happyReduce_260 action_887 (278) = happyShift action_49 action_887 (279) = happyShift action_50 action_887 (282) = happyShift action_53 action_887 (283) = happyShift action_54 action_887 (299) = happyShift action_609 action_887 (307) = happyShift action_610 action_887 (329) = happyShift action_611 action_887 (358) = happyShift action_88 action_887 (359) = happyShift action_89 action_887 (360) = happyShift action_90 action_887 (361) = happyShift action_91 action_887 (362) = happyShift action_92 action_887 (363) = happyShift action_93 action_887 (364) = happyShift action_94 action_887 (365) = happyShift action_95 action_887 (366) = happyShift action_96 action_887 (367) = happyShift action_97 action_887 (368) = happyShift action_98 action_887 (369) = happyShift action_99 action_887 (370) = happyShift action_100 action_887 (371) = happyShift action_101 action_887 (380) = happyShift action_104 action_887 (381) = happyShift action_105 action_887 (383) = happyShift action_106 action_887 (402) = happyShift action_112 action_887 (403) = happyShift action_113 action_887 (144) = happyGoto action_921 action_887 (145) = happyGoto action_603 action_887 (146) = happyGoto action_604 action_887 (147) = happyGoto action_605 action_887 (148) = happyGoto action_606 action_887 (234) = happyGoto action_181 action_887 (244) = happyGoto action_607 action_887 (245) = happyGoto action_43 action_887 (246) = happyGoto action_44 action_887 (248) = happyGoto action_46 action_887 (249) = happyGoto action_47 action_887 (269) = happyGoto action_608 action_887 _ = happyFail action_888 _ = happyReduce_60 action_889 _ = happyReduce_35 action_890 (278) = happyShift action_49 action_890 (279) = happyShift action_50 action_890 (280) = happyShift action_51 action_890 (281) = happyShift action_52 action_890 (282) = happyShift action_53 action_890 (283) = happyShift action_54 action_890 (289) = happyShift action_55 action_890 (290) = happyShift action_56 action_890 (291) = happyShift action_57 action_890 (292) = happyShift action_58 action_890 (293) = happyShift action_59 action_890 (294) = happyShift action_60 action_890 (295) = happyShift action_61 action_890 (296) = happyShift action_62 action_890 (297) = happyShift action_63 action_890 (298) = happyShift action_64 action_890 (299) = happyShift action_65 action_890 (301) = happyShift action_66 action_890 (307) = happyShift action_67 action_890 (309) = happyShift action_68 action_890 (312) = happyShift action_69 action_890 (319) = happyShift action_70 action_890 (324) = happyShift action_71 action_890 (325) = happyShift action_72 action_890 (327) = happyShift action_73 action_890 (334) = happyShift action_75 action_890 (337) = happyShift action_76 action_890 (338) = happyShift action_77 action_890 (339) = happyShift action_78 action_890 (340) = happyShift action_79 action_890 (341) = happyShift action_80 action_890 (342) = happyShift action_81 action_890 (344) = happyShift action_82 action_890 (345) = happyShift action_83 action_890 (346) = happyShift action_84 action_890 (348) = happyShift action_85 action_890 (350) = happyShift action_86 action_890 (351) = happyShift action_87 action_890 (358) = happyShift action_88 action_890 (359) = happyShift action_89 action_890 (360) = happyShift action_90 action_890 (361) = happyShift action_91 action_890 (362) = happyShift action_92 action_890 (363) = happyShift action_93 action_890 (364) = happyShift action_94 action_890 (365) = happyShift action_95 action_890 (366) = happyShift action_96 action_890 (367) = happyShift action_97 action_890 (368) = happyShift action_98 action_890 (369) = happyShift action_99 action_890 (370) = happyShift action_100 action_890 (371) = happyShift action_101 action_890 (373) = happyShift action_102 action_890 (378) = happyShift action_103 action_890 (380) = happyShift action_104 action_890 (381) = happyShift action_105 action_890 (383) = happyShift action_106 action_890 (384) = happyShift action_107 action_890 (391) = happyShift action_159 action_890 (392) = happyShift action_109 action_890 (396) = happyShift action_110 action_890 (402) = happyShift action_112 action_890 (403) = happyShift action_113 action_890 (411) = happyShift action_114 action_890 (412) = happyShift action_115 action_890 (413) = happyShift action_116 action_890 (168) = happyGoto action_920 action_890 (169) = happyGoto action_161 action_890 (170) = happyGoto action_25 action_890 (171) = happyGoto action_26 action_890 (172) = happyGoto action_27 action_890 (173) = happyGoto action_28 action_890 (176) = happyGoto action_29 action_890 (177) = happyGoto action_30 action_890 (178) = happyGoto action_31 action_890 (181) = happyGoto action_32 action_890 (182) = happyGoto action_33 action_890 (183) = happyGoto action_34 action_890 (190) = happyGoto action_35 action_890 (228) = happyGoto action_38 action_890 (231) = happyGoto action_39 action_890 (232) = happyGoto action_40 action_890 (234) = happyGoto action_41 action_890 (244) = happyGoto action_42 action_890 (245) = happyGoto action_43 action_890 (246) = happyGoto action_44 action_890 (247) = happyGoto action_45 action_890 (248) = happyGoto action_46 action_890 (249) = happyGoto action_47 action_890 (257) = happyGoto action_48 action_890 _ = happyFail action_891 (280) = happyShift action_51 action_891 (281) = happyShift action_52 action_891 (227) = happyGoto action_918 action_891 (232) = happyGoto action_919 action_891 (247) = happyGoto action_45 action_891 _ = happyReduce_40 action_892 (303) = happyShift action_566 action_892 _ = happyReduce_623 action_893 (278) = happyShift action_49 action_893 (279) = happyShift action_50 action_893 (280) = happyShift action_51 action_893 (281) = happyShift action_52 action_893 (282) = happyShift action_53 action_893 (283) = happyShift action_54 action_893 (289) = happyShift action_55 action_893 (290) = happyShift action_56 action_893 (291) = happyShift action_57 action_893 (292) = happyShift action_58 action_893 (293) = happyShift action_59 action_893 (294) = happyShift action_60 action_893 (295) = happyShift action_61 action_893 (296) = happyShift action_62 action_893 (297) = happyShift action_63 action_893 (298) = happyShift action_64 action_893 (299) = happyShift action_65 action_893 (301) = happyShift action_66 action_893 (307) = happyShift action_67 action_893 (309) = happyShift action_68 action_893 (312) = happyShift action_69 action_893 (319) = happyShift action_592 action_893 (324) = happyShift action_71 action_893 (325) = happyShift action_72 action_893 (327) = happyShift action_73 action_893 (334) = happyShift action_75 action_893 (337) = happyShift action_76 action_893 (338) = happyShift action_77 action_893 (339) = happyShift action_78 action_893 (340) = happyShift action_79 action_893 (341) = happyShift action_80 action_893 (342) = happyShift action_81 action_893 (344) = happyShift action_82 action_893 (345) = happyShift action_83 action_893 (346) = happyShift action_84 action_893 (348) = happyShift action_85 action_893 (350) = happyShift action_86 action_893 (351) = happyShift action_87 action_893 (358) = happyShift action_88 action_893 (359) = happyShift action_89 action_893 (360) = happyShift action_90 action_893 (361) = happyShift action_91 action_893 (362) = happyShift action_92 action_893 (363) = happyShift action_93 action_893 (364) = happyShift action_94 action_893 (365) = happyShift action_95 action_893 (366) = happyShift action_96 action_893 (367) = happyShift action_97 action_893 (368) = happyShift action_98 action_893 (369) = happyShift action_99 action_893 (370) = happyShift action_100 action_893 (371) = happyShift action_101 action_893 (373) = happyShift action_102 action_893 (378) = happyShift action_103 action_893 (380) = happyShift action_104 action_893 (381) = happyShift action_105 action_893 (383) = happyShift action_106 action_893 (392) = happyShift action_109 action_893 (402) = happyShift action_112 action_893 (403) = happyShift action_113 action_893 (176) = happyGoto action_419 action_893 (178) = happyGoto action_31 action_893 (181) = happyGoto action_32 action_893 (182) = happyGoto action_33 action_893 (183) = happyGoto action_34 action_893 (190) = happyGoto action_35 action_893 (228) = happyGoto action_38 action_893 (231) = happyGoto action_39 action_893 (232) = happyGoto action_40 action_893 (234) = happyGoto action_41 action_893 (244) = happyGoto action_42 action_893 (245) = happyGoto action_43 action_893 (246) = happyGoto action_44 action_893 (247) = happyGoto action_45 action_893 (248) = happyGoto action_46 action_893 (249) = happyGoto action_47 action_893 (257) = happyGoto action_48 action_893 _ = happyFail action_894 (278) = happyShift action_49 action_894 (279) = happyShift action_50 action_894 (280) = happyShift action_51 action_894 (281) = happyShift action_52 action_894 (282) = happyShift action_53 action_894 (283) = happyShift action_54 action_894 (289) = happyShift action_55 action_894 (290) = happyShift action_56 action_894 (291) = happyShift action_57 action_894 (292) = happyShift action_58 action_894 (293) = happyShift action_59 action_894 (294) = happyShift action_60 action_894 (295) = happyShift action_61 action_894 (296) = happyShift action_62 action_894 (297) = happyShift action_63 action_894 (298) = happyShift action_64 action_894 (299) = happyShift action_65 action_894 (301) = happyShift action_66 action_894 (307) = happyShift action_67 action_894 (309) = happyShift action_68 action_894 (312) = happyShift action_69 action_894 (319) = happyShift action_592 action_894 (324) = happyShift action_71 action_894 (325) = happyShift action_72 action_894 (327) = happyShift action_73 action_894 (328) = happyShift action_486 action_894 (334) = happyShift action_75 action_894 (337) = happyShift action_76 action_894 (338) = happyShift action_77 action_894 (339) = happyShift action_78 action_894 (340) = happyShift action_79 action_894 (341) = happyShift action_80 action_894 (342) = happyShift action_81 action_894 (344) = happyShift action_82 action_894 (345) = happyShift action_83 action_894 (346) = happyShift action_84 action_894 (348) = happyShift action_85 action_894 (350) = happyShift action_86 action_894 (351) = happyShift action_87 action_894 (358) = happyShift action_88 action_894 (359) = happyShift action_89 action_894 (360) = happyShift action_90 action_894 (361) = happyShift action_91 action_894 (362) = happyShift action_92 action_894 (363) = happyShift action_93 action_894 (364) = happyShift action_94 action_894 (365) = happyShift action_95 action_894 (366) = happyShift action_96 action_894 (367) = happyShift action_97 action_894 (368) = happyShift action_98 action_894 (369) = happyShift action_99 action_894 (370) = happyShift action_100 action_894 (371) = happyShift action_101 action_894 (373) = happyShift action_102 action_894 (378) = happyShift action_103 action_894 (380) = happyShift action_104 action_894 (381) = happyShift action_105 action_894 (383) = happyShift action_106 action_894 (387) = happyShift action_492 action_894 (388) = happyShift action_493 action_894 (389) = happyShift action_494 action_894 (392) = happyShift action_109 action_894 (402) = happyShift action_112 action_894 (403) = happyShift action_113 action_894 (404) = happyShift action_498 action_894 (405) = happyShift action_499 action_894 (406) = happyShift action_500 action_894 (407) = happyShift action_501 action_894 (408) = happyShift action_502 action_894 (421) = happyShift action_507 action_894 (49) = happyGoto action_469 action_894 (51) = happyGoto action_470 action_894 (75) = happyGoto action_917 action_894 (77) = happyGoto action_477 action_894 (78) = happyGoto action_478 action_894 (79) = happyGoto action_479 action_894 (162) = happyGoto action_480 action_894 (172) = happyGoto action_588 action_894 (176) = happyGoto action_29 action_894 (178) = happyGoto action_31 action_894 (181) = happyGoto action_32 action_894 (182) = happyGoto action_33 action_894 (183) = happyGoto action_34 action_894 (190) = happyGoto action_35 action_894 (228) = happyGoto action_38 action_894 (231) = happyGoto action_39 action_894 (232) = happyGoto action_40 action_894 (234) = happyGoto action_41 action_894 (244) = happyGoto action_42 action_894 (245) = happyGoto action_43 action_894 (246) = happyGoto action_44 action_894 (247) = happyGoto action_45 action_894 (248) = happyGoto action_46 action_894 (249) = happyGoto action_47 action_894 (257) = happyGoto action_48 action_894 (260) = happyGoto action_483 action_894 (261) = happyGoto action_484 action_894 (265) = happyGoto action_485 action_894 _ = happyReduce_40 action_895 (303) = happyShift action_566 action_895 _ = happyReduce_162 action_896 (425) = happyShift action_916 action_896 _ = happyFail action_897 (425) = happyShift action_915 action_897 _ = happyFail action_898 (401) = happyShift action_914 action_898 _ = happyFail action_899 _ = happyReduce_42 action_900 (278) = happyShift action_49 action_900 (279) = happyShift action_50 action_900 (282) = happyShift action_53 action_900 (283) = happyShift action_54 action_900 (299) = happyShift action_312 action_900 (311) = happyShift action_910 action_900 (358) = happyShift action_88 action_900 (359) = happyShift action_89 action_900 (360) = happyShift action_90 action_900 (361) = happyShift action_91 action_900 (362) = happyShift action_92 action_900 (363) = happyShift action_93 action_900 (364) = happyShift action_94 action_900 (365) = happyShift action_95 action_900 (366) = happyShift action_96 action_900 (367) = happyShift action_97 action_900 (368) = happyShift action_98 action_900 (369) = happyShift action_99 action_900 (370) = happyShift action_100 action_900 (371) = happyShift action_101 action_900 (380) = happyShift action_104 action_900 (381) = happyShift action_105 action_900 (383) = happyShift action_106 action_900 (393) = happyShift action_911 action_900 (399) = happyShift action_912 action_900 (402) = happyShift action_112 action_900 (403) = happyShift action_113 action_900 (404) = happyShift action_913 action_900 (31) = happyGoto action_905 action_900 (32) = happyGoto action_906 action_900 (33) = happyGoto action_907 action_900 (231) = happyGoto action_908 action_900 (234) = happyGoto action_181 action_900 (244) = happyGoto action_42 action_900 (245) = happyGoto action_43 action_900 (246) = happyGoto action_44 action_900 (248) = happyGoto action_46 action_900 (249) = happyGoto action_47 action_900 (269) = happyGoto action_909 action_900 _ = happyReduce_47 action_901 _ = happyReduce_15 action_902 (352) = happyShift action_903 action_902 (353) = happyShift action_904 action_902 _ = happyFail action_903 (191) = happyGoto action_1113 action_903 _ = happyReduce_497 action_904 _ = happyReduce_18 action_905 (300) = happyShift action_1112 action_905 _ = happyFail action_906 (311) = happyShift action_1111 action_906 (31) = happyGoto action_1110 action_906 _ = happyReduce_47 action_907 _ = happyReduce_49 action_908 _ = happyReduce_50 action_909 (299) = happyShift action_1109 action_909 _ = happyReduce_52 action_910 _ = happyReduce_46 action_911 (282) = happyShift action_403 action_911 (283) = happyShift action_404 action_911 (267) = happyGoto action_1108 action_911 _ = happyFail action_912 (278) = happyShift action_49 action_912 (279) = happyShift action_50 action_912 (282) = happyShift action_53 action_912 (283) = happyShift action_54 action_912 (299) = happyShift action_423 action_912 (358) = happyShift action_88 action_912 (359) = happyShift action_89 action_912 (360) = happyShift action_90 action_912 (361) = happyShift action_91 action_912 (362) = happyShift action_92 action_912 (363) = happyShift action_93 action_912 (364) = happyShift action_94 action_912 (365) = happyShift action_95 action_912 (366) = happyShift action_96 action_912 (367) = happyShift action_97 action_912 (368) = happyShift action_98 action_912 (369) = happyShift action_99 action_912 (370) = happyShift action_100 action_912 (371) = happyShift action_101 action_912 (380) = happyShift action_104 action_912 (381) = happyShift action_105 action_912 (383) = happyShift action_106 action_912 (402) = happyShift action_112 action_912 (403) = happyShift action_113 action_912 (34) = happyGoto action_1105 action_912 (231) = happyGoto action_1106 action_912 (244) = happyGoto action_42 action_912 (245) = happyGoto action_43 action_912 (246) = happyGoto action_44 action_912 (248) = happyGoto action_1107 action_912 (249) = happyGoto action_47 action_912 _ = happyFail action_913 (282) = happyShift action_53 action_913 (283) = happyShift action_54 action_913 (299) = happyShift action_1104 action_913 (234) = happyGoto action_1103 action_913 (248) = happyGoto action_46 action_913 (249) = happyGoto action_47 action_913 _ = happyFail action_914 _ = happyReduce_28 action_915 _ = happyReduce_30 action_916 _ = happyReduce_31 action_917 _ = happyReduce_164 action_918 _ = happyReduce_624 action_919 (318) = happyShift action_890 action_919 _ = happyFail action_920 _ = happyReduce_626 action_921 (300) = happyShift action_1102 action_921 _ = happyFail action_922 _ = happyReduce_344 action_923 _ = happyReduce_348 action_924 (278) = happyShift action_49 action_924 (279) = happyShift action_50 action_924 (282) = happyShift action_53 action_924 (283) = happyShift action_54 action_924 (299) = happyShift action_609 action_924 (307) = happyShift action_610 action_924 (329) = happyShift action_611 action_924 (358) = happyShift action_88 action_924 (359) = happyShift action_89 action_924 (360) = happyShift action_90 action_924 (361) = happyShift action_91 action_924 (362) = happyShift action_92 action_924 (363) = happyShift action_93 action_924 (364) = happyShift action_94 action_924 (365) = happyShift action_95 action_924 (366) = happyShift action_96 action_924 (367) = happyShift action_97 action_924 (368) = happyShift action_98 action_924 (369) = happyShift action_99 action_924 (370) = happyShift action_100 action_924 (371) = happyShift action_101 action_924 (380) = happyShift action_104 action_924 (381) = happyShift action_105 action_924 (383) = happyShift action_106 action_924 (402) = happyShift action_112 action_924 (403) = happyShift action_113 action_924 (145) = happyGoto action_1100 action_924 (146) = happyGoto action_604 action_924 (147) = happyGoto action_605 action_924 (148) = happyGoto action_606 action_924 (149) = happyGoto action_1101 action_924 (234) = happyGoto action_181 action_924 (244) = happyGoto action_607 action_924 (245) = happyGoto action_43 action_924 (246) = happyGoto action_44 action_924 (248) = happyGoto action_46 action_924 (249) = happyGoto action_47 action_924 (269) = happyGoto action_608 action_924 _ = happyFail action_925 _ = happyReduce_354 action_926 (289) = happyShift action_1099 action_926 _ = happyFail action_927 (379) = happyShift action_1098 action_927 _ = happyFail action_928 _ = happyReduce_605 action_929 (278) = happyShift action_49 action_929 (279) = happyShift action_50 action_929 (280) = happyShift action_51 action_929 (281) = happyShift action_52 action_929 (282) = happyShift action_53 action_929 (283) = happyShift action_54 action_929 (289) = happyShift action_55 action_929 (290) = happyShift action_56 action_929 (291) = happyShift action_57 action_929 (292) = happyShift action_58 action_929 (293) = happyShift action_59 action_929 (294) = happyShift action_60 action_929 (295) = happyShift action_61 action_929 (296) = happyShift action_62 action_929 (297) = happyShift action_63 action_929 (298) = happyShift action_64 action_929 (299) = happyShift action_65 action_929 (301) = happyShift action_66 action_929 (307) = happyShift action_67 action_929 (309) = happyShift action_68 action_929 (312) = happyShift action_69 action_929 (319) = happyShift action_70 action_929 (324) = happyShift action_71 action_929 (325) = happyShift action_72 action_929 (327) = happyShift action_73 action_929 (334) = happyShift action_75 action_929 (337) = happyShift action_76 action_929 (338) = happyShift action_77 action_929 (339) = happyShift action_78 action_929 (340) = happyShift action_79 action_929 (341) = happyShift action_80 action_929 (342) = happyShift action_81 action_929 (344) = happyShift action_82 action_929 (345) = happyShift action_83 action_929 (346) = happyShift action_84 action_929 (348) = happyShift action_85 action_929 (350) = happyShift action_86 action_929 (351) = happyShift action_87 action_929 (358) = happyShift action_88 action_929 (359) = happyShift action_89 action_929 (360) = happyShift action_90 action_929 (361) = happyShift action_91 action_929 (362) = happyShift action_92 action_929 (363) = happyShift action_93 action_929 (364) = happyShift action_94 action_929 (365) = happyShift action_95 action_929 (366) = happyShift action_96 action_929 (367) = happyShift action_97 action_929 (368) = happyShift action_98 action_929 (369) = happyShift action_99 action_929 (370) = happyShift action_100 action_929 (371) = happyShift action_101 action_929 (373) = happyShift action_102 action_929 (378) = happyShift action_103 action_929 (380) = happyShift action_104 action_929 (381) = happyShift action_105 action_929 (383) = happyShift action_106 action_929 (384) = happyShift action_107 action_929 (391) = happyShift action_159 action_929 (392) = happyShift action_109 action_929 (396) = happyShift action_110 action_929 (402) = happyShift action_112 action_929 (403) = happyShift action_113 action_929 (411) = happyShift action_114 action_929 (412) = happyShift action_115 action_929 (413) = happyShift action_116 action_929 (168) = happyGoto action_1097 action_929 (169) = happyGoto action_161 action_929 (170) = happyGoto action_25 action_929 (171) = happyGoto action_26 action_929 (172) = happyGoto action_27 action_929 (173) = happyGoto action_28 action_929 (176) = happyGoto action_29 action_929 (177) = happyGoto action_30 action_929 (178) = happyGoto action_31 action_929 (181) = happyGoto action_32 action_929 (182) = happyGoto action_33 action_929 (183) = happyGoto action_34 action_929 (190) = happyGoto action_35 action_929 (228) = happyGoto action_38 action_929 (231) = happyGoto action_39 action_929 (232) = happyGoto action_40 action_929 (234) = happyGoto action_41 action_929 (244) = happyGoto action_42 action_929 (245) = happyGoto action_43 action_929 (246) = happyGoto action_44 action_929 (247) = happyGoto action_45 action_929 (248) = happyGoto action_46 action_929 (249) = happyGoto action_47 action_929 (257) = happyGoto action_48 action_929 _ = happyFail action_930 _ = happyReduce_555 action_931 (303) = happyShift action_515 action_931 (347) = happyShift action_516 action_931 (348) = happyShift action_85 action_931 (350) = happyShift action_86 action_931 (351) = happyShift action_87 action_931 (355) = happyShift action_517 action_931 (175) = happyGoto action_1096 action_931 (190) = happyGoto action_513 action_931 (192) = happyGoto action_514 action_931 _ = happyReduce_423 action_932 _ = happyReduce_189 action_933 _ = happyReduce_191 action_934 _ = happyReduce_192 action_935 _ = happyReduce_234 action_936 _ = happyReduce_228 action_937 _ = happyReduce_214 action_938 (278) = happyShift action_49 action_938 (279) = happyShift action_50 action_938 (280) = happyShift action_51 action_938 (281) = happyShift action_52 action_938 (282) = happyShift action_53 action_938 (283) = happyShift action_54 action_938 (289) = happyShift action_55 action_938 (290) = happyShift action_56 action_938 (291) = happyShift action_57 action_938 (292) = happyShift action_58 action_938 (293) = happyShift action_59 action_938 (294) = happyShift action_60 action_938 (295) = happyShift action_61 action_938 (296) = happyShift action_62 action_938 (297) = happyShift action_63 action_938 (298) = happyShift action_64 action_938 (299) = happyShift action_65 action_938 (301) = happyShift action_66 action_938 (307) = happyShift action_67 action_938 (309) = happyShift action_68 action_938 (312) = happyShift action_69 action_938 (319) = happyShift action_70 action_938 (324) = happyShift action_71 action_938 (325) = happyShift action_72 action_938 (327) = happyShift action_73 action_938 (334) = happyShift action_75 action_938 (337) = happyShift action_76 action_938 (338) = happyShift action_77 action_938 (339) = happyShift action_78 action_938 (340) = happyShift action_79 action_938 (341) = happyShift action_80 action_938 (342) = happyShift action_81 action_938 (344) = happyShift action_82 action_938 (345) = happyShift action_83 action_938 (346) = happyShift action_84 action_938 (348) = happyShift action_85 action_938 (350) = happyShift action_86 action_938 (351) = happyShift action_87 action_938 (358) = happyShift action_88 action_938 (359) = happyShift action_89 action_938 (360) = happyShift action_90 action_938 (361) = happyShift action_91 action_938 (362) = happyShift action_92 action_938 (363) = happyShift action_93 action_938 (364) = happyShift action_94 action_938 (365) = happyShift action_95 action_938 (366) = happyShift action_96 action_938 (367) = happyShift action_97 action_938 (368) = happyShift action_98 action_938 (369) = happyShift action_99 action_938 (370) = happyShift action_100 action_938 (371) = happyShift action_101 action_938 (373) = happyShift action_102 action_938 (378) = happyShift action_103 action_938 (380) = happyShift action_104 action_938 (381) = happyShift action_105 action_938 (383) = happyShift action_106 action_938 (384) = happyShift action_107 action_938 (391) = happyShift action_159 action_938 (392) = happyShift action_109 action_938 (396) = happyShift action_110 action_938 (402) = happyShift action_112 action_938 (403) = happyShift action_113 action_938 (411) = happyShift action_114 action_938 (412) = happyShift action_115 action_938 (413) = happyShift action_116 action_938 (170) = happyGoto action_1095 action_938 (171) = happyGoto action_26 action_938 (172) = happyGoto action_316 action_938 (173) = happyGoto action_28 action_938 (176) = happyGoto action_29 action_938 (177) = happyGoto action_30 action_938 (178) = happyGoto action_31 action_938 (181) = happyGoto action_32 action_938 (182) = happyGoto action_33 action_938 (183) = happyGoto action_34 action_938 (190) = happyGoto action_35 action_938 (228) = happyGoto action_38 action_938 (231) = happyGoto action_39 action_938 (232) = happyGoto action_40 action_938 (234) = happyGoto action_41 action_938 (244) = happyGoto action_42 action_938 (245) = happyGoto action_43 action_938 (246) = happyGoto action_44 action_938 (247) = happyGoto action_45 action_938 (248) = happyGoto action_46 action_938 (249) = happyGoto action_47 action_938 (257) = happyGoto action_48 action_938 _ = happyFail action_939 (278) = happyShift action_49 action_939 (299) = happyShift action_1094 action_939 (358) = happyShift action_88 action_939 (359) = happyShift action_89 action_939 (360) = happyShift action_90 action_939 (361) = happyShift action_91 action_939 (362) = happyShift action_92 action_939 (363) = happyShift action_93 action_939 (364) = happyShift action_94 action_939 (365) = happyShift action_95 action_939 (366) = happyShift action_96 action_939 (367) = happyShift action_97 action_939 (368) = happyShift action_98 action_939 (369) = happyShift action_99 action_939 (370) = happyShift action_100 action_939 (371) = happyShift action_101 action_939 (380) = happyShift action_104 action_939 (381) = happyShift action_105 action_939 (383) = happyShift action_106 action_939 (402) = happyShift action_112 action_939 (403) = happyShift action_113 action_939 (95) = happyGoto action_1091 action_939 (96) = happyGoto action_1092 action_939 (245) = happyGoto action_43 action_939 (246) = happyGoto action_1093 action_939 _ = happyFail action_940 (278) = happyShift action_49 action_940 (280) = happyShift action_51 action_940 (281) = happyShift action_52 action_940 (282) = happyShift action_53 action_940 (283) = happyShift action_54 action_940 (289) = happyShift action_135 action_940 (292) = happyShift action_136 action_940 (299) = happyShift action_137 action_940 (301) = happyShift action_138 action_940 (307) = happyShift action_139 action_940 (309) = happyShift action_140 action_940 (312) = happyShift action_141 action_940 (325) = happyShift action_142 action_940 (328) = happyShift action_143 action_940 (337) = happyShift action_144 action_940 (338) = happyShift action_145 action_940 (344) = happyShift action_146 action_940 (346) = happyShift action_147 action_940 (358) = happyShift action_88 action_940 (359) = happyShift action_148 action_940 (360) = happyShift action_149 action_940 (361) = happyShift action_150 action_940 (363) = happyShift action_93 action_940 (364) = happyShift action_94 action_940 (365) = happyShift action_95 action_940 (366) = happyShift action_96 action_940 (367) = happyShift action_97 action_940 (368) = happyShift action_98 action_940 (369) = happyShift action_99 action_940 (370) = happyShift action_100 action_940 (371) = happyShift action_101 action_940 (381) = happyShift action_151 action_940 (383) = happyShift action_106 action_940 (402) = happyShift action_112 action_940 (416) = happyShift action_152 action_940 (417) = happyShift action_153 action_940 (80) = happyGoto action_1090 action_940 (81) = happyGoto action_1087 action_940 (103) = happyGoto action_117 action_940 (105) = happyGoto action_118 action_940 (108) = happyGoto action_119 action_940 (109) = happyGoto action_120 action_940 (110) = happyGoto action_121 action_940 (111) = happyGoto action_122 action_940 (112) = happyGoto action_123 action_940 (113) = happyGoto action_124 action_940 (114) = happyGoto action_125 action_940 (115) = happyGoto action_126 action_940 (118) = happyGoto action_1088 action_940 (119) = happyGoto action_129 action_940 (232) = happyGoto action_130 action_940 (245) = happyGoto action_131 action_940 (247) = happyGoto action_45 action_940 (248) = happyGoto action_132 action_940 (249) = happyGoto action_47 action_940 (270) = happyGoto action_133 action_940 (271) = happyGoto action_134 action_940 _ = happyFail action_941 (308) = happyShift action_1089 action_941 _ = happyFail action_942 _ = happyReduce_220 action_943 (278) = happyShift action_49 action_943 (280) = happyShift action_51 action_943 (281) = happyShift action_52 action_943 (282) = happyShift action_53 action_943 (283) = happyShift action_54 action_943 (289) = happyShift action_135 action_943 (292) = happyShift action_136 action_943 (299) = happyShift action_137 action_943 (301) = happyShift action_138 action_943 (307) = happyShift action_139 action_943 (309) = happyShift action_140 action_943 (312) = happyShift action_141 action_943 (325) = happyShift action_142 action_943 (328) = happyShift action_143 action_943 (337) = happyShift action_144 action_943 (338) = happyShift action_145 action_943 (344) = happyShift action_146 action_943 (346) = happyShift action_147 action_943 (358) = happyShift action_88 action_943 (359) = happyShift action_148 action_943 (360) = happyShift action_149 action_943 (361) = happyShift action_150 action_943 (363) = happyShift action_93 action_943 (364) = happyShift action_94 action_943 (365) = happyShift action_95 action_943 (366) = happyShift action_96 action_943 (367) = happyShift action_97 action_943 (368) = happyShift action_98 action_943 (369) = happyShift action_99 action_943 (370) = happyShift action_100 action_943 (371) = happyShift action_101 action_943 (381) = happyShift action_151 action_943 (383) = happyShift action_106 action_943 (402) = happyShift action_112 action_943 (416) = happyShift action_152 action_943 (417) = happyShift action_153 action_943 (80) = happyGoto action_1086 action_943 (81) = happyGoto action_1087 action_943 (103) = happyGoto action_117 action_943 (105) = happyGoto action_118 action_943 (108) = happyGoto action_119 action_943 (109) = happyGoto action_120 action_943 (110) = happyGoto action_121 action_943 (111) = happyGoto action_122 action_943 (112) = happyGoto action_123 action_943 (113) = happyGoto action_124 action_943 (114) = happyGoto action_125 action_943 (115) = happyGoto action_126 action_943 (118) = happyGoto action_1088 action_943 (119) = happyGoto action_129 action_943 (232) = happyGoto action_130 action_943 (245) = happyGoto action_131 action_943 (247) = happyGoto action_45 action_943 (248) = happyGoto action_132 action_943 (249) = happyGoto action_47 action_943 (270) = happyGoto action_133 action_943 (271) = happyGoto action_134 action_943 _ = happyFail action_944 _ = happyReduce_181 action_945 _ = happyReduce_178 action_946 _ = happyReduce_177 action_947 _ = happyReduce_731 action_948 (278) = happyShift action_49 action_948 (280) = happyShift action_51 action_948 (281) = happyShift action_52 action_948 (282) = happyShift action_53 action_948 (283) = happyShift action_54 action_948 (289) = happyShift action_135 action_948 (292) = happyShift action_136 action_948 (299) = happyShift action_137 action_948 (301) = happyShift action_138 action_948 (307) = happyShift action_139 action_948 (309) = happyShift action_140 action_948 (312) = happyShift action_141 action_948 (325) = happyShift action_142 action_948 (328) = happyShift action_143 action_948 (337) = happyShift action_144 action_948 (338) = happyShift action_145 action_948 (344) = happyShift action_146 action_948 (346) = happyShift action_147 action_948 (358) = happyShift action_88 action_948 (359) = happyShift action_148 action_948 (360) = happyShift action_149 action_948 (361) = happyShift action_150 action_948 (363) = happyShift action_93 action_948 (364) = happyShift action_94 action_948 (365) = happyShift action_95 action_948 (366) = happyShift action_96 action_948 (367) = happyShift action_97 action_948 (368) = happyShift action_98 action_948 (369) = happyShift action_99 action_948 (370) = happyShift action_100 action_948 (371) = happyShift action_101 action_948 (383) = happyShift action_106 action_948 (402) = happyShift action_112 action_948 (416) = happyShift action_152 action_948 (417) = happyShift action_153 action_948 (103) = happyGoto action_117 action_948 (105) = happyGoto action_1084 action_948 (108) = happyGoto action_119 action_948 (109) = happyGoto action_120 action_948 (110) = happyGoto action_121 action_948 (111) = happyGoto action_122 action_948 (112) = happyGoto action_123 action_948 (113) = happyGoto action_124 action_948 (114) = happyGoto action_125 action_948 (115) = happyGoto action_126 action_948 (119) = happyGoto action_1085 action_948 (232) = happyGoto action_130 action_948 (245) = happyGoto action_131 action_948 (247) = happyGoto action_45 action_948 (248) = happyGoto action_132 action_948 (249) = happyGoto action_47 action_948 (270) = happyGoto action_133 action_948 (271) = happyGoto action_134 action_948 _ = happyFail action_949 _ = happyReduce_727 action_950 (122) = happyGoto action_1083 action_950 _ = happyReduce_302 action_951 _ = happyReduce_724 action_952 _ = happyReduce_722 action_953 (401) = happyShift action_1082 action_953 (264) = happyGoto action_1081 action_953 _ = happyReduce_719 action_954 _ = happyReduce_718 action_955 _ = happyReduce_109 action_956 (320) = happyShift action_1080 action_956 (53) = happyGoto action_1078 action_956 (54) = happyGoto action_1079 action_956 _ = happyReduce_100 action_957 (278) = happyShift action_49 action_957 (279) = happyShift action_50 action_957 (282) = happyShift action_53 action_957 (283) = happyShift action_54 action_957 (299) = happyShift action_609 action_957 (307) = happyShift action_610 action_957 (329) = happyShift action_611 action_957 (358) = happyShift action_88 action_957 (359) = happyShift action_89 action_957 (360) = happyShift action_90 action_957 (361) = happyShift action_91 action_957 (362) = happyShift action_92 action_957 (363) = happyShift action_93 action_957 (364) = happyShift action_94 action_957 (365) = happyShift action_95 action_957 (366) = happyShift action_96 action_957 (367) = happyShift action_97 action_957 (368) = happyShift action_98 action_957 (369) = happyShift action_99 action_957 (370) = happyShift action_100 action_957 (371) = happyShift action_101 action_957 (380) = happyShift action_104 action_957 (381) = happyShift action_105 action_957 (383) = happyShift action_106 action_957 (402) = happyShift action_112 action_957 (403) = happyShift action_113 action_957 (144) = happyGoto action_1077 action_957 (145) = happyGoto action_603 action_957 (146) = happyGoto action_604 action_957 (147) = happyGoto action_605 action_957 (148) = happyGoto action_606 action_957 (234) = happyGoto action_181 action_957 (244) = happyGoto action_607 action_957 (245) = happyGoto action_43 action_957 (246) = happyGoto action_44 action_957 (248) = happyGoto action_46 action_957 (249) = happyGoto action_47 action_957 (269) = happyGoto action_608 action_957 _ = happyFail action_958 (278) = happyShift action_49 action_958 (299) = happyShift action_560 action_958 (358) = happyShift action_88 action_958 (359) = happyShift action_148 action_958 (360) = happyShift action_149 action_958 (361) = happyShift action_150 action_958 (363) = happyShift action_93 action_958 (364) = happyShift action_94 action_958 (365) = happyShift action_95 action_958 (366) = happyShift action_96 action_958 (367) = happyShift action_97 action_958 (368) = happyShift action_98 action_958 (369) = happyShift action_99 action_958 (370) = happyShift action_100 action_958 (371) = happyShift action_101 action_958 (383) = happyShift action_106 action_958 (402) = happyShift action_112 action_958 (123) = happyGoto action_1076 action_958 (245) = happyGoto action_131 action_958 (270) = happyGoto action_559 action_958 (271) = happyGoto action_134 action_958 _ = happyFail action_959 (278) = happyShift action_49 action_959 (280) = happyShift action_51 action_959 (281) = happyShift action_52 action_959 (282) = happyShift action_53 action_959 (283) = happyShift action_54 action_959 (289) = happyShift action_135 action_959 (292) = happyShift action_136 action_959 (299) = happyShift action_137 action_959 (301) = happyShift action_138 action_959 (307) = happyShift action_139 action_959 (309) = happyShift action_140 action_959 (312) = happyShift action_141 action_959 (325) = happyShift action_142 action_959 (328) = happyShift action_143 action_959 (337) = happyShift action_144 action_959 (338) = happyShift action_145 action_959 (344) = happyShift action_146 action_959 (346) = happyShift action_147 action_959 (358) = happyShift action_88 action_959 (359) = happyShift action_148 action_959 (360) = happyShift action_149 action_959 (361) = happyShift action_150 action_959 (363) = happyShift action_93 action_959 (364) = happyShift action_94 action_959 (365) = happyShift action_95 action_959 (366) = happyShift action_96 action_959 (367) = happyShift action_97 action_959 (368) = happyShift action_98 action_959 (369) = happyShift action_99 action_959 (370) = happyShift action_100 action_959 (371) = happyShift action_101 action_959 (381) = happyShift action_151 action_959 (383) = happyShift action_106 action_959 (402) = happyShift action_112 action_959 (416) = happyShift action_152 action_959 (417) = happyShift action_153 action_959 (103) = happyGoto action_117 action_959 (105) = happyGoto action_118 action_959 (108) = happyGoto action_119 action_959 (109) = happyGoto action_120 action_959 (110) = happyGoto action_121 action_959 (111) = happyGoto action_122 action_959 (112) = happyGoto action_123 action_959 (113) = happyGoto action_124 action_959 (114) = happyGoto action_125 action_959 (115) = happyGoto action_126 action_959 (117) = happyGoto action_1075 action_959 (118) = happyGoto action_128 action_959 (119) = happyGoto action_129 action_959 (232) = happyGoto action_130 action_959 (245) = happyGoto action_131 action_959 (247) = happyGoto action_45 action_959 (248) = happyGoto action_132 action_959 (249) = happyGoto action_47 action_959 (270) = happyGoto action_133 action_959 (271) = happyGoto action_134 action_959 _ = happyFail action_960 (278) = happyShift action_1073 action_960 (312) = happyShift action_1074 action_960 (65) = happyGoto action_1072 action_960 _ = happyReduce_140 action_961 _ = happyReduce_118 action_962 (304) = happyShift action_1071 action_962 (258) = happyGoto action_1070 action_962 _ = happyReduce_714 action_963 _ = happyReduce_119 action_964 _ = happyReduce_120 action_965 _ = happyReduce_114 action_966 (278) = happyShift action_49 action_966 (279) = happyShift action_50 action_966 (282) = happyShift action_53 action_966 (283) = happyShift action_54 action_966 (299) = happyShift action_609 action_966 (307) = happyShift action_610 action_966 (329) = happyShift action_611 action_966 (358) = happyShift action_88 action_966 (359) = happyShift action_89 action_966 (360) = happyShift action_90 action_966 (361) = happyShift action_91 action_966 (362) = happyShift action_92 action_966 (363) = happyShift action_93 action_966 (364) = happyShift action_94 action_966 (365) = happyShift action_95 action_966 (366) = happyShift action_96 action_966 (367) = happyShift action_97 action_966 (368) = happyShift action_98 action_966 (369) = happyShift action_99 action_966 (370) = happyShift action_100 action_966 (371) = happyShift action_101 action_966 (380) = happyShift action_104 action_966 (381) = happyShift action_105 action_966 (383) = happyShift action_106 action_966 (402) = happyShift action_112 action_966 (403) = happyShift action_113 action_966 (144) = happyGoto action_1069 action_966 (145) = happyGoto action_603 action_966 (146) = happyGoto action_604 action_966 (147) = happyGoto action_605 action_966 (148) = happyGoto action_606 action_966 (234) = happyGoto action_181 action_966 (244) = happyGoto action_607 action_966 (245) = happyGoto action_43 action_966 (246) = happyGoto action_44 action_966 (248) = happyGoto action_46 action_966 (249) = happyGoto action_47 action_966 (269) = happyGoto action_608 action_966 _ = happyFail action_967 (278) = happyShift action_49 action_967 (322) = happyShift action_1068 action_967 (358) = happyShift action_88 action_967 (359) = happyShift action_148 action_967 (360) = happyShift action_149 action_967 (361) = happyShift action_150 action_967 (363) = happyShift action_93 action_967 (364) = happyShift action_94 action_967 (365) = happyShift action_95 action_967 (366) = happyShift action_96 action_967 (367) = happyShift action_97 action_967 (368) = happyShift action_98 action_967 (369) = happyShift action_99 action_967 (370) = happyShift action_100 action_967 (371) = happyShift action_101 action_967 (383) = happyShift action_106 action_967 (402) = happyShift action_112 action_967 (245) = happyGoto action_131 action_967 (270) = happyGoto action_1067 action_967 (271) = happyGoto action_134 action_967 _ = happyFail action_968 (311) = happyShift action_1066 action_968 _ = happyReduce_309 action_969 _ = happyReduce_311 action_970 _ = happyReduce_117 action_971 (304) = happyShift action_1065 action_971 (258) = happyGoto action_1064 action_971 _ = happyReduce_714 action_972 _ = happyReduce_123 action_973 (317) = happyShift action_1063 action_973 _ = happyFail action_974 _ = happyReduce_635 action_975 (278) = happyShift action_49 action_975 (299) = happyShift action_976 action_975 (358) = happyShift action_88 action_975 (363) = happyShift action_93 action_975 (364) = happyShift action_94 action_975 (365) = happyShift action_95 action_975 (366) = happyShift action_96 action_975 (367) = happyShift action_97 action_975 (368) = happyShift action_98 action_975 (369) = happyShift action_99 action_975 (370) = happyShift action_100 action_975 (371) = happyShift action_101 action_975 (383) = happyShift action_106 action_975 (402) = happyShift action_112 action_975 (230) = happyGoto action_1062 action_975 (245) = happyGoto action_974 action_975 _ = happyFail action_976 (285) = happyShift action_211 action_976 (314) = happyShift action_214 action_976 (327) = happyShift action_216 action_976 (328) = happyShift action_340 action_976 (329) = happyShift action_218 action_976 (254) = happyGoto action_1061 action_976 (255) = happyGoto action_209 action_976 _ = happyFail action_977 (278) = happyShift action_49 action_977 (292) = happyShift action_975 action_977 (299) = happyShift action_976 action_977 (358) = happyShift action_88 action_977 (363) = happyShift action_93 action_977 (364) = happyShift action_94 action_977 (365) = happyShift action_95 action_977 (366) = happyShift action_96 action_977 (367) = happyShift action_97 action_977 (368) = happyShift action_98 action_977 (369) = happyShift action_99 action_977 (370) = happyShift action_100 action_977 (371) = happyShift action_101 action_977 (383) = happyShift action_106 action_977 (402) = happyShift action_112 action_977 (90) = happyGoto action_1060 action_977 (230) = happyGoto action_973 action_977 (245) = happyGoto action_974 action_977 _ = happyFail action_978 _ = happyReduce_207 action_979 _ = happyReduce_208 action_980 _ = happyReduce_209 action_981 _ = happyReduce_210 action_982 _ = happyReduce_390 action_983 (304) = happyShift action_173 action_983 (76) = happyGoto action_170 action_983 (86) = happyGoto action_1059 action_983 (258) = happyGoto action_172 action_983 _ = happyReduce_714 action_984 (311) = happyShift action_791 action_984 (318) = happyShift action_1058 action_984 _ = happyFail action_985 _ = happyReduce_395 action_986 _ = happyReduce_397 action_987 _ = happyReduce_389 action_988 (278) = happyShift action_49 action_988 (299) = happyShift action_1057 action_988 (358) = happyShift action_88 action_988 (359) = happyShift action_89 action_988 (360) = happyShift action_90 action_988 (361) = happyShift action_91 action_988 (362) = happyShift action_92 action_988 (363) = happyShift action_93 action_988 (364) = happyShift action_94 action_988 (365) = happyShift action_95 action_988 (366) = happyShift action_96 action_988 (367) = happyShift action_97 action_988 (368) = happyShift action_98 action_988 (369) = happyShift action_99 action_988 (370) = happyShift action_100 action_988 (371) = happyShift action_101 action_988 (380) = happyShift action_104 action_988 (381) = happyShift action_105 action_988 (383) = happyShift action_106 action_988 (402) = happyShift action_112 action_988 (403) = happyShift action_113 action_988 (229) = happyGoto action_1056 action_988 (245) = happyGoto action_43 action_988 (246) = happyGoto action_390 action_988 _ = happyFail action_989 (278) = happyShift action_49 action_989 (280) = happyShift action_51 action_989 (281) = happyShift action_52 action_989 (282) = happyShift action_53 action_989 (283) = happyShift action_54 action_989 (289) = happyShift action_135 action_989 (292) = happyShift action_136 action_989 (299) = happyShift action_137 action_989 (301) = happyShift action_138 action_989 (307) = happyShift action_139 action_989 (309) = happyShift action_140 action_989 (312) = happyShift action_141 action_989 (325) = happyShift action_142 action_989 (328) = happyShift action_143 action_989 (337) = happyShift action_144 action_989 (338) = happyShift action_145 action_989 (344) = happyShift action_146 action_989 (346) = happyShift action_147 action_989 (358) = happyShift action_88 action_989 (359) = happyShift action_148 action_989 (360) = happyShift action_149 action_989 (361) = happyShift action_150 action_989 (363) = happyShift action_93 action_989 (364) = happyShift action_94 action_989 (365) = happyShift action_95 action_989 (366) = happyShift action_96 action_989 (367) = happyShift action_97 action_989 (368) = happyShift action_98 action_989 (369) = happyShift action_99 action_989 (370) = happyShift action_100 action_989 (371) = happyShift action_101 action_989 (381) = happyShift action_151 action_989 (383) = happyShift action_106 action_989 (402) = happyShift action_112 action_989 (416) = happyShift action_152 action_989 (417) = happyShift action_153 action_989 (103) = happyGoto action_117 action_989 (105) = happyGoto action_118 action_989 (108) = happyGoto action_119 action_989 (109) = happyGoto action_120 action_989 (110) = happyGoto action_121 action_989 (111) = happyGoto action_122 action_989 (112) = happyGoto action_123 action_989 (113) = happyGoto action_124 action_989 (114) = happyGoto action_125 action_989 (115) = happyGoto action_126 action_989 (117) = happyGoto action_1055 action_989 (118) = happyGoto action_128 action_989 (119) = happyGoto action_129 action_989 (232) = happyGoto action_130 action_989 (245) = happyGoto action_131 action_989 (247) = happyGoto action_45 action_989 (248) = happyGoto action_132 action_989 (249) = happyGoto action_47 action_989 (270) = happyGoto action_133 action_989 (271) = happyGoto action_134 action_989 _ = happyFail action_990 (320) = happyShift action_1054 action_990 _ = happyReduce_321 action_991 _ = happyReduce_323 action_992 (278) = happyShift action_49 action_992 (282) = happyShift action_53 action_992 (283) = happyShift action_54 action_992 (289) = happyShift action_135 action_992 (292) = happyShift action_136 action_992 (299) = happyShift action_1053 action_992 (301) = happyShift action_138 action_992 (307) = happyShift action_139 action_992 (309) = happyShift action_140 action_992 (312) = happyShift action_141 action_992 (325) = happyShift action_142 action_992 (328) = happyShift action_143 action_992 (337) = happyShift action_144 action_992 (338) = happyShift action_145 action_992 (344) = happyShift action_146 action_992 (346) = happyShift action_147 action_992 (358) = happyShift action_88 action_992 (359) = happyShift action_148 action_992 (360) = happyShift action_149 action_992 (361) = happyShift action_150 action_992 (363) = happyShift action_93 action_992 (364) = happyShift action_94 action_992 (365) = happyShift action_95 action_992 (366) = happyShift action_96 action_992 (367) = happyShift action_97 action_992 (368) = happyShift action_98 action_992 (369) = happyShift action_99 action_992 (370) = happyShift action_100 action_992 (371) = happyShift action_101 action_992 (383) = happyShift action_106 action_992 (402) = happyShift action_112 action_992 (416) = happyShift action_152 action_992 (417) = happyShift action_153 action_992 (106) = happyGoto action_1046 action_992 (108) = happyGoto action_1047 action_992 (109) = happyGoto action_120 action_992 (110) = happyGoto action_121 action_992 (111) = happyGoto action_122 action_992 (112) = happyGoto action_123 action_992 (113) = happyGoto action_124 action_992 (114) = happyGoto action_125 action_992 (115) = happyGoto action_126 action_992 (119) = happyGoto action_1048 action_992 (137) = happyGoto action_1049 action_992 (138) = happyGoto action_1050 action_992 (234) = happyGoto action_1051 action_992 (245) = happyGoto action_131 action_992 (248) = happyGoto action_1052 action_992 (249) = happyGoto action_47 action_992 (270) = happyGoto action_133 action_992 (271) = happyGoto action_134 action_992 _ = happyFail action_993 (122) = happyGoto action_1045 action_993 _ = happyReduce_302 action_994 _ = happyReduce_358 action_995 (377) = happyShift action_998 action_995 (141) = happyGoto action_1044 action_995 _ = happyReduce_336 action_996 (304) = happyShift action_1043 action_996 (258) = happyGoto action_1042 action_996 _ = happyReduce_714 action_997 _ = happyReduce_112 action_998 (282) = happyShift action_53 action_998 (283) = happyShift action_54 action_998 (299) = happyShift action_1041 action_998 (143) = happyGoto action_1039 action_998 (248) = happyGoto action_1040 action_998 (249) = happyGoto action_47 action_998 _ = happyFail action_999 (377) = happyShift action_998 action_999 (141) = happyGoto action_1038 action_999 _ = happyReduce_336 action_1000 (401) = happyShift action_996 action_1000 (129) = happyGoto action_1037 action_1000 _ = happyReduce_315 action_1001 (313) = happyShift action_1036 action_1001 _ = happyFail action_1002 (313) = happyShift action_1035 action_1002 _ = happyFail action_1003 (285) = happyShift action_211 action_1003 (286) = happyShift action_186 action_1003 (313) = happyShift action_799 action_1003 (314) = happyShift action_214 action_1003 (327) = happyShift action_216 action_1003 (328) = happyShift action_340 action_1003 (329) = happyShift action_218 action_1003 (235) = happyGoto action_794 action_1003 (238) = happyGoto action_795 action_1003 (240) = happyGoto action_1034 action_1003 (251) = happyGoto action_797 action_1003 (254) = happyGoto action_798 action_1003 (255) = happyGoto action_209 action_1003 _ = happyFail action_1004 _ = happyReduce_578 action_1005 _ = happyReduce_580 action_1006 (401) = happyShift action_983 action_1006 (163) = happyGoto action_1033 action_1006 _ = happyReduce_392 action_1007 (320) = happyShift action_628 action_1007 (214) = happyGoto action_1032 action_1007 _ = happyReduce_596 action_1008 _ = happyReduce_598 action_1009 (278) = happyShift action_49 action_1009 (279) = happyShift action_50 action_1009 (280) = happyShift action_51 action_1009 (281) = happyShift action_52 action_1009 (282) = happyShift action_53 action_1009 (283) = happyShift action_54 action_1009 (289) = happyShift action_55 action_1009 (290) = happyShift action_56 action_1009 (291) = happyShift action_57 action_1009 (292) = happyShift action_58 action_1009 (293) = happyShift action_59 action_1009 (294) = happyShift action_60 action_1009 (295) = happyShift action_61 action_1009 (296) = happyShift action_62 action_1009 (297) = happyShift action_63 action_1009 (298) = happyShift action_64 action_1009 (299) = happyShift action_65 action_1009 (301) = happyShift action_66 action_1009 (307) = happyShift action_67 action_1009 (309) = happyShift action_68 action_1009 (312) = happyShift action_69 action_1009 (319) = happyShift action_70 action_1009 (324) = happyShift action_71 action_1009 (325) = happyShift action_72 action_1009 (327) = happyShift action_73 action_1009 (334) = happyShift action_75 action_1009 (337) = happyShift action_76 action_1009 (338) = happyShift action_77 action_1009 (339) = happyShift action_78 action_1009 (340) = happyShift action_79 action_1009 (341) = happyShift action_80 action_1009 (342) = happyShift action_81 action_1009 (344) = happyShift action_82 action_1009 (345) = happyShift action_83 action_1009 (346) = happyShift action_84 action_1009 (348) = happyShift action_85 action_1009 (350) = happyShift action_86 action_1009 (351) = happyShift action_87 action_1009 (358) = happyShift action_88 action_1009 (359) = happyShift action_89 action_1009 (360) = happyShift action_90 action_1009 (361) = happyShift action_91 action_1009 (362) = happyShift action_92 action_1009 (363) = happyShift action_93 action_1009 (364) = happyShift action_94 action_1009 (365) = happyShift action_95 action_1009 (366) = happyShift action_96 action_1009 (367) = happyShift action_97 action_1009 (368) = happyShift action_98 action_1009 (369) = happyShift action_99 action_1009 (370) = happyShift action_100 action_1009 (371) = happyShift action_101 action_1009 (373) = happyShift action_102 action_1009 (378) = happyShift action_103 action_1009 (380) = happyShift action_104 action_1009 (381) = happyShift action_105 action_1009 (383) = happyShift action_106 action_1009 (384) = happyShift action_107 action_1009 (391) = happyShift action_159 action_1009 (392) = happyShift action_109 action_1009 (396) = happyShift action_110 action_1009 (402) = happyShift action_112 action_1009 (403) = happyShift action_113 action_1009 (411) = happyShift action_114 action_1009 (412) = happyShift action_115 action_1009 (413) = happyShift action_116 action_1009 (168) = happyGoto action_1031 action_1009 (169) = happyGoto action_161 action_1009 (170) = happyGoto action_25 action_1009 (171) = happyGoto action_26 action_1009 (172) = happyGoto action_27 action_1009 (173) = happyGoto action_28 action_1009 (176) = happyGoto action_29 action_1009 (177) = happyGoto action_30 action_1009 (178) = happyGoto action_31 action_1009 (181) = happyGoto action_32 action_1009 (182) = happyGoto action_33 action_1009 (183) = happyGoto action_34 action_1009 (190) = happyGoto action_35 action_1009 (228) = happyGoto action_38 action_1009 (231) = happyGoto action_39 action_1009 (232) = happyGoto action_40 action_1009 (234) = happyGoto action_41 action_1009 (244) = happyGoto action_42 action_1009 (245) = happyGoto action_43 action_1009 (246) = happyGoto action_44 action_1009 (247) = happyGoto action_45 action_1009 (248) = happyGoto action_46 action_1009 (249) = happyGoto action_47 action_1009 (257) = happyGoto action_48 action_1009 _ = happyFail action_1010 (278) = happyShift action_49 action_1010 (279) = happyShift action_50 action_1010 (280) = happyShift action_51 action_1010 (281) = happyShift action_52 action_1010 (282) = happyShift action_53 action_1010 (283) = happyShift action_54 action_1010 (289) = happyShift action_55 action_1010 (290) = happyShift action_56 action_1010 (291) = happyShift action_57 action_1010 (292) = happyShift action_58 action_1010 (293) = happyShift action_59 action_1010 (294) = happyShift action_60 action_1010 (295) = happyShift action_61 action_1010 (296) = happyShift action_62 action_1010 (297) = happyShift action_63 action_1010 (298) = happyShift action_64 action_1010 (299) = happyShift action_65 action_1010 (301) = happyShift action_66 action_1010 (307) = happyShift action_67 action_1010 (309) = happyShift action_68 action_1010 (312) = happyShift action_69 action_1010 (319) = happyShift action_70 action_1010 (324) = happyShift action_71 action_1010 (325) = happyShift action_72 action_1010 (327) = happyShift action_73 action_1010 (328) = happyShift action_74 action_1010 (334) = happyShift action_75 action_1010 (337) = happyShift action_76 action_1010 (338) = happyShift action_77 action_1010 (339) = happyShift action_78 action_1010 (340) = happyShift action_79 action_1010 (341) = happyShift action_80 action_1010 (342) = happyShift action_81 action_1010 (344) = happyShift action_82 action_1010 (345) = happyShift action_83 action_1010 (346) = happyShift action_84 action_1010 (348) = happyShift action_85 action_1010 (350) = happyShift action_86 action_1010 (351) = happyShift action_87 action_1010 (358) = happyShift action_88 action_1010 (359) = happyShift action_89 action_1010 (360) = happyShift action_90 action_1010 (361) = happyShift action_91 action_1010 (362) = happyShift action_92 action_1010 (363) = happyShift action_93 action_1010 (364) = happyShift action_94 action_1010 (365) = happyShift action_95 action_1010 (366) = happyShift action_96 action_1010 (367) = happyShift action_97 action_1010 (368) = happyShift action_98 action_1010 (369) = happyShift action_99 action_1010 (370) = happyShift action_100 action_1010 (371) = happyShift action_101 action_1010 (373) = happyShift action_102 action_1010 (378) = happyShift action_103 action_1010 (380) = happyShift action_104 action_1010 (381) = happyShift action_105 action_1010 (383) = happyShift action_106 action_1010 (384) = happyShift action_107 action_1010 (391) = happyShift action_159 action_1010 (392) = happyShift action_109 action_1010 (396) = happyShift action_110 action_1010 (402) = happyShift action_112 action_1010 (403) = happyShift action_113 action_1010 (411) = happyShift action_114 action_1010 (412) = happyShift action_115 action_1010 (413) = happyShift action_116 action_1010 (169) = happyGoto action_157 action_1010 (170) = happyGoto action_25 action_1010 (171) = happyGoto action_26 action_1010 (172) = happyGoto action_27 action_1010 (173) = happyGoto action_28 action_1010 (176) = happyGoto action_29 action_1010 (177) = happyGoto action_30 action_1010 (178) = happyGoto action_31 action_1010 (181) = happyGoto action_32 action_1010 (182) = happyGoto action_33 action_1010 (183) = happyGoto action_34 action_1010 (190) = happyGoto action_35 action_1010 (211) = happyGoto action_1030 action_1010 (215) = happyGoto action_788 action_1010 (228) = happyGoto action_38 action_1010 (231) = happyGoto action_39 action_1010 (232) = happyGoto action_40 action_1010 (234) = happyGoto action_41 action_1010 (244) = happyGoto action_42 action_1010 (245) = happyGoto action_43 action_1010 (246) = happyGoto action_44 action_1010 (247) = happyGoto action_45 action_1010 (248) = happyGoto action_46 action_1010 (249) = happyGoto action_47 action_1010 (257) = happyGoto action_48 action_1010 _ = happyReduce_40 action_1011 (303) = happyShift action_566 action_1011 _ = happyReduce_591 action_1012 _ = happyReduce_569 action_1013 (278) = happyShift action_49 action_1013 (279) = happyShift action_50 action_1013 (280) = happyShift action_51 action_1013 (281) = happyShift action_52 action_1013 (282) = happyShift action_53 action_1013 (283) = happyShift action_54 action_1013 (289) = happyShift action_55 action_1013 (290) = happyShift action_56 action_1013 (291) = happyShift action_57 action_1013 (292) = happyShift action_58 action_1013 (293) = happyShift action_59 action_1013 (294) = happyShift action_60 action_1013 (295) = happyShift action_61 action_1013 (296) = happyShift action_62 action_1013 (297) = happyShift action_63 action_1013 (298) = happyShift action_64 action_1013 (299) = happyShift action_65 action_1013 (301) = happyShift action_66 action_1013 (307) = happyShift action_67 action_1013 (309) = happyShift action_68 action_1013 (312) = happyShift action_69 action_1013 (319) = happyShift action_70 action_1013 (324) = happyShift action_71 action_1013 (325) = happyShift action_72 action_1013 (327) = happyShift action_73 action_1013 (334) = happyShift action_75 action_1013 (337) = happyShift action_76 action_1013 (338) = happyShift action_77 action_1013 (339) = happyShift action_78 action_1013 (340) = happyShift action_79 action_1013 (341) = happyShift action_80 action_1013 (342) = happyShift action_81 action_1013 (344) = happyShift action_82 action_1013 (345) = happyShift action_83 action_1013 (346) = happyShift action_84 action_1013 (348) = happyShift action_85 action_1013 (350) = happyShift action_86 action_1013 (351) = happyShift action_87 action_1013 (358) = happyShift action_88 action_1013 (359) = happyShift action_89 action_1013 (360) = happyShift action_90 action_1013 (361) = happyShift action_91 action_1013 (362) = happyShift action_92 action_1013 (363) = happyShift action_93 action_1013 (364) = happyShift action_94 action_1013 (365) = happyShift action_95 action_1013 (366) = happyShift action_96 action_1013 (367) = happyShift action_97 action_1013 (368) = happyShift action_98 action_1013 (369) = happyShift action_99 action_1013 (370) = happyShift action_100 action_1013 (371) = happyShift action_101 action_1013 (373) = happyShift action_102 action_1013 (378) = happyShift action_103 action_1013 (380) = happyShift action_104 action_1013 (381) = happyShift action_105 action_1013 (383) = happyShift action_106 action_1013 (384) = happyShift action_107 action_1013 (391) = happyShift action_159 action_1013 (392) = happyShift action_109 action_1013 (396) = happyShift action_110 action_1013 (402) = happyShift action_112 action_1013 (403) = happyShift action_113 action_1013 (411) = happyShift action_114 action_1013 (412) = happyShift action_115 action_1013 (413) = happyShift action_116 action_1013 (168) = happyGoto action_1029 action_1013 (169) = happyGoto action_161 action_1013 (170) = happyGoto action_25 action_1013 (171) = happyGoto action_26 action_1013 (172) = happyGoto action_27 action_1013 (173) = happyGoto action_28 action_1013 (176) = happyGoto action_29 action_1013 (177) = happyGoto action_30 action_1013 (178) = happyGoto action_31 action_1013 (181) = happyGoto action_32 action_1013 (182) = happyGoto action_33 action_1013 (183) = happyGoto action_34 action_1013 (190) = happyGoto action_35 action_1013 (228) = happyGoto action_38 action_1013 (231) = happyGoto action_39 action_1013 (232) = happyGoto action_40 action_1013 (234) = happyGoto action_41 action_1013 (244) = happyGoto action_42 action_1013 (245) = happyGoto action_43 action_1013 (246) = happyGoto action_44 action_1013 (247) = happyGoto action_45 action_1013 (248) = happyGoto action_46 action_1013 (249) = happyGoto action_47 action_1013 (257) = happyGoto action_48 action_1013 _ = happyFail action_1014 (278) = happyShift action_49 action_1014 (279) = happyShift action_50 action_1014 (280) = happyShift action_51 action_1014 (281) = happyShift action_52 action_1014 (282) = happyShift action_53 action_1014 (283) = happyShift action_54 action_1014 (289) = happyShift action_55 action_1014 (290) = happyShift action_56 action_1014 (291) = happyShift action_57 action_1014 (292) = happyShift action_58 action_1014 (293) = happyShift action_59 action_1014 (294) = happyShift action_60 action_1014 (295) = happyShift action_61 action_1014 (296) = happyShift action_62 action_1014 (297) = happyShift action_63 action_1014 (298) = happyShift action_64 action_1014 (299) = happyShift action_65 action_1014 (301) = happyShift action_66 action_1014 (307) = happyShift action_67 action_1014 (309) = happyShift action_68 action_1014 (312) = happyShift action_69 action_1014 (319) = happyShift action_70 action_1014 (324) = happyShift action_71 action_1014 (325) = happyShift action_72 action_1014 (327) = happyShift action_73 action_1014 (334) = happyShift action_75 action_1014 (337) = happyShift action_76 action_1014 (338) = happyShift action_77 action_1014 (339) = happyShift action_78 action_1014 (340) = happyShift action_79 action_1014 (341) = happyShift action_80 action_1014 (342) = happyShift action_81 action_1014 (344) = happyShift action_82 action_1014 (345) = happyShift action_83 action_1014 (346) = happyShift action_84 action_1014 (348) = happyShift action_85 action_1014 (350) = happyShift action_86 action_1014 (351) = happyShift action_87 action_1014 (358) = happyShift action_88 action_1014 (359) = happyShift action_89 action_1014 (360) = happyShift action_90 action_1014 (361) = happyShift action_91 action_1014 (362) = happyShift action_92 action_1014 (363) = happyShift action_93 action_1014 (364) = happyShift action_94 action_1014 (365) = happyShift action_95 action_1014 (366) = happyShift action_96 action_1014 (367) = happyShift action_97 action_1014 (368) = happyShift action_98 action_1014 (369) = happyShift action_99 action_1014 (370) = happyShift action_100 action_1014 (371) = happyShift action_101 action_1014 (373) = happyShift action_102 action_1014 (378) = happyShift action_103 action_1014 (380) = happyShift action_104 action_1014 (381) = happyShift action_105 action_1014 (383) = happyShift action_106 action_1014 (384) = happyShift action_107 action_1014 (391) = happyShift action_159 action_1014 (392) = happyShift action_109 action_1014 (396) = happyShift action_110 action_1014 (402) = happyShift action_112 action_1014 (403) = happyShift action_113 action_1014 (411) = happyShift action_114 action_1014 (412) = happyShift action_115 action_1014 (413) = happyShift action_116 action_1014 (168) = happyGoto action_1028 action_1014 (169) = happyGoto action_161 action_1014 (170) = happyGoto action_25 action_1014 (171) = happyGoto action_26 action_1014 (172) = happyGoto action_27 action_1014 (173) = happyGoto action_28 action_1014 (176) = happyGoto action_29 action_1014 (177) = happyGoto action_30 action_1014 (178) = happyGoto action_31 action_1014 (181) = happyGoto action_32 action_1014 (182) = happyGoto action_33 action_1014 (183) = happyGoto action_34 action_1014 (190) = happyGoto action_35 action_1014 (228) = happyGoto action_38 action_1014 (231) = happyGoto action_39 action_1014 (232) = happyGoto action_40 action_1014 (234) = happyGoto action_41 action_1014 (244) = happyGoto action_42 action_1014 (245) = happyGoto action_43 action_1014 (246) = happyGoto action_44 action_1014 (247) = happyGoto action_45 action_1014 (248) = happyGoto action_46 action_1014 (249) = happyGoto action_47 action_1014 (257) = happyGoto action_48 action_1014 _ = happyFail action_1015 (278) = happyShift action_49 action_1015 (279) = happyShift action_50 action_1015 (280) = happyShift action_51 action_1015 (281) = happyShift action_52 action_1015 (282) = happyShift action_53 action_1015 (283) = happyShift action_54 action_1015 (289) = happyShift action_55 action_1015 (290) = happyShift action_56 action_1015 (291) = happyShift action_57 action_1015 (292) = happyShift action_58 action_1015 (293) = happyShift action_59 action_1015 (294) = happyShift action_60 action_1015 (295) = happyShift action_61 action_1015 (296) = happyShift action_62 action_1015 (297) = happyShift action_63 action_1015 (298) = happyShift action_64 action_1015 (299) = happyShift action_65 action_1015 (301) = happyShift action_66 action_1015 (307) = happyShift action_67 action_1015 (309) = happyShift action_68 action_1015 (312) = happyShift action_69 action_1015 (319) = happyShift action_70 action_1015 (324) = happyShift action_71 action_1015 (325) = happyShift action_72 action_1015 (327) = happyShift action_73 action_1015 (334) = happyShift action_75 action_1015 (337) = happyShift action_76 action_1015 (338) = happyShift action_77 action_1015 (339) = happyShift action_78 action_1015 (340) = happyShift action_79 action_1015 (341) = happyShift action_80 action_1015 (342) = happyShift action_81 action_1015 (344) = happyShift action_82 action_1015 (345) = happyShift action_83 action_1015 (346) = happyShift action_84 action_1015 (348) = happyShift action_85 action_1015 (350) = happyShift action_86 action_1015 (351) = happyShift action_87 action_1015 (358) = happyShift action_88 action_1015 (359) = happyShift action_89 action_1015 (360) = happyShift action_90 action_1015 (361) = happyShift action_91 action_1015 (362) = happyShift action_92 action_1015 (363) = happyShift action_93 action_1015 (364) = happyShift action_94 action_1015 (365) = happyShift action_95 action_1015 (366) = happyShift action_96 action_1015 (367) = happyShift action_97 action_1015 (368) = happyShift action_98 action_1015 (369) = happyShift action_99 action_1015 (370) = happyShift action_100 action_1015 (371) = happyShift action_101 action_1015 (373) = happyShift action_102 action_1015 (378) = happyShift action_103 action_1015 (380) = happyShift action_104 action_1015 (381) = happyShift action_105 action_1015 (383) = happyShift action_106 action_1015 (384) = happyShift action_107 action_1015 (391) = happyShift action_159 action_1015 (392) = happyShift action_109 action_1015 (396) = happyShift action_110 action_1015 (402) = happyShift action_112 action_1015 (403) = happyShift action_113 action_1015 (411) = happyShift action_114 action_1015 (412) = happyShift action_115 action_1015 (413) = happyShift action_116 action_1015 (168) = happyGoto action_1027 action_1015 (169) = happyGoto action_161 action_1015 (170) = happyGoto action_25 action_1015 (171) = happyGoto action_26 action_1015 (172) = happyGoto action_27 action_1015 (173) = happyGoto action_28 action_1015 (176) = happyGoto action_29 action_1015 (177) = happyGoto action_30 action_1015 (178) = happyGoto action_31 action_1015 (181) = happyGoto action_32 action_1015 (182) = happyGoto action_33 action_1015 (183) = happyGoto action_34 action_1015 (190) = happyGoto action_35 action_1015 (228) = happyGoto action_38 action_1015 (231) = happyGoto action_39 action_1015 (232) = happyGoto action_40 action_1015 (234) = happyGoto action_41 action_1015 (244) = happyGoto action_42 action_1015 (245) = happyGoto action_43 action_1015 (246) = happyGoto action_44 action_1015 (247) = happyGoto action_45 action_1015 (248) = happyGoto action_46 action_1015 (249) = happyGoto action_47 action_1015 (257) = happyGoto action_48 action_1015 _ = happyFail action_1016 _ = happyReduce_587 action_1017 (311) = happyShift action_783 action_1017 _ = happyReduce_567 action_1018 _ = happyReduce_563 action_1019 (371) = happyShift action_1026 action_1019 (41) = happyGoto action_1025 action_1019 _ = happyReduce_72 action_1020 (385) = happyShift action_22 action_1020 (36) = happyGoto action_888 action_1020 _ = happyReduce_40 action_1021 (303) = happyShift action_566 action_1021 (305) = happyShift action_1024 action_1021 _ = happyFail action_1022 (1) = happyShift action_400 action_1022 (303) = happyShift action_566 action_1022 (306) = happyShift action_401 action_1022 (259) = happyGoto action_1023 action_1022 _ = happyFail action_1023 _ = happyReduce_746 action_1024 _ = happyReduce_745 action_1025 (299) = happyReduce_78 action_1025 (383) = happyShift action_1175 action_1025 (42) = happyGoto action_1172 action_1025 (43) = happyGoto action_1173 action_1025 (44) = happyGoto action_1174 action_1025 _ = happyReduce_74 action_1026 (282) = happyShift action_403 action_1026 (283) = happyShift action_404 action_1026 (267) = happyGoto action_1171 action_1026 _ = happyFail action_1027 _ = happyReduce_574 action_1028 _ = happyReduce_576 action_1029 (400) = happyShift action_1170 action_1029 _ = happyReduce_575 action_1030 _ = happyReduce_592 action_1031 _ = happyReduce_595 action_1032 _ = happyReduce_597 action_1033 _ = happyReduce_594 action_1034 _ = happyReduce_98 action_1035 _ = happyReduce_651 action_1036 _ = happyReduce_645 action_1037 (377) = happyShift action_998 action_1037 (141) = happyGoto action_1169 action_1037 _ = happyReduce_336 action_1038 _ = happyReduce_115 action_1039 _ = happyReduce_337 action_1040 _ = happyReduce_341 action_1041 (278) = happyShift action_49 action_1041 (280) = happyShift action_51 action_1041 (281) = happyShift action_52 action_1041 (282) = happyShift action_53 action_1041 (283) = happyShift action_54 action_1041 (289) = happyShift action_135 action_1041 (292) = happyShift action_136 action_1041 (299) = happyShift action_137 action_1041 (300) = happyShift action_1168 action_1041 (301) = happyShift action_138 action_1041 (307) = happyShift action_139 action_1041 (309) = happyShift action_140 action_1041 (312) = happyShift action_141 action_1041 (325) = happyShift action_142 action_1041 (328) = happyShift action_143 action_1041 (337) = happyShift action_144 action_1041 (338) = happyShift action_145 action_1041 (344) = happyShift action_146 action_1041 (346) = happyShift action_147 action_1041 (358) = happyShift action_88 action_1041 (359) = happyShift action_148 action_1041 (360) = happyShift action_149 action_1041 (361) = happyShift action_150 action_1041 (363) = happyShift action_93 action_1041 (364) = happyShift action_94 action_1041 (365) = happyShift action_95 action_1041 (366) = happyShift action_96 action_1041 (367) = happyShift action_97 action_1041 (368) = happyShift action_98 action_1041 (369) = happyShift action_99 action_1041 (370) = happyShift action_100 action_1041 (371) = happyShift action_101 action_1041 (381) = happyShift action_151 action_1041 (383) = happyShift action_106 action_1041 (402) = happyShift action_112 action_1041 (416) = happyShift action_152 action_1041 (417) = happyShift action_153 action_1041 (103) = happyGoto action_117 action_1041 (105) = happyGoto action_118 action_1041 (108) = happyGoto action_119 action_1041 (109) = happyGoto action_120 action_1041 (110) = happyGoto action_121 action_1041 (111) = happyGoto action_122 action_1041 (112) = happyGoto action_123 action_1041 (113) = happyGoto action_124 action_1041 (114) = happyGoto action_125 action_1041 (115) = happyGoto action_126 action_1041 (118) = happyGoto action_195 action_1041 (119) = happyGoto action_129 action_1041 (121) = happyGoto action_1166 action_1041 (142) = happyGoto action_1167 action_1041 (232) = happyGoto action_130 action_1041 (245) = happyGoto action_131 action_1041 (247) = happyGoto action_45 action_1041 (248) = happyGoto action_132 action_1041 (249) = happyGoto action_47 action_1041 (270) = happyGoto action_133 action_1041 (271) = happyGoto action_134 action_1041 _ = happyFail action_1042 (27) = happyGoto action_175 action_1042 (28) = happyGoto action_1163 action_1042 (130) = happyGoto action_1165 action_1042 _ = happyReduce_41 action_1043 (27) = happyGoto action_175 action_1043 (28) = happyGoto action_1163 action_1043 (130) = happyGoto action_1164 action_1043 _ = happyReduce_41 action_1044 _ = happyReduce_113 action_1045 (278) = happyShift action_49 action_1045 (299) = happyShift action_560 action_1045 (314) = happyShift action_1162 action_1045 (358) = happyShift action_88 action_1045 (359) = happyShift action_148 action_1045 (360) = happyShift action_149 action_1045 (361) = happyShift action_150 action_1045 (363) = happyShift action_93 action_1045 (364) = happyShift action_94 action_1045 (365) = happyShift action_95 action_1045 (366) = happyShift action_96 action_1045 (367) = happyShift action_97 action_1045 (368) = happyShift action_98 action_1045 (369) = happyShift action_99 action_1045 (370) = happyShift action_100 action_1045 (371) = happyShift action_101 action_1045 (383) = happyShift action_106 action_1045 (402) = happyShift action_112 action_1045 (123) = happyGoto action_558 action_1045 (245) = happyGoto action_131 action_1045 (270) = happyGoto action_559 action_1045 (271) = happyGoto action_134 action_1045 _ = happyFail action_1046 (286) = happyShift action_186 action_1046 (313) = happyShift action_1161 action_1046 (238) = happyGoto action_1160 action_1046 (251) = happyGoto action_797 action_1046 _ = happyFail action_1047 (278) = happyShift action_49 action_1047 (282) = happyShift action_53 action_1047 (283) = happyShift action_54 action_1047 (286) = happyReduce_248 action_1047 (289) = happyShift action_135 action_1047 (292) = happyShift action_136 action_1047 (299) = happyShift action_137 action_1047 (301) = happyShift action_138 action_1047 (307) = happyShift action_139 action_1047 (309) = happyShift action_140 action_1047 (312) = happyShift action_141 action_1047 (313) = happyReduce_248 action_1047 (325) = happyShift action_142 action_1047 (326) = happyShift action_232 action_1047 (328) = happyShift action_143 action_1047 (337) = happyShift action_144 action_1047 (338) = happyShift action_145 action_1047 (344) = happyShift action_146 action_1047 (346) = happyShift action_147 action_1047 (358) = happyShift action_88 action_1047 (359) = happyShift action_148 action_1047 (360) = happyShift action_149 action_1047 (361) = happyShift action_150 action_1047 (363) = happyShift action_93 action_1047 (364) = happyShift action_94 action_1047 (365) = happyShift action_95 action_1047 (366) = happyShift action_96 action_1047 (367) = happyShift action_97 action_1047 (368) = happyShift action_98 action_1047 (369) = happyShift action_99 action_1047 (370) = happyShift action_100 action_1047 (371) = happyShift action_101 action_1047 (383) = happyShift action_106 action_1047 (402) = happyShift action_112 action_1047 (416) = happyShift action_152 action_1047 (417) = happyShift action_153 action_1047 (109) = happyGoto action_223 action_1047 (110) = happyGoto action_121 action_1047 (111) = happyGoto action_122 action_1047 (112) = happyGoto action_123 action_1047 (113) = happyGoto action_124 action_1047 (114) = happyGoto action_125 action_1047 (115) = happyGoto action_126 action_1047 (245) = happyGoto action_131 action_1047 (248) = happyGoto action_132 action_1047 (249) = happyGoto action_47 action_1047 (270) = happyGoto action_133 action_1047 (271) = happyGoto action_134 action_1047 _ = happyReduce_332 action_1048 (278) = happyShift action_49 action_1048 (282) = happyShift action_53 action_1048 (283) = happyShift action_54 action_1048 (289) = happyShift action_135 action_1048 (292) = happyShift action_136 action_1048 (299) = happyShift action_1053 action_1048 (301) = happyShift action_138 action_1048 (307) = happyShift action_139 action_1048 (309) = happyShift action_140 action_1048 (312) = happyShift action_141 action_1048 (325) = happyShift action_142 action_1048 (328) = happyShift action_143 action_1048 (337) = happyShift action_144 action_1048 (338) = happyShift action_145 action_1048 (344) = happyShift action_146 action_1048 (346) = happyShift action_147 action_1048 (358) = happyShift action_88 action_1048 (359) = happyShift action_148 action_1048 (360) = happyShift action_149 action_1048 (361) = happyShift action_150 action_1048 (363) = happyShift action_93 action_1048 (364) = happyShift action_94 action_1048 (365) = happyShift action_95 action_1048 (366) = happyShift action_96 action_1048 (367) = happyShift action_97 action_1048 (368) = happyShift action_98 action_1048 (369) = happyShift action_99 action_1048 (370) = happyShift action_100 action_1048 (371) = happyShift action_101 action_1048 (383) = happyShift action_106 action_1048 (402) = happyShift action_112 action_1048 (416) = happyShift action_152 action_1048 (417) = happyShift action_153 action_1048 (106) = happyGoto action_1046 action_1048 (108) = happyGoto action_1158 action_1048 (109) = happyGoto action_120 action_1048 (110) = happyGoto action_121 action_1048 (111) = happyGoto action_122 action_1048 (112) = happyGoto action_123 action_1048 (113) = happyGoto action_124 action_1048 (114) = happyGoto action_125 action_1048 (115) = happyGoto action_126 action_1048 (137) = happyGoto action_1159 action_1048 (138) = happyGoto action_1050 action_1048 (234) = happyGoto action_1051 action_1048 (245) = happyGoto action_131 action_1048 (248) = happyGoto action_1052 action_1048 (249) = happyGoto action_47 action_1048 (270) = happyGoto action_133 action_1048 (271) = happyGoto action_134 action_1048 _ = happyFail action_1049 _ = happyReduce_325 action_1050 _ = happyReduce_328 action_1051 (304) = happyShift action_1157 action_1051 _ = happyFail action_1052 (304) = happyReduce_642 action_1052 _ = happyReduce_289 action_1053 (278) = happyShift action_49 action_1053 (280) = happyShift action_51 action_1053 (281) = happyShift action_52 action_1053 (282) = happyShift action_53 action_1053 (283) = happyShift action_54 action_1053 (285) = happyShift action_211 action_1053 (286) = happyShift action_186 action_1053 (287) = happyShift action_212 action_1053 (288) = happyShift action_187 action_1053 (289) = happyShift action_135 action_1053 (292) = happyShift action_136 action_1053 (299) = happyShift action_137 action_1053 (300) = happyShift action_213 action_1053 (301) = happyShift action_138 action_1053 (307) = happyShift action_139 action_1053 (309) = happyShift action_140 action_1053 (311) = happyShift action_202 action_1053 (312) = happyShift action_141 action_1053 (314) = happyShift action_214 action_1053 (316) = happyShift action_190 action_1053 (322) = happyShift action_215 action_1053 (325) = happyShift action_142 action_1053 (327) = happyShift action_216 action_1053 (328) = happyShift action_217 action_1053 (329) = happyShift action_218 action_1053 (337) = happyShift action_144 action_1053 (338) = happyShift action_145 action_1053 (344) = happyShift action_146 action_1053 (346) = happyShift action_147 action_1053 (358) = happyShift action_88 action_1053 (359) = happyShift action_148 action_1053 (360) = happyShift action_149 action_1053 (361) = happyShift action_150 action_1053 (363) = happyShift action_93 action_1053 (364) = happyShift action_94 action_1053 (365) = happyShift action_95 action_1053 (366) = happyShift action_96 action_1053 (367) = happyShift action_97 action_1053 (368) = happyShift action_98 action_1053 (369) = happyShift action_99 action_1053 (370) = happyShift action_100 action_1053 (371) = happyShift action_101 action_1053 (381) = happyShift action_151 action_1053 (383) = happyShift action_106 action_1053 (402) = happyShift action_112 action_1053 (416) = happyShift action_152 action_1053 (417) = happyShift action_153 action_1053 (103) = happyGoto action_117 action_1053 (105) = happyGoto action_118 action_1053 (108) = happyGoto action_119 action_1053 (109) = happyGoto action_120 action_1053 (110) = happyGoto action_121 action_1053 (111) = happyGoto action_122 action_1053 (112) = happyGoto action_123 action_1053 (113) = happyGoto action_124 action_1053 (114) = happyGoto action_125 action_1053 (115) = happyGoto action_126 action_1053 (118) = happyGoto action_203 action_1053 (119) = happyGoto action_129 action_1053 (120) = happyGoto action_204 action_1053 (121) = happyGoto action_197 action_1053 (184) = happyGoto action_205 action_1053 (232) = happyGoto action_130 action_1053 (243) = happyGoto action_1156 action_1053 (245) = happyGoto action_131 action_1053 (247) = happyGoto action_45 action_1053 (248) = happyGoto action_132 action_1053 (249) = happyGoto action_47 action_1053 (250) = happyGoto action_183 action_1053 (251) = happyGoto action_184 action_1053 (252) = happyGoto action_207 action_1053 (254) = happyGoto action_208 action_1053 (255) = happyGoto action_209 action_1053 (256) = happyGoto action_210 action_1053 (270) = happyGoto action_133 action_1053 (271) = happyGoto action_134 action_1053 _ = happyFail action_1054 (381) = happyShift action_993 action_1054 (135) = happyGoto action_1155 action_1054 (136) = happyGoto action_992 action_1054 _ = happyReduce_327 action_1055 _ = happyReduce_176 action_1056 _ = happyReduce_197 action_1057 (285) = happyShift action_211 action_1057 (314) = happyShift action_214 action_1057 (327) = happyShift action_216 action_1057 (328) = happyShift action_340 action_1057 (329) = happyShift action_218 action_1057 (254) = happyGoto action_760 action_1057 (255) = happyGoto action_209 action_1057 _ = happyFail action_1058 (278) = happyShift action_49 action_1058 (279) = happyShift action_50 action_1058 (280) = happyShift action_51 action_1058 (281) = happyShift action_52 action_1058 (282) = happyShift action_53 action_1058 (283) = happyShift action_54 action_1058 (289) = happyShift action_55 action_1058 (290) = happyShift action_56 action_1058 (291) = happyShift action_57 action_1058 (292) = happyShift action_58 action_1058 (293) = happyShift action_59 action_1058 (294) = happyShift action_60 action_1058 (295) = happyShift action_61 action_1058 (296) = happyShift action_62 action_1058 (297) = happyShift action_63 action_1058 (298) = happyShift action_64 action_1058 (299) = happyShift action_65 action_1058 (301) = happyShift action_66 action_1058 (307) = happyShift action_67 action_1058 (309) = happyShift action_68 action_1058 (312) = happyShift action_69 action_1058 (319) = happyShift action_70 action_1058 (324) = happyShift action_71 action_1058 (325) = happyShift action_72 action_1058 (327) = happyShift action_73 action_1058 (334) = happyShift action_75 action_1058 (337) = happyShift action_76 action_1058 (338) = happyShift action_77 action_1058 (339) = happyShift action_78 action_1058 (340) = happyShift action_79 action_1058 (341) = happyShift action_80 action_1058 (342) = happyShift action_81 action_1058 (344) = happyShift action_82 action_1058 (345) = happyShift action_83 action_1058 (346) = happyShift action_84 action_1058 (348) = happyShift action_85 action_1058 (350) = happyShift action_86 action_1058 (351) = happyShift action_87 action_1058 (358) = happyShift action_88 action_1058 (359) = happyShift action_89 action_1058 (360) = happyShift action_90 action_1058 (361) = happyShift action_91 action_1058 (362) = happyShift action_92 action_1058 (363) = happyShift action_93 action_1058 (364) = happyShift action_94 action_1058 (365) = happyShift action_95 action_1058 (366) = happyShift action_96 action_1058 (367) = happyShift action_97 action_1058 (368) = happyShift action_98 action_1058 (369) = happyShift action_99 action_1058 (370) = happyShift action_100 action_1058 (371) = happyShift action_101 action_1058 (373) = happyShift action_102 action_1058 (378) = happyShift action_103 action_1058 (380) = happyShift action_104 action_1058 (381) = happyShift action_105 action_1058 (383) = happyShift action_106 action_1058 (384) = happyShift action_107 action_1058 (391) = happyShift action_159 action_1058 (392) = happyShift action_109 action_1058 (396) = happyShift action_110 action_1058 (402) = happyShift action_112 action_1058 (403) = happyShift action_113 action_1058 (411) = happyShift action_114 action_1058 (412) = happyShift action_115 action_1058 (413) = happyShift action_116 action_1058 (168) = happyGoto action_1154 action_1058 (169) = happyGoto action_161 action_1058 (170) = happyGoto action_25 action_1058 (171) = happyGoto action_26 action_1058 (172) = happyGoto action_27 action_1058 (173) = happyGoto action_28 action_1058 (176) = happyGoto action_29 action_1058 (177) = happyGoto action_30 action_1058 (178) = happyGoto action_31 action_1058 (181) = happyGoto action_32 action_1058 (182) = happyGoto action_33 action_1058 (183) = happyGoto action_34 action_1058 (190) = happyGoto action_35 action_1058 (228) = happyGoto action_38 action_1058 (231) = happyGoto action_39 action_1058 (232) = happyGoto action_40 action_1058 (234) = happyGoto action_41 action_1058 (244) = happyGoto action_42 action_1058 (245) = happyGoto action_43 action_1058 (246) = happyGoto action_44 action_1058 (247) = happyGoto action_45 action_1058 (248) = happyGoto action_46 action_1058 (249) = happyGoto action_47 action_1058 (257) = happyGoto action_48 action_1058 _ = happyFail action_1059 _ = happyReduce_391 action_1060 _ = happyReduce_122 action_1061 (300) = happyShift action_1153 action_1061 _ = happyFail action_1062 (317) = happyShift action_1152 action_1062 _ = happyFail action_1063 (278) = happyShift action_49 action_1063 (282) = happyShift action_53 action_1063 (283) = happyShift action_54 action_1063 (289) = happyShift action_135 action_1063 (292) = happyShift action_136 action_1063 (299) = happyShift action_137 action_1063 (301) = happyShift action_138 action_1063 (307) = happyShift action_139 action_1063 (309) = happyShift action_140 action_1063 (312) = happyShift action_141 action_1063 (325) = happyShift action_142 action_1063 (328) = happyShift action_143 action_1063 (337) = happyShift action_144 action_1063 (338) = happyShift action_145 action_1063 (344) = happyShift action_146 action_1063 (346) = happyShift action_147 action_1063 (358) = happyShift action_88 action_1063 (359) = happyShift action_148 action_1063 (360) = happyShift action_149 action_1063 (361) = happyShift action_150 action_1063 (363) = happyShift action_93 action_1063 (364) = happyShift action_94 action_1063 (365) = happyShift action_95 action_1063 (366) = happyShift action_96 action_1063 (367) = happyShift action_97 action_1063 (368) = happyShift action_98 action_1063 (369) = happyShift action_99 action_1063 (370) = happyShift action_100 action_1063 (371) = happyShift action_101 action_1063 (383) = happyShift action_106 action_1063 (402) = happyShift action_112 action_1063 (416) = happyShift action_152 action_1063 (417) = happyShift action_153 action_1063 (102) = happyGoto action_1151 action_1063 (103) = happyGoto action_841 action_1063 (108) = happyGoto action_193 action_1063 (109) = happyGoto action_120 action_1063 (110) = happyGoto action_121 action_1063 (111) = happyGoto action_122 action_1063 (112) = happyGoto action_123 action_1063 (113) = happyGoto action_124 action_1063 (114) = happyGoto action_125 action_1063 (115) = happyGoto action_126 action_1063 (245) = happyGoto action_131 action_1063 (248) = happyGoto action_132 action_1063 (249) = happyGoto action_47 action_1063 (270) = happyGoto action_133 action_1063 (271) = happyGoto action_134 action_1063 _ = happyFail action_1064 (27) = happyGoto action_175 action_1064 (28) = happyGoto action_1148 action_1064 (152) = happyGoto action_1150 action_1064 _ = happyReduce_41 action_1065 (27) = happyGoto action_175 action_1065 (28) = happyGoto action_1148 action_1065 (152) = happyGoto action_1149 action_1065 _ = happyReduce_41 action_1066 (124) = happyGoto action_967 action_1066 (128) = happyGoto action_1147 action_1066 _ = happyReduce_306 action_1067 _ = happyReduce_305 action_1068 (124) = happyGoto action_1145 action_1068 (125) = happyGoto action_1146 action_1068 _ = happyReduce_306 action_1069 _ = happyReduce_130 action_1070 (27) = happyGoto action_175 action_1070 (28) = happyGoto action_1142 action_1070 (158) = happyGoto action_1144 action_1070 _ = happyReduce_41 action_1071 (27) = happyGoto action_175 action_1071 (28) = happyGoto action_1142 action_1071 (158) = happyGoto action_1143 action_1071 _ = happyReduce_41 action_1072 _ = happyReduce_142 action_1073 _ = happyReduce_143 action_1074 _ = happyReduce_144 action_1075 _ = happyReduce_111 action_1076 _ = happyReduce_133 action_1077 _ = happyReduce_132 action_1078 (401) = happyShift action_1141 action_1078 (67) = happyGoto action_1140 action_1078 _ = happyReduce_149 action_1079 _ = happyReduce_101 action_1080 (278) = happyShift action_49 action_1080 (358) = happyShift action_88 action_1080 (359) = happyShift action_148 action_1080 (360) = happyShift action_149 action_1080 (361) = happyShift action_150 action_1080 (363) = happyShift action_93 action_1080 (364) = happyShift action_94 action_1080 (365) = happyShift action_95 action_1080 (366) = happyShift action_96 action_1080 (367) = happyShift action_97 action_1080 (368) = happyShift action_98 action_1080 (369) = happyShift action_99 action_1080 (370) = happyShift action_100 action_1080 (371) = happyShift action_101 action_1080 (383) = happyShift action_106 action_1080 (402) = happyShift action_112 action_1080 (245) = happyGoto action_131 action_1080 (271) = happyGoto action_1139 action_1080 _ = happyFail action_1081 _ = happyReduce_720 action_1082 (304) = happyShift action_1138 action_1082 (258) = happyGoto action_1137 action_1082 _ = happyReduce_714 action_1083 (278) = happyShift action_49 action_1083 (299) = happyShift action_560 action_1083 (314) = happyShift action_1136 action_1083 (358) = happyShift action_88 action_1083 (359) = happyShift action_148 action_1083 (360) = happyShift action_149 action_1083 (361) = happyShift action_150 action_1083 (363) = happyShift action_93 action_1083 (364) = happyShift action_94 action_1083 (365) = happyShift action_95 action_1083 (366) = happyShift action_96 action_1083 (367) = happyShift action_97 action_1083 (368) = happyShift action_98 action_1083 (369) = happyShift action_99 action_1083 (370) = happyShift action_100 action_1083 (371) = happyShift action_101 action_1083 (383) = happyShift action_106 action_1083 (402) = happyShift action_112 action_1083 (123) = happyGoto action_558 action_1083 (245) = happyGoto action_131 action_1083 (270) = happyGoto action_559 action_1083 (271) = happyGoto action_134 action_1083 _ = happyFail action_1084 _ = happyReduce_730 action_1085 (278) = happyShift action_49 action_1085 (280) = happyShift action_51 action_1085 (281) = happyShift action_52 action_1085 (282) = happyShift action_53 action_1085 (283) = happyShift action_54 action_1085 (289) = happyShift action_135 action_1085 (292) = happyShift action_136 action_1085 (299) = happyShift action_137 action_1085 (301) = happyShift action_138 action_1085 (307) = happyShift action_139 action_1085 (309) = happyShift action_140 action_1085 (312) = happyShift action_141 action_1085 (325) = happyShift action_142 action_1085 (328) = happyShift action_143 action_1085 (337) = happyShift action_144 action_1085 (338) = happyShift action_145 action_1085 (344) = happyShift action_146 action_1085 (346) = happyShift action_147 action_1085 (358) = happyShift action_88 action_1085 (359) = happyShift action_148 action_1085 (360) = happyShift action_149 action_1085 (361) = happyShift action_150 action_1085 (363) = happyShift action_93 action_1085 (364) = happyShift action_94 action_1085 (365) = happyShift action_95 action_1085 (366) = happyShift action_96 action_1085 (367) = happyShift action_97 action_1085 (368) = happyShift action_98 action_1085 (369) = happyShift action_99 action_1085 (370) = happyShift action_100 action_1085 (371) = happyShift action_101 action_1085 (383) = happyShift action_106 action_1085 (402) = happyShift action_112 action_1085 (416) = happyShift action_152 action_1085 (417) = happyShift action_153 action_1085 (103) = happyGoto action_117 action_1085 (105) = happyGoto action_1135 action_1085 (108) = happyGoto action_193 action_1085 (109) = happyGoto action_120 action_1085 (110) = happyGoto action_121 action_1085 (111) = happyGoto action_122 action_1085 (112) = happyGoto action_123 action_1085 (113) = happyGoto action_124 action_1085 (114) = happyGoto action_125 action_1085 (115) = happyGoto action_126 action_1085 (232) = happyGoto action_130 action_1085 (245) = happyGoto action_131 action_1085 (247) = happyGoto action_45 action_1085 (248) = happyGoto action_132 action_1085 (249) = happyGoto action_47 action_1085 (270) = happyGoto action_133 action_1085 (271) = happyGoto action_134 action_1085 _ = happyFail action_1086 (425) = happyShift action_1134 action_1086 _ = happyFail action_1087 (311) = happyShift action_1133 action_1087 _ = happyReduce_183 action_1088 _ = happyReduce_185 action_1089 _ = happyReduce_221 action_1090 (425) = happyShift action_1132 action_1090 _ = happyFail action_1091 (314) = happyShift action_1131 action_1091 _ = happyFail action_1092 (278) = happyShift action_49 action_1092 (299) = happyShift action_1094 action_1092 (358) = happyShift action_88 action_1092 (359) = happyShift action_89 action_1092 (360) = happyShift action_90 action_1092 (361) = happyShift action_91 action_1092 (362) = happyShift action_92 action_1092 (363) = happyShift action_93 action_1092 (364) = happyShift action_94 action_1092 (365) = happyShift action_95 action_1092 (366) = happyShift action_96 action_1092 (367) = happyShift action_97 action_1092 (368) = happyShift action_98 action_1092 (369) = happyShift action_99 action_1092 (370) = happyShift action_100 action_1092 (371) = happyShift action_101 action_1092 (380) = happyShift action_104 action_1092 (381) = happyShift action_105 action_1092 (383) = happyShift action_106 action_1092 (402) = happyShift action_112 action_1092 (403) = happyShift action_113 action_1092 (95) = happyGoto action_1130 action_1092 (96) = happyGoto action_1092 action_1092 (245) = happyGoto action_43 action_1092 (246) = happyGoto action_1093 action_1092 _ = happyReduce_224 action_1093 _ = happyReduce_226 action_1094 (278) = happyShift action_49 action_1094 (358) = happyShift action_88 action_1094 (359) = happyShift action_89 action_1094 (360) = happyShift action_90 action_1094 (361) = happyShift action_91 action_1094 (362) = happyShift action_92 action_1094 (363) = happyShift action_93 action_1094 (364) = happyShift action_94 action_1094 (365) = happyShift action_95 action_1094 (366) = happyShift action_96 action_1094 (367) = happyShift action_97 action_1094 (368) = happyShift action_98 action_1094 (369) = happyShift action_99 action_1094 (370) = happyShift action_100 action_1094 (371) = happyShift action_101 action_1094 (380) = happyShift action_104 action_1094 (381) = happyShift action_105 action_1094 (383) = happyShift action_106 action_1094 (402) = happyShift action_112 action_1094 (403) = happyShift action_113 action_1094 (245) = happyGoto action_43 action_1094 (246) = happyGoto action_1129 action_1094 _ = happyFail action_1095 (318) = happyShift action_1128 action_1095 _ = happyFail action_1096 (349) = happyShift action_1127 action_1096 _ = happyFail action_1097 _ = happyReduce_599 action_1098 (278) = happyShift action_49 action_1098 (279) = happyShift action_50 action_1098 (280) = happyShift action_51 action_1098 (281) = happyShift action_52 action_1098 (282) = happyShift action_53 action_1098 (283) = happyShift action_54 action_1098 (289) = happyShift action_55 action_1098 (290) = happyShift action_56 action_1098 (291) = happyShift action_57 action_1098 (292) = happyShift action_58 action_1098 (293) = happyShift action_59 action_1098 (294) = happyShift action_60 action_1098 (295) = happyShift action_61 action_1098 (296) = happyShift action_62 action_1098 (297) = happyShift action_63 action_1098 (298) = happyShift action_64 action_1098 (299) = happyShift action_65 action_1098 (301) = happyShift action_66 action_1098 (307) = happyShift action_67 action_1098 (309) = happyShift action_68 action_1098 (312) = happyShift action_69 action_1098 (319) = happyShift action_70 action_1098 (324) = happyShift action_71 action_1098 (325) = happyShift action_72 action_1098 (327) = happyShift action_73 action_1098 (334) = happyShift action_75 action_1098 (337) = happyShift action_76 action_1098 (338) = happyShift action_77 action_1098 (339) = happyShift action_78 action_1098 (340) = happyShift action_79 action_1098 (341) = happyShift action_80 action_1098 (342) = happyShift action_81 action_1098 (344) = happyShift action_82 action_1098 (345) = happyShift action_83 action_1098 (346) = happyShift action_84 action_1098 (348) = happyShift action_85 action_1098 (350) = happyShift action_86 action_1098 (351) = happyShift action_87 action_1098 (358) = happyShift action_88 action_1098 (359) = happyShift action_89 action_1098 (360) = happyShift action_90 action_1098 (361) = happyShift action_91 action_1098 (362) = happyShift action_92 action_1098 (363) = happyShift action_93 action_1098 (364) = happyShift action_94 action_1098 (365) = happyShift action_95 action_1098 (366) = happyShift action_96 action_1098 (367) = happyShift action_97 action_1098 (368) = happyShift action_98 action_1098 (369) = happyShift action_99 action_1098 (370) = happyShift action_100 action_1098 (371) = happyShift action_101 action_1098 (373) = happyShift action_102 action_1098 (378) = happyShift action_103 action_1098 (380) = happyShift action_104 action_1098 (381) = happyShift action_105 action_1098 (383) = happyShift action_106 action_1098 (384) = happyShift action_107 action_1098 (391) = happyShift action_159 action_1098 (392) = happyShift action_109 action_1098 (396) = happyShift action_110 action_1098 (402) = happyShift action_112 action_1098 (403) = happyShift action_113 action_1098 (411) = happyShift action_114 action_1098 (412) = happyShift action_115 action_1098 (413) = happyShift action_116 action_1098 (169) = happyGoto action_1126 action_1098 (170) = happyGoto action_25 action_1098 (171) = happyGoto action_26 action_1098 (172) = happyGoto action_27 action_1098 (173) = happyGoto action_28 action_1098 (176) = happyGoto action_29 action_1098 (177) = happyGoto action_30 action_1098 (178) = happyGoto action_31 action_1098 (181) = happyGoto action_32 action_1098 (182) = happyGoto action_33 action_1098 (183) = happyGoto action_34 action_1098 (190) = happyGoto action_35 action_1098 (228) = happyGoto action_38 action_1098 (231) = happyGoto action_39 action_1098 (232) = happyGoto action_40 action_1098 (234) = happyGoto action_41 action_1098 (244) = happyGoto action_42 action_1098 (245) = happyGoto action_43 action_1098 (246) = happyGoto action_44 action_1098 (247) = happyGoto action_45 action_1098 (248) = happyGoto action_46 action_1098 (249) = happyGoto action_47 action_1098 (257) = happyGoto action_48 action_1098 _ = happyFail action_1099 (316) = happyShift action_1125 action_1099 _ = happyFail action_1100 (311) = happyShift action_1124 action_1100 _ = happyReduce_355 action_1101 (300) = happyShift action_1123 action_1101 _ = happyFail action_1102 _ = happyReduce_304 action_1103 _ = happyReduce_57 action_1104 (286) = happyShift action_186 action_1104 (288) = happyShift action_187 action_1104 (316) = happyShift action_190 action_1104 (243) = happyGoto action_508 action_1104 (250) = happyGoto action_183 action_1104 (251) = happyGoto action_184 action_1104 _ = happyFail action_1105 _ = happyReduce_51 action_1106 _ = happyReduce_58 action_1107 _ = happyReduce_59 action_1108 _ = happyReduce_56 action_1109 (278) = happyShift action_49 action_1109 (282) = happyShift action_53 action_1109 (299) = happyShift action_392 action_1109 (300) = happyShift action_1121 action_1109 (315) = happyShift action_1122 action_1109 (358) = happyShift action_88 action_1109 (359) = happyShift action_89 action_1109 (360) = happyShift action_90 action_1109 (361) = happyShift action_91 action_1109 (362) = happyShift action_92 action_1109 (363) = happyShift action_93 action_1109 (364) = happyShift action_94 action_1109 (365) = happyShift action_95 action_1109 (366) = happyShift action_96 action_1109 (367) = happyShift action_97 action_1109 (368) = happyShift action_98 action_1109 (369) = happyShift action_99 action_1109 (370) = happyShift action_100 action_1109 (371) = happyShift action_101 action_1109 (380) = happyShift action_104 action_1109 (381) = happyShift action_105 action_1109 (383) = happyShift action_106 action_1109 (402) = happyShift action_112 action_1109 (403) = happyShift action_113 action_1109 (47) = happyGoto action_1117 action_1109 (48) = happyGoto action_1118 action_1109 (229) = happyGoto action_1119 action_1109 (233) = happyGoto action_1120 action_1109 (245) = happyGoto action_43 action_1109 (246) = happyGoto action_390 action_1109 (249) = happyGoto action_391 action_1109 _ = happyFail action_1110 (300) = happyShift action_1116 action_1110 _ = happyFail action_1111 (278) = happyShift action_49 action_1111 (279) = happyShift action_50 action_1111 (282) = happyShift action_53 action_1111 (283) = happyShift action_54 action_1111 (299) = happyShift action_312 action_1111 (358) = happyShift action_88 action_1111 (359) = happyShift action_89 action_1111 (360) = happyShift action_90 action_1111 (361) = happyShift action_91 action_1111 (362) = happyShift action_92 action_1111 (363) = happyShift action_93 action_1111 (364) = happyShift action_94 action_1111 (365) = happyShift action_95 action_1111 (366) = happyShift action_96 action_1111 (367) = happyShift action_97 action_1111 (368) = happyShift action_98 action_1111 (369) = happyShift action_99 action_1111 (370) = happyShift action_100 action_1111 (371) = happyShift action_101 action_1111 (380) = happyShift action_104 action_1111 (381) = happyShift action_105 action_1111 (383) = happyShift action_106 action_1111 (393) = happyShift action_911 action_1111 (399) = happyShift action_912 action_1111 (402) = happyShift action_112 action_1111 (403) = happyShift action_113 action_1111 (404) = happyShift action_913 action_1111 (33) = happyGoto action_1115 action_1111 (231) = happyGoto action_908 action_1111 (234) = happyGoto action_181 action_1111 (244) = happyGoto action_42 action_1111 (245) = happyGoto action_43 action_1111 (246) = happyGoto action_44 action_1111 (248) = happyGoto action_46 action_1111 (249) = happyGoto action_47 action_1111 (269) = happyGoto action_909 action_1111 _ = happyReduce_46 action_1112 _ = happyReduce_45 action_1113 (347) = happyShift action_516 action_1113 (348) = happyShift action_85 action_1113 (349) = happyShift action_1114 action_1113 (350) = happyShift action_86 action_1113 (351) = happyShift action_87 action_1113 (355) = happyShift action_517 action_1113 (190) = happyGoto action_513 action_1113 (192) = happyGoto action_514 action_1113 _ = happyFail action_1114 (278) = happyShift action_256 action_1114 (282) = happyShift action_257 action_1114 (284) = happyShift action_258 action_1114 (357) = happyShift action_259 action_1114 (358) = happyShift action_260 action_1114 (359) = happyShift action_261 action_1114 (360) = happyShift action_262 action_1114 (361) = happyShift action_263 action_1114 (362) = happyShift action_264 action_1114 (363) = happyShift action_265 action_1114 (364) = happyShift action_266 action_1114 (365) = happyShift action_267 action_1114 (366) = happyShift action_268 action_1114 (367) = happyShift action_269 action_1114 (368) = happyShift action_270 action_1114 (369) = happyShift action_271 action_1114 (370) = happyShift action_272 action_1114 (371) = happyShift action_273 action_1114 (372) = happyShift action_274 action_1114 (373) = happyShift action_275 action_1114 (374) = happyShift action_276 action_1114 (375) = happyShift action_277 action_1114 (376) = happyShift action_278 action_1114 (377) = happyShift action_279 action_1114 (378) = happyShift action_280 action_1114 (379) = happyShift action_281 action_1114 (380) = happyShift action_282 action_1114 (381) = happyShift action_283 action_1114 (382) = happyShift action_284 action_1114 (383) = happyShift action_285 action_1114 (384) = happyShift action_286 action_1114 (385) = happyShift action_287 action_1114 (386) = happyShift action_288 action_1114 (387) = happyShift action_289 action_1114 (388) = happyShift action_290 action_1114 (389) = happyShift action_291 action_1114 (390) = happyShift action_292 action_1114 (391) = happyShift action_293 action_1114 (392) = happyShift action_294 action_1114 (393) = happyShift action_295 action_1114 (394) = happyShift action_296 action_1114 (395) = happyShift action_297 action_1114 (396) = happyShift action_298 action_1114 (397) = happyShift action_299 action_1114 (398) = happyShift action_300 action_1114 (399) = happyShift action_301 action_1114 (400) = happyShift action_302 action_1114 (401) = happyShift action_303 action_1114 (402) = happyShift action_304 action_1114 (193) = happyGoto action_1230 action_1114 (194) = happyGoto action_254 action_1114 (195) = happyGoto action_255 action_1114 _ = happyFail action_1115 _ = happyReduce_48 action_1116 _ = happyReduce_44 action_1117 (300) = happyShift action_1228 action_1117 (311) = happyShift action_1229 action_1117 _ = happyFail action_1118 _ = happyReduce_89 action_1119 _ = happyReduce_90 action_1120 _ = happyReduce_91 action_1121 _ = happyReduce_54 action_1122 (300) = happyShift action_1227 action_1122 _ = happyFail action_1123 _ = happyReduce_353 action_1124 (278) = happyShift action_49 action_1124 (279) = happyShift action_50 action_1124 (282) = happyShift action_53 action_1124 (283) = happyShift action_54 action_1124 (299) = happyShift action_609 action_1124 (307) = happyShift action_610 action_1124 (329) = happyShift action_611 action_1124 (358) = happyShift action_88 action_1124 (359) = happyShift action_89 action_1124 (360) = happyShift action_90 action_1124 (361) = happyShift action_91 action_1124 (362) = happyShift action_92 action_1124 (363) = happyShift action_93 action_1124 (364) = happyShift action_94 action_1124 (365) = happyShift action_95 action_1124 (366) = happyShift action_96 action_1124 (367) = happyShift action_97 action_1124 (368) = happyShift action_98 action_1124 (369) = happyShift action_99 action_1124 (370) = happyShift action_100 action_1124 (371) = happyShift action_101 action_1124 (380) = happyShift action_104 action_1124 (381) = happyShift action_105 action_1124 (383) = happyShift action_106 action_1124 (402) = happyShift action_112 action_1124 (403) = happyShift action_113 action_1124 (145) = happyGoto action_1100 action_1124 (146) = happyGoto action_604 action_1124 (147) = happyGoto action_605 action_1124 (148) = happyGoto action_606 action_1124 (149) = happyGoto action_1226 action_1124 (234) = happyGoto action_181 action_1124 (244) = happyGoto action_607 action_1124 (245) = happyGoto action_43 action_1124 (246) = happyGoto action_44 action_1124 (248) = happyGoto action_46 action_1124 (249) = happyGoto action_47 action_1124 (269) = happyGoto action_608 action_1124 _ = happyFail action_1125 (289) = happyShift action_1225 action_1125 _ = happyFail action_1126 _ = happyReduce_416 action_1127 (278) = happyShift action_256 action_1127 (282) = happyShift action_257 action_1127 (284) = happyShift action_258 action_1127 (357) = happyShift action_259 action_1127 (358) = happyShift action_260 action_1127 (359) = happyShift action_261 action_1127 (360) = happyShift action_262 action_1127 (361) = happyShift action_263 action_1127 (362) = happyShift action_264 action_1127 (363) = happyShift action_265 action_1127 (364) = happyShift action_266 action_1127 (365) = happyShift action_267 action_1127 (366) = happyShift action_268 action_1127 (367) = happyShift action_269 action_1127 (368) = happyShift action_270 action_1127 (369) = happyShift action_271 action_1127 (370) = happyShift action_272 action_1127 (371) = happyShift action_273 action_1127 (372) = happyShift action_274 action_1127 (373) = happyShift action_275 action_1127 (374) = happyShift action_276 action_1127 (375) = happyShift action_277 action_1127 (376) = happyShift action_278 action_1127 (377) = happyShift action_279 action_1127 (378) = happyShift action_280 action_1127 (379) = happyShift action_281 action_1127 (380) = happyShift action_282 action_1127 (381) = happyShift action_283 action_1127 (382) = happyShift action_284 action_1127 (383) = happyShift action_285 action_1127 (384) = happyShift action_286 action_1127 (385) = happyShift action_287 action_1127 (386) = happyShift action_288 action_1127 (387) = happyShift action_289 action_1127 (388) = happyShift action_290 action_1127 (389) = happyShift action_291 action_1127 (390) = happyShift action_292 action_1127 (391) = happyShift action_293 action_1127 (392) = happyShift action_294 action_1127 (393) = happyShift action_295 action_1127 (394) = happyShift action_296 action_1127 (395) = happyShift action_297 action_1127 (396) = happyShift action_298 action_1127 (397) = happyShift action_299 action_1127 (398) = happyShift action_300 action_1127 (399) = happyShift action_301 action_1127 (400) = happyShift action_302 action_1127 (401) = happyShift action_303 action_1127 (402) = happyShift action_304 action_1127 (193) = happyGoto action_1224 action_1127 (194) = happyGoto action_254 action_1127 (195) = happyGoto action_255 action_1127 _ = happyFail action_1128 (278) = happyShift action_49 action_1128 (279) = happyShift action_50 action_1128 (280) = happyShift action_51 action_1128 (281) = happyShift action_52 action_1128 (282) = happyShift action_53 action_1128 (283) = happyShift action_54 action_1128 (289) = happyShift action_55 action_1128 (290) = happyShift action_56 action_1128 (291) = happyShift action_57 action_1128 (292) = happyShift action_58 action_1128 (293) = happyShift action_59 action_1128 (294) = happyShift action_60 action_1128 (295) = happyShift action_61 action_1128 (296) = happyShift action_62 action_1128 (297) = happyShift action_63 action_1128 (298) = happyShift action_64 action_1128 (299) = happyShift action_65 action_1128 (301) = happyShift action_66 action_1128 (307) = happyShift action_67 action_1128 (309) = happyShift action_68 action_1128 (312) = happyShift action_69 action_1128 (319) = happyShift action_70 action_1128 (324) = happyShift action_71 action_1128 (325) = happyShift action_72 action_1128 (327) = happyShift action_73 action_1128 (334) = happyShift action_75 action_1128 (337) = happyShift action_76 action_1128 (338) = happyShift action_77 action_1128 (339) = happyShift action_78 action_1128 (340) = happyShift action_79 action_1128 (341) = happyShift action_80 action_1128 (342) = happyShift action_81 action_1128 (344) = happyShift action_82 action_1128 (345) = happyShift action_83 action_1128 (346) = happyShift action_84 action_1128 (348) = happyShift action_85 action_1128 (350) = happyShift action_86 action_1128 (351) = happyShift action_87 action_1128 (358) = happyShift action_88 action_1128 (359) = happyShift action_89 action_1128 (360) = happyShift action_90 action_1128 (361) = happyShift action_91 action_1128 (362) = happyShift action_92 action_1128 (363) = happyShift action_93 action_1128 (364) = happyShift action_94 action_1128 (365) = happyShift action_95 action_1128 (366) = happyShift action_96 action_1128 (367) = happyShift action_97 action_1128 (368) = happyShift action_98 action_1128 (369) = happyShift action_99 action_1128 (370) = happyShift action_100 action_1128 (371) = happyShift action_101 action_1128 (373) = happyShift action_102 action_1128 (378) = happyShift action_103 action_1128 (380) = happyShift action_104 action_1128 (381) = happyShift action_105 action_1128 (383) = happyShift action_106 action_1128 (384) = happyShift action_107 action_1128 (391) = happyShift action_159 action_1128 (392) = happyShift action_109 action_1128 (396) = happyShift action_110 action_1128 (402) = happyShift action_112 action_1128 (403) = happyShift action_113 action_1128 (411) = happyShift action_114 action_1128 (412) = happyShift action_115 action_1128 (413) = happyShift action_116 action_1128 (168) = happyGoto action_1223 action_1128 (169) = happyGoto action_161 action_1128 (170) = happyGoto action_25 action_1128 (171) = happyGoto action_26 action_1128 (172) = happyGoto action_27 action_1128 (173) = happyGoto action_28 action_1128 (176) = happyGoto action_29 action_1128 (177) = happyGoto action_30 action_1128 (178) = happyGoto action_31 action_1128 (181) = happyGoto action_32 action_1128 (182) = happyGoto action_33 action_1128 (183) = happyGoto action_34 action_1128 (190) = happyGoto action_35 action_1128 (228) = happyGoto action_38 action_1128 (231) = happyGoto action_39 action_1128 (232) = happyGoto action_40 action_1128 (234) = happyGoto action_41 action_1128 (244) = happyGoto action_42 action_1128 (245) = happyGoto action_43 action_1128 (246) = happyGoto action_44 action_1128 (247) = happyGoto action_45 action_1128 (248) = happyGoto action_46 action_1128 (249) = happyGoto action_47 action_1128 (257) = happyGoto action_48 action_1128 _ = happyFail action_1129 (317) = happyShift action_1222 action_1129 _ = happyFail action_1130 _ = happyReduce_225 action_1131 _ = happyReduce_223 action_1132 _ = happyReduce_180 action_1133 (278) = happyShift action_49 action_1133 (280) = happyShift action_51 action_1133 (281) = happyShift action_52 action_1133 (282) = happyShift action_53 action_1133 (283) = happyShift action_54 action_1133 (289) = happyShift action_135 action_1133 (292) = happyShift action_136 action_1133 (299) = happyShift action_137 action_1133 (301) = happyShift action_138 action_1133 (307) = happyShift action_139 action_1133 (309) = happyShift action_140 action_1133 (312) = happyShift action_141 action_1133 (325) = happyShift action_142 action_1133 (328) = happyShift action_143 action_1133 (337) = happyShift action_144 action_1133 (338) = happyShift action_145 action_1133 (344) = happyShift action_146 action_1133 (346) = happyShift action_147 action_1133 (358) = happyShift action_88 action_1133 (359) = happyShift action_148 action_1133 (360) = happyShift action_149 action_1133 (361) = happyShift action_150 action_1133 (363) = happyShift action_93 action_1133 (364) = happyShift action_94 action_1133 (365) = happyShift action_95 action_1133 (366) = happyShift action_96 action_1133 (367) = happyShift action_97 action_1133 (368) = happyShift action_98 action_1133 (369) = happyShift action_99 action_1133 (370) = happyShift action_100 action_1133 (371) = happyShift action_101 action_1133 (381) = happyShift action_151 action_1133 (383) = happyShift action_106 action_1133 (402) = happyShift action_112 action_1133 (416) = happyShift action_152 action_1133 (417) = happyShift action_153 action_1133 (80) = happyGoto action_1221 action_1133 (81) = happyGoto action_1087 action_1133 (103) = happyGoto action_117 action_1133 (105) = happyGoto action_118 action_1133 (108) = happyGoto action_119 action_1133 (109) = happyGoto action_120 action_1133 (110) = happyGoto action_121 action_1133 (111) = happyGoto action_122 action_1133 (112) = happyGoto action_123 action_1133 (113) = happyGoto action_124 action_1133 (114) = happyGoto action_125 action_1133 (115) = happyGoto action_126 action_1133 (118) = happyGoto action_1088 action_1133 (119) = happyGoto action_129 action_1133 (232) = happyGoto action_130 action_1133 (245) = happyGoto action_131 action_1133 (247) = happyGoto action_45 action_1133 (248) = happyGoto action_132 action_1133 (249) = happyGoto action_47 action_1133 (270) = happyGoto action_133 action_1133 (271) = happyGoto action_134 action_1133 _ = happyFail action_1134 _ = happyReduce_179 action_1135 _ = happyReduce_729 action_1136 (278) = happyShift action_49 action_1136 (280) = happyShift action_51 action_1136 (281) = happyShift action_52 action_1136 (282) = happyShift action_53 action_1136 (283) = happyShift action_54 action_1136 (289) = happyShift action_135 action_1136 (292) = happyShift action_136 action_1136 (299) = happyShift action_137 action_1136 (301) = happyShift action_138 action_1136 (307) = happyShift action_139 action_1136 (309) = happyShift action_140 action_1136 (312) = happyShift action_141 action_1136 (325) = happyShift action_142 action_1136 (328) = happyShift action_143 action_1136 (337) = happyShift action_144 action_1136 (338) = happyShift action_145 action_1136 (344) = happyShift action_146 action_1136 (346) = happyShift action_147 action_1136 (358) = happyShift action_88 action_1136 (359) = happyShift action_148 action_1136 (360) = happyShift action_149 action_1136 (361) = happyShift action_150 action_1136 (363) = happyShift action_93 action_1136 (364) = happyShift action_94 action_1136 (365) = happyShift action_95 action_1136 (366) = happyShift action_96 action_1136 (367) = happyShift action_97 action_1136 (368) = happyShift action_98 action_1136 (369) = happyShift action_99 action_1136 (370) = happyShift action_100 action_1136 (371) = happyShift action_101 action_1136 (381) = happyShift action_950 action_1136 (383) = happyShift action_106 action_1136 (402) = happyShift action_112 action_1136 (416) = happyShift action_152 action_1136 (417) = happyShift action_153 action_1136 (103) = happyGoto action_117 action_1136 (105) = happyGoto action_947 action_1136 (108) = happyGoto action_119 action_1136 (109) = happyGoto action_120 action_1136 (110) = happyGoto action_121 action_1136 (111) = happyGoto action_122 action_1136 (112) = happyGoto action_123 action_1136 (113) = happyGoto action_124 action_1136 (114) = happyGoto action_125 action_1136 (115) = happyGoto action_126 action_1136 (119) = happyGoto action_948 action_1136 (232) = happyGoto action_130 action_1136 (245) = happyGoto action_131 action_1136 (247) = happyGoto action_45 action_1136 (248) = happyGoto action_132 action_1136 (249) = happyGoto action_47 action_1136 (266) = happyGoto action_1220 action_1136 (270) = happyGoto action_133 action_1136 (271) = happyGoto action_134 action_1136 _ = happyFail action_1137 (27) = happyGoto action_175 action_1137 (28) = happyGoto action_1217 action_1137 (73) = happyGoto action_1219 action_1137 _ = happyReduce_41 action_1138 (27) = happyGoto action_175 action_1138 (28) = happyGoto action_1217 action_1138 (73) = happyGoto action_1218 action_1138 _ = happyReduce_41 action_1139 (322) = happyShift action_1216 action_1139 _ = happyFail action_1140 _ = happyReduce_110 action_1141 (304) = happyShift action_1215 action_1141 (68) = happyGoto action_1213 action_1141 (258) = happyGoto action_1214 action_1141 _ = happyReduce_714 action_1142 (278) = happyShift action_49 action_1142 (279) = happyShift action_50 action_1142 (280) = happyShift action_51 action_1142 (281) = happyShift action_52 action_1142 (282) = happyShift action_53 action_1142 (283) = happyShift action_54 action_1142 (289) = happyShift action_55 action_1142 (290) = happyShift action_56 action_1142 (291) = happyShift action_57 action_1142 (292) = happyShift action_58 action_1142 (293) = happyShift action_59 action_1142 (294) = happyShift action_60 action_1142 (295) = happyShift action_61 action_1142 (296) = happyShift action_62 action_1142 (297) = happyShift action_63 action_1142 (298) = happyShift action_64 action_1142 (299) = happyShift action_65 action_1142 (301) = happyShift action_66 action_1142 (303) = happyShift action_566 action_1142 (307) = happyShift action_67 action_1142 (309) = happyShift action_68 action_1142 (312) = happyShift action_69 action_1142 (319) = happyShift action_592 action_1142 (324) = happyShift action_71 action_1142 (325) = happyShift action_72 action_1142 (327) = happyShift action_73 action_1142 (328) = happyShift action_486 action_1142 (334) = happyShift action_75 action_1142 (337) = happyShift action_76 action_1142 (338) = happyShift action_77 action_1142 (339) = happyShift action_78 action_1142 (340) = happyShift action_79 action_1142 (341) = happyShift action_80 action_1142 (342) = happyShift action_81 action_1142 (344) = happyShift action_82 action_1142 (345) = happyShift action_83 action_1142 (346) = happyShift action_84 action_1142 (348) = happyShift action_85 action_1142 (350) = happyShift action_86 action_1142 (351) = happyShift action_87 action_1142 (358) = happyShift action_88 action_1142 (359) = happyShift action_89 action_1142 (360) = happyShift action_90 action_1142 (361) = happyShift action_91 action_1142 (362) = happyShift action_92 action_1142 (363) = happyShift action_93 action_1142 (364) = happyShift action_94 action_1142 (365) = happyShift action_95 action_1142 (366) = happyShift action_96 action_1142 (367) = happyShift action_97 action_1142 (368) = happyShift action_98 action_1142 (369) = happyShift action_99 action_1142 (370) = happyShift action_100 action_1142 (371) = happyShift action_101 action_1142 (373) = happyShift action_102 action_1142 (375) = happyShift action_1211 action_1142 (378) = happyShift action_103 action_1142 (380) = happyShift action_104 action_1142 (381) = happyShift action_105 action_1142 (383) = happyShift action_106 action_1142 (392) = happyShift action_109 action_1142 (394) = happyShift action_496 action_1142 (399) = happyShift action_1212 action_1142 (402) = happyShift action_112 action_1142 (403) = happyShift action_113 action_1142 (405) = happyShift action_499 action_1142 (406) = happyShift action_500 action_1142 (407) = happyShift action_501 action_1142 (408) = happyShift action_502 action_1142 (421) = happyShift action_507 action_1142 (71) = happyGoto action_1204 action_1142 (78) = happyGoto action_1205 action_1142 (79) = happyGoto action_1206 action_1142 (159) = happyGoto action_1207 action_1142 (160) = happyGoto action_1208 action_1142 (161) = happyGoto action_1209 action_1142 (162) = happyGoto action_1210 action_1142 (172) = happyGoto action_588 action_1142 (176) = happyGoto action_29 action_1142 (178) = happyGoto action_31 action_1142 (181) = happyGoto action_32 action_1142 (182) = happyGoto action_33 action_1142 (183) = happyGoto action_34 action_1142 (190) = happyGoto action_35 action_1142 (228) = happyGoto action_38 action_1142 (231) = happyGoto action_39 action_1142 (232) = happyGoto action_40 action_1142 (234) = happyGoto action_41 action_1142 (244) = happyGoto action_42 action_1142 (245) = happyGoto action_43 action_1142 (246) = happyGoto action_44 action_1142 (247) = happyGoto action_45 action_1142 (248) = happyGoto action_46 action_1142 (249) = happyGoto action_47 action_1142 (257) = happyGoto action_48 action_1142 _ = happyReduce_379 action_1143 (305) = happyShift action_1203 action_1143 _ = happyFail action_1144 (1) = happyShift action_400 action_1144 (306) = happyShift action_401 action_1144 (259) = happyGoto action_1202 action_1144 _ = happyFail action_1145 (278) = happyShift action_49 action_1145 (358) = happyShift action_88 action_1145 (359) = happyShift action_148 action_1145 (360) = happyShift action_149 action_1145 (361) = happyShift action_150 action_1145 (363) = happyShift action_93 action_1145 (364) = happyShift action_94 action_1145 (365) = happyShift action_95 action_1145 (366) = happyShift action_96 action_1145 (367) = happyShift action_97 action_1145 (368) = happyShift action_98 action_1145 (369) = happyShift action_99 action_1145 (370) = happyShift action_100 action_1145 (371) = happyShift action_101 action_1145 (383) = happyShift action_106 action_1145 (402) = happyShift action_112 action_1145 (245) = happyGoto action_131 action_1145 (270) = happyGoto action_1201 action_1145 (271) = happyGoto action_134 action_1145 _ = happyFail action_1146 _ = happyReduce_312 action_1147 _ = happyReduce_310 action_1148 (278) = happyShift action_49 action_1148 (279) = happyShift action_50 action_1148 (280) = happyShift action_51 action_1148 (281) = happyShift action_52 action_1148 (282) = happyShift action_53 action_1148 (283) = happyShift action_54 action_1148 (289) = happyShift action_55 action_1148 (290) = happyShift action_56 action_1148 (291) = happyShift action_57 action_1148 (292) = happyShift action_58 action_1148 (293) = happyShift action_59 action_1148 (294) = happyShift action_60 action_1148 (295) = happyShift action_61 action_1148 (296) = happyShift action_62 action_1148 (297) = happyShift action_63 action_1148 (298) = happyShift action_64 action_1148 (299) = happyShift action_65 action_1148 (301) = happyShift action_66 action_1148 (303) = happyShift action_566 action_1148 (307) = happyShift action_67 action_1148 (309) = happyShift action_68 action_1148 (312) = happyShift action_69 action_1148 (319) = happyShift action_592 action_1148 (324) = happyShift action_71 action_1148 (325) = happyShift action_72 action_1148 (327) = happyShift action_73 action_1148 (328) = happyShift action_486 action_1148 (334) = happyShift action_75 action_1148 (337) = happyShift action_76 action_1148 (338) = happyShift action_77 action_1148 (339) = happyShift action_78 action_1148 (340) = happyShift action_79 action_1148 (341) = happyShift action_80 action_1148 (342) = happyShift action_81 action_1148 (344) = happyShift action_82 action_1148 (345) = happyShift action_83 action_1148 (346) = happyShift action_84 action_1148 (348) = happyShift action_85 action_1148 (350) = happyShift action_86 action_1148 (351) = happyShift action_87 action_1148 (358) = happyShift action_88 action_1148 (359) = happyShift action_89 action_1148 (360) = happyShift action_90 action_1148 (361) = happyShift action_91 action_1148 (362) = happyShift action_92 action_1148 (363) = happyShift action_93 action_1148 (364) = happyShift action_94 action_1148 (365) = happyShift action_95 action_1148 (366) = happyShift action_96 action_1148 (367) = happyShift action_97 action_1148 (368) = happyShift action_98 action_1148 (369) = happyShift action_99 action_1148 (370) = happyShift action_100 action_1148 (371) = happyShift action_101 action_1148 (373) = happyShift action_102 action_1148 (375) = happyShift action_1198 action_1148 (376) = happyShift action_1199 action_1148 (378) = happyShift action_103 action_1148 (380) = happyShift action_104 action_1148 (381) = happyShift action_105 action_1148 (383) = happyShift action_106 action_1148 (387) = happyShift action_492 action_1148 (388) = happyShift action_493 action_1148 (389) = happyShift action_494 action_1148 (392) = happyShift action_109 action_1148 (399) = happyShift action_1200 action_1148 (402) = happyShift action_112 action_1148 (403) = happyShift action_113 action_1148 (404) = happyShift action_498 action_1148 (405) = happyShift action_499 action_1148 (406) = happyShift action_500 action_1148 (407) = happyShift action_501 action_1148 (408) = happyShift action_502 action_1148 (421) = happyShift action_507 action_1148 (49) = happyGoto action_469 action_1148 (51) = happyGoto action_470 action_1148 (75) = happyGoto action_1194 action_1148 (77) = happyGoto action_477 action_1148 (78) = happyGoto action_478 action_1148 (79) = happyGoto action_479 action_1148 (153) = happyGoto action_1195 action_1148 (154) = happyGoto action_1196 action_1148 (156) = happyGoto action_1197 action_1148 (162) = happyGoto action_480 action_1148 (172) = happyGoto action_588 action_1148 (176) = happyGoto action_29 action_1148 (178) = happyGoto action_31 action_1148 (181) = happyGoto action_32 action_1148 (182) = happyGoto action_33 action_1148 (183) = happyGoto action_34 action_1148 (190) = happyGoto action_35 action_1148 (228) = happyGoto action_38 action_1148 (231) = happyGoto action_39 action_1148 (232) = happyGoto action_40 action_1148 (234) = happyGoto action_41 action_1148 (244) = happyGoto action_42 action_1148 (245) = happyGoto action_43 action_1148 (246) = happyGoto action_44 action_1148 (247) = happyGoto action_45 action_1148 (248) = happyGoto action_46 action_1148 (249) = happyGoto action_47 action_1148 (257) = happyGoto action_48 action_1148 (260) = happyGoto action_483 action_1148 (261) = happyGoto action_484 action_1148 (265) = happyGoto action_485 action_1148 _ = happyReduce_363 action_1149 (305) = happyShift action_1193 action_1149 _ = happyFail action_1150 (1) = happyShift action_400 action_1150 (306) = happyShift action_401 action_1150 (259) = happyGoto action_1192 action_1150 _ = happyFail action_1151 _ = happyReduce_213 action_1152 (278) = happyShift action_49 action_1152 (282) = happyShift action_53 action_1152 (283) = happyShift action_54 action_1152 (289) = happyShift action_135 action_1152 (292) = happyShift action_136 action_1152 (299) = happyShift action_137 action_1152 (301) = happyShift action_138 action_1152 (307) = happyShift action_139 action_1152 (309) = happyShift action_140 action_1152 (312) = happyShift action_141 action_1152 (325) = happyShift action_142 action_1152 (328) = happyShift action_143 action_1152 (337) = happyShift action_144 action_1152 (338) = happyShift action_145 action_1152 (344) = happyShift action_146 action_1152 (346) = happyShift action_147 action_1152 (358) = happyShift action_88 action_1152 (359) = happyShift action_148 action_1152 (360) = happyShift action_149 action_1152 (361) = happyShift action_150 action_1152 (363) = happyShift action_93 action_1152 (364) = happyShift action_94 action_1152 (365) = happyShift action_95 action_1152 (366) = happyShift action_96 action_1152 (367) = happyShift action_97 action_1152 (368) = happyShift action_98 action_1152 (369) = happyShift action_99 action_1152 (370) = happyShift action_100 action_1152 (371) = happyShift action_101 action_1152 (383) = happyShift action_106 action_1152 (402) = happyShift action_112 action_1152 (416) = happyShift action_152 action_1152 (417) = happyShift action_153 action_1152 (102) = happyGoto action_1191 action_1152 (103) = happyGoto action_841 action_1152 (108) = happyGoto action_193 action_1152 (109) = happyGoto action_120 action_1152 (110) = happyGoto action_121 action_1152 (111) = happyGoto action_122 action_1152 (112) = happyGoto action_123 action_1152 (113) = happyGoto action_124 action_1152 (114) = happyGoto action_125 action_1152 (115) = happyGoto action_126 action_1152 (245) = happyGoto action_131 action_1152 (248) = happyGoto action_132 action_1152 (249) = happyGoto action_47 action_1152 (270) = happyGoto action_133 action_1152 (271) = happyGoto action_134 action_1152 _ = happyFail action_1153 _ = happyReduce_636 action_1154 _ = happyReduce_399 action_1155 _ = happyReduce_322 action_1156 (300) = happyShift action_1190 action_1156 _ = happyFail action_1157 (278) = happyShift action_49 action_1157 (279) = happyShift action_50 action_1157 (299) = happyShift action_423 action_1157 (305) = happyShift action_1189 action_1157 (358) = happyShift action_88 action_1157 (359) = happyShift action_89 action_1157 (360) = happyShift action_90 action_1157 (361) = happyShift action_91 action_1157 (362) = happyShift action_92 action_1157 (363) = happyShift action_93 action_1157 (364) = happyShift action_94 action_1157 (365) = happyShift action_95 action_1157 (366) = happyShift action_96 action_1157 (367) = happyShift action_97 action_1157 (368) = happyShift action_98 action_1157 (369) = happyShift action_99 action_1157 (370) = happyShift action_100 action_1157 (371) = happyShift action_101 action_1157 (380) = happyShift action_104 action_1157 (381) = happyShift action_105 action_1157 (383) = happyShift action_106 action_1157 (402) = happyShift action_112 action_1157 (403) = happyShift action_113 action_1157 (87) = happyGoto action_1186 action_1157 (139) = happyGoto action_1187 action_1157 (140) = happyGoto action_1188 action_1157 (231) = happyGoto action_809 action_1157 (244) = happyGoto action_42 action_1157 (245) = happyGoto action_43 action_1157 (246) = happyGoto action_44 action_1157 _ = happyFail action_1158 (278) = happyShift action_49 action_1158 (282) = happyShift action_53 action_1158 (283) = happyShift action_54 action_1158 (286) = happyReduce_248 action_1158 (289) = happyShift action_135 action_1158 (292) = happyShift action_136 action_1158 (299) = happyShift action_137 action_1158 (301) = happyShift action_138 action_1158 (307) = happyShift action_139 action_1158 (309) = happyShift action_140 action_1158 (312) = happyShift action_141 action_1158 (313) = happyReduce_248 action_1158 (325) = happyShift action_142 action_1158 (328) = happyShift action_143 action_1158 (337) = happyShift action_144 action_1158 (338) = happyShift action_145 action_1158 (344) = happyShift action_146 action_1158 (346) = happyShift action_147 action_1158 (358) = happyShift action_88 action_1158 (359) = happyShift action_148 action_1158 (360) = happyShift action_149 action_1158 (361) = happyShift action_150 action_1158 (363) = happyShift action_93 action_1158 (364) = happyShift action_94 action_1158 (365) = happyShift action_95 action_1158 (366) = happyShift action_96 action_1158 (367) = happyShift action_97 action_1158 (368) = happyShift action_98 action_1158 (369) = happyShift action_99 action_1158 (370) = happyShift action_100 action_1158 (371) = happyShift action_101 action_1158 (383) = happyShift action_106 action_1158 (402) = happyShift action_112 action_1158 (416) = happyShift action_152 action_1158 (417) = happyShift action_153 action_1158 (109) = happyGoto action_223 action_1158 (110) = happyGoto action_121 action_1158 (111) = happyGoto action_122 action_1158 (112) = happyGoto action_123 action_1158 (113) = happyGoto action_124 action_1158 (114) = happyGoto action_125 action_1158 (115) = happyGoto action_126 action_1158 (245) = happyGoto action_131 action_1158 (248) = happyGoto action_132 action_1158 (249) = happyGoto action_47 action_1158 (270) = happyGoto action_133 action_1158 (271) = happyGoto action_134 action_1158 _ = happyReduce_332 action_1159 _ = happyReduce_324 action_1160 (278) = happyShift action_49 action_1160 (282) = happyShift action_53 action_1160 (283) = happyShift action_54 action_1160 (289) = happyShift action_135 action_1160 (292) = happyShift action_136 action_1160 (299) = happyShift action_137 action_1160 (301) = happyShift action_138 action_1160 (307) = happyShift action_139 action_1160 (309) = happyShift action_140 action_1160 (312) = happyShift action_141 action_1160 (325) = happyShift action_142 action_1160 (328) = happyShift action_143 action_1160 (337) = happyShift action_144 action_1160 (338) = happyShift action_145 action_1160 (344) = happyShift action_146 action_1160 (346) = happyShift action_147 action_1160 (358) = happyShift action_88 action_1160 (359) = happyShift action_148 action_1160 (360) = happyShift action_149 action_1160 (361) = happyShift action_150 action_1160 (363) = happyShift action_93 action_1160 (364) = happyShift action_94 action_1160 (365) = happyShift action_95 action_1160 (366) = happyShift action_96 action_1160 (367) = happyShift action_97 action_1160 (368) = happyShift action_98 action_1160 (369) = happyShift action_99 action_1160 (370) = happyShift action_100 action_1160 (371) = happyShift action_101 action_1160 (383) = happyShift action_106 action_1160 (402) = happyShift action_112 action_1160 (416) = happyShift action_152 action_1160 (417) = happyShift action_153 action_1160 (106) = happyGoto action_1184 action_1160 (108) = happyGoto action_1185 action_1160 (109) = happyGoto action_120 action_1160 (110) = happyGoto action_121 action_1160 (111) = happyGoto action_122 action_1160 (112) = happyGoto action_123 action_1160 (113) = happyGoto action_124 action_1160 (114) = happyGoto action_125 action_1160 (115) = happyGoto action_126 action_1160 (245) = happyGoto action_131 action_1160 (248) = happyGoto action_132 action_1160 (249) = happyGoto action_47 action_1160 (270) = happyGoto action_133 action_1160 (271) = happyGoto action_134 action_1160 _ = happyFail action_1161 (282) = happyShift action_53 action_1161 (249) = happyGoto action_1002 action_1161 _ = happyFail action_1162 _ = happyReduce_326 action_1163 (282) = happyShift action_53 action_1163 (283) = happyShift action_54 action_1163 (299) = happyShift action_1104 action_1163 (303) = happyShift action_566 action_1163 (131) = happyGoto action_1181 action_1163 (132) = happyGoto action_1182 action_1163 (234) = happyGoto action_1183 action_1163 (248) = happyGoto action_46 action_1163 (249) = happyGoto action_47 action_1163 _ = happyFail action_1164 (305) = happyShift action_1180 action_1164 _ = happyFail action_1165 (1) = happyShift action_400 action_1165 (306) = happyShift action_401 action_1165 (259) = happyGoto action_1179 action_1165 _ = happyFail action_1166 (311) = happyShift action_548 action_1166 _ = happyReduce_340 action_1167 (300) = happyShift action_1178 action_1167 _ = happyFail action_1168 _ = happyReduce_338 action_1169 _ = happyReduce_116 action_1170 (278) = happyShift action_49 action_1170 (279) = happyShift action_50 action_1170 (280) = happyShift action_51 action_1170 (281) = happyShift action_52 action_1170 (282) = happyShift action_53 action_1170 (283) = happyShift action_54 action_1170 (289) = happyShift action_55 action_1170 (290) = happyShift action_56 action_1170 (291) = happyShift action_57 action_1170 (292) = happyShift action_58 action_1170 (293) = happyShift action_59 action_1170 (294) = happyShift action_60 action_1170 (295) = happyShift action_61 action_1170 (296) = happyShift action_62 action_1170 (297) = happyShift action_63 action_1170 (298) = happyShift action_64 action_1170 (299) = happyShift action_65 action_1170 (301) = happyShift action_66 action_1170 (307) = happyShift action_67 action_1170 (309) = happyShift action_68 action_1170 (312) = happyShift action_69 action_1170 (319) = happyShift action_70 action_1170 (324) = happyShift action_71 action_1170 (325) = happyShift action_72 action_1170 (327) = happyShift action_73 action_1170 (334) = happyShift action_75 action_1170 (337) = happyShift action_76 action_1170 (338) = happyShift action_77 action_1170 (339) = happyShift action_78 action_1170 (340) = happyShift action_79 action_1170 (341) = happyShift action_80 action_1170 (342) = happyShift action_81 action_1170 (344) = happyShift action_82 action_1170 (345) = happyShift action_83 action_1170 (346) = happyShift action_84 action_1170 (348) = happyShift action_85 action_1170 (350) = happyShift action_86 action_1170 (351) = happyShift action_87 action_1170 (358) = happyShift action_88 action_1170 (359) = happyShift action_89 action_1170 (360) = happyShift action_90 action_1170 (361) = happyShift action_91 action_1170 (362) = happyShift action_92 action_1170 (363) = happyShift action_93 action_1170 (364) = happyShift action_94 action_1170 (365) = happyShift action_95 action_1170 (366) = happyShift action_96 action_1170 (367) = happyShift action_97 action_1170 (368) = happyShift action_98 action_1170 (369) = happyShift action_99 action_1170 (370) = happyShift action_100 action_1170 (371) = happyShift action_101 action_1170 (373) = happyShift action_102 action_1170 (378) = happyShift action_103 action_1170 (380) = happyShift action_104 action_1170 (381) = happyShift action_105 action_1170 (383) = happyShift action_106 action_1170 (384) = happyShift action_107 action_1170 (391) = happyShift action_159 action_1170 (392) = happyShift action_109 action_1170 (396) = happyShift action_110 action_1170 (402) = happyShift action_112 action_1170 (403) = happyShift action_113 action_1170 (411) = happyShift action_114 action_1170 (412) = happyShift action_115 action_1170 (413) = happyShift action_116 action_1170 (168) = happyGoto action_1177 action_1170 (169) = happyGoto action_161 action_1170 (170) = happyGoto action_25 action_1170 (171) = happyGoto action_26 action_1170 (172) = happyGoto action_27 action_1170 (173) = happyGoto action_28 action_1170 (176) = happyGoto action_29 action_1170 (177) = happyGoto action_30 action_1170 (178) = happyGoto action_31 action_1170 (181) = happyGoto action_32 action_1170 (182) = happyGoto action_33 action_1170 (183) = happyGoto action_34 action_1170 (190) = happyGoto action_35 action_1170 (228) = happyGoto action_38 action_1170 (231) = happyGoto action_39 action_1170 (232) = happyGoto action_40 action_1170 (234) = happyGoto action_41 action_1170 (244) = happyGoto action_42 action_1170 (245) = happyGoto action_43 action_1170 (246) = happyGoto action_44 action_1170 (247) = happyGoto action_45 action_1170 (248) = happyGoto action_46 action_1170 (249) = happyGoto action_47 action_1170 (257) = happyGoto action_48 action_1170 _ = happyFail action_1171 _ = happyReduce_71 action_1172 _ = happyReduce_62 action_1173 _ = happyReduce_73 action_1174 (299) = happyShift action_1176 action_1174 _ = happyFail action_1175 _ = happyReduce_77 action_1176 (278) = happyShift action_49 action_1176 (282) = happyShift action_53 action_1176 (299) = happyShift action_392 action_1176 (311) = happyShift action_910 action_1176 (358) = happyShift action_88 action_1176 (359) = happyShift action_89 action_1176 (360) = happyShift action_90 action_1176 (361) = happyShift action_91 action_1176 (362) = happyShift action_92 action_1176 (363) = happyShift action_93 action_1176 (364) = happyShift action_94 action_1176 (365) = happyShift action_95 action_1176 (366) = happyShift action_96 action_1176 (367) = happyShift action_97 action_1176 (368) = happyShift action_98 action_1176 (369) = happyShift action_99 action_1176 (370) = happyShift action_100 action_1176 (371) = happyShift action_101 action_1176 (380) = happyShift action_104 action_1176 (381) = happyShift action_105 action_1176 (383) = happyShift action_106 action_1176 (399) = happyShift action_1269 action_1176 (402) = happyShift action_112 action_1176 (403) = happyShift action_113 action_1176 (404) = happyShift action_1270 action_1176 (31) = happyGoto action_1263 action_1176 (45) = happyGoto action_1264 action_1176 (46) = happyGoto action_1265 action_1176 (229) = happyGoto action_1266 action_1176 (233) = happyGoto action_1267 action_1176 (245) = happyGoto action_43 action_1176 (246) = happyGoto action_390 action_1176 (249) = happyGoto action_391 action_1176 (268) = happyGoto action_1268 action_1176 _ = happyReduce_47 action_1177 _ = happyReduce_577 action_1178 _ = happyReduce_339 action_1179 _ = happyReduce_314 action_1180 _ = happyReduce_313 action_1181 (27) = happyGoto action_1261 action_1181 (28) = happyGoto action_1262 action_1181 _ = happyReduce_41 action_1182 _ = happyReduce_318 action_1183 (317) = happyShift action_1260 action_1183 _ = happyFail action_1184 _ = happyReduce_329 action_1185 (278) = happyShift action_49 action_1185 (282) = happyShift action_53 action_1185 (283) = happyShift action_54 action_1185 (289) = happyShift action_135 action_1185 (292) = happyShift action_136 action_1185 (299) = happyShift action_137 action_1185 (301) = happyShift action_138 action_1185 (307) = happyShift action_139 action_1185 (309) = happyShift action_140 action_1185 (312) = happyShift action_141 action_1185 (325) = happyShift action_142 action_1185 (328) = happyShift action_143 action_1185 (337) = happyShift action_144 action_1185 (338) = happyShift action_145 action_1185 (344) = happyShift action_146 action_1185 (346) = happyShift action_147 action_1185 (358) = happyShift action_88 action_1185 (359) = happyShift action_148 action_1185 (360) = happyShift action_149 action_1185 (361) = happyShift action_150 action_1185 (363) = happyShift action_93 action_1185 (364) = happyShift action_94 action_1185 (365) = happyShift action_95 action_1185 (366) = happyShift action_96 action_1185 (367) = happyShift action_97 action_1185 (368) = happyShift action_98 action_1185 (369) = happyShift action_99 action_1185 (370) = happyShift action_100 action_1185 (371) = happyShift action_101 action_1185 (383) = happyShift action_106 action_1185 (402) = happyShift action_112 action_1185 (416) = happyShift action_152 action_1185 (417) = happyShift action_153 action_1185 (109) = happyGoto action_223 action_1185 (110) = happyGoto action_121 action_1185 (111) = happyGoto action_122 action_1185 (112) = happyGoto action_123 action_1185 (113) = happyGoto action_124 action_1185 (114) = happyGoto action_125 action_1185 (115) = happyGoto action_126 action_1185 (245) = happyGoto action_131 action_1185 (248) = happyGoto action_132 action_1185 (249) = happyGoto action_47 action_1185 (270) = happyGoto action_133 action_1185 (271) = happyGoto action_134 action_1185 _ = happyReduce_248 action_1186 (311) = happyShift action_988 action_1186 (317) = happyShift action_1259 action_1186 _ = happyFail action_1187 (305) = happyShift action_1257 action_1187 (311) = happyShift action_1258 action_1187 _ = happyFail action_1188 _ = happyReduce_334 action_1189 _ = happyReduce_330 action_1190 (304) = happyReduce_643 action_1190 _ = happyReduce_290 action_1191 _ = happyReduce_212 action_1192 _ = happyReduce_360 action_1193 _ = happyReduce_359 action_1194 _ = happyReduce_366 action_1195 (27) = happyGoto action_1255 action_1195 (28) = happyGoto action_1256 action_1195 _ = happyReduce_41 action_1196 _ = happyReduce_365 action_1197 _ = happyReduce_367 action_1198 (380) = happyShift action_1254 action_1198 (155) = happyGoto action_1253 action_1198 _ = happyReduce_369 action_1199 (278) = happyShift action_49 action_1199 (279) = happyShift action_50 action_1199 (280) = happyShift action_51 action_1199 (281) = happyShift action_52 action_1199 (282) = happyShift action_53 action_1199 (283) = happyShift action_54 action_1199 (289) = happyShift action_55 action_1199 (290) = happyShift action_56 action_1199 (291) = happyShift action_57 action_1199 (292) = happyShift action_58 action_1199 (293) = happyShift action_59 action_1199 (294) = happyShift action_60 action_1199 (295) = happyShift action_61 action_1199 (296) = happyShift action_62 action_1199 (297) = happyShift action_63 action_1199 (298) = happyShift action_64 action_1199 (299) = happyShift action_65 action_1199 (301) = happyShift action_66 action_1199 (307) = happyShift action_67 action_1199 (309) = happyShift action_68 action_1199 (312) = happyShift action_69 action_1199 (319) = happyShift action_592 action_1199 (324) = happyShift action_71 action_1199 (325) = happyShift action_72 action_1199 (327) = happyShift action_73 action_1199 (334) = happyShift action_75 action_1199 (337) = happyShift action_76 action_1199 (338) = happyShift action_77 action_1199 (339) = happyShift action_78 action_1199 (340) = happyShift action_79 action_1199 (341) = happyShift action_80 action_1199 (342) = happyShift action_81 action_1199 (344) = happyShift action_82 action_1199 (345) = happyShift action_83 action_1199 (346) = happyShift action_84 action_1199 (348) = happyShift action_85 action_1199 (350) = happyShift action_86 action_1199 (351) = happyShift action_87 action_1199 (358) = happyShift action_88 action_1199 (359) = happyShift action_89 action_1199 (360) = happyShift action_90 action_1199 (361) = happyShift action_91 action_1199 (362) = happyShift action_92 action_1199 (363) = happyShift action_93 action_1199 (364) = happyShift action_94 action_1199 (365) = happyShift action_95 action_1199 (366) = happyShift action_96 action_1199 (367) = happyShift action_97 action_1199 (368) = happyShift action_98 action_1199 (369) = happyShift action_99 action_1199 (370) = happyShift action_100 action_1199 (371) = happyShift action_101 action_1199 (373) = happyShift action_102 action_1199 (378) = happyShift action_103 action_1199 (380) = happyShift action_104 action_1199 (381) = happyShift action_105 action_1199 (383) = happyShift action_106 action_1199 (392) = happyShift action_109 action_1199 (402) = happyShift action_112 action_1199 (403) = happyShift action_113 action_1199 (405) = happyShift action_499 action_1199 (406) = happyShift action_500 action_1199 (407) = happyShift action_501 action_1199 (408) = happyShift action_502 action_1199 (421) = happyShift action_507 action_1199 (77) = happyGoto action_1251 action_1199 (78) = happyGoto action_478 action_1199 (79) = happyGoto action_479 action_1199 (172) = happyGoto action_1252 action_1199 (176) = happyGoto action_29 action_1199 (178) = happyGoto action_31 action_1199 (181) = happyGoto action_32 action_1199 (182) = happyGoto action_33 action_1199 (183) = happyGoto action_34 action_1199 (190) = happyGoto action_35 action_1199 (228) = happyGoto action_38 action_1199 (231) = happyGoto action_39 action_1199 (232) = happyGoto action_40 action_1199 (234) = happyGoto action_41 action_1199 (244) = happyGoto action_42 action_1199 (245) = happyGoto action_43 action_1199 (246) = happyGoto action_44 action_1199 (247) = happyGoto action_45 action_1199 (248) = happyGoto action_46 action_1199 (249) = happyGoto action_47 action_1199 (257) = happyGoto action_48 action_1199 _ = happyFail action_1200 (278) = happyShift action_49 action_1200 (280) = happyShift action_51 action_1200 (281) = happyShift action_52 action_1200 (282) = happyShift action_53 action_1200 (283) = happyShift action_54 action_1200 (289) = happyShift action_135 action_1200 (292) = happyShift action_136 action_1200 (299) = happyShift action_137 action_1200 (301) = happyShift action_138 action_1200 (307) = happyShift action_139 action_1200 (309) = happyShift action_140 action_1200 (312) = happyShift action_141 action_1200 (325) = happyShift action_142 action_1200 (328) = happyShift action_143 action_1200 (337) = happyShift action_144 action_1200 (338) = happyShift action_145 action_1200 (344) = happyShift action_146 action_1200 (346) = happyShift action_147 action_1200 (358) = happyShift action_88 action_1200 (359) = happyShift action_148 action_1200 (360) = happyShift action_149 action_1200 (361) = happyShift action_150 action_1200 (363) = happyShift action_93 action_1200 (364) = happyShift action_94 action_1200 (365) = happyShift action_95 action_1200 (366) = happyShift action_96 action_1200 (367) = happyShift action_97 action_1200 (368) = happyShift action_98 action_1200 (369) = happyShift action_99 action_1200 (370) = happyShift action_100 action_1200 (371) = happyShift action_101 action_1200 (380) = happyShift action_1249 action_1200 (383) = happyShift action_106 action_1200 (390) = happyShift action_1250 action_1200 (402) = happyShift action_112 action_1200 (416) = happyShift action_152 action_1200 (417) = happyShift action_153 action_1200 (103) = happyGoto action_117 action_1200 (105) = happyGoto action_1248 action_1200 (108) = happyGoto action_193 action_1200 (109) = happyGoto action_120 action_1200 (110) = happyGoto action_121 action_1200 (111) = happyGoto action_122 action_1200 (112) = happyGoto action_123 action_1200 (113) = happyGoto action_124 action_1200 (114) = happyGoto action_125 action_1200 (115) = happyGoto action_126 action_1200 (232) = happyGoto action_130 action_1200 (245) = happyGoto action_131 action_1200 (247) = happyGoto action_45 action_1200 (248) = happyGoto action_132 action_1200 (249) = happyGoto action_47 action_1200 (270) = happyGoto action_133 action_1200 (271) = happyGoto action_134 action_1200 _ = happyFail action_1201 (278) = happyReduce_305 action_1201 (358) = happyReduce_305 action_1201 (359) = happyReduce_305 action_1201 (360) = happyReduce_305 action_1201 (361) = happyReduce_305 action_1201 (363) = happyReduce_305 action_1201 (364) = happyReduce_305 action_1201 (365) = happyReduce_305 action_1201 (366) = happyReduce_305 action_1201 (367) = happyReduce_305 action_1201 (368) = happyReduce_305 action_1201 (369) = happyReduce_305 action_1201 (370) = happyReduce_305 action_1201 (371) = happyReduce_305 action_1201 (383) = happyReduce_305 action_1201 (402) = happyReduce_305 action_1201 _ = happyReduce_307 action_1202 _ = happyReduce_376 action_1203 _ = happyReduce_375 action_1204 (278) = happyShift action_49 action_1204 (280) = happyShift action_51 action_1204 (281) = happyShift action_52 action_1204 (282) = happyShift action_53 action_1204 (283) = happyShift action_54 action_1204 (289) = happyShift action_135 action_1204 (292) = happyShift action_136 action_1204 (299) = happyShift action_137 action_1204 (301) = happyShift action_138 action_1204 (307) = happyShift action_139 action_1204 (309) = happyShift action_140 action_1204 (312) = happyShift action_141 action_1204 (325) = happyShift action_142 action_1204 (328) = happyShift action_143 action_1204 (337) = happyShift action_144 action_1204 (338) = happyShift action_145 action_1204 (344) = happyShift action_146 action_1204 (346) = happyShift action_147 action_1204 (358) = happyShift action_88 action_1204 (359) = happyShift action_148 action_1204 (360) = happyShift action_149 action_1204 (361) = happyShift action_150 action_1204 (363) = happyShift action_93 action_1204 (364) = happyShift action_94 action_1204 (365) = happyShift action_95 action_1204 (366) = happyShift action_96 action_1204 (367) = happyShift action_97 action_1204 (368) = happyShift action_98 action_1204 (369) = happyShift action_99 action_1204 (370) = happyShift action_100 action_1204 (371) = happyShift action_101 action_1204 (381) = happyShift action_151 action_1204 (383) = happyShift action_106 action_1204 (402) = happyShift action_112 action_1204 (416) = happyShift action_152 action_1204 (417) = happyShift action_153 action_1204 (103) = happyGoto action_117 action_1204 (105) = happyGoto action_118 action_1204 (108) = happyGoto action_119 action_1204 (109) = happyGoto action_120 action_1204 (110) = happyGoto action_121 action_1204 (111) = happyGoto action_122 action_1204 (112) = happyGoto action_123 action_1204 (113) = happyGoto action_124 action_1204 (114) = happyGoto action_125 action_1204 (115) = happyGoto action_126 action_1204 (117) = happyGoto action_1247 action_1204 (118) = happyGoto action_128 action_1204 (119) = happyGoto action_129 action_1204 (232) = happyGoto action_130 action_1204 (245) = happyGoto action_131 action_1204 (247) = happyGoto action_45 action_1204 (248) = happyGoto action_132 action_1204 (249) = happyGoto action_47 action_1204 (270) = happyGoto action_133 action_1204 (271) = happyGoto action_134 action_1204 _ = happyFail action_1205 _ = happyReduce_385 action_1206 _ = happyReduce_384 action_1207 (27) = happyGoto action_1245 action_1207 (28) = happyGoto action_1246 action_1207 _ = happyReduce_41 action_1208 _ = happyReduce_381 action_1209 _ = happyReduce_383 action_1210 _ = happyReduce_382 action_1211 _ = happyReduce_157 action_1212 (278) = happyShift action_49 action_1212 (282) = happyShift action_53 action_1212 (283) = happyShift action_54 action_1212 (289) = happyShift action_135 action_1212 (292) = happyShift action_136 action_1212 (299) = happyShift action_137 action_1212 (301) = happyShift action_138 action_1212 (307) = happyShift action_139 action_1212 (309) = happyShift action_140 action_1212 (312) = happyShift action_141 action_1212 (325) = happyShift action_142 action_1212 (328) = happyShift action_143 action_1212 (337) = happyShift action_144 action_1212 (338) = happyShift action_145 action_1212 (344) = happyShift action_146 action_1212 (346) = happyShift action_147 action_1212 (358) = happyShift action_88 action_1212 (359) = happyShift action_148 action_1212 (360) = happyShift action_149 action_1212 (361) = happyShift action_150 action_1212 (363) = happyShift action_93 action_1212 (364) = happyShift action_94 action_1212 (365) = happyShift action_95 action_1212 (366) = happyShift action_96 action_1212 (367) = happyShift action_97 action_1212 (368) = happyShift action_98 action_1212 (369) = happyShift action_99 action_1212 (370) = happyShift action_100 action_1212 (371) = happyShift action_101 action_1212 (383) = happyShift action_106 action_1212 (402) = happyShift action_112 action_1212 (416) = happyShift action_152 action_1212 (417) = happyShift action_153 action_1212 (102) = happyGoto action_1244 action_1212 (103) = happyGoto action_841 action_1212 (108) = happyGoto action_193 action_1212 (109) = happyGoto action_120 action_1212 (110) = happyGoto action_121 action_1212 (111) = happyGoto action_122 action_1212 (112) = happyGoto action_123 action_1212 (113) = happyGoto action_124 action_1212 (114) = happyGoto action_125 action_1212 (115) = happyGoto action_126 action_1212 (245) = happyGoto action_131 action_1212 (248) = happyGoto action_132 action_1212 (249) = happyGoto action_47 action_1212 (270) = happyGoto action_133 action_1212 (271) = happyGoto action_134 action_1212 _ = happyFail action_1213 _ = happyReduce_150 action_1214 (278) = happyShift action_49 action_1214 (280) = happyShift action_51 action_1214 (281) = happyShift action_52 action_1214 (282) = happyShift action_53 action_1214 (283) = happyShift action_54 action_1214 (289) = happyShift action_135 action_1214 (292) = happyShift action_136 action_1214 (299) = happyShift action_137 action_1214 (301) = happyShift action_138 action_1214 (307) = happyShift action_139 action_1214 (309) = happyShift action_140 action_1214 (312) = happyShift action_141 action_1214 (325) = happyShift action_142 action_1214 (328) = happyShift action_143 action_1214 (337) = happyShift action_144 action_1214 (338) = happyShift action_145 action_1214 (344) = happyShift action_146 action_1214 (346) = happyShift action_147 action_1214 (358) = happyShift action_88 action_1214 (359) = happyShift action_148 action_1214 (360) = happyShift action_149 action_1214 (361) = happyShift action_150 action_1214 (363) = happyShift action_93 action_1214 (364) = happyShift action_94 action_1214 (365) = happyShift action_95 action_1214 (366) = happyShift action_96 action_1214 (367) = happyShift action_97 action_1214 (368) = happyShift action_98 action_1214 (369) = happyShift action_99 action_1214 (370) = happyShift action_100 action_1214 (371) = happyShift action_101 action_1214 (381) = happyShift action_151 action_1214 (383) = happyShift action_106 action_1214 (402) = happyShift action_112 action_1214 (416) = happyShift action_152 action_1214 (417) = happyShift action_153 action_1214 (69) = happyGoto action_1243 action_1214 (70) = happyGoto action_1241 action_1214 (103) = happyGoto action_117 action_1214 (105) = happyGoto action_118 action_1214 (108) = happyGoto action_119 action_1214 (109) = happyGoto action_120 action_1214 (110) = happyGoto action_121 action_1214 (111) = happyGoto action_122 action_1214 (112) = happyGoto action_123 action_1214 (113) = happyGoto action_124 action_1214 (114) = happyGoto action_125 action_1214 (115) = happyGoto action_126 action_1214 (117) = happyGoto action_1242 action_1214 (118) = happyGoto action_128 action_1214 (119) = happyGoto action_129 action_1214 (232) = happyGoto action_130 action_1214 (245) = happyGoto action_131 action_1214 (247) = happyGoto action_45 action_1214 (248) = happyGoto action_132 action_1214 (249) = happyGoto action_47 action_1214 (270) = happyGoto action_133 action_1214 (271) = happyGoto action_134 action_1214 _ = happyFail action_1215 (278) = happyShift action_49 action_1215 (280) = happyShift action_51 action_1215 (281) = happyShift action_52 action_1215 (282) = happyShift action_53 action_1215 (283) = happyShift action_54 action_1215 (289) = happyShift action_135 action_1215 (292) = happyShift action_136 action_1215 (299) = happyShift action_137 action_1215 (301) = happyShift action_138 action_1215 (307) = happyShift action_139 action_1215 (309) = happyShift action_140 action_1215 (312) = happyShift action_141 action_1215 (325) = happyShift action_142 action_1215 (328) = happyShift action_143 action_1215 (337) = happyShift action_144 action_1215 (338) = happyShift action_145 action_1215 (344) = happyShift action_146 action_1215 (346) = happyShift action_147 action_1215 (358) = happyShift action_88 action_1215 (359) = happyShift action_148 action_1215 (360) = happyShift action_149 action_1215 (361) = happyShift action_150 action_1215 (363) = happyShift action_93 action_1215 (364) = happyShift action_94 action_1215 (365) = happyShift action_95 action_1215 (366) = happyShift action_96 action_1215 (367) = happyShift action_97 action_1215 (368) = happyShift action_98 action_1215 (369) = happyShift action_99 action_1215 (370) = happyShift action_100 action_1215 (371) = happyShift action_101 action_1215 (381) = happyShift action_151 action_1215 (383) = happyShift action_106 action_1215 (402) = happyShift action_112 action_1215 (416) = happyShift action_152 action_1215 (417) = happyShift action_153 action_1215 (69) = happyGoto action_1240 action_1215 (70) = happyGoto action_1241 action_1215 (103) = happyGoto action_117 action_1215 (105) = happyGoto action_118 action_1215 (108) = happyGoto action_119 action_1215 (109) = happyGoto action_120 action_1215 (110) = happyGoto action_121 action_1215 (111) = happyGoto action_122 action_1215 (112) = happyGoto action_123 action_1215 (113) = happyGoto action_124 action_1215 (114) = happyGoto action_125 action_1215 (115) = happyGoto action_126 action_1215 (117) = happyGoto action_1242 action_1215 (118) = happyGoto action_128 action_1215 (119) = happyGoto action_129 action_1215 (232) = happyGoto action_130 action_1215 (245) = happyGoto action_131 action_1215 (247) = happyGoto action_45 action_1215 (248) = happyGoto action_132 action_1215 (249) = happyGoto action_47 action_1215 (270) = happyGoto action_133 action_1215 (271) = happyGoto action_134 action_1215 _ = happyFail action_1216 (278) = happyShift action_49 action_1216 (358) = happyShift action_88 action_1216 (359) = happyShift action_148 action_1216 (360) = happyShift action_149 action_1216 (361) = happyShift action_150 action_1216 (363) = happyShift action_93 action_1216 (364) = happyShift action_94 action_1216 (365) = happyShift action_95 action_1216 (366) = happyShift action_96 action_1216 (367) = happyShift action_97 action_1216 (368) = happyShift action_98 action_1216 (369) = happyShift action_99 action_1216 (370) = happyShift action_100 action_1216 (371) = happyShift action_101 action_1216 (383) = happyShift action_106 action_1216 (402) = happyShift action_112 action_1216 (55) = happyGoto action_1238 action_1216 (245) = happyGoto action_131 action_1216 (271) = happyGoto action_1239 action_1216 _ = happyFail action_1217 (278) = happyShift action_49 action_1217 (279) = happyShift action_50 action_1217 (280) = happyShift action_51 action_1217 (281) = happyShift action_52 action_1217 (282) = happyShift action_53 action_1217 (283) = happyShift action_54 action_1217 (289) = happyShift action_55 action_1217 (290) = happyShift action_56 action_1217 (291) = happyShift action_57 action_1217 (292) = happyShift action_58 action_1217 (293) = happyShift action_59 action_1217 (294) = happyShift action_60 action_1217 (295) = happyShift action_61 action_1217 (296) = happyShift action_62 action_1217 (297) = happyShift action_63 action_1217 (298) = happyShift action_64 action_1217 (299) = happyShift action_65 action_1217 (301) = happyShift action_66 action_1217 (303) = happyShift action_566 action_1217 (307) = happyShift action_67 action_1217 (309) = happyShift action_68 action_1217 (312) = happyShift action_69 action_1217 (319) = happyShift action_592 action_1217 (324) = happyShift action_71 action_1217 (325) = happyShift action_72 action_1217 (327) = happyShift action_73 action_1217 (328) = happyShift action_486 action_1217 (334) = happyShift action_75 action_1217 (337) = happyShift action_76 action_1217 (338) = happyShift action_77 action_1217 (339) = happyShift action_78 action_1217 (340) = happyShift action_79 action_1217 (341) = happyShift action_80 action_1217 (342) = happyShift action_81 action_1217 (344) = happyShift action_82 action_1217 (345) = happyShift action_83 action_1217 (346) = happyShift action_84 action_1217 (348) = happyShift action_85 action_1217 (350) = happyShift action_86 action_1217 (351) = happyShift action_87 action_1217 (358) = happyShift action_88 action_1217 (359) = happyShift action_89 action_1217 (360) = happyShift action_90 action_1217 (361) = happyShift action_91 action_1217 (362) = happyShift action_92 action_1217 (363) = happyShift action_93 action_1217 (364) = happyShift action_94 action_1217 (365) = happyShift action_95 action_1217 (366) = happyShift action_96 action_1217 (367) = happyShift action_97 action_1217 (368) = happyShift action_98 action_1217 (369) = happyShift action_99 action_1217 (370) = happyShift action_100 action_1217 (371) = happyShift action_101 action_1217 (373) = happyShift action_102 action_1217 (378) = happyShift action_103 action_1217 (380) = happyShift action_104 action_1217 (381) = happyShift action_105 action_1217 (383) = happyShift action_106 action_1217 (387) = happyShift action_492 action_1217 (388) = happyShift action_493 action_1217 (389) = happyShift action_494 action_1217 (392) = happyShift action_109 action_1217 (402) = happyShift action_112 action_1217 (403) = happyShift action_113 action_1217 (404) = happyShift action_498 action_1217 (405) = happyShift action_499 action_1217 (406) = happyShift action_500 action_1217 (407) = happyShift action_501 action_1217 (408) = happyShift action_502 action_1217 (421) = happyShift action_507 action_1217 (49) = happyGoto action_469 action_1217 (51) = happyGoto action_470 action_1217 (74) = happyGoto action_586 action_1217 (75) = happyGoto action_587 action_1217 (77) = happyGoto action_477 action_1217 (78) = happyGoto action_478 action_1217 (79) = happyGoto action_479 action_1217 (162) = happyGoto action_480 action_1217 (172) = happyGoto action_588 action_1217 (176) = happyGoto action_29 action_1217 (178) = happyGoto action_31 action_1217 (181) = happyGoto action_32 action_1217 (182) = happyGoto action_33 action_1217 (183) = happyGoto action_34 action_1217 (190) = happyGoto action_35 action_1217 (228) = happyGoto action_38 action_1217 (231) = happyGoto action_39 action_1217 (232) = happyGoto action_40 action_1217 (234) = happyGoto action_41 action_1217 (244) = happyGoto action_42 action_1217 (245) = happyGoto action_43 action_1217 (246) = happyGoto action_44 action_1217 (247) = happyGoto action_45 action_1217 (248) = happyGoto action_46 action_1217 (249) = happyGoto action_47 action_1217 (257) = happyGoto action_48 action_1217 (260) = happyGoto action_483 action_1217 (261) = happyGoto action_484 action_1217 (265) = happyGoto action_485 action_1217 _ = happyReduce_163 action_1218 (305) = happyShift action_1237 action_1218 _ = happyFail action_1219 (1) = happyShift action_400 action_1219 (306) = happyShift action_401 action_1219 (259) = happyGoto action_1236 action_1219 _ = happyFail action_1220 _ = happyReduce_728 action_1221 _ = happyReduce_184 action_1222 (278) = happyShift action_49 action_1222 (280) = happyShift action_51 action_1222 (281) = happyShift action_52 action_1222 (282) = happyShift action_53 action_1222 (283) = happyShift action_54 action_1222 (289) = happyShift action_135 action_1222 (292) = happyShift action_136 action_1222 (299) = happyShift action_137 action_1222 (301) = happyShift action_138 action_1222 (307) = happyShift action_139 action_1222 (309) = happyShift action_140 action_1222 (312) = happyShift action_141 action_1222 (325) = happyShift action_142 action_1222 (328) = happyShift action_143 action_1222 (337) = happyShift action_144 action_1222 (338) = happyShift action_145 action_1222 (344) = happyShift action_146 action_1222 (346) = happyShift action_147 action_1222 (358) = happyShift action_88 action_1222 (359) = happyShift action_148 action_1222 (360) = happyShift action_149 action_1222 (361) = happyShift action_150 action_1222 (363) = happyShift action_93 action_1222 (364) = happyShift action_94 action_1222 (365) = happyShift action_95 action_1222 (366) = happyShift action_96 action_1222 (367) = happyShift action_97 action_1222 (368) = happyShift action_98 action_1222 (369) = happyShift action_99 action_1222 (370) = happyShift action_100 action_1222 (371) = happyShift action_101 action_1222 (381) = happyShift action_151 action_1222 (383) = happyShift action_106 action_1222 (402) = happyShift action_112 action_1222 (416) = happyShift action_152 action_1222 (417) = happyShift action_153 action_1222 (103) = happyGoto action_117 action_1222 (105) = happyGoto action_118 action_1222 (108) = happyGoto action_119 action_1222 (109) = happyGoto action_120 action_1222 (110) = happyGoto action_121 action_1222 (111) = happyGoto action_122 action_1222 (112) = happyGoto action_123 action_1222 (113) = happyGoto action_124 action_1222 (114) = happyGoto action_125 action_1222 (115) = happyGoto action_126 action_1222 (117) = happyGoto action_1235 action_1222 (118) = happyGoto action_128 action_1222 (119) = happyGoto action_129 action_1222 (232) = happyGoto action_130 action_1222 (245) = happyGoto action_131 action_1222 (247) = happyGoto action_45 action_1222 (248) = happyGoto action_132 action_1222 (249) = happyGoto action_47 action_1222 (270) = happyGoto action_133 action_1222 (271) = happyGoto action_134 action_1222 _ = happyFail action_1223 _ = happyReduce_218 action_1224 (352) = happyShift action_1234 action_1224 _ = happyFail action_1225 (425) = happyShift action_1233 action_1225 _ = happyFail action_1226 _ = happyReduce_356 action_1227 _ = happyReduce_53 action_1228 _ = happyReduce_55 action_1229 (278) = happyShift action_49 action_1229 (282) = happyShift action_53 action_1229 (299) = happyShift action_392 action_1229 (358) = happyShift action_88 action_1229 (359) = happyShift action_89 action_1229 (360) = happyShift action_90 action_1229 (361) = happyShift action_91 action_1229 (362) = happyShift action_92 action_1229 (363) = happyShift action_93 action_1229 (364) = happyShift action_94 action_1229 (365) = happyShift action_95 action_1229 (366) = happyShift action_96 action_1229 (367) = happyShift action_97 action_1229 (368) = happyShift action_98 action_1229 (369) = happyShift action_99 action_1229 (370) = happyShift action_100 action_1229 (371) = happyShift action_101 action_1229 (380) = happyShift action_104 action_1229 (381) = happyShift action_105 action_1229 (383) = happyShift action_106 action_1229 (402) = happyShift action_112 action_1229 (403) = happyShift action_113 action_1229 (48) = happyGoto action_1232 action_1229 (229) = happyGoto action_1119 action_1229 (233) = happyGoto action_1120 action_1229 (245) = happyGoto action_43 action_1229 (246) = happyGoto action_390 action_1229 (249) = happyGoto action_391 action_1229 _ = happyFail action_1230 (352) = happyShift action_1231 action_1230 _ = happyFail action_1231 _ = happyReduce_17 action_1232 _ = happyReduce_88 action_1233 (278) = happyShift action_49 action_1233 (279) = happyShift action_50 action_1233 (280) = happyShift action_51 action_1233 (281) = happyShift action_52 action_1233 (282) = happyShift action_53 action_1233 (283) = happyShift action_54 action_1233 (289) = happyShift action_55 action_1233 (290) = happyShift action_56 action_1233 (291) = happyShift action_57 action_1233 (292) = happyShift action_58 action_1233 (293) = happyShift action_59 action_1233 (294) = happyShift action_60 action_1233 (295) = happyShift action_61 action_1233 (296) = happyShift action_62 action_1233 (297) = happyShift action_63 action_1233 (298) = happyShift action_64 action_1233 (299) = happyShift action_65 action_1233 (301) = happyShift action_66 action_1233 (307) = happyShift action_67 action_1233 (309) = happyShift action_68 action_1233 (312) = happyShift action_69 action_1233 (319) = happyShift action_70 action_1233 (324) = happyShift action_71 action_1233 (325) = happyShift action_72 action_1233 (327) = happyShift action_73 action_1233 (334) = happyShift action_75 action_1233 (337) = happyShift action_76 action_1233 (338) = happyShift action_77 action_1233 (339) = happyShift action_78 action_1233 (340) = happyShift action_79 action_1233 (341) = happyShift action_80 action_1233 (342) = happyShift action_81 action_1233 (344) = happyShift action_82 action_1233 (345) = happyShift action_83 action_1233 (346) = happyShift action_84 action_1233 (348) = happyShift action_85 action_1233 (350) = happyShift action_86 action_1233 (351) = happyShift action_87 action_1233 (358) = happyShift action_88 action_1233 (359) = happyShift action_89 action_1233 (360) = happyShift action_90 action_1233 (361) = happyShift action_91 action_1233 (362) = happyShift action_92 action_1233 (363) = happyShift action_93 action_1233 (364) = happyShift action_94 action_1233 (365) = happyShift action_95 action_1233 (366) = happyShift action_96 action_1233 (367) = happyShift action_97 action_1233 (368) = happyShift action_98 action_1233 (369) = happyShift action_99 action_1233 (370) = happyShift action_100 action_1233 (371) = happyShift action_101 action_1233 (373) = happyShift action_102 action_1233 (378) = happyShift action_103 action_1233 (380) = happyShift action_104 action_1233 (381) = happyShift action_105 action_1233 (383) = happyShift action_106 action_1233 (384) = happyShift action_107 action_1233 (391) = happyShift action_159 action_1233 (392) = happyShift action_109 action_1233 (396) = happyShift action_110 action_1233 (402) = happyShift action_112 action_1233 (403) = happyShift action_113 action_1233 (411) = happyShift action_114 action_1233 (412) = happyShift action_115 action_1233 (413) = happyShift action_116 action_1233 (169) = happyGoto action_1300 action_1233 (170) = happyGoto action_25 action_1233 (171) = happyGoto action_26 action_1233 (172) = happyGoto action_27 action_1233 (173) = happyGoto action_28 action_1233 (176) = happyGoto action_29 action_1233 (177) = happyGoto action_30 action_1233 (178) = happyGoto action_31 action_1233 (181) = happyGoto action_32 action_1233 (182) = happyGoto action_33 action_1233 (183) = happyGoto action_34 action_1233 (190) = happyGoto action_35 action_1233 (228) = happyGoto action_38 action_1233 (231) = happyGoto action_39 action_1233 (232) = happyGoto action_40 action_1233 (234) = happyGoto action_41 action_1233 (244) = happyGoto action_42 action_1233 (245) = happyGoto action_43 action_1233 (246) = happyGoto action_44 action_1233 (247) = happyGoto action_45 action_1233 (248) = happyGoto action_46 action_1233 (249) = happyGoto action_47 action_1233 (257) = happyGoto action_48 action_1233 _ = happyFail action_1234 _ = happyReduce_492 action_1235 (300) = happyShift action_1299 action_1235 _ = happyFail action_1236 _ = happyReduce_726 action_1237 _ = happyReduce_725 action_1238 (278) = happyShift action_49 action_1238 (358) = happyShift action_88 action_1238 (359) = happyShift action_148 action_1238 (360) = happyShift action_149 action_1238 (361) = happyShift action_150 action_1238 (363) = happyShift action_93 action_1238 (364) = happyShift action_94 action_1238 (365) = happyShift action_95 action_1238 (366) = happyShift action_96 action_1238 (367) = happyShift action_97 action_1238 (368) = happyShift action_98 action_1238 (369) = happyShift action_99 action_1238 (370) = happyShift action_100 action_1238 (371) = happyShift action_101 action_1238 (383) = happyShift action_106 action_1238 (402) = happyShift action_112 action_1238 (245) = happyGoto action_131 action_1238 (271) = happyGoto action_1298 action_1238 _ = happyReduce_102 action_1239 _ = happyReduce_104 action_1240 (303) = happyShift action_1295 action_1240 (305) = happyShift action_1297 action_1240 _ = happyFail action_1241 _ = happyReduce_155 action_1242 (318) = happyShift action_1296 action_1242 _ = happyFail action_1243 (1) = happyShift action_400 action_1243 (303) = happyShift action_1295 action_1243 (306) = happyShift action_401 action_1243 (259) = happyGoto action_1294 action_1243 _ = happyFail action_1244 (318) = happyShift action_1293 action_1244 _ = happyFail action_1245 (278) = happyShift action_49 action_1245 (279) = happyShift action_50 action_1245 (280) = happyShift action_51 action_1245 (281) = happyShift action_52 action_1245 (282) = happyShift action_53 action_1245 (283) = happyShift action_54 action_1245 (289) = happyShift action_55 action_1245 (290) = happyShift action_56 action_1245 (291) = happyShift action_57 action_1245 (292) = happyShift action_58 action_1245 (293) = happyShift action_59 action_1245 (294) = happyShift action_60 action_1245 (295) = happyShift action_61 action_1245 (296) = happyShift action_62 action_1245 (297) = happyShift action_63 action_1245 (298) = happyShift action_64 action_1245 (299) = happyShift action_65 action_1245 (301) = happyShift action_66 action_1245 (307) = happyShift action_67 action_1245 (309) = happyShift action_68 action_1245 (312) = happyShift action_69 action_1245 (319) = happyShift action_592 action_1245 (324) = happyShift action_71 action_1245 (325) = happyShift action_72 action_1245 (327) = happyShift action_73 action_1245 (328) = happyShift action_486 action_1245 (334) = happyShift action_75 action_1245 (337) = happyShift action_76 action_1245 (338) = happyShift action_77 action_1245 (339) = happyShift action_78 action_1245 (340) = happyShift action_79 action_1245 (341) = happyShift action_80 action_1245 (342) = happyShift action_81 action_1245 (344) = happyShift action_82 action_1245 (345) = happyShift action_83 action_1245 (346) = happyShift action_84 action_1245 (348) = happyShift action_85 action_1245 (350) = happyShift action_86 action_1245 (351) = happyShift action_87 action_1245 (358) = happyShift action_88 action_1245 (359) = happyShift action_89 action_1245 (360) = happyShift action_90 action_1245 (361) = happyShift action_91 action_1245 (362) = happyShift action_92 action_1245 (363) = happyShift action_93 action_1245 (364) = happyShift action_94 action_1245 (365) = happyShift action_95 action_1245 (366) = happyShift action_96 action_1245 (367) = happyShift action_97 action_1245 (368) = happyShift action_98 action_1245 (369) = happyShift action_99 action_1245 (370) = happyShift action_100 action_1245 (371) = happyShift action_101 action_1245 (373) = happyShift action_102 action_1245 (375) = happyShift action_1211 action_1245 (378) = happyShift action_103 action_1245 (380) = happyShift action_104 action_1245 (381) = happyShift action_105 action_1245 (383) = happyShift action_106 action_1245 (392) = happyShift action_109 action_1245 (394) = happyShift action_496 action_1245 (399) = happyShift action_1212 action_1245 (402) = happyShift action_112 action_1245 (403) = happyShift action_113 action_1245 (405) = happyShift action_499 action_1245 (406) = happyShift action_500 action_1245 (407) = happyShift action_501 action_1245 (408) = happyShift action_502 action_1245 (421) = happyShift action_507 action_1245 (71) = happyGoto action_1204 action_1245 (78) = happyGoto action_1205 action_1245 (79) = happyGoto action_1206 action_1245 (160) = happyGoto action_1292 action_1245 (161) = happyGoto action_1209 action_1245 (162) = happyGoto action_1210 action_1245 (172) = happyGoto action_588 action_1245 (176) = happyGoto action_29 action_1245 (178) = happyGoto action_31 action_1245 (181) = happyGoto action_32 action_1245 (182) = happyGoto action_33 action_1245 (183) = happyGoto action_34 action_1245 (190) = happyGoto action_35 action_1245 (228) = happyGoto action_38 action_1245 (231) = happyGoto action_39 action_1245 (232) = happyGoto action_40 action_1245 (234) = happyGoto action_41 action_1245 (244) = happyGoto action_42 action_1245 (245) = happyGoto action_43 action_1245 (246) = happyGoto action_44 action_1245 (247) = happyGoto action_45 action_1245 (248) = happyGoto action_46 action_1245 (249) = happyGoto action_47 action_1245 (257) = happyGoto action_48 action_1245 _ = happyReduce_40 action_1246 (303) = happyShift action_566 action_1246 _ = happyReduce_378 action_1247 (317) = happyShift action_805 action_1247 (318) = happyShift action_806 action_1247 (133) = happyGoto action_1290 action_1247 (150) = happyGoto action_1291 action_1247 _ = happyReduce_357 action_1248 (317) = happyShift action_1288 action_1248 (318) = happyShift action_1289 action_1248 (62) = happyGoto action_1287 action_1248 _ = happyReduce_137 action_1249 (278) = happyShift action_49 action_1249 (280) = happyShift action_51 action_1249 (281) = happyShift action_52 action_1249 (282) = happyShift action_53 action_1249 (283) = happyShift action_54 action_1249 (289) = happyShift action_135 action_1249 (292) = happyShift action_136 action_1249 (299) = happyShift action_137 action_1249 (301) = happyShift action_138 action_1249 (307) = happyShift action_139 action_1249 (309) = happyShift action_140 action_1249 (312) = happyShift action_141 action_1249 (325) = happyShift action_142 action_1249 (328) = happyShift action_143 action_1249 (337) = happyShift action_144 action_1249 (338) = happyShift action_145 action_1249 (344) = happyShift action_146 action_1249 (346) = happyShift action_147 action_1249 (358) = happyShift action_88 action_1249 (359) = happyShift action_148 action_1249 (360) = happyShift action_149 action_1249 (361) = happyShift action_150 action_1249 (363) = happyShift action_93 action_1249 (364) = happyShift action_94 action_1249 (365) = happyShift action_95 action_1249 (366) = happyShift action_96 action_1249 (367) = happyShift action_97 action_1249 (368) = happyShift action_98 action_1249 (369) = happyShift action_99 action_1249 (370) = happyShift action_100 action_1249 (371) = happyShift action_101 action_1249 (383) = happyShift action_106 action_1249 (402) = happyShift action_112 action_1249 (416) = happyShift action_152 action_1249 (417) = happyShift action_153 action_1249 (103) = happyGoto action_117 action_1249 (105) = happyGoto action_1286 action_1249 (108) = happyGoto action_193 action_1249 (109) = happyGoto action_120 action_1249 (110) = happyGoto action_121 action_1249 (111) = happyGoto action_122 action_1249 (112) = happyGoto action_123 action_1249 (113) = happyGoto action_124 action_1249 (114) = happyGoto action_125 action_1249 (115) = happyGoto action_126 action_1249 (232) = happyGoto action_130 action_1249 (245) = happyGoto action_131 action_1249 (247) = happyGoto action_45 action_1249 (248) = happyGoto action_132 action_1249 (249) = happyGoto action_47 action_1249 (270) = happyGoto action_133 action_1249 (271) = happyGoto action_134 action_1249 _ = happyFail action_1250 (278) = happyShift action_49 action_1250 (280) = happyShift action_51 action_1250 (281) = happyShift action_52 action_1250 (282) = happyShift action_53 action_1250 (283) = happyShift action_54 action_1250 (289) = happyShift action_135 action_1250 (292) = happyShift action_136 action_1250 (299) = happyShift action_137 action_1250 (301) = happyShift action_138 action_1250 (307) = happyShift action_139 action_1250 (309) = happyShift action_140 action_1250 (312) = happyShift action_141 action_1250 (325) = happyShift action_142 action_1250 (328) = happyShift action_143 action_1250 (337) = happyShift action_144 action_1250 (338) = happyShift action_145 action_1250 (344) = happyShift action_146 action_1250 (346) = happyShift action_147 action_1250 (358) = happyShift action_88 action_1250 (359) = happyShift action_148 action_1250 (360) = happyShift action_149 action_1250 (361) = happyShift action_150 action_1250 (363) = happyShift action_93 action_1250 (364) = happyShift action_94 action_1250 (365) = happyShift action_95 action_1250 (366) = happyShift action_96 action_1250 (367) = happyShift action_97 action_1250 (368) = happyShift action_98 action_1250 (369) = happyShift action_99 action_1250 (370) = happyShift action_100 action_1250 (371) = happyShift action_101 action_1250 (381) = happyShift action_151 action_1250 (383) = happyShift action_106 action_1250 (402) = happyShift action_112 action_1250 (416) = happyShift action_152 action_1250 (417) = happyShift action_153 action_1250 (70) = happyGoto action_1285 action_1250 (103) = happyGoto action_117 action_1250 (105) = happyGoto action_118 action_1250 (108) = happyGoto action_119 action_1250 (109) = happyGoto action_120 action_1250 (110) = happyGoto action_121 action_1250 (111) = happyGoto action_122 action_1250 (112) = happyGoto action_123 action_1250 (113) = happyGoto action_124 action_1250 (114) = happyGoto action_125 action_1250 (115) = happyGoto action_126 action_1250 (117) = happyGoto action_1242 action_1250 (118) = happyGoto action_128 action_1250 (119) = happyGoto action_129 action_1250 (232) = happyGoto action_130 action_1250 (245) = happyGoto action_131 action_1250 (247) = happyGoto action_45 action_1250 (248) = happyGoto action_132 action_1250 (249) = happyGoto action_47 action_1250 (270) = happyGoto action_133 action_1250 (271) = happyGoto action_134 action_1250 _ = happyFail action_1251 _ = happyReduce_368 action_1252 (285) = happyShift action_211 action_1252 (286) = happyShift action_186 action_1252 (287) = happyShift action_212 action_1252 (288) = happyShift action_187 action_1252 (311) = happyShift action_699 action_1252 (313) = happyShift action_367 action_1252 (314) = happyShift action_214 action_1252 (316) = happyShift action_190 action_1252 (317) = happyShift action_1284 action_1252 (327) = happyShift action_216 action_1252 (328) = happyShift action_340 action_1252 (329) = happyShift action_218 action_1252 (236) = happyGoto action_363 action_1252 (239) = happyGoto action_364 action_1252 (241) = happyGoto action_893 action_1252 (243) = happyGoto action_226 action_1252 (250) = happyGoto action_183 action_1252 (251) = happyGoto action_184 action_1252 (252) = happyGoto action_366 action_1252 (254) = happyGoto action_208 action_1252 (255) = happyGoto action_209 action_1252 (256) = happyGoto action_210 action_1252 _ = happyFail action_1253 (278) = happyShift action_49 action_1253 (280) = happyShift action_51 action_1253 (281) = happyShift action_52 action_1253 (282) = happyShift action_53 action_1253 (283) = happyShift action_54 action_1253 (289) = happyShift action_135 action_1253 (292) = happyShift action_136 action_1253 (299) = happyShift action_137 action_1253 (301) = happyShift action_138 action_1253 (307) = happyShift action_139 action_1253 (309) = happyShift action_140 action_1253 (312) = happyShift action_141 action_1253 (325) = happyShift action_142 action_1253 (328) = happyShift action_143 action_1253 (337) = happyShift action_144 action_1253 (338) = happyShift action_145 action_1253 (344) = happyShift action_146 action_1253 (346) = happyShift action_147 action_1253 (358) = happyShift action_88 action_1253 (359) = happyShift action_148 action_1253 (360) = happyShift action_149 action_1253 (361) = happyShift action_150 action_1253 (363) = happyShift action_93 action_1253 (364) = happyShift action_94 action_1253 (365) = happyShift action_95 action_1253 (366) = happyShift action_96 action_1253 (367) = happyShift action_97 action_1253 (368) = happyShift action_98 action_1253 (369) = happyShift action_99 action_1253 (370) = happyShift action_100 action_1253 (371) = happyShift action_101 action_1253 (383) = happyShift action_106 action_1253 (402) = happyShift action_112 action_1253 (416) = happyShift action_152 action_1253 (417) = happyShift action_153 action_1253 (103) = happyGoto action_117 action_1253 (105) = happyGoto action_1283 action_1253 (108) = happyGoto action_193 action_1253 (109) = happyGoto action_120 action_1253 (110) = happyGoto action_121 action_1253 (111) = happyGoto action_122 action_1253 (112) = happyGoto action_123 action_1253 (113) = happyGoto action_124 action_1253 (114) = happyGoto action_125 action_1253 (115) = happyGoto action_126 action_1253 (232) = happyGoto action_130 action_1253 (245) = happyGoto action_131 action_1253 (247) = happyGoto action_45 action_1253 (248) = happyGoto action_132 action_1253 (249) = happyGoto action_47 action_1253 (270) = happyGoto action_133 action_1253 (271) = happyGoto action_134 action_1253 _ = happyFail action_1254 _ = happyReduce_370 action_1255 (278) = happyShift action_49 action_1255 (279) = happyShift action_50 action_1255 (280) = happyShift action_51 action_1255 (281) = happyShift action_52 action_1255 (282) = happyShift action_53 action_1255 (283) = happyShift action_54 action_1255 (289) = happyShift action_55 action_1255 (290) = happyShift action_56 action_1255 (291) = happyShift action_57 action_1255 (292) = happyShift action_58 action_1255 (293) = happyShift action_59 action_1255 (294) = happyShift action_60 action_1255 (295) = happyShift action_61 action_1255 (296) = happyShift action_62 action_1255 (297) = happyShift action_63 action_1255 (298) = happyShift action_64 action_1255 (299) = happyShift action_65 action_1255 (301) = happyShift action_66 action_1255 (307) = happyShift action_67 action_1255 (309) = happyShift action_68 action_1255 (312) = happyShift action_69 action_1255 (319) = happyShift action_592 action_1255 (324) = happyShift action_71 action_1255 (325) = happyShift action_72 action_1255 (327) = happyShift action_73 action_1255 (328) = happyShift action_486 action_1255 (334) = happyShift action_75 action_1255 (337) = happyShift action_76 action_1255 (338) = happyShift action_77 action_1255 (339) = happyShift action_78 action_1255 (340) = happyShift action_79 action_1255 (341) = happyShift action_80 action_1255 (342) = happyShift action_81 action_1255 (344) = happyShift action_82 action_1255 (345) = happyShift action_83 action_1255 (346) = happyShift action_84 action_1255 (348) = happyShift action_85 action_1255 (350) = happyShift action_86 action_1255 (351) = happyShift action_87 action_1255 (358) = happyShift action_88 action_1255 (359) = happyShift action_89 action_1255 (360) = happyShift action_90 action_1255 (361) = happyShift action_91 action_1255 (362) = happyShift action_92 action_1255 (363) = happyShift action_93 action_1255 (364) = happyShift action_94 action_1255 (365) = happyShift action_95 action_1255 (366) = happyShift action_96 action_1255 (367) = happyShift action_97 action_1255 (368) = happyShift action_98 action_1255 (369) = happyShift action_99 action_1255 (370) = happyShift action_100 action_1255 (371) = happyShift action_101 action_1255 (373) = happyShift action_102 action_1255 (375) = happyShift action_1198 action_1255 (376) = happyShift action_1199 action_1255 (378) = happyShift action_103 action_1255 (380) = happyShift action_104 action_1255 (381) = happyShift action_105 action_1255 (383) = happyShift action_106 action_1255 (387) = happyShift action_492 action_1255 (388) = happyShift action_493 action_1255 (389) = happyShift action_494 action_1255 (392) = happyShift action_109 action_1255 (399) = happyShift action_1200 action_1255 (402) = happyShift action_112 action_1255 (403) = happyShift action_113 action_1255 (404) = happyShift action_498 action_1255 (405) = happyShift action_499 action_1255 (406) = happyShift action_500 action_1255 (407) = happyShift action_501 action_1255 (408) = happyShift action_502 action_1255 (421) = happyShift action_507 action_1255 (49) = happyGoto action_469 action_1255 (51) = happyGoto action_470 action_1255 (75) = happyGoto action_1194 action_1255 (77) = happyGoto action_477 action_1255 (78) = happyGoto action_478 action_1255 (79) = happyGoto action_479 action_1255 (154) = happyGoto action_1282 action_1255 (156) = happyGoto action_1197 action_1255 (162) = happyGoto action_480 action_1255 (172) = happyGoto action_588 action_1255 (176) = happyGoto action_29 action_1255 (178) = happyGoto action_31 action_1255 (181) = happyGoto action_32 action_1255 (182) = happyGoto action_33 action_1255 (183) = happyGoto action_34 action_1255 (190) = happyGoto action_35 action_1255 (228) = happyGoto action_38 action_1255 (231) = happyGoto action_39 action_1255 (232) = happyGoto action_40 action_1255 (234) = happyGoto action_41 action_1255 (244) = happyGoto action_42 action_1255 (245) = happyGoto action_43 action_1255 (246) = happyGoto action_44 action_1255 (247) = happyGoto action_45 action_1255 (248) = happyGoto action_46 action_1255 (249) = happyGoto action_47 action_1255 (257) = happyGoto action_48 action_1255 (260) = happyGoto action_483 action_1255 (261) = happyGoto action_484 action_1255 (265) = happyGoto action_485 action_1255 _ = happyReduce_40 action_1256 (303) = happyShift action_566 action_1256 _ = happyReduce_362 action_1257 _ = happyReduce_331 action_1258 (278) = happyShift action_49 action_1258 (279) = happyShift action_50 action_1258 (299) = happyShift action_423 action_1258 (358) = happyShift action_88 action_1258 (359) = happyShift action_89 action_1258 (360) = happyShift action_90 action_1258 (361) = happyShift action_91 action_1258 (362) = happyShift action_92 action_1258 (363) = happyShift action_93 action_1258 (364) = happyShift action_94 action_1258 (365) = happyShift action_95 action_1258 (366) = happyShift action_96 action_1258 (367) = happyShift action_97 action_1258 (368) = happyShift action_98 action_1258 (369) = happyShift action_99 action_1258 (370) = happyShift action_100 action_1258 (371) = happyShift action_101 action_1258 (380) = happyShift action_104 action_1258 (381) = happyShift action_105 action_1258 (383) = happyShift action_106 action_1258 (402) = happyShift action_112 action_1258 (403) = happyShift action_113 action_1258 (87) = happyGoto action_1186 action_1258 (140) = happyGoto action_1281 action_1258 (231) = happyGoto action_809 action_1258 (244) = happyGoto action_42 action_1258 (245) = happyGoto action_43 action_1258 (246) = happyGoto action_44 action_1258 _ = happyFail action_1259 (278) = happyShift action_49 action_1259 (280) = happyShift action_51 action_1259 (281) = happyShift action_52 action_1259 (282) = happyShift action_53 action_1259 (283) = happyShift action_54 action_1259 (289) = happyShift action_135 action_1259 (292) = happyShift action_136 action_1259 (299) = happyShift action_137 action_1259 (301) = happyShift action_138 action_1259 (307) = happyShift action_139 action_1259 (309) = happyShift action_140 action_1259 (312) = happyShift action_141 action_1259 (325) = happyShift action_142 action_1259 (328) = happyShift action_143 action_1259 (337) = happyShift action_144 action_1259 (338) = happyShift action_145 action_1259 (344) = happyShift action_146 action_1259 (346) = happyShift action_147 action_1259 (358) = happyShift action_88 action_1259 (359) = happyShift action_148 action_1259 (360) = happyShift action_149 action_1259 (361) = happyShift action_150 action_1259 (363) = happyShift action_93 action_1259 (364) = happyShift action_94 action_1259 (365) = happyShift action_95 action_1259 (366) = happyShift action_96 action_1259 (367) = happyShift action_97 action_1259 (368) = happyShift action_98 action_1259 (369) = happyShift action_99 action_1259 (370) = happyShift action_100 action_1259 (371) = happyShift action_101 action_1259 (381) = happyShift action_151 action_1259 (383) = happyShift action_106 action_1259 (402) = happyShift action_112 action_1259 (416) = happyShift action_152 action_1259 (417) = happyShift action_153 action_1259 (103) = happyGoto action_117 action_1259 (105) = happyGoto action_118 action_1259 (108) = happyGoto action_119 action_1259 (109) = happyGoto action_120 action_1259 (110) = happyGoto action_121 action_1259 (111) = happyGoto action_122 action_1259 (112) = happyGoto action_123 action_1259 (113) = happyGoto action_124 action_1259 (114) = happyGoto action_125 action_1259 (115) = happyGoto action_126 action_1259 (117) = happyGoto action_1280 action_1259 (118) = happyGoto action_128 action_1259 (119) = happyGoto action_129 action_1259 (232) = happyGoto action_130 action_1259 (245) = happyGoto action_131 action_1259 (247) = happyGoto action_45 action_1259 (248) = happyGoto action_132 action_1259 (249) = happyGoto action_47 action_1259 (270) = happyGoto action_133 action_1259 (271) = happyGoto action_134 action_1259 _ = happyFail action_1260 (278) = happyShift action_49 action_1260 (280) = happyShift action_51 action_1260 (281) = happyShift action_52 action_1260 (282) = happyShift action_53 action_1260 (283) = happyShift action_54 action_1260 (289) = happyShift action_135 action_1260 (292) = happyShift action_136 action_1260 (299) = happyShift action_137 action_1260 (301) = happyShift action_138 action_1260 (304) = happyShift action_1279 action_1260 (307) = happyShift action_139 action_1260 (309) = happyShift action_140 action_1260 (312) = happyShift action_141 action_1260 (325) = happyShift action_142 action_1260 (328) = happyShift action_143 action_1260 (337) = happyShift action_144 action_1260 (338) = happyShift action_145 action_1260 (344) = happyShift action_146 action_1260 (346) = happyShift action_147 action_1260 (358) = happyShift action_88 action_1260 (359) = happyShift action_148 action_1260 (360) = happyShift action_149 action_1260 (361) = happyShift action_150 action_1260 (363) = happyShift action_93 action_1260 (364) = happyShift action_94 action_1260 (365) = happyShift action_95 action_1260 (366) = happyShift action_96 action_1260 (367) = happyShift action_97 action_1260 (368) = happyShift action_98 action_1260 (369) = happyShift action_99 action_1260 (370) = happyShift action_100 action_1260 (371) = happyShift action_101 action_1260 (381) = happyShift action_151 action_1260 (383) = happyShift action_106 action_1260 (402) = happyShift action_112 action_1260 (416) = happyShift action_152 action_1260 (417) = happyShift action_153 action_1260 (103) = happyGoto action_117 action_1260 (105) = happyGoto action_118 action_1260 (108) = happyGoto action_119 action_1260 (109) = happyGoto action_120 action_1260 (110) = happyGoto action_121 action_1260 (111) = happyGoto action_122 action_1260 (112) = happyGoto action_123 action_1260 (113) = happyGoto action_124 action_1260 (114) = happyGoto action_125 action_1260 (115) = happyGoto action_126 action_1260 (117) = happyGoto action_1278 action_1260 (118) = happyGoto action_128 action_1260 (119) = happyGoto action_129 action_1260 (232) = happyGoto action_130 action_1260 (245) = happyGoto action_131 action_1260 (247) = happyGoto action_45 action_1260 (248) = happyGoto action_132 action_1260 (249) = happyGoto action_47 action_1260 (270) = happyGoto action_133 action_1260 (271) = happyGoto action_134 action_1260 _ = happyFail action_1261 (282) = happyShift action_53 action_1261 (283) = happyShift action_54 action_1261 (299) = happyShift action_1104 action_1261 (132) = happyGoto action_1277 action_1261 (234) = happyGoto action_1183 action_1261 (248) = happyGoto action_46 action_1261 (249) = happyGoto action_47 action_1261 _ = happyReduce_40 action_1262 (303) = happyShift action_566 action_1262 _ = happyReduce_316 action_1263 (300) = happyShift action_1276 action_1263 _ = happyFail action_1264 (311) = happyShift action_1275 action_1264 (31) = happyGoto action_1274 action_1264 _ = happyReduce_47 action_1265 _ = happyReduce_80 action_1266 _ = happyReduce_81 action_1267 _ = happyReduce_734 action_1268 (299) = happyShift action_1273 action_1268 _ = happyReduce_84 action_1269 (278) = happyShift action_49 action_1269 (299) = happyShift action_1057 action_1269 (358) = happyShift action_88 action_1269 (359) = happyShift action_89 action_1269 (360) = happyShift action_90 action_1269 (361) = happyShift action_91 action_1269 (362) = happyShift action_92 action_1269 (363) = happyShift action_93 action_1269 (364) = happyShift action_94 action_1269 (365) = happyShift action_95 action_1269 (366) = happyShift action_96 action_1269 (367) = happyShift action_97 action_1269 (368) = happyShift action_98 action_1269 (369) = happyShift action_99 action_1269 (370) = happyShift action_100 action_1269 (371) = happyShift action_101 action_1269 (380) = happyShift action_104 action_1269 (381) = happyShift action_105 action_1269 (383) = happyShift action_106 action_1269 (402) = happyShift action_112 action_1269 (403) = happyShift action_113 action_1269 (229) = happyGoto action_1272 action_1269 (245) = happyGoto action_43 action_1269 (246) = happyGoto action_390 action_1269 _ = happyFail action_1270 (282) = happyShift action_53 action_1270 (299) = happyShift action_682 action_1270 (233) = happyGoto action_1271 action_1270 (249) = happyGoto action_391 action_1270 _ = happyFail action_1271 _ = happyReduce_83 action_1272 _ = happyReduce_82 action_1273 (278) = happyShift action_49 action_1273 (282) = happyShift action_53 action_1273 (299) = happyShift action_392 action_1273 (300) = happyShift action_1317 action_1273 (315) = happyShift action_1318 action_1273 (358) = happyShift action_88 action_1273 (359) = happyShift action_89 action_1273 (360) = happyShift action_90 action_1273 (361) = happyShift action_91 action_1273 (362) = happyShift action_92 action_1273 (363) = happyShift action_93 action_1273 (364) = happyShift action_94 action_1273 (365) = happyShift action_95 action_1273 (366) = happyShift action_96 action_1273 (367) = happyShift action_97 action_1273 (368) = happyShift action_98 action_1273 (369) = happyShift action_99 action_1273 (370) = happyShift action_100 action_1273 (371) = happyShift action_101 action_1273 (380) = happyShift action_104 action_1273 (381) = happyShift action_105 action_1273 (383) = happyShift action_106 action_1273 (402) = happyShift action_112 action_1273 (403) = happyShift action_113 action_1273 (47) = happyGoto action_1316 action_1273 (48) = happyGoto action_1118 action_1273 (229) = happyGoto action_1119 action_1273 (233) = happyGoto action_1120 action_1273 (245) = happyGoto action_43 action_1273 (246) = happyGoto action_390 action_1273 (249) = happyGoto action_391 action_1273 _ = happyFail action_1274 (300) = happyShift action_1315 action_1274 _ = happyFail action_1275 (278) = happyShift action_49 action_1275 (282) = happyShift action_53 action_1275 (299) = happyShift action_392 action_1275 (358) = happyShift action_88 action_1275 (359) = happyShift action_89 action_1275 (360) = happyShift action_90 action_1275 (361) = happyShift action_91 action_1275 (362) = happyShift action_92 action_1275 (363) = happyShift action_93 action_1275 (364) = happyShift action_94 action_1275 (365) = happyShift action_95 action_1275 (366) = happyShift action_96 action_1275 (367) = happyShift action_97 action_1275 (368) = happyShift action_98 action_1275 (369) = happyShift action_99 action_1275 (370) = happyShift action_100 action_1275 (371) = happyShift action_101 action_1275 (380) = happyShift action_104 action_1275 (381) = happyShift action_105 action_1275 (383) = happyShift action_106 action_1275 (399) = happyShift action_1269 action_1275 (402) = happyShift action_112 action_1275 (403) = happyShift action_113 action_1275 (404) = happyShift action_1270 action_1275 (46) = happyGoto action_1314 action_1275 (229) = happyGoto action_1266 action_1275 (233) = happyGoto action_1267 action_1275 (245) = happyGoto action_43 action_1275 (246) = happyGoto action_390 action_1275 (249) = happyGoto action_391 action_1275 (268) = happyGoto action_1268 action_1275 _ = happyReduce_46 action_1276 _ = happyReduce_76 action_1277 _ = happyReduce_317 action_1278 _ = happyReduce_319 action_1279 (278) = happyShift action_49 action_1279 (279) = happyShift action_50 action_1279 (299) = happyShift action_423 action_1279 (358) = happyShift action_88 action_1279 (359) = happyShift action_89 action_1279 (360) = happyShift action_90 action_1279 (361) = happyShift action_91 action_1279 (362) = happyShift action_92 action_1279 (363) = happyShift action_93 action_1279 (364) = happyShift action_94 action_1279 (365) = happyShift action_95 action_1279 (366) = happyShift action_96 action_1279 (367) = happyShift action_97 action_1279 (368) = happyShift action_98 action_1279 (369) = happyShift action_99 action_1279 (370) = happyShift action_100 action_1279 (371) = happyShift action_101 action_1279 (380) = happyShift action_104 action_1279 (381) = happyShift action_105 action_1279 (383) = happyShift action_106 action_1279 (402) = happyShift action_112 action_1279 (403) = happyShift action_113 action_1279 (87) = happyGoto action_1186 action_1279 (139) = happyGoto action_1313 action_1279 (140) = happyGoto action_1188 action_1279 (231) = happyGoto action_809 action_1279 (244) = happyGoto action_42 action_1279 (245) = happyGoto action_43 action_1279 (246) = happyGoto action_44 action_1279 _ = happyFail action_1280 _ = happyReduce_335 action_1281 _ = happyReduce_333 action_1282 _ = happyReduce_364 action_1283 (317) = happyShift action_966 action_1283 (59) = happyGoto action_1312 action_1283 _ = happyReduce_129 action_1284 (278) = happyShift action_49 action_1284 (280) = happyShift action_51 action_1284 (281) = happyShift action_52 action_1284 (282) = happyShift action_53 action_1284 (283) = happyShift action_54 action_1284 (289) = happyShift action_135 action_1284 (292) = happyShift action_136 action_1284 (299) = happyShift action_137 action_1284 (301) = happyShift action_138 action_1284 (307) = happyShift action_139 action_1284 (309) = happyShift action_140 action_1284 (312) = happyShift action_141 action_1284 (325) = happyShift action_142 action_1284 (328) = happyShift action_143 action_1284 (337) = happyShift action_144 action_1284 (338) = happyShift action_145 action_1284 (344) = happyShift action_146 action_1284 (346) = happyShift action_147 action_1284 (358) = happyShift action_88 action_1284 (359) = happyShift action_148 action_1284 (360) = happyShift action_149 action_1284 (361) = happyShift action_150 action_1284 (363) = happyShift action_93 action_1284 (364) = happyShift action_94 action_1284 (365) = happyShift action_95 action_1284 (366) = happyShift action_96 action_1284 (367) = happyShift action_97 action_1284 (368) = happyShift action_98 action_1284 (369) = happyShift action_99 action_1284 (370) = happyShift action_100 action_1284 (371) = happyShift action_101 action_1284 (381) = happyShift action_151 action_1284 (383) = happyShift action_106 action_1284 (402) = happyShift action_112 action_1284 (416) = happyShift action_152 action_1284 (417) = happyShift action_153 action_1284 (103) = happyGoto action_117 action_1284 (105) = happyGoto action_118 action_1284 (108) = happyGoto action_119 action_1284 (109) = happyGoto action_120 action_1284 (110) = happyGoto action_121 action_1284 (111) = happyGoto action_122 action_1284 (112) = happyGoto action_123 action_1284 (113) = happyGoto action_124 action_1284 (114) = happyGoto action_125 action_1284 (115) = happyGoto action_126 action_1284 (117) = happyGoto action_1311 action_1284 (118) = happyGoto action_128 action_1284 (119) = happyGoto action_129 action_1284 (232) = happyGoto action_130 action_1284 (245) = happyGoto action_131 action_1284 (247) = happyGoto action_45 action_1284 (248) = happyGoto action_132 action_1284 (249) = happyGoto action_47 action_1284 (270) = happyGoto action_133 action_1284 (271) = happyGoto action_134 action_1284 _ = happyFail action_1285 _ = happyReduce_374 action_1286 (317) = happyShift action_1309 action_1286 (318) = happyShift action_1310 action_1286 (61) = happyGoto action_1308 action_1286 _ = happyReduce_134 action_1287 _ = happyReduce_372 action_1288 (278) = happyShift action_49 action_1288 (279) = happyShift action_50 action_1288 (282) = happyShift action_53 action_1288 (283) = happyShift action_54 action_1288 (299) = happyShift action_609 action_1288 (307) = happyShift action_610 action_1288 (329) = happyShift action_611 action_1288 (358) = happyShift action_88 action_1288 (359) = happyShift action_89 action_1288 (360) = happyShift action_90 action_1288 (361) = happyShift action_91 action_1288 (362) = happyShift action_92 action_1288 (363) = happyShift action_93 action_1288 (364) = happyShift action_94 action_1288 (365) = happyShift action_95 action_1288 (366) = happyShift action_96 action_1288 (367) = happyShift action_97 action_1288 (368) = happyShift action_98 action_1288 (369) = happyShift action_99 action_1288 (370) = happyShift action_100 action_1288 (371) = happyShift action_101 action_1288 (380) = happyShift action_104 action_1288 (381) = happyShift action_105 action_1288 (383) = happyShift action_106 action_1288 (402) = happyShift action_112 action_1288 (403) = happyShift action_113 action_1288 (144) = happyGoto action_1307 action_1288 (145) = happyGoto action_603 action_1288 (146) = happyGoto action_604 action_1288 (147) = happyGoto action_605 action_1288 (148) = happyGoto action_606 action_1288 (234) = happyGoto action_181 action_1288 (244) = happyGoto action_607 action_1288 (245) = happyGoto action_43 action_1288 (246) = happyGoto action_44 action_1288 (248) = happyGoto action_46 action_1288 (249) = happyGoto action_47 action_1288 (269) = happyGoto action_608 action_1288 _ = happyFail action_1289 (278) = happyShift action_49 action_1289 (280) = happyShift action_51 action_1289 (281) = happyShift action_52 action_1289 (282) = happyShift action_53 action_1289 (283) = happyShift action_54 action_1289 (289) = happyShift action_135 action_1289 (292) = happyShift action_136 action_1289 (299) = happyShift action_137 action_1289 (301) = happyShift action_138 action_1289 (307) = happyShift action_139 action_1289 (309) = happyShift action_140 action_1289 (312) = happyShift action_141 action_1289 (325) = happyShift action_142 action_1289 (328) = happyShift action_143 action_1289 (337) = happyShift action_144 action_1289 (338) = happyShift action_145 action_1289 (344) = happyShift action_146 action_1289 (346) = happyShift action_147 action_1289 (358) = happyShift action_88 action_1289 (359) = happyShift action_148 action_1289 (360) = happyShift action_149 action_1289 (361) = happyShift action_150 action_1289 (363) = happyShift action_93 action_1289 (364) = happyShift action_94 action_1289 (365) = happyShift action_95 action_1289 (366) = happyShift action_96 action_1289 (367) = happyShift action_97 action_1289 (368) = happyShift action_98 action_1289 (369) = happyShift action_99 action_1289 (370) = happyShift action_100 action_1289 (371) = happyShift action_101 action_1289 (381) = happyShift action_151 action_1289 (383) = happyShift action_106 action_1289 (402) = happyShift action_112 action_1289 (416) = happyShift action_152 action_1289 (417) = happyShift action_153 action_1289 (103) = happyGoto action_117 action_1289 (105) = happyGoto action_118 action_1289 (108) = happyGoto action_119 action_1289 (109) = happyGoto action_120 action_1289 (110) = happyGoto action_121 action_1289 (111) = happyGoto action_122 action_1289 (112) = happyGoto action_123 action_1289 (113) = happyGoto action_124 action_1289 (114) = happyGoto action_125 action_1289 (115) = happyGoto action_126 action_1289 (117) = happyGoto action_1306 action_1289 (118) = happyGoto action_128 action_1289 (119) = happyGoto action_129 action_1289 (232) = happyGoto action_130 action_1289 (245) = happyGoto action_131 action_1289 (247) = happyGoto action_45 action_1289 (248) = happyGoto action_132 action_1289 (249) = happyGoto action_47 action_1289 (270) = happyGoto action_133 action_1289 (271) = happyGoto action_134 action_1289 _ = happyFail action_1290 (377) = happyShift action_998 action_1290 (141) = happyGoto action_1305 action_1290 _ = happyReduce_336 action_1291 (401) = happyShift action_996 action_1291 (129) = happyGoto action_1304 action_1291 _ = happyReduce_315 action_1292 _ = happyReduce_380 action_1293 (278) = happyShift action_49 action_1293 (280) = happyShift action_51 action_1293 (281) = happyShift action_52 action_1293 (282) = happyShift action_53 action_1293 (283) = happyShift action_54 action_1293 (289) = happyShift action_135 action_1293 (292) = happyShift action_136 action_1293 (299) = happyShift action_137 action_1293 (301) = happyShift action_138 action_1293 (307) = happyShift action_139 action_1293 (309) = happyShift action_140 action_1293 (312) = happyShift action_141 action_1293 (325) = happyShift action_142 action_1293 (328) = happyShift action_143 action_1293 (337) = happyShift action_144 action_1293 (338) = happyShift action_145 action_1293 (344) = happyShift action_146 action_1293 (346) = happyShift action_147 action_1293 (358) = happyShift action_88 action_1293 (359) = happyShift action_148 action_1293 (360) = happyShift action_149 action_1293 (361) = happyShift action_150 action_1293 (363) = happyShift action_93 action_1293 (364) = happyShift action_94 action_1293 (365) = happyShift action_95 action_1293 (366) = happyShift action_96 action_1293 (367) = happyShift action_97 action_1293 (368) = happyShift action_98 action_1293 (369) = happyShift action_99 action_1293 (370) = happyShift action_100 action_1293 (371) = happyShift action_101 action_1293 (381) = happyShift action_151 action_1293 (383) = happyShift action_106 action_1293 (402) = happyShift action_112 action_1293 (416) = happyShift action_152 action_1293 (417) = happyShift action_153 action_1293 (103) = happyGoto action_117 action_1293 (105) = happyGoto action_118 action_1293 (108) = happyGoto action_119 action_1293 (109) = happyGoto action_120 action_1293 (110) = happyGoto action_121 action_1293 (111) = happyGoto action_122 action_1293 (112) = happyGoto action_123 action_1293 (113) = happyGoto action_124 action_1293 (114) = happyGoto action_125 action_1293 (115) = happyGoto action_126 action_1293 (117) = happyGoto action_1303 action_1293 (118) = happyGoto action_128 action_1293 (119) = happyGoto action_129 action_1293 (232) = happyGoto action_130 action_1293 (245) = happyGoto action_131 action_1293 (247) = happyGoto action_45 action_1293 (248) = happyGoto action_132 action_1293 (249) = happyGoto action_47 action_1293 (270) = happyGoto action_133 action_1293 (271) = happyGoto action_134 action_1293 _ = happyFail action_1294 _ = happyReduce_152 action_1295 (278) = happyShift action_49 action_1295 (280) = happyShift action_51 action_1295 (281) = happyShift action_52 action_1295 (282) = happyShift action_53 action_1295 (283) = happyShift action_54 action_1295 (289) = happyShift action_135 action_1295 (292) = happyShift action_136 action_1295 (299) = happyShift action_137 action_1295 (301) = happyShift action_138 action_1295 (307) = happyShift action_139 action_1295 (309) = happyShift action_140 action_1295 (312) = happyShift action_141 action_1295 (325) = happyShift action_142 action_1295 (328) = happyShift action_143 action_1295 (337) = happyShift action_144 action_1295 (338) = happyShift action_145 action_1295 (344) = happyShift action_146 action_1295 (346) = happyShift action_147 action_1295 (358) = happyShift action_88 action_1295 (359) = happyShift action_148 action_1295 (360) = happyShift action_149 action_1295 (361) = happyShift action_150 action_1295 (363) = happyShift action_93 action_1295 (364) = happyShift action_94 action_1295 (365) = happyShift action_95 action_1295 (366) = happyShift action_96 action_1295 (367) = happyShift action_97 action_1295 (368) = happyShift action_98 action_1295 (369) = happyShift action_99 action_1295 (370) = happyShift action_100 action_1295 (371) = happyShift action_101 action_1295 (381) = happyShift action_151 action_1295 (383) = happyShift action_106 action_1295 (402) = happyShift action_112 action_1295 (416) = happyShift action_152 action_1295 (417) = happyShift action_153 action_1295 (70) = happyGoto action_1302 action_1295 (103) = happyGoto action_117 action_1295 (105) = happyGoto action_118 action_1295 (108) = happyGoto action_119 action_1295 (109) = happyGoto action_120 action_1295 (110) = happyGoto action_121 action_1295 (111) = happyGoto action_122 action_1295 (112) = happyGoto action_123 action_1295 (113) = happyGoto action_124 action_1295 (114) = happyGoto action_125 action_1295 (115) = happyGoto action_126 action_1295 (117) = happyGoto action_1242 action_1295 (118) = happyGoto action_128 action_1295 (119) = happyGoto action_129 action_1295 (232) = happyGoto action_130 action_1295 (245) = happyGoto action_131 action_1295 (247) = happyGoto action_45 action_1295 (248) = happyGoto action_132 action_1295 (249) = happyGoto action_47 action_1295 (270) = happyGoto action_133 action_1295 (271) = happyGoto action_134 action_1295 _ = happyReduce_154 action_1296 (278) = happyShift action_49 action_1296 (280) = happyShift action_51 action_1296 (281) = happyShift action_52 action_1296 (282) = happyShift action_53 action_1296 (283) = happyShift action_54 action_1296 (289) = happyShift action_135 action_1296 (292) = happyShift action_136 action_1296 (299) = happyShift action_137 action_1296 (301) = happyShift action_138 action_1296 (307) = happyShift action_139 action_1296 (309) = happyShift action_140 action_1296 (312) = happyShift action_141 action_1296 (325) = happyShift action_142 action_1296 (328) = happyShift action_143 action_1296 (337) = happyShift action_144 action_1296 (338) = happyShift action_145 action_1296 (344) = happyShift action_146 action_1296 (346) = happyShift action_147 action_1296 (358) = happyShift action_88 action_1296 (359) = happyShift action_148 action_1296 (360) = happyShift action_149 action_1296 (361) = happyShift action_150 action_1296 (363) = happyShift action_93 action_1296 (364) = happyShift action_94 action_1296 (365) = happyShift action_95 action_1296 (366) = happyShift action_96 action_1296 (367) = happyShift action_97 action_1296 (368) = happyShift action_98 action_1296 (369) = happyShift action_99 action_1296 (370) = happyShift action_100 action_1296 (371) = happyShift action_101 action_1296 (381) = happyShift action_151 action_1296 (383) = happyShift action_106 action_1296 (402) = happyShift action_112 action_1296 (416) = happyShift action_152 action_1296 (417) = happyShift action_153 action_1296 (103) = happyGoto action_117 action_1296 (105) = happyGoto action_118 action_1296 (108) = happyGoto action_119 action_1296 (109) = happyGoto action_120 action_1296 (110) = happyGoto action_121 action_1296 (111) = happyGoto action_122 action_1296 (112) = happyGoto action_123 action_1296 (113) = happyGoto action_124 action_1296 (114) = happyGoto action_125 action_1296 (115) = happyGoto action_126 action_1296 (117) = happyGoto action_1301 action_1296 (118) = happyGoto action_128 action_1296 (119) = happyGoto action_129 action_1296 (232) = happyGoto action_130 action_1296 (245) = happyGoto action_131 action_1296 (247) = happyGoto action_45 action_1296 (248) = happyGoto action_132 action_1296 (249) = happyGoto action_47 action_1296 (270) = happyGoto action_133 action_1296 (271) = happyGoto action_134 action_1296 _ = happyFail action_1297 _ = happyReduce_151 action_1298 _ = happyReduce_103 action_1299 _ = happyReduce_227 action_1300 _ = happyReduce_432 action_1301 _ = happyReduce_156 action_1302 _ = happyReduce_153 action_1303 _ = happyReduce_386 action_1304 (377) = happyShift action_998 action_1304 (141) = happyGoto action_1325 action_1304 _ = happyReduce_336 action_1305 _ = happyReduce_387 action_1306 (320) = happyShift action_1080 action_1306 (53) = happyGoto action_1324 action_1306 (54) = happyGoto action_1079 action_1306 _ = happyReduce_100 action_1307 _ = happyReduce_138 action_1308 _ = happyReduce_373 action_1309 (278) = happyShift action_49 action_1309 (279) = happyShift action_50 action_1309 (282) = happyShift action_53 action_1309 (283) = happyShift action_54 action_1309 (299) = happyShift action_609 action_1309 (307) = happyShift action_610 action_1309 (329) = happyShift action_611 action_1309 (358) = happyShift action_88 action_1309 (359) = happyShift action_89 action_1309 (360) = happyShift action_90 action_1309 (361) = happyShift action_91 action_1309 (362) = happyShift action_92 action_1309 (363) = happyShift action_93 action_1309 (364) = happyShift action_94 action_1309 (365) = happyShift action_95 action_1309 (366) = happyShift action_96 action_1309 (367) = happyShift action_97 action_1309 (368) = happyShift action_98 action_1309 (369) = happyShift action_99 action_1309 (370) = happyShift action_100 action_1309 (371) = happyShift action_101 action_1309 (380) = happyShift action_104 action_1309 (381) = happyShift action_105 action_1309 (383) = happyShift action_106 action_1309 (402) = happyShift action_112 action_1309 (403) = happyShift action_113 action_1309 (144) = happyGoto action_1323 action_1309 (145) = happyGoto action_603 action_1309 (146) = happyGoto action_604 action_1309 (147) = happyGoto action_605 action_1309 (148) = happyGoto action_606 action_1309 (234) = happyGoto action_181 action_1309 (244) = happyGoto action_607 action_1309 (245) = happyGoto action_43 action_1309 (246) = happyGoto action_44 action_1309 (248) = happyGoto action_46 action_1309 (249) = happyGoto action_47 action_1309 (269) = happyGoto action_608 action_1309 _ = happyFail action_1310 (278) = happyShift action_49 action_1310 (299) = happyShift action_560 action_1310 (358) = happyShift action_88 action_1310 (359) = happyShift action_148 action_1310 (360) = happyShift action_149 action_1310 (361) = happyShift action_150 action_1310 (363) = happyShift action_93 action_1310 (364) = happyShift action_94 action_1310 (365) = happyShift action_95 action_1310 (366) = happyShift action_96 action_1310 (367) = happyShift action_97 action_1310 (368) = happyShift action_98 action_1310 (369) = happyShift action_99 action_1310 (370) = happyShift action_100 action_1310 (371) = happyShift action_101 action_1310 (383) = happyShift action_106 action_1310 (402) = happyShift action_112 action_1310 (123) = happyGoto action_1322 action_1310 (245) = happyGoto action_131 action_1310 (270) = happyGoto action_559 action_1310 (271) = happyGoto action_134 action_1310 _ = happyFail action_1311 _ = happyReduce_175 action_1312 _ = happyReduce_371 action_1313 (305) = happyShift action_1321 action_1313 (311) = happyShift action_1258 action_1313 _ = happyFail action_1314 _ = happyReduce_79 action_1315 _ = happyReduce_75 action_1316 (300) = happyShift action_1320 action_1316 (311) = happyShift action_1229 action_1316 _ = happyFail action_1317 _ = happyReduce_86 action_1318 (300) = happyShift action_1319 action_1318 _ = happyFail action_1319 _ = happyReduce_85 action_1320 _ = happyReduce_87 action_1321 (322) = happyShift action_1327 action_1321 _ = happyFail action_1322 (320) = happyShift action_1080 action_1322 (54) = happyGoto action_1326 action_1322 _ = happyFail action_1323 _ = happyReduce_135 action_1324 _ = happyReduce_139 action_1325 _ = happyReduce_388 action_1326 _ = happyReduce_136 action_1327 (278) = happyShift action_49 action_1327 (280) = happyShift action_51 action_1327 (281) = happyShift action_52 action_1327 (282) = happyShift action_53 action_1327 (283) = happyShift action_54 action_1327 (289) = happyShift action_135 action_1327 (292) = happyShift action_136 action_1327 (299) = happyShift action_137 action_1327 (301) = happyShift action_138 action_1327 (307) = happyShift action_139 action_1327 (309) = happyShift action_140 action_1327 (312) = happyShift action_141 action_1327 (325) = happyShift action_142 action_1327 (328) = happyShift action_143 action_1327 (337) = happyShift action_144 action_1327 (338) = happyShift action_145 action_1327 (344) = happyShift action_146 action_1327 (346) = happyShift action_147 action_1327 (358) = happyShift action_88 action_1327 (359) = happyShift action_148 action_1327 (360) = happyShift action_149 action_1327 (361) = happyShift action_150 action_1327 (363) = happyShift action_93 action_1327 (364) = happyShift action_94 action_1327 (365) = happyShift action_95 action_1327 (366) = happyShift action_96 action_1327 (367) = happyShift action_97 action_1327 (368) = happyShift action_98 action_1327 (369) = happyShift action_99 action_1327 (370) = happyShift action_100 action_1327 (371) = happyShift action_101 action_1327 (381) = happyShift action_151 action_1327 (383) = happyShift action_106 action_1327 (402) = happyShift action_112 action_1327 (416) = happyShift action_152 action_1327 (417) = happyShift action_153 action_1327 (103) = happyGoto action_117 action_1327 (105) = happyGoto action_118 action_1327 (108) = happyGoto action_119 action_1327 (109) = happyGoto action_120 action_1327 (110) = happyGoto action_121 action_1327 (111) = happyGoto action_122 action_1327 (112) = happyGoto action_123 action_1327 (113) = happyGoto action_124 action_1327 (114) = happyGoto action_125 action_1327 (115) = happyGoto action_126 action_1327 (117) = happyGoto action_1328 action_1327 (118) = happyGoto action_128 action_1327 (119) = happyGoto action_129 action_1327 (232) = happyGoto action_130 action_1327 (245) = happyGoto action_131 action_1327 (247) = happyGoto action_45 action_1327 (248) = happyGoto action_132 action_1327 (249) = happyGoto action_47 action_1327 (270) = happyGoto action_133 action_1327 (271) = happyGoto action_134 action_1327 _ = happyFail action_1328 _ = happyReduce_320 happyReduce_11 = happySpecReduce_2 14 happyReduction_11 happyReduction_11 (HappyAbsSyn15 happy_var_2) (HappyAbsSyn18 happy_var_1) = HappyAbsSyn14 (let (os,ss,l) = happy_var_1 in map (\x -> x os ss l) happy_var_2 ) happyReduction_11 _ _ = notHappyAtAll happyReduce_12 = happySpecReduce_2 15 happyReduction_12 happyReduction_12 (HappyAbsSyn15 happy_var_2) (HappyAbsSyn22 happy_var_1) = HappyAbsSyn15 (happy_var_1 : happy_var_2 ) happyReduction_12 _ _ = notHappyAtAll happyReduce_13 = happySpecReduce_1 15 happyReduction_13 happyReduction_13 (HappyAbsSyn22 happy_var_1) = HappyAbsSyn15 ([happy_var_1] ) happyReduction_13 _ = notHappyAtAll happyReduce_14 = happyMonadReduce 2 16 happyReduction_14 happyReduction_14 ((HappyAbsSyn17 happy_var_2) `HappyStk` (HappyAbsSyn18 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkPageModule happy_var_2 happy_var_1) ) (\r -> happyReturn (HappyAbsSyn16 r)) happyReduce_15 = happyMonadReduce 5 16 happyReduction_15 happyReduction_15 ((HappyAbsSyn17 happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 XCodeTagClose)) `HappyStk` (HappyAbsSyn22 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 XCodeTagOpen)) `HappyStk` (HappyAbsSyn18 happy_var_1) `HappyStk` happyRest) tk = happyThen (( let (os,ss,l) = happy_var_1 in checkHybridModule happy_var_5 (happy_var_3 os ss l) happy_var_2 happy_var_4) ) (\r -> happyReturn (HappyAbsSyn16 r)) happyReduce_16 = happySpecReduce_2 16 happyReduction_16 happyReduction_16 (HappyAbsSyn22 happy_var_2) (HappyAbsSyn18 happy_var_1) = HappyAbsSyn16 (let (os,ss,l) = happy_var_1 in happy_var_2 os ss l ) happyReduction_16 _ _ = notHappyAtAll happyReduce_17 = happyMonadReduce 9 17 happyReduction_17 happyReduction_17 ((HappyTerminal (Loc happy_var_9 XStdTagClose)) `HappyStk` (HappyAbsSyn193 happy_var_8) `HappyStk` (HappyTerminal (Loc happy_var_7 XCloseTagOpen)) `HappyStk` (HappyAbsSyn191 happy_var_6) `HappyStk` (HappyTerminal (Loc happy_var_5 XStdTagClose)) `HappyStk` (HappyAbsSyn198 happy_var_4) `HappyStk` (HappyAbsSyn196 happy_var_3) `HappyStk` (HappyAbsSyn193 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 XStdTagOpen)) `HappyStk` happyRest) tk = happyThen (( do { n <- checkEqNames happy_var_2 happy_var_8; let { cn = reverse happy_var_6; as = reverse happy_var_3; }; return $ XTag (happy_var_1 <^^> happy_var_9 <** [happy_var_1,happy_var_5,happy_var_7,happy_var_9]) n as happy_var_4 cn }) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_18 = happyReduce 5 17 happyReduction_18 happyReduction_18 ((HappyTerminal (Loc happy_var_5 XEmptyTagClose)) `HappyStk` (HappyAbsSyn198 happy_var_4) `HappyStk` (HappyAbsSyn196 happy_var_3) `HappyStk` (HappyAbsSyn193 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 XStdTagOpen)) `HappyStk` happyRest) = HappyAbsSyn17 (XETag (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_5]) happy_var_2 (reverse happy_var_3) happy_var_4 ) `HappyStk` happyRest happyReduce_19 = happySpecReduce_3 18 happyReduction_19 happyReduction_19 (HappyAbsSyn258 happy_var_3) (HappyAbsSyn19 happy_var_2) (HappyAbsSyn258 happy_var_1) = HappyAbsSyn18 (let (os,ss,ml) = happy_var_2 in (os,happy_var_1:ss++[happy_var_3],happy_var_1 <^^> happy_var_3) ) happyReduction_19 _ _ _ = notHappyAtAll happyReduce_20 = happySpecReduce_3 19 happyReduction_20 happyReduction_20 (HappyAbsSyn19 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn20 happy_var_1) = HappyAbsSyn19 (let (os,ss,ml) = happy_var_3; ss' = reverse happy_var_2 ++ ss; l' = case happy_var_2 of [] -> ann happy_var_1 _ -> ann happy_var_1 <++> nIS (last happy_var_2); in (happy_var_1 : os, ss', Just $ l' <+?> ml) ) happyReduction_20 _ _ _ = notHappyAtAll happyReduce_21 = happySpecReduce_0 19 happyReduction_21 happyReduction_21 = HappyAbsSyn19 (([],[],Nothing) ) happyReduce_22 = happyReduce 4 20 happyReduction_22 happyReduction_22 ((HappyTerminal (Loc happy_var_4 PragmaEnd)) `HappyStk` (HappyAbsSyn27 happy_var_3) `HappyStk` (HappyAbsSyn21 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LANGUAGE)) `HappyStk` happyRest) = HappyAbsSyn20 (LanguagePragma (happy_var_1 <^^> happy_var_4 <** (happy_var_1:snd happy_var_2 ++ reverse happy_var_3 ++ [happy_var_4])) (fst happy_var_2) ) `HappyStk` happyRest happyReduce_23 = happySpecReduce_3 20 happyReduction_23 happyReduction_23 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyAbsSyn27 happy_var_2) (HappyTerminal happy_var_1) = HappyAbsSyn20 (let Loc l (OPTIONS (mc, s)) = happy_var_1 in OptionsPragma (l <^^> happy_var_3 <** (l:reverse happy_var_2 ++ [happy_var_3])) (readTool mc) s ) happyReduction_23 _ _ _ = notHappyAtAll happyReduce_24 = happySpecReduce_3 20 happyReduction_24 happyReduction_24 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyAbsSyn101 happy_var_2) (HappyTerminal (Loc happy_var_1 ANN)) = HappyAbsSyn20 (AnnModulePragma (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_24 _ _ _ = notHappyAtAll happyReduce_25 = happySpecReduce_3 21 happyReduction_25 happyReduction_25 (HappyAbsSyn100 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn21 happy_var_1) = HappyAbsSyn21 ((fst happy_var_1 ++ [happy_var_3], snd happy_var_1 ++ [happy_var_2]) ) happyReduction_25 _ _ _ = notHappyAtAll happyReduce_26 = happySpecReduce_2 21 happyReduction_26 happyReduction_26 (HappyAbsSyn100 happy_var_2) _ = HappyAbsSyn21 (([happy_var_2],[]) ) happyReduction_26 _ _ = notHappyAtAll happyReduce_27 = happySpecReduce_2 22 happyReduction_27 happyReduction_27 (HappyAbsSyn25 happy_var_2) (HappyAbsSyn23 happy_var_1) = HappyAbsSyn22 (let (is,ds,ss1,inf) = happy_var_2 in \os ss l -> Module (l <++> inf <** (ss ++ ss1)) happy_var_1 os is ds ) happyReduction_27 _ _ = notHappyAtAll happyReduce_28 = happyReduce 5 23 happyReduction_28 happyReduction_28 ((HappyTerminal (Loc happy_var_5 KW_Where)) `HappyStk` (HappyAbsSyn29 happy_var_4) `HappyStk` (HappyAbsSyn24 happy_var_3) `HappyStk` (HappyAbsSyn267 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Module)) `HappyStk` happyRest) = HappyAbsSyn23 (Just $ ModuleHead (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_5]) happy_var_2 happy_var_3 happy_var_4 ) `HappyStk` happyRest happyReduce_29 = happySpecReduce_0 23 happyReduction_29 happyReduction_29 = HappyAbsSyn23 (Nothing ) happyReduce_30 = happySpecReduce_3 24 happyReduction_30 happyReduction_30 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyTerminal happy_var_2) (HappyTerminal (Loc happy_var_1 DEPRECATED)) = HappyAbsSyn24 (let Loc l (StringTok (s,_)) = happy_var_2 in Just $ DeprText (happy_var_1 <^^> happy_var_3 <** [happy_var_1,l,happy_var_3]) s ) happyReduction_30 _ _ _ = notHappyAtAll happyReduce_31 = happySpecReduce_3 24 happyReduction_31 happyReduction_31 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyTerminal happy_var_2) (HappyTerminal (Loc happy_var_1 WARNING)) = HappyAbsSyn24 (let Loc l (StringTok (s,_)) = happy_var_2 in Just $ WarnText (happy_var_1 <^^> happy_var_3 <** [happy_var_1,l,happy_var_3]) s ) happyReduction_31 _ _ _ = notHappyAtAll happyReduce_32 = happySpecReduce_0 24 happyReduction_32 happyReduction_32 = HappyAbsSyn24 (Nothing ) happyReduce_33 = happySpecReduce_3 25 happyReduction_33 happyReduction_33 (HappyTerminal (Loc happy_var_3 RightCurly)) (HappyAbsSyn26 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftCurly)) = HappyAbsSyn25 (let (is,ds,ss) = happy_var_2 in (is,ds,happy_var_1:ss ++ [happy_var_3], happy_var_1 <^^> happy_var_3) ) happyReduction_33 _ _ _ = notHappyAtAll happyReduce_34 = happyReduce 4 25 happyReduction_34 happyReduction_34 (_ `HappyStk` (HappyAbsSyn258 happy_var_3) `HappyStk` (HappyAbsSyn26 happy_var_2) `HappyStk` (HappyAbsSyn258 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn25 (let (is,ds,ss) = happy_var_2 in (is,ds,happy_var_1:ss ++ [happy_var_3], happy_var_1 <^^> happy_var_3) ) `HappyStk` happyRest happyReduce_35 = happyReduce 4 26 happyReduction_35 happyReduction_35 ((HappyAbsSyn56 happy_var_4) `HappyStk` (HappyAbsSyn27 happy_var_3) `HappyStk` (HappyAbsSyn35 happy_var_2) `HappyStk` (HappyAbsSyn27 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn26 ((reverse (fst happy_var_2), fst happy_var_4, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3 ++ snd happy_var_4) ) `HappyStk` happyRest happyReduce_36 = happySpecReduce_2 26 happyReduction_36 happyReduction_36 (HappyAbsSyn56 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn26 (([], fst happy_var_2, reverse happy_var_1 ++ snd happy_var_2) ) happyReduction_36 _ _ = notHappyAtAll happyReduce_37 = happySpecReduce_3 26 happyReduction_37 happyReduction_37 (HappyAbsSyn27 happy_var_3) (HappyAbsSyn35 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn26 ((reverse (fst happy_var_2), [], reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3) ) happyReduction_37 _ _ _ = notHappyAtAll happyReduce_38 = happySpecReduce_1 26 happyReduction_38 happyReduction_38 (HappyAbsSyn27 happy_var_1) = HappyAbsSyn26 (([], [], reverse happy_var_1) ) happyReduction_38 _ = notHappyAtAll happyReduce_39 = happySpecReduce_2 27 happyReduction_39 happyReduction_39 (HappyTerminal (Loc happy_var_2 SemiColon)) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn27 (happy_var_2 : happy_var_1 ) happyReduction_39 _ _ = notHappyAtAll happyReduce_40 = happySpecReduce_1 28 happyReduction_40 happyReduction_40 (HappyAbsSyn27 happy_var_1) = HappyAbsSyn27 (happy_var_1 ) happyReduction_40 _ = notHappyAtAll happyReduce_41 = happySpecReduce_0 28 happyReduction_41 happyReduction_41 = HappyAbsSyn27 ([] ) happyReduce_42 = happySpecReduce_1 29 happyReduction_42 happyReduction_42 (HappyAbsSyn30 happy_var_1) = HappyAbsSyn29 (Just happy_var_1 ) happyReduction_42 _ = notHappyAtAll happyReduce_43 = happySpecReduce_0 29 happyReduction_43 happyReduction_43 = HappyAbsSyn29 (Nothing ) happyReduce_44 = happyReduce 4 30 happyReduction_44 happyReduction_44 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyAbsSyn27 happy_var_3) `HappyStk` (HappyAbsSyn32 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftParen)) `HappyStk` happyRest) = HappyAbsSyn30 (ExportSpecList (happy_var_1 <^^> happy_var_4 <** (happy_var_1:reverse (snd happy_var_2) ++ happy_var_3 ++ [happy_var_4])) (reverse (fst happy_var_2)) ) `HappyStk` happyRest happyReduce_45 = happySpecReduce_3 30 happyReduction_45 happyReduction_45 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn27 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn30 (ExportSpecList (happy_var_1 <^^> happy_var_3 <** (happy_var_1:happy_var_2++[happy_var_3])) [] ) happyReduction_45 _ _ _ = notHappyAtAll happyReduce_46 = happySpecReduce_1 31 happyReduction_46 happyReduction_46 (HappyTerminal (Loc happy_var_1 Comma)) = HappyAbsSyn27 ([happy_var_1] ) happyReduction_46 _ = notHappyAtAll happyReduce_47 = happySpecReduce_0 31 happyReduction_47 happyReduction_47 = HappyAbsSyn27 ([ ] ) happyReduce_48 = happySpecReduce_3 32 happyReduction_48 happyReduction_48 (HappyAbsSyn33 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn32 happy_var_1) = HappyAbsSyn32 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) ) happyReduction_48 _ _ _ = notHappyAtAll happyReduce_49 = happySpecReduce_1 32 happyReduction_49 happyReduction_49 (HappyAbsSyn33 happy_var_1) = HappyAbsSyn32 (([happy_var_1],[]) ) happyReduction_49 _ = notHappyAtAll happyReduce_50 = happySpecReduce_1 33 happyReduction_50 happyReduction_50 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn33 (EVar (ann happy_var_1) happy_var_1 ) happyReduction_50 _ = notHappyAtAll happyReduce_51 = happyMonadReduce 2 33 happyReduction_51 happyReduction_51 ((HappyAbsSyn34 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled ExplicitNamespaces; return (EAbs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1, srcInfoSpan (ann happy_var_2)]) (TypeNamespace (nIS happy_var_1 <** [happy_var_1])) happy_var_2) }) ) (\r -> happyReturn (HappyAbsSyn33 r)) happyReduce_52 = happySpecReduce_1 33 happyReduction_52 happyReduction_52 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn33 (EAbs (ann happy_var_1) (NoNamespace (ann happy_var_1)) happy_var_1 ) happyReduction_52 _ = notHappyAtAll happyReduce_53 = happyReduce 4 33 happyReduction_53 happyReduction_53 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyTerminal (Loc happy_var_3 DotDot)) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftParen)) `HappyStk` (HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn33 (EThingAll (ann happy_var_1 <++> nIS happy_var_4 <** [happy_var_2,happy_var_3,happy_var_4]) happy_var_1 ) `HappyStk` happyRest happyReduce_54 = happySpecReduce_3 33 happyReduction_54 happyReduction_54 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyTerminal (Loc happy_var_2 LeftParen)) (HappyAbsSyn34 happy_var_1) = HappyAbsSyn33 (EThingWith (ann happy_var_1 <++> nIS happy_var_3 <** [happy_var_2,happy_var_3]) happy_var_1 [] ) happyReduction_54 _ _ _ = notHappyAtAll happyReduce_55 = happyReduce 4 33 happyReduction_55 happyReduction_55 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyAbsSyn47 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftParen)) `HappyStk` (HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn33 (EThingWith (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2:reverse (snd happy_var_3) ++ [happy_var_4])) happy_var_1 (reverse (fst happy_var_3)) ) `HappyStk` happyRest happyReduce_56 = happySpecReduce_2 33 happyReduction_56 happyReduction_56 (HappyAbsSyn267 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Module)) = HappyAbsSyn33 (EModuleContents (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_56 _ _ = notHappyAtAll happyReduce_57 = happyMonadReduce 2 33 happyReduction_57 happyReduction_57 ((HappyAbsSyn34 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Pattern)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled PatternSynonyms; return $ EAbs (nIS happy_var_1 <++> (ann happy_var_2) <** [happy_var_1]) (PatternNamespace (nIS happy_var_1)) happy_var_2 }) ) (\r -> happyReturn (HappyAbsSyn33 r)) happyReduce_58 = happySpecReduce_1 34 happyReduction_58 happyReduction_58 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_58 _ = notHappyAtAll happyReduce_59 = happySpecReduce_1 34 happyReduction_59 happyReduction_59 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_59 _ = notHappyAtAll happyReduce_60 = happySpecReduce_3 35 happyReduction_60 happyReduction_60 (HappyAbsSyn36 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn35 happy_var_1) = HappyAbsSyn35 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) ) happyReduction_60 _ _ _ = notHappyAtAll happyReduce_61 = happySpecReduce_1 35 happyReduction_61 happyReduction_61 (HappyAbsSyn36 happy_var_1) = HappyAbsSyn35 (([happy_var_1],[]) ) happyReduction_61 _ = notHappyAtAll happyReduce_62 = happyReduce 8 36 happyReduction_62 happyReduction_62 ((HappyAbsSyn42 happy_var_8) `HappyStk` (HappyAbsSyn41 happy_var_7) `HappyStk` (HappyAbsSyn267 happy_var_6) `HappyStk` (HappyAbsSyn40 happy_var_5) `HappyStk` (HappyAbsSyn37 happy_var_4) `HappyStk` (HappyAbsSyn37 happy_var_3) `HappyStk` (HappyAbsSyn37 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Import)) `HappyStk` happyRest) = HappyAbsSyn36 (let { (mmn,ss,ml) = happy_var_7 ; l = nIS happy_var_1 <++> ann happy_var_6 <+?> ml <+?> (fmap ann) happy_var_8 <** (happy_var_1:snd happy_var_2 ++ snd happy_var_3 ++ snd happy_var_4 ++ snd happy_var_5 ++ ss)} in ImportDecl l happy_var_6 (fst happy_var_4) (fst happy_var_2) (fst happy_var_3) (fst happy_var_5) mmn happy_var_8 ) `HappyStk` happyRest happyReduce_63 = happySpecReduce_2 37 happyReduction_63 happyReduction_63 (HappyTerminal (Loc happy_var_2 PragmaEnd)) (HappyTerminal (Loc happy_var_1 SOURCE)) = HappyAbsSyn37 ((True,[happy_var_1,happy_var_2]) ) happyReduction_63 _ _ = notHappyAtAll happyReduce_64 = happySpecReduce_0 37 happyReduction_64 happyReduction_64 = HappyAbsSyn37 ((False,[]) ) happyReduce_65 = happyMonadReduce 1 38 happyReduction_65 happyReduction_65 ((HappyTerminal (Loc happy_var_1 KW_Safe)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabledOneOf [Safe, SafeImports, Trustworthy] ; return (True, [happy_var_1]) }) ) (\r -> happyReturn (HappyAbsSyn37 r)) happyReduce_66 = happySpecReduce_0 38 happyReduction_66 happyReduction_66 = HappyAbsSyn37 ((False, []) ) happyReduce_67 = happySpecReduce_1 39 happyReduction_67 happyReduction_67 (HappyTerminal (Loc happy_var_1 KW_Qualified)) = HappyAbsSyn37 ((True,[happy_var_1]) ) happyReduction_67 _ = notHappyAtAll happyReduce_68 = happySpecReduce_0 39 happyReduction_68 happyReduction_68 = HappyAbsSyn37 ((False, []) ) happyReduce_69 = happyMonadReduce 1 40 happyReduction_69 happyReduction_69 ((HappyTerminal happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled PackageImports ; let { Loc l (StringTok (s,_)) = happy_var_1 } ; return $ (Just s,[l]) }) ) (\r -> happyReturn (HappyAbsSyn40 r)) happyReduce_70 = happySpecReduce_0 40 happyReduction_70 happyReduction_70 = HappyAbsSyn40 ((Nothing,[]) ) happyReduce_71 = happySpecReduce_2 41 happyReduction_71 happyReduction_71 (HappyAbsSyn267 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_As)) = HappyAbsSyn41 ((Just happy_var_2,[happy_var_1],Just (nIS happy_var_1 <++> ann happy_var_2)) ) happyReduction_71 _ _ = notHappyAtAll happyReduce_72 = happySpecReduce_0 41 happyReduction_72 happyReduction_72 = HappyAbsSyn41 ((Nothing,[],Nothing) ) happyReduce_73 = happySpecReduce_1 42 happyReduction_73 happyReduction_73 (HappyAbsSyn43 happy_var_1) = HappyAbsSyn42 (Just happy_var_1 ) happyReduction_73 _ = notHappyAtAll happyReduce_74 = happySpecReduce_0 42 happyReduction_74 happyReduction_74 = HappyAbsSyn42 (Nothing ) happyReduce_75 = happyReduce 5 43 happyReduction_75 happyReduction_75 ((HappyTerminal (Loc happy_var_5 RightParen)) `HappyStk` (HappyAbsSyn27 happy_var_4) `HappyStk` (HappyAbsSyn45 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftParen)) `HappyStk` (HappyAbsSyn44 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn43 (let {(b,ml,s) = happy_var_1 ; l = (ml (happy_var_2 <^^> happy_var_5)) <** (s ++ happy_var_2:reverse (snd happy_var_3) ++ happy_var_4 ++ [happy_var_5])} in ImportSpecList l b (reverse (fst happy_var_3)) ) `HappyStk` happyRest happyReduce_76 = happyReduce 4 43 happyReduction_76 happyReduction_76 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyAbsSyn27 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftParen)) `HappyStk` (HappyAbsSyn44 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn43 (let {(b,ml,s) = happy_var_1 ; l = (ml (happy_var_2 <^^> happy_var_4)) <** (s ++ happy_var_2:happy_var_3 ++ [happy_var_4])} in ImportSpecList l b [] ) `HappyStk` happyRest happyReduce_77 = happySpecReduce_1 44 happyReduction_77 happyReduction_77 (HappyTerminal (Loc happy_var_1 KW_Hiding)) = HappyAbsSyn44 ((True,Just (nIS happy_var_1),[happy_var_1]) ) happyReduction_77 _ = notHappyAtAll happyReduce_78 = happySpecReduce_0 44 happyReduction_78 happyReduction_78 = HappyAbsSyn44 ((False,Nothing,[]) ) happyReduce_79 = happySpecReduce_3 45 happyReduction_79 happyReduction_79 (HappyAbsSyn46 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn45 happy_var_1) = HappyAbsSyn45 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) ) happyReduction_79 _ _ _ = notHappyAtAll happyReduce_80 = happySpecReduce_1 45 happyReduction_80 happyReduction_80 (HappyAbsSyn46 happy_var_1) = HappyAbsSyn45 (([happy_var_1],[]) ) happyReduction_80 _ = notHappyAtAll happyReduce_81 = happySpecReduce_1 46 happyReduction_81 happyReduction_81 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn46 (IVar (ann happy_var_1) happy_var_1 ) happyReduction_81 _ = notHappyAtAll happyReduce_82 = happyMonadReduce 2 46 happyReduction_82 happyReduction_82 ((HappyAbsSyn100 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled ExplicitNamespaces; return (IAbs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1, srcInfoSpan (ann happy_var_2)]) (TypeNamespace (nIS happy_var_1 <** [happy_var_1])) happy_var_2) }) ) (\r -> happyReturn (HappyAbsSyn46 r)) happyReduce_83 = happyMonadReduce 2 46 happyReduction_83 happyReduction_83 ((HappyAbsSyn100 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Pattern)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled PatternSynonyms; return (IAbs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1, srcInfoSpan (ann happy_var_2)]) (PatternNamespace (nIS happy_var_1 <** [happy_var_1])) happy_var_2) }) ) (\r -> happyReturn (HappyAbsSyn46 r)) happyReduce_84 = happySpecReduce_1 46 happyReduction_84 happyReduction_84 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn46 (IAbs (ann happy_var_1) (NoNamespace (ann happy_var_1)) happy_var_1 ) happyReduction_84 _ = notHappyAtAll happyReduce_85 = happyReduce 4 46 happyReduction_85 happyReduction_85 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyTerminal (Loc happy_var_3 DotDot)) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftParen)) `HappyStk` (HappyAbsSyn100 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn46 (IThingAll (ann happy_var_1 <++> nIS happy_var_4 <** [happy_var_2,happy_var_3,happy_var_4]) happy_var_1 ) `HappyStk` happyRest happyReduce_86 = happySpecReduce_3 46 happyReduction_86 happyReduction_86 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyTerminal (Loc happy_var_2 LeftParen)) (HappyAbsSyn100 happy_var_1) = HappyAbsSyn46 (IThingWith (ann happy_var_1 <++> nIS happy_var_3 <** [happy_var_2,happy_var_3]) happy_var_1 [] ) happyReduction_86 _ _ _ = notHappyAtAll happyReduce_87 = happyReduce 4 46 happyReduction_87 happyReduction_87 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyAbsSyn47 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftParen)) `HappyStk` (HappyAbsSyn100 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn46 (IThingWith (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2:reverse (snd happy_var_3) ++ [happy_var_4])) happy_var_1 (reverse (fst happy_var_3)) ) `HappyStk` happyRest happyReduce_88 = happySpecReduce_3 47 happyReduction_88 happyReduction_88 (HappyAbsSyn48 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn47 happy_var_1) = HappyAbsSyn47 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) ) happyReduction_88 _ _ _ = notHappyAtAll happyReduce_89 = happySpecReduce_1 47 happyReduction_89 happyReduction_89 (HappyAbsSyn48 happy_var_1) = HappyAbsSyn47 (([happy_var_1],[]) ) happyReduction_89 _ = notHappyAtAll happyReduce_90 = happySpecReduce_1 48 happyReduction_90 happyReduction_90 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn48 (VarName (ann happy_var_1) happy_var_1 ) happyReduction_90 _ = notHappyAtAll happyReduce_91 = happySpecReduce_1 48 happyReduction_91 happyReduction_91 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn48 (ConName (ann happy_var_1) happy_var_1 ) happyReduction_91 _ = notHappyAtAll happyReduce_92 = happySpecReduce_3 49 happyReduction_92 happyReduction_92 (HappyAbsSyn52 happy_var_3) (HappyAbsSyn50 happy_var_2) (HappyAbsSyn51 happy_var_1) = HappyAbsSyn49 (let (ops,ss,l) = happy_var_3 in InfixDecl (ann happy_var_1 <++> l <** (snd happy_var_2 ++ reverse ss)) happy_var_1 (fst happy_var_2) (reverse ops) ) happyReduction_92 _ _ _ = notHappyAtAll happyReduce_93 = happySpecReduce_0 50 happyReduction_93 happyReduction_93 = HappyAbsSyn50 ((Nothing, []) ) happyReduce_94 = happyMonadReduce 1 50 happyReduction_94 happyReduction_94 ((HappyTerminal happy_var_1) `HappyStk` happyRest) tk = happyThen (( let Loc l (IntTok (i,_)) = happy_var_1 in checkPrec i >>= \i -> return (Just i, [l])) ) (\r -> happyReturn (HappyAbsSyn50 r)) happyReduce_95 = happySpecReduce_1 51 happyReduction_95 happyReduction_95 (HappyTerminal (Loc happy_var_1 KW_Infix)) = HappyAbsSyn51 (AssocNone $ nIS happy_var_1 ) happyReduction_95 _ = notHappyAtAll happyReduce_96 = happySpecReduce_1 51 happyReduction_96 happyReduction_96 (HappyTerminal (Loc happy_var_1 KW_InfixL)) = HappyAbsSyn51 (AssocLeft $ nIS happy_var_1 ) happyReduction_96 _ = notHappyAtAll happyReduce_97 = happySpecReduce_1 51 happyReduction_97 happyReduction_97 (HappyTerminal (Loc happy_var_1 KW_InfixR)) = HappyAbsSyn51 (AssocRight $ nIS happy_var_1 ) happyReduction_97 _ = notHappyAtAll happyReduce_98 = happySpecReduce_3 52 happyReduction_98 happyReduction_98 (HappyAbsSyn240 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn52 happy_var_1) = HappyAbsSyn52 (let (ops,ss,l) = happy_var_1 in (happy_var_3 : ops, happy_var_2 : ss, l <++> ann happy_var_3) ) happyReduction_98 _ _ _ = notHappyAtAll happyReduce_99 = happySpecReduce_1 52 happyReduction_99 happyReduction_99 (HappyAbsSyn240 happy_var_1) = HappyAbsSyn52 (([happy_var_1],[],ann happy_var_1) ) happyReduction_99 _ = notHappyAtAll happyReduce_100 = happySpecReduce_0 53 happyReduction_100 happyReduction_100 = HappyAbsSyn53 (Nothing ) happyReduce_101 = happySpecReduce_1 53 happyReduction_101 happyReduction_101 (HappyAbsSyn54 happy_var_1) = HappyAbsSyn53 (Just happy_var_1 ) happyReduction_101 _ = notHappyAtAll happyReduce_102 = happyReduce 4 54 happyReduction_102 happyReduction_102 ((HappyAbsSyn55 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 RightArrow)) `HappyStk` (HappyAbsSyn100 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 Bar)) `HappyStk` happyRest) = HappyAbsSyn54 (InjectivityInfo (nIS happy_var_1 <++> ann (last happy_var_4) <** [happy_var_1,happy_var_3]) happy_var_2 (reverse happy_var_4) ) `HappyStk` happyRest happyReduce_103 = happySpecReduce_2 55 happyReduction_103 happyReduction_103 (HappyAbsSyn100 happy_var_2) (HappyAbsSyn55 happy_var_1) = HappyAbsSyn55 (happy_var_2 : happy_var_1 ) happyReduction_103 _ _ = notHappyAtAll happyReduce_104 = happySpecReduce_1 55 happyReduction_104 happyReduction_104 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn55 ([happy_var_1] ) happyReduction_104 _ = notHappyAtAll happyReduce_105 = happyMonadReduce 2 56 happyReduction_105 happyReduction_105 ((HappyAbsSyn27 happy_var_2) `HappyStk` (HappyAbsSyn56 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkRevDecls (fst happy_var_1) >>= \ds -> return (ds, snd happy_var_1 ++ reverse happy_var_2)) ) (\r -> happyReturn (HappyAbsSyn56 r)) happyReduce_106 = happySpecReduce_3 57 happyReduction_106 happyReduction_106 (HappyAbsSyn49 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn56 happy_var_1) = HappyAbsSyn56 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) ) happyReduction_106 _ _ _ = notHappyAtAll happyReduce_107 = happySpecReduce_1 57 happyReduction_107 happyReduction_107 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn56 (([happy_var_1],[]) ) happyReduction_107 _ = notHappyAtAll happyReduce_108 = happyMonadReduce 1 58 happyReduction_108 happyReduction_108 ((HappyAbsSyn49 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled RoleAnnotations >> return happy_var_1) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_109 = happyMonadReduce 4 58 happyReduction_109 happyReduction_109 ((HappyAbsSyn81 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 Equals)) `HappyStk` (HappyAbsSyn103 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( do { dh <- checkSimpleType happy_var_2; let {l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]}; return (TypeDecl l dh happy_var_4) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_110 = happyMonadReduce 6 58 happyReduction_110 happyReduction_110 ((HappyAbsSyn67 happy_var_6) `HappyStk` (HappyAbsSyn53 happy_var_5) `HappyStk` (HappyAbsSyn59 happy_var_4) `HappyStk` (HappyAbsSyn103 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Family)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( do { dh <- checkSimpleType happy_var_3; let {l = nIS happy_var_1 <++> ann happy_var_3 <** [happy_var_1,happy_var_2]}; case happy_var_6 of { Nothing -> return (TypeFamDecl l dh happy_var_4 happy_var_5); Just (x,a) -> return (ClosedTypeFamDecl (l <** [a]) dh happy_var_4 happy_var_5 x); }}) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_111 = happyMonadReduce 5 58 happyReduction_111 happyReduction_111 ((HappyAbsSyn81 happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 Equals)) `HappyStk` (HappyAbsSyn81 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Instance)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( do { -- no checkSimpleType happy_var_4 since dtype may contain type patterns checkEnabled TypeFamilies ; let {l = nIS happy_var_1 <++> ann happy_var_5 <** [happy_var_1,happy_var_2,happy_var_4]}; return (TypeInsDecl l happy_var_3 happy_var_5) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_112 = happyMonadReduce 4 58 happyReduction_112 happyReduction_112 ((HappyAbsSyn141 happy_var_4) `HappyStk` (HappyAbsSyn133 happy_var_3) `HappyStk` (HappyAbsSyn103 happy_var_2) `HappyStk` (HappyAbsSyn71 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { (cs,dh) <- checkDataHeader happy_var_2; let { (qds,ss,minf) = happy_var_3; l = happy_var_1 <> happy_var_2 <+?> minf <+?> fmap ann happy_var_4 <** ss}; checkDataOrNew happy_var_1 qds; return (DataDecl l happy_var_1 cs dh (reverse qds) happy_var_4) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_113 = happyMonadReduce 5 58 happyReduction_113 happyReduction_113 ((HappyAbsSyn141 happy_var_5) `HappyStk` (HappyAbsSyn129 happy_var_4) `HappyStk` (HappyAbsSyn150 happy_var_3) `HappyStk` (HappyAbsSyn103 happy_var_2) `HappyStk` (HappyAbsSyn71 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { (cs,dh) <- checkDataHeader happy_var_2; let { (gs,ss,minf) = happy_var_4; l = ann happy_var_1 <+?> minf <+?> fmap ann happy_var_5 <** (snd happy_var_3 ++ ss)}; checkDataOrNewG happy_var_1 gs; case (gs, fst happy_var_3) of ([], Nothing) -> return (DataDecl l happy_var_1 cs dh [] happy_var_5) _ -> checkEnabled GADTs >> return (GDataDecl l happy_var_1 cs dh (fst happy_var_3) (reverse gs) happy_var_5) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_114 = happyMonadReduce 4 58 happyReduction_114 happyReduction_114 ((HappyAbsSyn59 happy_var_4) `HappyStk` (HappyAbsSyn103 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Family)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Data)) `HappyStk` happyRest) tk = happyThen (( do { (cs,dh) <- checkDataHeader happy_var_3; let {l = nIS happy_var_1 <++> ann happy_var_3 <+?> (fmap ann) happy_var_4 <** [happy_var_1,happy_var_2]}; return (DataFamDecl l cs dh happy_var_4) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_115 = happyMonadReduce 5 58 happyReduction_115 happyReduction_115 ((HappyAbsSyn141 happy_var_5) `HappyStk` (HappyAbsSyn133 happy_var_4) `HappyStk` (HappyAbsSyn81 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Instance)) `HappyStk` (HappyAbsSyn71 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { -- (cs,c,t) <- checkDataHeader happy_var_4; checkEnabled TypeFamilies ; let { (qds,ss,minf) = happy_var_4 ; l = happy_var_1 <> happy_var_3 <+?> minf <+?> fmap ann happy_var_5 <** happy_var_2:ss }; checkDataOrNew happy_var_1 qds; return (DataInsDecl l happy_var_1 happy_var_3 (reverse qds) happy_var_5) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_116 = happyMonadReduce 6 58 happyReduction_116 happyReduction_116 ((HappyAbsSyn141 happy_var_6) `HappyStk` (HappyAbsSyn129 happy_var_5) `HappyStk` (HappyAbsSyn150 happy_var_4) `HappyStk` (HappyAbsSyn81 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Instance)) `HappyStk` (HappyAbsSyn71 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { -- (cs,c,t) <- checkDataHeader happy_var_4; checkEnabled TypeFamilies ; let {(gs,ss,minf) = happy_var_5; l = ann happy_var_1 <+?> minf <+?> fmap ann happy_var_6 <** (happy_var_2:snd happy_var_4 ++ ss)}; checkDataOrNewG happy_var_1 gs; return (GDataInsDecl l happy_var_1 happy_var_3 (fst happy_var_4) (reverse gs) happy_var_6) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_117 = happyMonadReduce 4 58 happyReduction_117 happyReduction_117 ((HappyAbsSyn151 happy_var_4) `HappyStk` (HappyAbsSyn126 happy_var_3) `HappyStk` (HappyAbsSyn103 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Class)) `HappyStk` happyRest) tk = happyThen (( do { (cs,dh) <- checkClassHeader happy_var_2; let {(fds,ss1,minf1) = happy_var_3;(mcs,ss2,minf2) = happy_var_4} ; let { l = nIS happy_var_1 <++> ann happy_var_2 <+?> minf1 <+?> minf2 <** (happy_var_1:ss1 ++ ss2)} ; return (ClassDecl l cs dh fds mcs) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_118 = happyMonadReduce 4 58 happyReduction_118 happyReduction_118 ((HappyAbsSyn157 happy_var_4) `HappyStk` (HappyAbsSyn103 happy_var_3) `HappyStk` (HappyAbsSyn66 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Instance)) `HappyStk` happyRest) tk = happyThen (( do { ih <- checkInstHeader happy_var_3; let {(mis,ss,minf) = happy_var_4}; return (InstDecl (nIS happy_var_1 <++> ann happy_var_3 <+?> minf <** (happy_var_1:ss)) happy_var_2 ih mis) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_119 = happyMonadReduce 4 58 happyReduction_119 happyReduction_119 ((HappyAbsSyn103 happy_var_4) `HappyStk` (HappyAbsSyn66 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Instance)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Deriving)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled StandaloneDeriving ; ih <- checkInstHeader happy_var_4; let {l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_2]}; return (DerivDecl l happy_var_3 ih) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_120 = happyReduce 4 58 happyReduction_120 happyReduction_120 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyAbsSyn72 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftParen)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Default)) `HappyStk` happyRest) = HappyAbsSyn49 (DefaultDecl (happy_var_1 <^^> happy_var_4 <** (happy_var_1:happy_var_2 : snd happy_var_3 ++ [happy_var_4])) (fst happy_var_3) ) `HappyStk` happyRest happyReduce_121 = happyMonadReduce 1 58 happyReduction_121 happyReduction_121 ((HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do checkToplevel happy_var_1 checkExpr happy_var_1 >>= \e -> return (SpliceDecl (ann e) e)) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_122 = happyReduce 5 58 happyReduction_122 happyReduction_122 ((HappyAbsSyn90 happy_var_5) `HappyStk` (HappyAbsSyn89 happy_var_4) `HappyStk` (HappyAbsSyn88 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Import)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Foreign)) `HappyStk` happyRest) = HappyAbsSyn49 (let (s,n,t,ss) = happy_var_5 in ForImp (nIS happy_var_1 <++> ann t <** (happy_var_1:happy_var_2:ss)) happy_var_3 happy_var_4 s n t ) `HappyStk` happyRest happyReduce_123 = happyReduce 4 58 happyReduction_123 happyReduction_123 ((HappyAbsSyn90 happy_var_4) `HappyStk` (HappyAbsSyn88 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Export)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Foreign)) `HappyStk` happyRest) = HappyAbsSyn49 (let (s,n,t,ss) = happy_var_4 in ForExp (nIS happy_var_1 <++> ann t <** (happy_var_1:happy_var_2:ss)) happy_var_3 s n t ) `HappyStk` happyRest happyReduce_124 = happySpecReduce_3 58 happyReduction_124 happyReduction_124 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyAbsSyn91 happy_var_2) (HappyTerminal (Loc happy_var_1 RULES)) = HappyAbsSyn49 (RulePragmaDecl (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) $ reverse happy_var_2 ) happyReduction_124 _ _ _ = notHappyAtAll happyReduce_125 = happySpecReduce_3 58 happyReduction_125 happyReduction_125 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyAbsSyn97 happy_var_2) (HappyTerminal (Loc happy_var_1 DEPRECATED)) = HappyAbsSyn49 (DeprPragmaDecl (happy_var_1 <^^> happy_var_3 <** (happy_var_1:snd happy_var_2++[happy_var_3])) $ reverse (fst happy_var_2) ) happyReduction_125 _ _ _ = notHappyAtAll happyReduce_126 = happySpecReduce_3 58 happyReduction_126 happyReduction_126 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyAbsSyn97 happy_var_2) (HappyTerminal (Loc happy_var_1 WARNING)) = HappyAbsSyn49 (WarnPragmaDecl (happy_var_1 <^^> happy_var_3 <** (happy_var_1:snd happy_var_2++[happy_var_3])) $ reverse (fst happy_var_2) ) happyReduction_126 _ _ _ = notHappyAtAll happyReduce_127 = happySpecReduce_3 58 happyReduction_127 happyReduction_127 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyAbsSyn101 happy_var_2) (HappyTerminal (Loc happy_var_1 ANN)) = HappyAbsSyn49 (AnnPragma (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_127 _ _ _ = notHappyAtAll happyReduce_128 = happySpecReduce_1 58 happyReduction_128 happyReduction_128 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn49 (happy_var_1 ) happyReduction_128 _ = notHappyAtAll happyReduce_129 = happySpecReduce_0 59 happyReduction_129 happyReduction_129 = HappyAbsSyn59 (Nothing ) happyReduce_130 = happySpecReduce_2 59 happyReduction_130 happyReduction_130 (HappyAbsSyn144 happy_var_2) (HappyTerminal (Loc happy_var_1 DoubleColon)) = HappyAbsSyn59 ((Just $ KindSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2) ) happyReduction_130 _ _ = notHappyAtAll happyReduce_131 = happySpecReduce_0 60 happyReduction_131 happyReduction_131 = HappyAbsSyn59 (Nothing ) happyReduce_132 = happySpecReduce_2 60 happyReduction_132 happyReduction_132 (HappyAbsSyn144 happy_var_2) (HappyTerminal (Loc happy_var_1 DoubleColon)) = HappyAbsSyn59 ((Just $ KindSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2) ) happyReduction_132 _ _ = notHappyAtAll happyReduce_133 = happySpecReduce_2 60 happyReduction_133 happyReduction_133 (HappyAbsSyn123 happy_var_2) (HappyTerminal (Loc happy_var_1 Equals)) = HappyAbsSyn59 ((Just $ TyVarSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2) ) happyReduction_133 _ _ = notHappyAtAll happyReduce_134 = happySpecReduce_0 61 happyReduction_134 happyReduction_134 = HappyAbsSyn61 ((Nothing, Nothing) ) happyReduce_135 = happySpecReduce_2 61 happyReduction_135 happyReduction_135 (HappyAbsSyn144 happy_var_2) (HappyTerminal (Loc happy_var_1 DoubleColon)) = HappyAbsSyn61 ((Just (KindSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2), Nothing) ) happyReduction_135 _ _ = notHappyAtAll happyReduce_136 = happySpecReduce_3 61 happyReduction_136 happyReduction_136 (HappyAbsSyn54 happy_var_3) (HappyAbsSyn123 happy_var_2) (HappyTerminal (Loc happy_var_1 Equals)) = HappyAbsSyn61 ((Just (TyVarSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2), Just happy_var_3) ) happyReduction_136 _ _ _ = notHappyAtAll happyReduce_137 = happySpecReduce_0 62 happyReduction_137 happyReduction_137 = HappyAbsSyn62 ((Nothing, Nothing, Nothing) ) happyReduce_138 = happySpecReduce_2 62 happyReduction_138 happyReduction_138 (HappyAbsSyn144 happy_var_2) (HappyTerminal (Loc happy_var_1 DoubleColon)) = HappyAbsSyn62 ((Just (KindSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2), Nothing, Nothing) ) happyReduction_138 _ _ = notHappyAtAll happyReduce_139 = happySpecReduce_3 62 happyReduction_139 happyReduction_139 (HappyAbsSyn53 happy_var_3) (HappyAbsSyn81 happy_var_2) (HappyTerminal (Loc happy_var_1 Equals)) = HappyAbsSyn62 ((Nothing, Just (happy_var_1, happy_var_2), happy_var_3) ) happyReduction_139 _ _ _ = notHappyAtAll happyReduce_140 = happyMonadReduce 4 63 happyReduction_140 happyReduction_140 ((HappyAbsSyn64 happy_var_4) `HappyStk` (HappyAbsSyn34 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Role)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( mkRoleAnnotDecl happy_var_1 happy_var_2 happy_var_3 (reverse happy_var_4)) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_141 = happySpecReduce_0 64 happyReduction_141 happyReduction_141 = HappyAbsSyn64 ([] ) happyReduce_142 = happySpecReduce_2 64 happyReduction_142 happyReduction_142 (HappyAbsSyn65 happy_var_2) (HappyAbsSyn64 happy_var_1) = HappyAbsSyn64 (happy_var_2 : happy_var_1 ) happyReduction_142 _ _ = notHappyAtAll happyReduce_143 = happySpecReduce_1 65 happyReduction_143 happyReduction_143 (HappyTerminal happy_var_1) = HappyAbsSyn65 (let (VarId v) = unLoc happy_var_1 in (Just v, nIS $ loc happy_var_1) ) happyReduction_143 _ = notHappyAtAll happyReduce_144 = happySpecReduce_1 65 happyReduction_144 happyReduction_144 (HappyTerminal (Loc happy_var_1 Underscore)) = HappyAbsSyn65 ((Nothing, nIS happy_var_1) ) happyReduction_144 _ = notHappyAtAll happyReduce_145 = happySpecReduce_2 66 happyReduction_145 happyReduction_145 _ (HappyTerminal (Loc happy_var_1 OVERLAP)) = HappyAbsSyn66 (Just (Overlap (nIS happy_var_1)) ) happyReduction_145 _ _ = notHappyAtAll happyReduce_146 = happySpecReduce_2 66 happyReduction_146 happyReduction_146 _ (HappyTerminal (Loc happy_var_1 INCOHERENT)) = HappyAbsSyn66 (Just (Incoherent (nIS happy_var_1)) ) happyReduction_146 _ _ = notHappyAtAll happyReduce_147 = happySpecReduce_2 66 happyReduction_147 happyReduction_147 _ (HappyTerminal (Loc happy_var_1 NO_OVERLAP)) = HappyAbsSyn66 (Just (NoOverlap (nIS happy_var_1)) ) happyReduction_147 _ _ = notHappyAtAll happyReduce_148 = happySpecReduce_0 66 happyReduction_148 happyReduction_148 = HappyAbsSyn66 (Nothing ) happyReduce_149 = happySpecReduce_0 67 happyReduction_149 happyReduction_149 = HappyAbsSyn67 (Nothing ) happyReduce_150 = happySpecReduce_2 67 happyReduction_150 happyReduction_150 (HappyAbsSyn68 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Where)) = HappyAbsSyn67 (Just (happy_var_2, happy_var_1) ) happyReduction_150 _ _ = notHappyAtAll happyReduce_151 = happySpecReduce_3 68 happyReduction_151 happyReduction_151 _ (HappyAbsSyn68 happy_var_2) _ = HappyAbsSyn68 (happy_var_2 ) happyReduction_151 _ _ _ = notHappyAtAll happyReduce_152 = happySpecReduce_3 68 happyReduction_152 happyReduction_152 _ (HappyAbsSyn68 happy_var_2) _ = HappyAbsSyn68 (happy_var_2 ) happyReduction_152 _ _ _ = notHappyAtAll happyReduce_153 = happySpecReduce_3 69 happyReduction_153 happyReduction_153 (HappyAbsSyn70 happy_var_3) _ (HappyAbsSyn68 happy_var_1) = HappyAbsSyn68 (happy_var_1 ++ [happy_var_3] ) happyReduction_153 _ _ _ = notHappyAtAll happyReduce_154 = happySpecReduce_2 69 happyReduction_154 happyReduction_154 _ (HappyAbsSyn68 happy_var_1) = HappyAbsSyn68 (happy_var_1 ) happyReduction_154 _ _ = notHappyAtAll happyReduce_155 = happySpecReduce_1 69 happyReduction_155 happyReduction_155 (HappyAbsSyn70 happy_var_1) = HappyAbsSyn68 ([happy_var_1] ) happyReduction_155 _ = notHappyAtAll happyReduce_156 = happyMonadReduce 3 70 happyReduction_156 happyReduction_156 ((HappyAbsSyn81 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 Equals)) `HappyStk` (HappyAbsSyn81 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled TypeFamilies ; return (TypeEqn (ann happy_var_1 <++> ann happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3) }) ) (\r -> happyReturn (HappyAbsSyn70 r)) happyReduce_157 = happySpecReduce_1 71 happyReduction_157 happyReduction_157 (HappyTerminal (Loc happy_var_1 KW_Data)) = HappyAbsSyn71 (DataType $ nIS happy_var_1 ) happyReduction_157 _ = notHappyAtAll happyReduce_158 = happySpecReduce_1 71 happyReduction_158 happyReduction_158 (HappyTerminal (Loc happy_var_1 KW_NewType)) = HappyAbsSyn71 (NewType $ nIS happy_var_1 ) happyReduction_158 _ = notHappyAtAll happyReduce_159 = happyMonadReduce 1 72 happyReduction_159 happyReduction_159 ((HappyAbsSyn120 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { ts <- mapM checkType (fst happy_var_1); return $ (reverse ts, reverse (snd happy_var_1)) }) ) (\r -> happyReturn (HappyAbsSyn72 r)) happyReduce_160 = happySpecReduce_1 72 happyReduction_160 happyReduction_160 (HappyAbsSyn81 happy_var_1) = HappyAbsSyn72 (([happy_var_1],[]) ) happyReduction_160 _ = notHappyAtAll happyReduce_161 = happySpecReduce_0 72 happyReduction_161 happyReduction_161 = HappyAbsSyn72 (([],[]) ) happyReduce_162 = happyMonadReduce 3 73 happyReduction_162 happyReduction_162 ((HappyAbsSyn27 happy_var_3) `HappyStk` (HappyAbsSyn56 happy_var_2) `HappyStk` (HappyAbsSyn27 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkRevDecls (fst happy_var_2) >>= \ds -> return (ds, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3)) ) (\r -> happyReturn (HappyAbsSyn56 r)) happyReduce_163 = happySpecReduce_1 73 happyReduction_163 happyReduction_163 (HappyAbsSyn27 happy_var_1) = HappyAbsSyn56 (([],reverse happy_var_1) ) happyReduction_163 _ = notHappyAtAll happyReduce_164 = happySpecReduce_3 74 happyReduction_164 happyReduction_164 (HappyAbsSyn49 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn56 happy_var_1) = HappyAbsSyn56 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) ) happyReduction_164 _ _ _ = notHappyAtAll happyReduce_165 = happySpecReduce_1 74 happyReduction_165 happyReduction_165 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn56 (([happy_var_1],[]) ) happyReduction_165 _ = notHappyAtAll happyReduce_166 = happySpecReduce_1 75 happyReduction_166 happyReduction_166 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn49 (happy_var_1 ) happyReduction_166 _ = notHappyAtAll happyReduce_167 = happySpecReduce_1 75 happyReduction_167 happyReduction_167 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn49 (happy_var_1 ) happyReduction_167 _ = notHappyAtAll happyReduce_168 = happySpecReduce_1 75 happyReduction_168 happyReduction_168 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn49 (happy_var_1 ) happyReduction_168 _ = notHappyAtAll happyReduce_169 = happySpecReduce_1 75 happyReduction_169 happyReduction_169 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn49 (happy_var_1 ) happyReduction_169 _ = notHappyAtAll happyReduce_170 = happySpecReduce_1 75 happyReduction_170 happyReduction_170 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn49 (happy_var_1 ) happyReduction_170 _ = notHappyAtAll happyReduce_171 = happySpecReduce_3 76 happyReduction_171 happyReduction_171 (HappyTerminal (Loc happy_var_3 RightCurly)) (HappyAbsSyn56 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftCurly)) = HappyAbsSyn76 (BDecls (happy_var_1 <^^> happy_var_3 <** (happy_var_1:snd happy_var_2++[happy_var_3])) (fst happy_var_2) ) happyReduction_171 _ _ _ = notHappyAtAll happyReduce_172 = happySpecReduce_3 76 happyReduction_172 happyReduction_172 (HappyAbsSyn258 happy_var_3) (HappyAbsSyn56 happy_var_2) (HappyAbsSyn258 happy_var_1) = HappyAbsSyn76 (let l' = if null (fst happy_var_2) then nIS happy_var_3 else (ann . last $ fst happy_var_2) in BDecls (nIS happy_var_1 <++> l' <** (happy_var_1:snd happy_var_2++[happy_var_3])) (fst happy_var_2) ) happyReduction_172 _ _ _ = notHappyAtAll happyReduce_173 = happySpecReduce_1 77 happyReduction_173 happyReduction_173 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn49 (happy_var_1 ) happyReduction_173 _ = notHappyAtAll happyReduce_174 = happySpecReduce_1 77 happyReduction_174 happyReduction_174 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn49 (happy_var_1 ) happyReduction_174 _ = notHappyAtAll happyReduce_175 = happyMonadReduce 3 78 happyReduction_175 happyReduction_175 ((HappyAbsSyn81 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 DoubleColon)) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { v <- checkSigVar happy_var_1; return $ TypeSig (happy_var_1 <> happy_var_3 <** [happy_var_2]) [v] happy_var_3 }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_176 = happyMonadReduce 5 78 happyReduction_176 happyReduction_176 ((HappyAbsSyn81 happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 DoubleColon)) `HappyStk` (HappyAbsSyn87 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 Comma)) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { v <- checkSigVar happy_var_1; let {(vs,ss,_) = happy_var_3 ; l = happy_var_1 <> happy_var_5 <** (happy_var_2 : reverse ss ++ [happy_var_4]) } ; return $ TypeSig l (v : reverse vs) happy_var_5 }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_177 = happyReduce 4 79 happyReduction_177 happyReduction_177 ((HappyTerminal (Loc happy_var_4 PragmaEnd)) `HappyStk` (HappyAbsSyn34 happy_var_3) `HappyStk` (HappyAbsSyn93 happy_var_2) `HappyStk` (HappyTerminal happy_var_1) `HappyStk` happyRest) = HappyAbsSyn49 (let Loc l (INLINE s) = happy_var_1 in InlineSig (l <^^> happy_var_4 <** [l,happy_var_4]) s happy_var_2 happy_var_3 ) `HappyStk` happyRest happyReduce_178 = happyReduce 4 79 happyReduction_178 happyReduction_178 ((HappyTerminal (Loc happy_var_4 PragmaEnd)) `HappyStk` (HappyAbsSyn34 happy_var_3) `HappyStk` (HappyAbsSyn93 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 INLINE_CONLIKE)) `HappyStk` happyRest) = HappyAbsSyn49 (InlineConlikeSig (happy_var_1 <^^> happy_var_4 <** [happy_var_1,happy_var_4]) happy_var_2 happy_var_3 ) `HappyStk` happyRest happyReduce_179 = happyReduce 6 79 happyReduction_179 happyReduction_179 ((HappyTerminal (Loc happy_var_6 PragmaEnd)) `HappyStk` (HappyAbsSyn72 happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 DoubleColon)) `HappyStk` (HappyAbsSyn34 happy_var_3) `HappyStk` (HappyAbsSyn93 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 SPECIALISE)) `HappyStk` happyRest) = HappyAbsSyn49 (SpecSig (happy_var_1 <^^> happy_var_6 <** (happy_var_1: happy_var_4 : snd happy_var_5 ++ [happy_var_6])) happy_var_2 happy_var_3 (fst happy_var_5) ) `HappyStk` happyRest happyReduce_180 = happyReduce 6 79 happyReduction_180 happyReduction_180 ((HappyTerminal (Loc happy_var_6 PragmaEnd)) `HappyStk` (HappyAbsSyn72 happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 DoubleColon)) `HappyStk` (HappyAbsSyn34 happy_var_3) `HappyStk` (HappyAbsSyn93 happy_var_2) `HappyStk` (HappyTerminal happy_var_1) `HappyStk` happyRest) = HappyAbsSyn49 (let Loc l (SPECIALISE_INLINE s) = happy_var_1 in SpecInlineSig (l <^^> happy_var_6 <** (l:happy_var_4:snd happy_var_5++[happy_var_6])) s happy_var_2 happy_var_3 (fst happy_var_5) ) `HappyStk` happyRest happyReduce_181 = happyMonadReduce 4 79 happyReduction_181 happyReduction_181 ((HappyTerminal (Loc happy_var_4 PragmaEnd)) `HappyStk` (HappyAbsSyn103 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Instance)) `HappyStk` (HappyTerminal (Loc happy_var_1 SPECIALISE)) `HappyStk` happyRest) tk = happyThen (( do { ih <- checkInstHeader happy_var_3; let {l = happy_var_1 <^^> happy_var_4 <** [happy_var_1,happy_var_2,happy_var_4]}; return $ InstSig l ih }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_182 = happySpecReduce_3 79 happyReduction_182 happyReduction_182 (HappyTerminal (Loc happy_var_3 PragmaEnd)) (HappyAbsSyn82 happy_var_2) (HappyTerminal (Loc happy_var_1 MINIMAL)) = HappyAbsSyn49 (MinimalPragma (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_182 _ _ _ = notHappyAtAll happyReduce_183 = happySpecReduce_1 80 happyReduction_183 happyReduction_183 (HappyAbsSyn81 happy_var_1) = HappyAbsSyn72 (([happy_var_1],[]) ) happyReduction_183 _ = notHappyAtAll happyReduce_184 = happySpecReduce_3 80 happyReduction_184 happyReduction_184 (HappyAbsSyn72 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn81 happy_var_1) = HappyAbsSyn72 ((happy_var_1 : fst happy_var_3, happy_var_2 : snd happy_var_3) ) happyReduction_184 _ _ _ = notHappyAtAll happyReduce_185 = happyMonadReduce 1 81 happyReduction_185 happyReduction_185 ((HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkType $ mkTyForall (ann happy_var_1) Nothing Nothing happy_var_1) ) (\r -> happyReturn (HappyAbsSyn81 r)) happyReduce_186 = happySpecReduce_1 82 happyReduction_186 happyReduction_186 (HappyAbsSyn83 happy_var_1) = HappyAbsSyn82 (Just happy_var_1 ) happyReduction_186 _ = notHappyAtAll happyReduce_187 = happySpecReduce_0 82 happyReduction_187 happyReduction_187 = HappyAbsSyn82 (Nothing ) happyReduce_188 = happySpecReduce_1 83 happyReduction_188 happyReduction_188 (HappyAbsSyn83 happy_var_1) = HappyAbsSyn83 (happy_var_1 ) happyReduction_188 _ = notHappyAtAll happyReduce_189 = happySpecReduce_3 83 happyReduction_189 happyReduction_189 (HappyAbsSyn83 happy_var_3) (HappyTerminal (Loc happy_var_2 Bar)) (HappyAbsSyn83 happy_var_1) = HappyAbsSyn83 (OrFormula (ann happy_var_1 <++> ann happy_var_3 <** [happy_var_2]) [happy_var_1,happy_var_3] ) happyReduction_189 _ _ _ = notHappyAtAll happyReduce_190 = happySpecReduce_1 84 happyReduction_190 happyReduction_190 (HappyAbsSyn83 happy_var_1) = HappyAbsSyn83 (happy_var_1 ) happyReduction_190 _ = notHappyAtAll happyReduce_191 = happySpecReduce_3 84 happyReduction_191 happyReduction_191 (HappyAbsSyn83 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn83 happy_var_1) = HappyAbsSyn83 (AndFormula (ann happy_var_1 <++> ann happy_var_3 <** [happy_var_2]) [happy_var_1,happy_var_3] ) happyReduction_191 _ _ _ = notHappyAtAll happyReduce_192 = happySpecReduce_3 85 happyReduction_192 happyReduction_192 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn83 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn83 (ParenFormula (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_192 _ _ _ = notHappyAtAll happyReduce_193 = happySpecReduce_1 85 happyReduction_193 happyReduction_193 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn83 (VarFormula (ann happy_var_1) happy_var_1 ) happyReduction_193 _ = notHappyAtAll happyReduce_194 = happySpecReduce_1 86 happyReduction_194 happyReduction_194 (HappyAbsSyn76 happy_var_1) = HappyAbsSyn76 (happy_var_1 ) happyReduction_194 _ = notHappyAtAll happyReduce_195 = happySpecReduce_3 86 happyReduction_195 happyReduction_195 (HappyTerminal (Loc happy_var_3 RightCurly)) (HappyAbsSyn225 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftCurly)) = HappyAbsSyn76 (IPBinds (happy_var_1 <^^> happy_var_3 <** snd happy_var_2) (fst happy_var_2) ) happyReduction_195 _ _ _ = notHappyAtAll happyReduce_196 = happySpecReduce_3 86 happyReduction_196 happyReduction_196 _ (HappyAbsSyn225 happy_var_2) (HappyAbsSyn258 happy_var_1) = HappyAbsSyn76 (let l' = ann . last $ fst happy_var_2 in IPBinds (nIS happy_var_1 <++> l' <** snd happy_var_2) (fst happy_var_2) ) happyReduction_196 _ _ _ = notHappyAtAll happyReduce_197 = happySpecReduce_3 87 happyReduction_197 happyReduction_197 (HappyAbsSyn100 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn87 happy_var_1) = HappyAbsSyn87 (let (ns,ss,l) = happy_var_1 in (happy_var_3 : ns, happy_var_2 : ss, l <++> ann happy_var_3) ) happyReduction_197 _ _ _ = notHappyAtAll happyReduce_198 = happyMonadReduce 1 87 happyReduction_198 happyReduction_198 ((HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { n <- checkUnQual happy_var_1; return ([n],[],ann n) }) ) (\r -> happyReturn (HappyAbsSyn87 r)) happyReduce_199 = happySpecReduce_1 88 happyReduction_199 happyReduction_199 (HappyTerminal (Loc happy_var_1 KW_StdCall)) = HappyAbsSyn88 (StdCall (nIS happy_var_1) ) happyReduction_199 _ = notHappyAtAll happyReduce_200 = happySpecReduce_1 88 happyReduction_200 happyReduction_200 (HappyTerminal (Loc happy_var_1 KW_CCall)) = HappyAbsSyn88 (CCall (nIS happy_var_1) ) happyReduction_200 _ = notHappyAtAll happyReduce_201 = happySpecReduce_1 88 happyReduction_201 happyReduction_201 (HappyTerminal (Loc happy_var_1 KW_CPlusPlus)) = HappyAbsSyn88 (CPlusPlus (nIS happy_var_1) ) happyReduction_201 _ = notHappyAtAll happyReduce_202 = happySpecReduce_1 88 happyReduction_202 happyReduction_202 (HappyTerminal (Loc happy_var_1 KW_DotNet)) = HappyAbsSyn88 (DotNet (nIS happy_var_1) ) happyReduction_202 _ = notHappyAtAll happyReduce_203 = happySpecReduce_1 88 happyReduction_203 happyReduction_203 (HappyTerminal (Loc happy_var_1 KW_Jvm)) = HappyAbsSyn88 (Jvm (nIS happy_var_1) ) happyReduction_203 _ = notHappyAtAll happyReduce_204 = happySpecReduce_1 88 happyReduction_204 happyReduction_204 (HappyTerminal (Loc happy_var_1 KW_Js)) = HappyAbsSyn88 (Js (nIS happy_var_1) ) happyReduction_204 _ = notHappyAtAll happyReduce_205 = happySpecReduce_1 88 happyReduction_205 happyReduction_205 (HappyTerminal (Loc happy_var_1 KW_JavaScript)) = HappyAbsSyn88 (JavaScript (nIS happy_var_1) ) happyReduction_205 _ = notHappyAtAll happyReduce_206 = happySpecReduce_1 88 happyReduction_206 happyReduction_206 (HappyTerminal (Loc happy_var_1 KW_CApi)) = HappyAbsSyn88 (CApi (nIS happy_var_1) ) happyReduction_206 _ = notHappyAtAll happyReduce_207 = happySpecReduce_1 89 happyReduction_207 happyReduction_207 (HappyTerminal (Loc happy_var_1 KW_Safe)) = HappyAbsSyn89 (Just $ PlaySafe (nIS happy_var_1) False ) happyReduction_207 _ = notHappyAtAll happyReduce_208 = happySpecReduce_1 89 happyReduction_208 happyReduction_208 (HappyTerminal (Loc happy_var_1 KW_Unsafe)) = HappyAbsSyn89 (Just $ PlayRisky (nIS happy_var_1) ) happyReduction_208 _ = notHappyAtAll happyReduce_209 = happySpecReduce_1 89 happyReduction_209 happyReduction_209 (HappyTerminal (Loc happy_var_1 KW_Threadsafe)) = HappyAbsSyn89 (Just $ PlaySafe (nIS happy_var_1) True ) happyReduction_209 _ = notHappyAtAll happyReduce_210 = happySpecReduce_1 89 happyReduction_210 happyReduction_210 (HappyTerminal (Loc happy_var_1 KW_Interruptible)) = HappyAbsSyn89 (Just $ PlayInterruptible (nIS happy_var_1) ) happyReduction_210 _ = notHappyAtAll happyReduce_211 = happySpecReduce_0 89 happyReduction_211 happyReduction_211 = HappyAbsSyn89 (Nothing ) happyReduce_212 = happyReduce 4 90 happyReduction_212 happyReduction_212 ((HappyAbsSyn81 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 DoubleColon)) `HappyStk` (HappyAbsSyn100 happy_var_2) `HappyStk` (HappyTerminal happy_var_1) `HappyStk` happyRest) = HappyAbsSyn90 (let Loc l (StringTok (s,_)) = happy_var_1 in (Just s, happy_var_2, happy_var_4, [l,happy_var_3]) ) `HappyStk` happyRest happyReduce_213 = happySpecReduce_3 90 happyReduction_213 happyReduction_213 (HappyAbsSyn81 happy_var_3) (HappyTerminal (Loc happy_var_2 DoubleColon)) (HappyAbsSyn100 happy_var_1) = HappyAbsSyn90 ((Nothing, happy_var_1, happy_var_3, [happy_var_2]) ) happyReduction_213 _ _ _ = notHappyAtAll happyReduce_214 = happySpecReduce_3 91 happyReduction_214 happyReduction_214 (HappyAbsSyn92 happy_var_3) _ (HappyAbsSyn91 happy_var_1) = HappyAbsSyn91 (happy_var_3 : happy_var_1 ) happyReduction_214 _ _ _ = notHappyAtAll happyReduce_215 = happySpecReduce_2 91 happyReduction_215 happyReduction_215 _ (HappyAbsSyn91 happy_var_1) = HappyAbsSyn91 (happy_var_1 ) happyReduction_215 _ _ = notHappyAtAll happyReduce_216 = happySpecReduce_1 91 happyReduction_216 happyReduction_216 (HappyAbsSyn92 happy_var_1) = HappyAbsSyn91 ([happy_var_1] ) happyReduction_216 _ = notHappyAtAll happyReduce_217 = happySpecReduce_0 91 happyReduction_217 happyReduction_217 = HappyAbsSyn91 ([] ) happyReduce_218 = happyMonadReduce 6 92 happyReduction_218 happyReduction_218 ((HappyAbsSyn168 happy_var_6) `HappyStk` (HappyTerminal (Loc happy_var_5 Equals)) `HappyStk` (HappyAbsSyn17 happy_var_4) `HappyStk` (HappyAbsSyn94 happy_var_3) `HappyStk` (HappyAbsSyn93 happy_var_2) `HappyStk` (HappyTerminal happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { let {Loc l (StringTok (s,_)) = happy_var_1}; e <- checkRuleExpr happy_var_4; return $ Rule (nIS l <++> ann happy_var_6 <** l:snd happy_var_3 ++ [happy_var_5]) s happy_var_2 (fst happy_var_3) e happy_var_6 }) ) (\r -> happyReturn (HappyAbsSyn92 r)) happyReduce_219 = happySpecReduce_0 93 happyReduction_219 happyReduction_219 = HappyAbsSyn93 (Nothing ) happyReduce_220 = happySpecReduce_3 93 happyReduction_220 happyReduction_220 (HappyTerminal (Loc happy_var_3 RightSquare)) (HappyTerminal happy_var_2) (HappyTerminal (Loc happy_var_1 LeftSquare)) = HappyAbsSyn93 (let Loc l (IntTok (i,_)) = happy_var_2 in Just $ ActiveFrom (happy_var_1 <^^> happy_var_3 <** [happy_var_1,l,happy_var_3]) (fromInteger i) ) happyReduction_220 _ _ _ = notHappyAtAll happyReduce_221 = happyReduce 4 93 happyReduction_221 happyReduction_221 ((HappyTerminal (Loc happy_var_4 RightSquare)) `HappyStk` (HappyTerminal happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 Tilde)) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftSquare)) `HappyStk` happyRest) = HappyAbsSyn93 (let Loc l (IntTok (i,_)) = happy_var_3 in Just $ ActiveUntil (happy_var_1 <^^> happy_var_4 <** [happy_var_1,happy_var_2,l,happy_var_4]) (fromInteger i) ) `HappyStk` happyRest happyReduce_222 = happySpecReduce_0 94 happyReduction_222 happyReduction_222 = HappyAbsSyn94 ((Nothing,[]) ) happyReduce_223 = happySpecReduce_3 94 happyReduction_223 happyReduction_223 (HappyTerminal (Loc happy_var_3 Dot)) (HappyAbsSyn95 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Forall)) = HappyAbsSyn94 ((Just happy_var_2,[happy_var_1,happy_var_3]) ) happyReduction_223 _ _ _ = notHappyAtAll happyReduce_224 = happySpecReduce_1 95 happyReduction_224 happyReduction_224 (HappyAbsSyn96 happy_var_1) = HappyAbsSyn95 ([happy_var_1] ) happyReduction_224 _ = notHappyAtAll happyReduce_225 = happySpecReduce_2 95 happyReduction_225 happyReduction_225 (HappyAbsSyn95 happy_var_2) (HappyAbsSyn96 happy_var_1) = HappyAbsSyn95 (happy_var_1 : happy_var_2 ) happyReduction_225 _ _ = notHappyAtAll happyReduce_226 = happySpecReduce_1 96 happyReduction_226 happyReduction_226 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn96 (RuleVar (ann happy_var_1) happy_var_1 ) happyReduction_226 _ = notHappyAtAll happyReduce_227 = happyReduce 5 96 happyReduction_227 happyReduction_227 ((HappyTerminal (Loc happy_var_5 RightParen)) `HappyStk` (HappyAbsSyn81 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 DoubleColon)) `HappyStk` (HappyAbsSyn100 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftParen)) `HappyStk` happyRest) = HappyAbsSyn96 (TypedRuleVar (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_3,happy_var_5]) happy_var_2 happy_var_4 ) `HappyStk` happyRest happyReduce_228 = happySpecReduce_3 97 happyReduction_228 happyReduction_228 (HappyAbsSyn98 happy_var_3) (HappyTerminal (Loc happy_var_2 SemiColon)) (HappyAbsSyn97 happy_var_1) = HappyAbsSyn97 ((fst happy_var_3 : fst happy_var_1, snd happy_var_1 ++ (happy_var_2:snd happy_var_3)) ) happyReduction_228 _ _ _ = notHappyAtAll happyReduce_229 = happySpecReduce_2 97 happyReduction_229 happyReduction_229 (HappyTerminal (Loc happy_var_2 SemiColon)) (HappyAbsSyn97 happy_var_1) = HappyAbsSyn97 ((fst happy_var_1, snd happy_var_1 ++ [happy_var_2]) ) happyReduction_229 _ _ = notHappyAtAll happyReduce_230 = happySpecReduce_1 97 happyReduction_230 happyReduction_230 (HappyAbsSyn98 happy_var_1) = HappyAbsSyn97 (([fst happy_var_1],snd happy_var_1) ) happyReduction_230 _ = notHappyAtAll happyReduce_231 = happySpecReduce_0 97 happyReduction_231 happyReduction_231 = HappyAbsSyn97 (([],[]) ) happyReduce_232 = happySpecReduce_2 98 happyReduction_232 happyReduction_232 (HappyTerminal happy_var_2) (HappyAbsSyn21 happy_var_1) = HappyAbsSyn98 (let Loc l (StringTok (s,_)) = happy_var_2 in ((fst happy_var_1,s),snd happy_var_1 ++ [l]) ) happyReduction_232 _ _ = notHappyAtAll happyReduce_233 = happySpecReduce_1 99 happyReduction_233 happyReduction_233 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn21 (([happy_var_1],[]) ) happyReduction_233 _ = notHappyAtAll happyReduce_234 = happySpecReduce_3 99 happyReduction_234 happyReduction_234 (HappyAbsSyn21 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn100 happy_var_1) = HappyAbsSyn21 ((happy_var_1 : fst happy_var_3, happy_var_2 : snd happy_var_3) ) happyReduction_234 _ _ _ = notHappyAtAll happyReduce_235 = happySpecReduce_1 100 happyReduction_235 happyReduction_235 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_235 _ = notHappyAtAll happyReduce_236 = happySpecReduce_1 100 happyReduction_236 happyReduction_236 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_236 _ = notHappyAtAll happyReduce_237 = happyMonadReduce 3 101 happyReduction_237 happyReduction_237 ((HappyAbsSyn17 happy_var_3) `HappyStk` (HappyAbsSyn100 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( checkExpr happy_var_3 >>= \e -> return (TypeAnn (nIS happy_var_1 <++> ann e <** [happy_var_1]) happy_var_2 e)) ) (\r -> happyReturn (HappyAbsSyn101 r)) happyReduce_238 = happyMonadReduce 2 101 happyReduction_238 happyReduction_238 ((HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Module)) `HappyStk` happyRest) tk = happyThen (( checkExpr happy_var_2 >>= \e -> return (ModuleAnn (nIS happy_var_1 <++> ann e <** [happy_var_1]) e)) ) (\r -> happyReturn (HappyAbsSyn101 r)) happyReduce_239 = happyMonadReduce 2 101 happyReduction_239 happyReduction_239 ((HappyAbsSyn17 happy_var_2) `HappyStk` (HappyAbsSyn100 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkExpr happy_var_2 >>= \e -> return (Ann (happy_var_1 <> e) happy_var_1 e)) ) (\r -> happyReturn (HappyAbsSyn101 r)) happyReduce_240 = happyMonadReduce 1 102 happyReduction_240 happyReduction_240 ((HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkType happy_var_1) ) (\r -> happyReturn (HappyAbsSyn81 r)) happyReduce_241 = happySpecReduce_1 103 happyReduction_241 happyReduction_241 (HappyAbsSyn103 happy_var_1) = HappyAbsSyn103 (splitTilde happy_var_1 ) happyReduction_241 _ = notHappyAtAll happyReduce_242 = happySpecReduce_3 103 happyReduction_242 happyReduction_242 (HappyAbsSyn103 happy_var_3) (HappyAbsSyn34 happy_var_2) (HappyAbsSyn103 happy_var_1) = HappyAbsSyn103 (TyInfix (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 ) happyReduction_242 _ _ _ = notHappyAtAll happyReduce_243 = happySpecReduce_3 103 happyReduction_243 happyReduction_243 (HappyAbsSyn103 happy_var_3) (HappyAbsSyn34 happy_var_2) (HappyAbsSyn103 happy_var_1) = HappyAbsSyn103 (TyInfix (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 ) happyReduction_243 _ _ _ = notHappyAtAll happyReduce_244 = happySpecReduce_3 103 happyReduction_244 happyReduction_244 (HappyAbsSyn103 happy_var_3) (HappyTerminal (Loc happy_var_2 RightArrow)) (HappyAbsSyn103 happy_var_1) = HappyAbsSyn103 (TyFun (happy_var_1 <> happy_var_3 <** [happy_var_2]) (splitTilde happy_var_1) happy_var_3 ) happyReduction_244 _ _ _ = notHappyAtAll happyReduce_245 = happyMonadReduce 1 104 happyReduction_245 happyReduction_245 ((HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkType happy_var_1) ) (\r -> happyReturn (HappyAbsSyn81 r)) happyReduce_246 = happySpecReduce_3 105 happyReduction_246 happyReduction_246 (HappyAbsSyn103 happy_var_3) (HappyTerminal (Loc happy_var_2 DoubleColon)) (HappyAbsSyn232 happy_var_1) = HappyAbsSyn103 (let l = (happy_var_1 <> happy_var_3 <** [happy_var_2]) in TyPred l $ IParam l happy_var_1 happy_var_3 ) happyReduction_246 _ _ _ = notHappyAtAll happyReduce_247 = happySpecReduce_1 105 happyReduction_247 happyReduction_247 (HappyAbsSyn103 happy_var_1) = HappyAbsSyn103 (happy_var_1 ) happyReduction_247 _ = notHappyAtAll happyReduce_248 = happyMonadReduce 1 106 happyReduction_248 happyReduction_248 ((HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkType (splitTilde happy_var_1)) ) (\r -> happyReturn (HappyAbsSyn81 r)) happyReduce_249 = happyMonadReduce 1 107 happyReduction_249 happyReduction_249 ((HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkType happy_var_1) ) (\r -> happyReturn (HappyAbsSyn81 r)) happyReduce_250 = happySpecReduce_2 108 happyReduction_250 happyReduction_250 (HappyAbsSyn103 happy_var_2) (HappyAbsSyn103 happy_var_1) = HappyAbsSyn103 (TyApp (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 ) happyReduction_250 _ _ = notHappyAtAll happyReduce_251 = happySpecReduce_1 108 happyReduction_251 happyReduction_251 (HappyAbsSyn103 happy_var_1) = HappyAbsSyn103 (happy_var_1 ) happyReduction_251 _ = notHappyAtAll happyReduce_252 = happySpecReduce_1 109 happyReduction_252 happyReduction_252 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn103 (TyCon (ann happy_var_1) happy_var_1 ) happyReduction_252 _ = notHappyAtAll happyReduce_253 = happyMonadReduce 1 109 happyReduction_253 happyReduction_253 ((HappyAbsSyn100 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkTyVar happy_var_1) ) (\r -> happyReturn (HappyAbsSyn103 r)) happyReduce_254 = happySpecReduce_2 109 happyReduction_254 happyReduction_254 (HappyAbsSyn103 happy_var_2) (HappyAbsSyn111 happy_var_1) = HappyAbsSyn103 (let (mstrict, mupack) = happy_var_1 in bangType mstrict mupack happy_var_2 ) happyReduction_254 _ _ = notHappyAtAll happyReduce_255 = happySpecReduce_3 109 happyReduction_255 happyReduction_255 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn120 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn103 (TyTuple (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse (happy_var_3:snd happy_var_2))) Boxed (reverse (fst happy_var_2)) ) happyReduction_255 _ _ _ = notHappyAtAll happyReduce_256 = happySpecReduce_3 109 happyReduction_256 happyReduction_256 (HappyTerminal (Loc happy_var_3 RightHashParen)) (HappyAbsSyn120 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftHashParen)) = HappyAbsSyn103 (TyTuple (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse (happy_var_3:snd happy_var_2))) Unboxed (reverse (fst happy_var_2)) ) happyReduction_256 _ _ _ = notHappyAtAll happyReduce_257 = happySpecReduce_3 109 happyReduction_257 happyReduction_257 (HappyTerminal (Loc happy_var_3 RightSquare)) (HappyAbsSyn103 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftSquare)) = HappyAbsSyn103 (TyList (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_257 _ _ _ = notHappyAtAll happyReduce_258 = happySpecReduce_3 109 happyReduction_258 happyReduction_258 (HappyTerminal (Loc happy_var_3 ParArrayRightSquare)) (HappyAbsSyn103 happy_var_2) (HappyTerminal (Loc happy_var_1 ParArrayLeftSquare)) = HappyAbsSyn103 (TyParArray (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_258 _ _ _ = notHappyAtAll happyReduce_259 = happySpecReduce_3 109 happyReduction_259 happyReduction_259 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn103 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn103 (TyParen (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_259 _ _ _ = notHappyAtAll happyReduce_260 = happyReduce 5 109 happyReduction_260 happyReduction_260 ((HappyTerminal (Loc happy_var_5 RightParen)) `HappyStk` (HappyAbsSyn144 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 DoubleColon)) `HappyStk` (HappyAbsSyn103 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftParen)) `HappyStk` happyRest) = HappyAbsSyn103 (TyKind (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_3,happy_var_5]) happy_var_2 happy_var_4 ) `HappyStk` happyRest happyReduce_261 = happySpecReduce_3 109 happyReduction_261 happyReduction_261 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn168 happy_var_2) (HappyTerminal (Loc happy_var_1 THParenEscape)) = HappyAbsSyn103 (let l = (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) in TySplice l $ ParenSplice l happy_var_2 ) happyReduction_261 _ _ _ = notHappyAtAll happyReduce_262 = happySpecReduce_1 109 happyReduction_262 happyReduction_262 (HappyTerminal happy_var_1) = HappyAbsSyn103 (let Loc l (THIdEscape s) = happy_var_1 in TySplice (nIS l) $ IdSplice (nIS l) s ) happyReduction_262 _ = notHappyAtAll happyReduce_263 = happySpecReduce_1 109 happyReduction_263 happyReduction_263 (HappyTerminal (Loc happy_var_1 Underscore)) = HappyAbsSyn103 (TyWildCard (nIS happy_var_1) Nothing ) happyReduction_263 _ = notHappyAtAll happyReduce_264 = happySpecReduce_1 109 happyReduction_264 happyReduction_264 (HappyTerminal happy_var_1) = HappyAbsSyn103 (let Loc l (THQuasiQuote (n,q)) = happy_var_1 in TyQuasiQuote (nIS l) n q ) happyReduction_264 _ = notHappyAtAll happyReduce_265 = happyMonadReduce 1 109 happyReduction_265 happyReduction_265 ((HappyAbsSyn110 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled DataKinds >> return (TyPromoted (ann happy_var_1) happy_var_1)) ) (\r -> happyReturn (HappyAbsSyn103 r)) happyReduce_266 = happyMonadReduce 4 110 happyReduction_266 happyReduction_266 ((HappyTerminal (Loc happy_var_4 RightSquare)) `HappyStk` (HappyAbsSyn120 happy_var_3) `HappyStk` _ `HappyStk` (HappyTerminal (Loc happy_var_1 THVarQuote)) `HappyStk` happyRest) tk = happyThen (( PromotedList (happy_var_1 <^^> happy_var_4 <** (happy_var_1:reverse(happy_var_4:snd happy_var_3))) True . reverse <$> mapM checkType (fst happy_var_3)) ) (\r -> happyReturn (HappyAbsSyn110 r)) happyReduce_267 = happySpecReduce_3 110 happyReduction_267 happyReduction_267 (HappyTerminal (Loc happy_var_3 RightSquare)) _ (HappyTerminal (Loc happy_var_1 THVarQuote)) = HappyAbsSyn110 (PromotedList (happy_var_1 <^^> happy_var_3 <** [happy_var_1, happy_var_3]) True [] ) happyReduction_267 _ _ _ = notHappyAtAll happyReduce_268 = happyMonadReduce 3 110 happyReduction_268 happyReduction_268 ((HappyTerminal (Loc happy_var_3 RightSquare)) `HappyStk` (HappyAbsSyn120 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftSquare)) `HappyStk` happyRest) tk = happyThen (( PromotedList (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse(happy_var_3:snd happy_var_2))) False . reverse <$> mapM checkType (fst happy_var_2)) ) (\r -> happyReturn (HappyAbsSyn110 r)) happyReduce_269 = happyMonadReduce 4 110 happyReduction_269 happyReduction_269 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyAbsSyn120 happy_var_3) `HappyStk` _ `HappyStk` (HappyTerminal (Loc happy_var_1 THVarQuote)) `HappyStk` happyRest) tk = happyThen (( PromotedTuple (happy_var_1 <^^> happy_var_4 <** (happy_var_1:reverse(happy_var_4:snd happy_var_3))) . reverse <$> mapM checkType (fst happy_var_3)) ) (\r -> happyReturn (HappyAbsSyn110 r)) happyReduce_270 = happySpecReduce_3 110 happyReduction_270 happyReduction_270 (HappyTerminal (Loc happy_var_3 RightParen)) _ (HappyTerminal (Loc happy_var_1 THVarQuote)) = HappyAbsSyn110 (PromotedUnit (happy_var_1 <^^> happy_var_3 ) ) happyReduction_270 _ _ _ = notHappyAtAll happyReduce_271 = happySpecReduce_2 110 happyReduction_271 happyReduction_271 (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 THVarQuote)) = HappyAbsSyn110 (PromotedCon ((noInfoSpan happy_var_1 <++> ann happy_var_2) <** [happy_var_1]) True happy_var_2 ) happyReduction_271 _ _ = notHappyAtAll happyReduce_272 = happySpecReduce_2 110 happyReduction_272 happyReduction_272 (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 THVarQuote)) = HappyAbsSyn110 (PromotedCon ((noInfoSpan happy_var_1 <++> ann happy_var_2) <** [happy_var_1]) True happy_var_2 ) happyReduction_272 _ _ = notHappyAtAll happyReduce_273 = happySpecReduce_1 110 happyReduction_273 happyReduction_273 (HappyTerminal happy_var_1) = HappyAbsSyn110 (let Loc l (IntTok (i,raw)) = happy_var_1 in PromotedInteger (nIS l) i raw ) happyReduction_273 _ = notHappyAtAll happyReduce_274 = happySpecReduce_1 110 happyReduction_274 happyReduction_274 (HappyTerminal happy_var_1) = HappyAbsSyn110 (let Loc l (StringTok (s,raw)) = happy_var_1 in PromotedString (nIS l) s raw ) happyReduction_274 _ = notHappyAtAll happyReduce_275 = happySpecReduce_1 111 happyReduction_275 happyReduction_275 (HappyAbsSyn112 happy_var_1) = HappyAbsSyn111 ((Just happy_var_1, Nothing) ) happyReduction_275 _ = notHappyAtAll happyReduce_276 = happySpecReduce_1 111 happyReduction_276 happyReduction_276 (HappyAbsSyn113 happy_var_1) = HappyAbsSyn111 ((Nothing, Just happy_var_1) ) happyReduction_276 _ = notHappyAtAll happyReduce_277 = happySpecReduce_2 111 happyReduction_277 happyReduction_277 (HappyAbsSyn112 happy_var_2) (HappyAbsSyn113 happy_var_1) = HappyAbsSyn111 ((Just happy_var_2, Just happy_var_1) ) happyReduction_277 _ _ = notHappyAtAll happyReduce_278 = happySpecReduce_1 112 happyReduction_278 happyReduction_278 (HappyTerminal (Loc happy_var_1 Exclamation)) = HappyAbsSyn112 ((BangedTy, happy_var_1) ) happyReduction_278 _ = notHappyAtAll happyReduce_279 = happySpecReduce_1 112 happyReduction_279 happyReduction_279 (HappyTerminal (Loc happy_var_1 Tilde)) = HappyAbsSyn112 ((LazyTy, happy_var_1) ) happyReduction_279 _ = notHappyAtAll happyReduce_280 = happySpecReduce_2 113 happyReduction_280 happyReduction_280 (HappyTerminal (Loc happy_var_2 PragmaEnd)) (HappyTerminal (Loc happy_var_1 UNPACK)) = HappyAbsSyn113 ((Unpack ((nIS happy_var_1 <++> nIS happy_var_2) <** [happy_var_1,happy_var_2])) ) happyReduction_280 _ _ = notHappyAtAll happyReduce_281 = happySpecReduce_2 113 happyReduction_281 happyReduction_281 (HappyTerminal (Loc happy_var_2 PragmaEnd)) (HappyTerminal (Loc happy_var_1 NOUNPACK)) = HappyAbsSyn113 ((NoUnpack ((nIS happy_var_1 <++> nIS happy_var_2) <** [happy_var_1,happy_var_2])) ) happyReduction_281 _ _ = notHappyAtAll happyReduce_282 = happySpecReduce_1 114 happyReduction_282 happyReduction_282 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_282 _ = notHappyAtAll happyReduce_283 = happySpecReduce_2 114 happyReduction_283 happyReduction_283 (HappyTerminal (Loc happy_var_2 RightParen)) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn34 (unit_tycon_name (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) ) happyReduction_283 _ _ = notHappyAtAll happyReduce_284 = happySpecReduce_3 114 happyReduction_284 happyReduction_284 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyTerminal (Loc happy_var_2 RightArrow)) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn34 (fun_tycon_name (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_2,happy_var_3]) ) happyReduction_284 _ _ _ = notHappyAtAll happyReduce_285 = happySpecReduce_2 114 happyReduction_285 happyReduction_285 (HappyTerminal (Loc happy_var_2 RightSquare)) (HappyTerminal (Loc happy_var_1 LeftSquare)) = HappyAbsSyn34 (list_tycon_name (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) ) happyReduction_285 _ _ = notHappyAtAll happyReduce_286 = happySpecReduce_3 114 happyReduction_286 happyReduction_286 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn27 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn34 (tuple_tycon_name (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse happy_var_2 ++ [happy_var_3])) Boxed (length happy_var_2) ) happyReduction_286 _ _ _ = notHappyAtAll happyReduce_287 = happySpecReduce_2 114 happyReduction_287 happyReduction_287 (HappyTerminal (Loc happy_var_2 RightHashParen)) (HappyTerminal (Loc happy_var_1 LeftHashParen)) = HappyAbsSyn34 (unboxed_singleton_tycon_name (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) ) happyReduction_287 _ _ = notHappyAtAll happyReduce_288 = happySpecReduce_3 114 happyReduction_288 happyReduction_288 (HappyTerminal (Loc happy_var_3 RightHashParen)) (HappyAbsSyn27 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftHashParen)) = HappyAbsSyn34 (tuple_tycon_name (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse happy_var_2 ++ [happy_var_3])) Unboxed (length happy_var_2) ) happyReduction_288 _ _ _ = notHappyAtAll happyReduce_289 = happySpecReduce_1 115 happyReduction_289 happyReduction_289 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_289 _ = notHappyAtAll happyReduce_290 = happySpecReduce_3 115 happyReduction_290 happyReduction_290 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn34 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 ) happyReduction_290 _ _ _ = notHappyAtAll happyReduce_291 = happySpecReduce_3 115 happyReduction_291 happyReduction_291 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn34 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 ) happyReduction_291 _ _ _ = notHappyAtAll happyReduce_292 = happySpecReduce_1 116 happyReduction_292 happyReduction_292 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_292 _ = notHappyAtAll happyReduce_293 = happyMonadReduce 1 117 happyReduction_293 happyReduction_293 ((HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkType happy_var_1) ) (\r -> happyReturn (HappyAbsSyn81 r)) happyReduce_294 = happyReduce 4 118 happyReduction_294 happyReduction_294 ((HappyAbsSyn103 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 Dot)) `HappyStk` (HappyAbsSyn122 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Forall)) `HappyStk` happyRest) = HappyAbsSyn103 (mkTyForall (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) (Just (reverse (fst happy_var_2))) Nothing happy_var_4 ) `HappyStk` happyRest happyReduce_295 = happySpecReduce_2 118 happyReduction_295 happyReduction_295 (HappyAbsSyn103 happy_var_2) (HappyAbsSyn119 happy_var_1) = HappyAbsSyn103 (mkTyForall (happy_var_1 <> happy_var_2) Nothing (Just happy_var_1) happy_var_2 ) happyReduction_295 _ _ = notHappyAtAll happyReduce_296 = happySpecReduce_1 118 happyReduction_296 happyReduction_296 (HappyAbsSyn103 happy_var_1) = HappyAbsSyn103 (happy_var_1 ) happyReduction_296 _ = notHappyAtAll happyReduce_297 = happyMonadReduce 2 119 happyReduction_297 happyReduction_297 ((HappyTerminal (Loc happy_var_2 DoubleArrow)) `HappyStk` (HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkPContext $ (amap (\l -> l <++> nIS happy_var_2 <** (srcInfoPoints l ++ [happy_var_2]))) (splitTilde happy_var_1)) ) (\r -> happyReturn (HappyAbsSyn119 r)) happyReduce_298 = happySpecReduce_3 120 happyReduction_298 happyReduction_298 (HappyAbsSyn103 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn120 happy_var_1) = HappyAbsSyn120 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) ) happyReduction_298 _ _ _ = notHappyAtAll happyReduce_299 = happySpecReduce_1 121 happyReduction_299 happyReduction_299 (HappyAbsSyn103 happy_var_1) = HappyAbsSyn120 (([happy_var_1],[]) ) happyReduction_299 _ = notHappyAtAll happyReduce_300 = happySpecReduce_3 121 happyReduction_300 happyReduction_300 (HappyAbsSyn103 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn120 happy_var_1) = HappyAbsSyn120 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) ) happyReduction_300 _ _ _ = notHappyAtAll happyReduce_301 = happySpecReduce_2 122 happyReduction_301 happyReduction_301 (HappyAbsSyn123 happy_var_2) (HappyAbsSyn122 happy_var_1) = HappyAbsSyn122 ((happy_var_2 : fst happy_var_1, Just (snd happy_var_1 ann happy_var_2)) ) happyReduction_301 _ _ = notHappyAtAll happyReduce_302 = happySpecReduce_0 122 happyReduction_302 happyReduction_302 = HappyAbsSyn122 (([],Nothing) ) happyReduce_303 = happySpecReduce_1 123 happyReduction_303 happyReduction_303 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn123 (UnkindedVar (ann happy_var_1) happy_var_1 ) happyReduction_303 _ = notHappyAtAll happyReduce_304 = happyReduce 5 123 happyReduction_304 happyReduction_304 ((HappyTerminal (Loc happy_var_5 RightParen)) `HappyStk` (HappyAbsSyn144 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 DoubleColon)) `HappyStk` (HappyAbsSyn100 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftParen)) `HappyStk` happyRest) = HappyAbsSyn123 (KindedVar (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_3,happy_var_5]) happy_var_2 happy_var_4 ) `HappyStk` happyRest happyReduce_305 = happySpecReduce_2 124 happyReduction_305 happyReduction_305 (HappyAbsSyn100 happy_var_2) (HappyAbsSyn124 happy_var_1) = HappyAbsSyn124 ((happy_var_2 : fst happy_var_1, Just (snd happy_var_1 ann happy_var_2)) ) happyReduction_305 _ _ = notHappyAtAll happyReduce_306 = happySpecReduce_0 124 happyReduction_306 happyReduction_306 = HappyAbsSyn124 (([], Nothing) ) happyReduce_307 = happySpecReduce_2 125 happyReduction_307 happyReduction_307 (HappyAbsSyn100 happy_var_2) (HappyAbsSyn124 happy_var_1) = HappyAbsSyn125 ((happy_var_2 : fst happy_var_1, snd happy_var_1 ann happy_var_2) ) happyReduction_307 _ _ = notHappyAtAll happyReduce_308 = happySpecReduce_0 126 happyReduction_308 happyReduction_308 = HappyAbsSyn126 (([],[], Nothing) ) happyReduce_309 = happyMonadReduce 2 126 happyReduction_309 happyReduction_309 ((HappyAbsSyn127 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 Bar)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled FunctionalDependencies ; let {(fds,ss,l) = happy_var_2} ; return (reverse fds, happy_var_1 : reverse ss, Just (nIS happy_var_1 <++> l)) }) ) (\r -> happyReturn (HappyAbsSyn126 r)) happyReduce_310 = happySpecReduce_3 127 happyReduction_310 happyReduction_310 (HappyAbsSyn128 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn127 happy_var_1) = HappyAbsSyn127 (let (fds,ss,l) = happy_var_1 in (happy_var_3 : fds, happy_var_2 : ss, l <++> ann happy_var_3) ) happyReduction_310 _ _ _ = notHappyAtAll happyReduce_311 = happySpecReduce_1 127 happyReduction_311 happyReduction_311 (HappyAbsSyn128 happy_var_1) = HappyAbsSyn127 (([happy_var_1],[],ann happy_var_1) ) happyReduction_311 _ = notHappyAtAll happyReduce_312 = happySpecReduce_3 128 happyReduction_312 happyReduction_312 (HappyAbsSyn125 happy_var_3) (HappyTerminal (Loc happy_var_2 RightArrow)) (HappyAbsSyn124 happy_var_1) = HappyAbsSyn128 (FunDep (snd happy_var_1 nIS happy_var_2 <++> snd happy_var_3 <** [happy_var_2]) (reverse (fst happy_var_1)) (reverse (fst happy_var_3)) ) happyReduction_312 _ _ _ = notHappyAtAll happyReduce_313 = happyMonadReduce 4 129 happyReduction_313 happyReduction_313 ((HappyTerminal (Loc happy_var_4 RightCurly)) `HappyStk` (HappyAbsSyn130 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftCurly)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Where)) `HappyStk` happyRest) tk = happyThen (( return (fst happy_var_3, happy_var_1 : happy_var_2 : snd happy_var_3 ++ [happy_var_4], Just $ happy_var_1 <^^> happy_var_4)) ) (\r -> happyReturn (HappyAbsSyn129 r)) happyReduce_314 = happyMonadReduce 4 129 happyReduction_314 happyReduction_314 ((HappyAbsSyn258 happy_var_4) `HappyStk` (HappyAbsSyn130 happy_var_3) `HappyStk` (HappyAbsSyn258 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Where)) `HappyStk` happyRest) tk = happyThen (( return (fst happy_var_3, happy_var_1 : happy_var_2 : snd happy_var_3 ++ [happy_var_4], Just $ happy_var_1 <^^> happy_var_4)) ) (\r -> happyReturn (HappyAbsSyn129 r)) happyReduce_315 = happyMonadReduce 0 129 happyReduction_315 happyReduction_315 (happyRest) tk = happyThen (( checkEnabled EmptyDataDecls >> return ([],[],Nothing)) ) (\r -> happyReturn (HappyAbsSyn129 r)) happyReduce_316 = happySpecReduce_3 130 happyReduction_316 happyReduction_316 (HappyAbsSyn27 happy_var_3) (HappyAbsSyn130 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn130 ((fst happy_var_2, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3) ) happyReduction_316 _ _ _ = notHappyAtAll happyReduce_317 = happySpecReduce_3 131 happyReduction_317 happyReduction_317 (HappyAbsSyn132 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn130 happy_var_1) = HappyAbsSyn130 ((happy_var_3 ++ fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) ) happyReduction_317 _ _ _ = notHappyAtAll happyReduce_318 = happySpecReduce_1 131 happyReduction_318 happyReduction_318 (HappyAbsSyn132 happy_var_1) = HappyAbsSyn130 ((happy_var_1,[]) ) happyReduction_318 _ = notHappyAtAll happyReduce_319 = happyMonadReduce 3 132 happyReduction_319 happyReduction_319 ((HappyAbsSyn81 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 DoubleColon)) `HappyStk` (HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { c <- checkUnQual happy_var_1; return [GadtDecl (happy_var_1 <> happy_var_3 <** [happy_var_2]) c Nothing happy_var_3] }) ) (\r -> happyReturn (HappyAbsSyn132 r)) happyReduce_320 = happyMonadReduce 7 132 happyReduction_320 happyReduction_320 ((HappyAbsSyn81 happy_var_7) `HappyStk` (HappyTerminal (Loc happy_var_6 RightArrow)) `HappyStk` (HappyTerminal (Loc happy_var_5 RightCurly)) `HappyStk` (HappyAbsSyn139 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 LeftCurly)) `HappyStk` (HappyTerminal (Loc happy_var_2 DoubleColon)) `HappyStk` (HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { c <- checkUnQual happy_var_1; return [GadtDecl (happy_var_1 <> happy_var_7 <** [happy_var_2,happy_var_3,happy_var_5,happy_var_6] ++ snd happy_var_4) c (Just (reverse $ fst happy_var_4)) happy_var_7] }) ) (\r -> happyReturn (HappyAbsSyn132 r)) happyReduce_321 = happySpecReduce_2 133 happyReduction_321 happyReduction_321 (HappyAbsSyn134 happy_var_2) (HappyTerminal (Loc happy_var_1 Equals)) = HappyAbsSyn133 (let (ds,ss,l) = happy_var_2 in (ds, happy_var_1 : reverse ss, Just $ nIS happy_var_1 <++> l) ) happyReduction_321 _ _ = notHappyAtAll happyReduce_322 = happySpecReduce_3 134 happyReduction_322 happyReduction_322 (HappyAbsSyn135 happy_var_3) (HappyTerminal (Loc happy_var_2 Bar)) (HappyAbsSyn134 happy_var_1) = HappyAbsSyn134 (let (ds,ss,l) = happy_var_1 in (happy_var_3 : ds, happy_var_2 : ss, l <++> ann happy_var_3) ) happyReduction_322 _ _ _ = notHappyAtAll happyReduce_323 = happySpecReduce_1 134 happyReduction_323 happyReduction_323 (HappyAbsSyn135 happy_var_1) = HappyAbsSyn134 (([happy_var_1],[],ann happy_var_1) ) happyReduction_323 _ = notHappyAtAll happyReduce_324 = happyMonadReduce 3 135 happyReduction_324 happyReduction_324 ((HappyAbsSyn137 happy_var_3) `HappyStk` (HappyAbsSyn119 happy_var_2) `HappyStk` (HappyAbsSyn136 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled ExistentialQuantification ; ctxt <- checkContext (Just happy_var_2) ; let {(mtvs,ss,ml) = happy_var_1} ; return $ QualConDecl (ml ann happy_var_3 <** ss) mtvs ctxt happy_var_3 }) ) (\r -> happyReturn (HappyAbsSyn135 r)) happyReduce_325 = happySpecReduce_2 135 happyReduction_325 happyReduction_325 (HappyAbsSyn137 happy_var_2) (HappyAbsSyn136 happy_var_1) = HappyAbsSyn135 (let (mtvs, ss, ml) = happy_var_1 in QualConDecl (ml ann happy_var_2 <** ss) mtvs Nothing happy_var_2 ) happyReduction_325 _ _ = notHappyAtAll happyReduce_326 = happyMonadReduce 3 136 happyReduction_326 happyReduction_326 ((HappyTerminal (Loc happy_var_3 Dot)) `HappyStk` (HappyAbsSyn122 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Forall)) `HappyStk` happyRest) tk = happyThen (( checkEnabled ExistentialQuantification >> return (Just (fst happy_var_2), [happy_var_1,happy_var_3], Just $ happy_var_1 <^^> happy_var_3)) ) (\r -> happyReturn (HappyAbsSyn136 r)) happyReduce_327 = happySpecReduce_0 136 happyReduction_327 happyReduction_327 = HappyAbsSyn136 ((Nothing, [], Nothing) ) happyReduce_328 = happySpecReduce_1 137 happyReduction_328 happyReduction_328 (HappyAbsSyn138 happy_var_1) = HappyAbsSyn137 (let (n,ts,l) = happy_var_1 in ConDecl l n ts ) happyReduction_328 _ = notHappyAtAll happyReduce_329 = happySpecReduce_3 137 happyReduction_329 happyReduction_329 (HappyAbsSyn81 happy_var_3) (HappyAbsSyn100 happy_var_2) (HappyAbsSyn81 happy_var_1) = HappyAbsSyn137 (InfixConDecl (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 ) happyReduction_329 _ _ _ = notHappyAtAll happyReduce_330 = happyMonadReduce 3 137 happyReduction_330 happyReduction_330 ((HappyTerminal (Loc happy_var_3 RightCurly)) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftCurly)) `HappyStk` (HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { c <- checkUnQual happy_var_1; return $ RecDecl (ann happy_var_1 <++> nIS happy_var_3 <** [happy_var_2,happy_var_3]) c [] }) ) (\r -> happyReturn (HappyAbsSyn137 r)) happyReduce_331 = happyMonadReduce 4 137 happyReduction_331 happyReduction_331 ((HappyTerminal (Loc happy_var_4 RightCurly)) `HappyStk` (HappyAbsSyn139 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftCurly)) `HappyStk` (HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { c <- checkUnQual happy_var_1; return $ RecDecl (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2:reverse (snd happy_var_3) ++ [happy_var_4])) c (reverse (fst happy_var_3)) }) ) (\r -> happyReturn (HappyAbsSyn137 r)) happyReduce_332 = happyMonadReduce 1 138 happyReduction_332 happyReduction_332 ((HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { (c,ts) <- splitTyConApp happy_var_1; return (c, ts, ann happy_var_1) }) ) (\r -> happyReturn (HappyAbsSyn138 r)) happyReduce_333 = happySpecReduce_3 139 happyReduction_333 happyReduction_333 (HappyAbsSyn140 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn139 happy_var_1) = HappyAbsSyn139 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) ) happyReduction_333 _ _ _ = notHappyAtAll happyReduce_334 = happySpecReduce_1 139 happyReduction_334 happyReduction_334 (HappyAbsSyn140 happy_var_1) = HappyAbsSyn139 (([happy_var_1],[]) ) happyReduction_334 _ = notHappyAtAll happyReduce_335 = happySpecReduce_3 140 happyReduction_335 happyReduction_335 (HappyAbsSyn81 happy_var_3) (HappyTerminal (Loc happy_var_2 DoubleColon)) (HappyAbsSyn87 happy_var_1) = HappyAbsSyn140 (let (ns,ss,l) = happy_var_1 in FieldDecl (l <++> ann happy_var_3 <** (reverse ss ++ [happy_var_2])) (reverse ns) happy_var_3 ) happyReduction_335 _ _ _ = notHappyAtAll happyReduce_336 = happySpecReduce_0 141 happyReduction_336 happyReduction_336 = HappyAbsSyn141 (Nothing ) happyReduce_337 = happySpecReduce_2 141 happyReduction_337 happyReduction_337 (HappyAbsSyn143 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Deriving)) = HappyAbsSyn141 (let l = nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1] in Just $ Deriving l [IRule (ann happy_var_2) Nothing Nothing happy_var_2] ) happyReduction_337 _ _ = notHappyAtAll happyReduce_338 = happySpecReduce_3 141 happyReduction_338 happyReduction_338 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyTerminal (Loc happy_var_2 LeftParen)) (HappyTerminal (Loc happy_var_1 KW_Deriving)) = HappyAbsSyn141 (Just $ Deriving (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_2,happy_var_3]) [] ) happyReduction_338 _ _ _ = notHappyAtAll happyReduce_339 = happyReduce 4 141 happyReduction_339 happyReduction_339 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyAbsSyn142 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftParen)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Deriving)) `HappyStk` happyRest) = HappyAbsSyn141 (-- Distinguish deriving (Show) from deriving Show (#189) case fst happy_var_3 of [ts] -> Just $ Deriving (happy_var_1 <^^> happy_var_4 <** [happy_var_1]) [IParen (happy_var_2 <^^> happy_var_4 <** [happy_var_2,happy_var_4]) ts] tss -> Just $ Deriving (happy_var_1 <^^> happy_var_4 <** happy_var_1:happy_var_2: reverse (snd happy_var_3) ++ [happy_var_4]) (reverse tss) ) `HappyStk` happyRest happyReduce_340 = happyMonadReduce 1 142 happyReduction_340 happyReduction_340 ((HappyAbsSyn120 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkDeriving (fst happy_var_1) >>= \ds -> return (ds, snd happy_var_1)) ) (\r -> happyReturn (HappyAbsSyn142 r)) happyReduce_341 = happySpecReduce_1 143 happyReduction_341 happyReduction_341 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn143 (IHCon (ann happy_var_1) happy_var_1 ) happyReduction_341 _ = notHappyAtAll happyReduce_342 = happyMonadReduce 1 144 happyReduction_342 happyReduction_342 ((HappyAbsSyn144 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled KindSignatures >> return happy_var_1) ) (\r -> happyReturn (HappyAbsSyn144 r)) happyReduce_343 = happySpecReduce_1 145 happyReduction_343 happyReduction_343 (HappyAbsSyn144 happy_var_1) = HappyAbsSyn144 (happy_var_1 ) happyReduction_343 _ = notHappyAtAll happyReduce_344 = happySpecReduce_3 145 happyReduction_344 happyReduction_344 (HappyAbsSyn144 happy_var_3) (HappyTerminal (Loc happy_var_2 RightArrow)) (HappyAbsSyn144 happy_var_1) = HappyAbsSyn144 (KindFn (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_344 _ _ _ = notHappyAtAll happyReduce_345 = happySpecReduce_1 146 happyReduction_345 happyReduction_345 (HappyAbsSyn144 happy_var_1) = HappyAbsSyn144 (happy_var_1 ) happyReduction_345 _ = notHappyAtAll happyReduce_346 = happySpecReduce_2 146 happyReduction_346 happyReduction_346 (HappyAbsSyn144 happy_var_2) (HappyAbsSyn144 happy_var_1) = HappyAbsSyn144 (KindApp (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 ) happyReduction_346 _ _ = notHappyAtAll happyReduce_347 = happySpecReduce_1 147 happyReduction_347 happyReduction_347 (HappyTerminal (Loc happy_var_1 Star)) = HappyAbsSyn144 (KindStar (nIS happy_var_1) ) happyReduction_347 _ = notHappyAtAll happyReduce_348 = happySpecReduce_3 147 happyReduction_348 happyReduction_348 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn144 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn144 (KindParen (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_348 _ _ _ = notHappyAtAll happyReduce_349 = happyMonadReduce 1 147 happyReduction_349 happyReduction_349 ((HappyAbsSyn144 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkKind happy_var_1 >> return happy_var_1) ) (\r -> happyReturn (HappyAbsSyn144 r)) happyReduce_350 = happyMonadReduce 1 147 happyReduction_350 happyReduction_350 ((HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled PolyKinds >> return (KindVar (ann happy_var_1) happy_var_1)) ) (\r -> happyReturn (HappyAbsSyn144 r)) happyReduce_351 = happySpecReduce_1 148 happyReduction_351 happyReduction_351 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn144 (KindVar (ann happy_var_1) happy_var_1 ) happyReduction_351 _ = notHappyAtAll happyReduce_352 = happySpecReduce_2 148 happyReduction_352 happyReduction_352 (HappyTerminal (Loc happy_var_2 RightParen)) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn144 (let l = happy_var_1 <^^> happy_var_2 in KindVar l (unit_tycon_name l) ) happyReduction_352 _ _ = notHappyAtAll happyReduce_353 = happyReduce 5 148 happyReduction_353 happyReduction_353 ((HappyTerminal (Loc happy_var_5 RightParen)) `HappyStk` (HappyAbsSyn149 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 Comma)) `HappyStk` (HappyAbsSyn144 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftParen)) `HappyStk` happyRest) = HappyAbsSyn144 (KindTuple (happy_var_1 <^^> happy_var_5 <** (happy_var_1:happy_var_3:reverse (happy_var_5:snd happy_var_4))) (happy_var_2:reverse (fst happy_var_4)) ) `HappyStk` happyRest happyReduce_354 = happySpecReduce_3 148 happyReduction_354 happyReduction_354 (HappyTerminal (Loc happy_var_3 RightSquare)) (HappyAbsSyn144 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftSquare)) = HappyAbsSyn144 (KindList ((happy_var_1 <^^> happy_var_3) <** [happy_var_1, happy_var_3]) happy_var_2 ) happyReduction_354 _ _ _ = notHappyAtAll happyReduce_355 = happySpecReduce_1 149 happyReduction_355 happyReduction_355 (HappyAbsSyn144 happy_var_1) = HappyAbsSyn149 (([happy_var_1], []) ) happyReduction_355 _ = notHappyAtAll happyReduce_356 = happySpecReduce_3 149 happyReduction_356 happyReduction_356 (HappyAbsSyn149 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn144 happy_var_1) = HappyAbsSyn149 ((happy_var_1 : (fst happy_var_3), happy_var_2 : (snd happy_var_3)) ) happyReduction_356 _ _ _ = notHappyAtAll happyReduce_357 = happySpecReduce_0 150 happyReduction_357 happyReduction_357 = HappyAbsSyn150 ((Nothing,[]) ) happyReduce_358 = happySpecReduce_2 150 happyReduction_358 happyReduction_358 (HappyAbsSyn144 happy_var_2) (HappyTerminal (Loc happy_var_1 DoubleColon)) = HappyAbsSyn150 ((Just happy_var_2,[happy_var_1]) ) happyReduction_358 _ _ = notHappyAtAll happyReduce_359 = happyMonadReduce 4 151 happyReduction_359 happyReduction_359 ((HappyTerminal (Loc happy_var_4 RightCurly)) `HappyStk` (HappyAbsSyn152 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftCurly)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Where)) `HappyStk` happyRest) tk = happyThen (( checkClassBody (fst happy_var_3) >>= \vs -> return (Just vs, happy_var_1:happy_var_2: snd happy_var_3 ++ [happy_var_4], Just (happy_var_1 <^^> happy_var_4))) ) (\r -> happyReturn (HappyAbsSyn151 r)) happyReduce_360 = happyMonadReduce 4 151 happyReduction_360 happyReduction_360 ((HappyAbsSyn258 happy_var_4) `HappyStk` (HappyAbsSyn152 happy_var_3) `HappyStk` (HappyAbsSyn258 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Where)) `HappyStk` happyRest) tk = happyThen (( do { vs <- checkClassBody (fst happy_var_3); let { l' = if null (fst happy_var_3) then nIS happy_var_4 else (ann . last $ fst happy_var_3) }; return (Just vs, happy_var_1:happy_var_2: snd happy_var_3 ++ [happy_var_4], Just (nIS happy_var_1 <++> l')) }) ) (\r -> happyReturn (HappyAbsSyn151 r)) happyReduce_361 = happySpecReduce_0 151 happyReduction_361 happyReduction_361 = HappyAbsSyn151 ((Nothing,[],Nothing) ) happyReduce_362 = happyMonadReduce 3 152 happyReduction_362 happyReduction_362 ((HappyAbsSyn27 happy_var_3) `HappyStk` (HappyAbsSyn152 happy_var_2) `HappyStk` (HappyAbsSyn27 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkRevClsDecls (fst happy_var_2) >>= \cs -> return (cs, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3)) ) (\r -> happyReturn (HappyAbsSyn152 r)) happyReduce_363 = happySpecReduce_1 152 happyReduction_363 happyReduction_363 (HappyAbsSyn27 happy_var_1) = HappyAbsSyn152 (([],reverse happy_var_1) ) happyReduction_363 _ = notHappyAtAll happyReduce_364 = happySpecReduce_3 153 happyReduction_364 happyReduction_364 (HappyAbsSyn154 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn152 happy_var_1) = HappyAbsSyn152 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) ) happyReduction_364 _ _ _ = notHappyAtAll happyReduce_365 = happySpecReduce_1 153 happyReduction_365 happyReduction_365 (HappyAbsSyn154 happy_var_1) = HappyAbsSyn152 (([happy_var_1],[]) ) happyReduction_365 _ = notHappyAtAll happyReduce_366 = happySpecReduce_1 154 happyReduction_366 happyReduction_366 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn154 (ClsDecl (ann happy_var_1) happy_var_1 ) happyReduction_366 _ = notHappyAtAll happyReduce_367 = happyMonadReduce 1 154 happyReduction_367 happyReduction_367 ((HappyAbsSyn154 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled TypeFamilies >> return happy_var_1) ) (\r -> happyReturn (HappyAbsSyn154 r)) happyReduce_368 = happyMonadReduce 2 154 happyReduction_368 happyReduction_368 ((HappyAbsSyn49 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Default)) `HappyStk` happyRest) tk = happyThen (( checkEnabled DefaultSignatures >> checkDefSigDef happy_var_2 >>= \(n,t,l) -> return (ClsDefSig (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1,l]) n t)) ) (\r -> happyReturn (HappyAbsSyn154 r)) happyReduce_369 = happySpecReduce_0 155 happyReduction_369 happyReduction_369 = HappyAbsSyn27 ([] ) happyReduce_370 = happySpecReduce_1 155 happyReduction_370 happyReduction_370 (HappyTerminal (Loc happy_var_1 KW_Family)) = HappyAbsSyn27 ([happy_var_1] ) happyReduction_370 _ = notHappyAtAll happyReduce_371 = happyMonadReduce 4 156 happyReduction_371 happyReduction_371 ((HappyAbsSyn59 happy_var_4) `HappyStk` (HappyAbsSyn103 happy_var_3) `HappyStk` _ `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Data)) `HappyStk` happyRest) tk = happyThen (( do { (cs,dh) <- checkDataHeader happy_var_3; return (ClsDataFam (nIS happy_var_1 <++> ann happy_var_3 <+?> (fmap ann) happy_var_4 <** [happy_var_1]) cs dh happy_var_4) }) ) (\r -> happyReturn (HappyAbsSyn154 r)) happyReduce_372 = happyMonadReduce 3 156 happyReduction_372 happyReduction_372 ((HappyAbsSyn62 happy_var_3) `HappyStk` (HappyAbsSyn103 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( mkAssocType happy_var_1 happy_var_2 happy_var_3) ) (\r -> happyReturn (HappyAbsSyn154 r)) happyReduce_373 = happyMonadReduce 4 156 happyReduction_373 happyReduction_373 ((HappyAbsSyn61 happy_var_4) `HappyStk` (HappyAbsSyn103 happy_var_3) `HappyStk` _ `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( do { dh <- checkSimpleType happy_var_3; return (ClsTyFam (nIS happy_var_1 <++> ann happy_var_3 <+?> (fmap ann) (fst happy_var_4) <+?> (fmap ann) (snd happy_var_4) <** [happy_var_1]) dh (fst happy_var_4) (snd happy_var_4)) }) ) (\r -> happyReturn (HappyAbsSyn154 r)) happyReduce_374 = happySpecReduce_3 156 happyReduction_374 happyReduction_374 (HappyAbsSyn70 happy_var_3) (HappyTerminal (Loc happy_var_2 KW_Instance)) (HappyTerminal (Loc happy_var_1 KW_Type)) = HappyAbsSyn154 (ClsTyDef (nIS happy_var_1 <++> ann happy_var_3 <** [happy_var_1,happy_var_2]) happy_var_3 ) happyReduction_374 _ _ _ = notHappyAtAll happyReduce_375 = happyMonadReduce 4 157 happyReduction_375 happyReduction_375 ((HappyTerminal (Loc happy_var_4 RightCurly)) `HappyStk` (HappyAbsSyn158 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftCurly)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Where)) `HappyStk` happyRest) tk = happyThen (( checkInstBody (fst happy_var_3) >>= \vs -> return (Just vs, happy_var_1:happy_var_2: snd happy_var_3 ++ [happy_var_4], Just (happy_var_1 <^^> happy_var_4))) ) (\r -> happyReturn (HappyAbsSyn157 r)) happyReduce_376 = happyMonadReduce 4 157 happyReduction_376 happyReduction_376 ((HappyAbsSyn258 happy_var_4) `HappyStk` (HappyAbsSyn158 happy_var_3) `HappyStk` (HappyAbsSyn258 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Where)) `HappyStk` happyRest) tk = happyThen (( checkInstBody (fst happy_var_3) >>= \vs -> return (Just vs, happy_var_1:happy_var_2: snd happy_var_3 ++ [happy_var_4], Just (happy_var_1 <^^> happy_var_4))) ) (\r -> happyReturn (HappyAbsSyn157 r)) happyReduce_377 = happySpecReduce_0 157 happyReduction_377 happyReduction_377 = HappyAbsSyn157 ((Nothing, [], Nothing) ) happyReduce_378 = happyMonadReduce 3 158 happyReduction_378 happyReduction_378 ((HappyAbsSyn27 happy_var_3) `HappyStk` (HappyAbsSyn158 happy_var_2) `HappyStk` (HappyAbsSyn27 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkRevInstDecls (fst happy_var_2) >>= \is -> return (is, reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3)) ) (\r -> happyReturn (HappyAbsSyn158 r)) happyReduce_379 = happySpecReduce_1 158 happyReduction_379 happyReduction_379 (HappyAbsSyn27 happy_var_1) = HappyAbsSyn158 (([],reverse happy_var_1) ) happyReduction_379 _ = notHappyAtAll happyReduce_380 = happySpecReduce_3 159 happyReduction_380 happyReduction_380 (HappyAbsSyn160 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn158 happy_var_1) = HappyAbsSyn158 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) ) happyReduction_380 _ _ _ = notHappyAtAll happyReduce_381 = happySpecReduce_1 159 happyReduction_381 happyReduction_381 (HappyAbsSyn160 happy_var_1) = HappyAbsSyn158 (([happy_var_1],[]) ) happyReduction_381 _ = notHappyAtAll happyReduce_382 = happySpecReduce_1 160 happyReduction_382 happyReduction_382 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn160 (InsDecl (ann happy_var_1) happy_var_1 ) happyReduction_382 _ = notHappyAtAll happyReduce_383 = happyMonadReduce 1 160 happyReduction_383 happyReduction_383 ((HappyAbsSyn160 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled TypeFamilies >> return happy_var_1) ) (\r -> happyReturn (HappyAbsSyn160 r)) happyReduce_384 = happySpecReduce_1 160 happyReduction_384 happyReduction_384 (HappyAbsSyn49 happy_var_1) = HappyAbsSyn160 (InsDecl (ann happy_var_1) happy_var_1 ) happyReduction_384 _ = notHappyAtAll happyReduce_385 = happyMonadReduce 1 160 happyReduction_385 happyReduction_385 ((HappyAbsSyn49 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled InstanceSigs >> return (InsDecl (ann happy_var_1) happy_var_1)) ) (\r -> happyReturn (HappyAbsSyn160 r)) happyReduce_386 = happyMonadReduce 4 161 happyReduction_386 happyReduction_386 ((HappyAbsSyn81 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 Equals)) `HappyStk` (HappyAbsSyn81 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Type)) `HappyStk` happyRest) tk = happyThen (( do { -- no checkSimpleType happy_var_4 since dtype may contain type patterns return (InsType (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) happy_var_2 happy_var_4) }) ) (\r -> happyReturn (HappyAbsSyn160 r)) happyReduce_387 = happyMonadReduce 4 161 happyReduction_387 happyReduction_387 ((HappyAbsSyn141 happy_var_4) `HappyStk` (HappyAbsSyn133 happy_var_3) `HappyStk` (HappyAbsSyn81 happy_var_2) `HappyStk` (HappyAbsSyn71 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { -- (cs,c,t) <- checkDataHeader happy_var_4; let {(ds,ss,minf) = happy_var_3}; checkDataOrNew happy_var_1 ds; return (InsData (happy_var_1 <> happy_var_2 <+?> minf <+?> fmap ann happy_var_4 <** ss ) happy_var_1 happy_var_2 (reverse ds) happy_var_4) }) ) (\r -> happyReturn (HappyAbsSyn160 r)) happyReduce_388 = happyMonadReduce 5 161 happyReduction_388 happyReduction_388 ((HappyAbsSyn141 happy_var_5) `HappyStk` (HappyAbsSyn129 happy_var_4) `HappyStk` (HappyAbsSyn150 happy_var_3) `HappyStk` (HappyAbsSyn81 happy_var_2) `HappyStk` (HappyAbsSyn71 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { -- (cs,c,t) <- checkDataHeader happy_var_4; let { (gs,ss,minf) = happy_var_4 } ; checkDataOrNewG happy_var_1 gs; return $ InsGData (ann happy_var_1 <+?> minf <+?> fmap ann happy_var_5 <** (snd happy_var_3 ++ ss)) happy_var_1 happy_var_2 (fst happy_var_3) (reverse gs) happy_var_5 }) ) (\r -> happyReturn (HappyAbsSyn160 r)) happyReduce_389 = happyMonadReduce 4 162 happyReduction_389 happyReduction_389 ((HappyAbsSyn163 happy_var_4) `HappyStk` (HappyAbsSyn165 happy_var_3) `HappyStk` (HappyAbsSyn164 happy_var_2) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkValDef ((happy_var_1 <> happy_var_3 <+?> (fmap ann) (fst happy_var_4)) <** (snd happy_var_4)) happy_var_1 happy_var_2 happy_var_3 (fst happy_var_4)) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_390 = happyMonadReduce 4 162 happyReduction_390 happyReduction_390 ((HappyAbsSyn163 happy_var_4) `HappyStk` (HappyAbsSyn165 happy_var_3) `HappyStk` (HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 Exclamation)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled BangPatterns ; let { l = nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1] }; p <- checkPattern (BangPat l happy_var_2); return $ PatBind (p <> happy_var_3 <+?> (fmap ann) (fst happy_var_4) <** snd happy_var_4) p happy_var_3 (fst happy_var_4) }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_391 = happySpecReduce_2 163 happyReduction_391 happyReduction_391 (HappyAbsSyn76 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Where)) = HappyAbsSyn163 ((Just happy_var_2, [happy_var_1]) ) happyReduction_391 _ _ = notHappyAtAll happyReduce_392 = happySpecReduce_0 163 happyReduction_392 happyReduction_392 = HappyAbsSyn163 ((Nothing, []) ) happyReduce_393 = happyMonadReduce 2 164 happyReduction_393 happyReduction_393 ((HappyAbsSyn81 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 DoubleColon)) `HappyStk` happyRest) tk = happyThen (( checkEnabled ScopedTypeVariables >> return (Just (happy_var_2, happy_var_1))) ) (\r -> happyReturn (HappyAbsSyn164 r)) happyReduce_394 = happySpecReduce_0 164 happyReduction_394 happyReduction_394 = HappyAbsSyn164 (Nothing ) happyReduce_395 = happySpecReduce_2 165 happyReduction_395 happyReduction_395 (HappyAbsSyn168 happy_var_2) (HappyTerminal (Loc happy_var_1 Equals)) = HappyAbsSyn165 (UnGuardedRhs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_395 _ _ = notHappyAtAll happyReduce_396 = happySpecReduce_1 165 happyReduction_396 happyReduction_396 (HappyAbsSyn166 happy_var_1) = HappyAbsSyn165 (GuardedRhss (snd happy_var_1) (reverse $ fst happy_var_1) ) happyReduction_396 _ = notHappyAtAll happyReduce_397 = happySpecReduce_2 166 happyReduction_397 happyReduction_397 (HappyAbsSyn167 happy_var_2) (HappyAbsSyn166 happy_var_1) = HappyAbsSyn166 ((happy_var_2 : fst happy_var_1, snd happy_var_1 <++> ann happy_var_2) ) happyReduction_397 _ _ = notHappyAtAll happyReduce_398 = happySpecReduce_1 166 happyReduction_398 happyReduction_398 (HappyAbsSyn167 happy_var_1) = HappyAbsSyn166 (([happy_var_1],ann happy_var_1) ) happyReduction_398 _ = notHappyAtAll happyReduce_399 = happyMonadReduce 4 167 happyReduction_399 happyReduction_399 ((HappyAbsSyn168 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 Equals)) `HappyStk` (HappyAbsSyn205 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 Bar)) `HappyStk` happyRest) tk = happyThen (( do { checkPatternGuards (fst happy_var_2); return $ GuardedRhs (nIS happy_var_1 <++> ann happy_var_4 <** (happy_var_1:snd happy_var_2 ++ [happy_var_3])) (reverse (fst happy_var_2)) happy_var_4 }) ) (\r -> happyReturn (HappyAbsSyn167 r)) happyReduce_400 = happyMonadReduce 1 168 happyReduction_400 happyReduction_400 ((HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkExpr happy_var_1) ) (\r -> happyReturn (HappyAbsSyn168 r)) happyReduce_401 = happySpecReduce_3 169 happyReduction_401 happyReduction_401 (HappyAbsSyn81 happy_var_3) (HappyTerminal (Loc happy_var_2 DoubleColon)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (ExpTypeSig (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_401 _ _ _ = notHappyAtAll happyReduce_402 = happySpecReduce_1 169 happyReduction_402 happyReduction_402 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_402 _ = notHappyAtAll happyReduce_403 = happySpecReduce_2 169 happyReduction_403 happyReduction_403 (HappyAbsSyn241 happy_var_2) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (PostOp (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 ) happyReduction_403 _ _ = notHappyAtAll happyReduce_404 = happySpecReduce_3 169 happyReduction_404 happyReduction_404 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 LeftArrowTail)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (LeftArrApp (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_404 _ _ _ = notHappyAtAll happyReduce_405 = happySpecReduce_3 169 happyReduction_405 happyReduction_405 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 RightArrowTail)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (RightArrApp (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_405 _ _ _ = notHappyAtAll happyReduce_406 = happySpecReduce_3 169 happyReduction_406 happyReduction_406 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 LeftDblArrowTail)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (LeftArrHighApp (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_406 _ _ _ = notHappyAtAll happyReduce_407 = happySpecReduce_3 169 happyReduction_407 happyReduction_407 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 RightDblArrowTail)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (RightArrHighApp (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_407 _ _ _ = notHappyAtAll happyReduce_408 = happySpecReduce_1 170 happyReduction_408 happyReduction_408 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_408 _ = notHappyAtAll happyReduce_409 = happySpecReduce_1 170 happyReduction_409 happyReduction_409 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_409 _ = notHappyAtAll happyReduce_410 = happySpecReduce_3 171 happyReduction_410 happyReduction_410 (HappyAbsSyn17 happy_var_3) (HappyAbsSyn241 happy_var_2) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (InfixApp (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 ) happyReduction_410 _ _ _ = notHappyAtAll happyReduce_411 = happySpecReduce_1 171 happyReduction_411 happyReduction_411 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_411 _ = notHappyAtAll happyReduce_412 = happySpecReduce_3 172 happyReduction_412 happyReduction_412 (HappyAbsSyn17 happy_var_3) (HappyAbsSyn241 happy_var_2) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (InfixApp (happy_var_1 <> happy_var_3) happy_var_1 happy_var_2 happy_var_3 ) happyReduction_412 _ _ _ = notHappyAtAll happyReduce_413 = happySpecReduce_1 172 happyReduction_413 happyReduction_413 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_413 _ = notHappyAtAll happyReduce_414 = happyReduce 4 173 happyReduction_414 happyReduction_414 ((HappyAbsSyn17 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 RightArrow)) `HappyStk` (HappyAbsSyn179 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 Backslash)) `HappyStk` happyRest) = HappyAbsSyn17 (Lambda (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) (reverse happy_var_2) happy_var_4 ) `HappyStk` happyRest happyReduce_415 = happyReduce 4 173 happyReduction_415 happyReduction_415 ((HappyAbsSyn17 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 KW_In)) `HappyStk` (HappyAbsSyn76 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Let)) `HappyStk` happyRest) = HappyAbsSyn17 (Let (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) happy_var_2 happy_var_4 ) `HappyStk` happyRest happyReduce_416 = happyReduce 8 173 happyReduction_416 happyReduction_416 ((HappyAbsSyn17 happy_var_8) `HappyStk` (HappyTerminal (Loc happy_var_7 KW_Else)) `HappyStk` (HappyAbsSyn27 happy_var_6) `HappyStk` (HappyAbsSyn17 happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 KW_Then)) `HappyStk` (HappyAbsSyn27 happy_var_3) `HappyStk` (HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_If)) `HappyStk` happyRest) = HappyAbsSyn17 (If (nIS happy_var_1 <++> ann happy_var_8 <** (happy_var_1:happy_var_3 ++ happy_var_4:happy_var_6 ++ [happy_var_7])) happy_var_2 happy_var_5 happy_var_8 ) `HappyStk` happyRest happyReduce_417 = happyMonadReduce 2 173 happyReduction_417 happyReduction_417 ((HappyAbsSyn216 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_If)) `HappyStk` happyRest) tk = happyThen (( checkEnabled MultiWayIf >> let (alts, inf, ss) = happy_var_2 in return (MultiIf (nIS happy_var_1 <++> inf <** (happy_var_1:ss)) alts)) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_418 = happyReduce 4 173 happyReduction_418 happyReduction_418 ((HappyAbsSyn17 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 RightArrow)) `HappyStk` (HappyAbsSyn180 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Proc)) `HappyStk` happyRest) = HappyAbsSyn17 (Proc (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) happy_var_2 happy_var_4 ) `HappyStk` happyRest happyReduce_419 = happySpecReduce_1 173 happyReduction_419 happyReduction_419 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_419 _ = notHappyAtAll happyReduce_420 = happyMonadReduce 1 174 happyReduction_420 happyReduction_420 ((HappyTerminal (Loc happy_var_1 SemiColon)) `HappyStk` happyRest) tk = happyThen (( checkEnabled DoAndIfThenElse >> return [happy_var_1]) ) (\r -> happyReturn (HappyAbsSyn27 r)) happyReduce_421 = happySpecReduce_0 174 happyReduction_421 happyReduction_421 = HappyAbsSyn27 ([] ) happyReduce_422 = happySpecReduce_1 175 happyReduction_422 happyReduction_422 (HappyTerminal (Loc happy_var_1 SemiColon)) = HappyAbsSyn27 ([happy_var_1] ) happyReduction_422 _ = notHappyAtAll happyReduce_423 = happySpecReduce_0 175 happyReduction_423 happyReduction_423 = HappyAbsSyn27 ([] ) happyReduce_424 = happyReduce 4 176 happyReduction_424 happyReduction_424 ((HappyAbsSyn208 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 KW_Of)) `HappyStk` (HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Case)) `HappyStk` happyRest) = HappyAbsSyn17 (let (als, inf, ss) = happy_var_4 in Case (nIS happy_var_1 <++> inf <** (happy_var_1:happy_var_3:ss)) happy_var_2 als ) `HappyStk` happyRest happyReduce_425 = happyMonadReduce 3 176 happyReduction_425 happyReduction_425 ((HappyAbsSyn208 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Case)) `HappyStk` (HappyTerminal (Loc happy_var_1 Backslash)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled LambdaCase ; let { (als, inf, ss) = happy_var_3 } ; return (LCase (nIS happy_var_1 <++> inf <** (happy_var_1:happy_var_2:ss)) als) }) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_426 = happySpecReduce_2 176 happyReduction_426 happyReduction_426 (HappyAbsSyn17 happy_var_2) (HappyTerminal (Loc happy_var_1 Minus)) = HappyAbsSyn17 (NegApp (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_426 _ _ = notHappyAtAll happyReduce_427 = happySpecReduce_2 176 happyReduction_427 happyReduction_427 (HappyAbsSyn219 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Do)) = HappyAbsSyn17 (let (sts, inf, ss) = happy_var_2 in Do (nIS happy_var_1 <++> inf <** happy_var_1:ss) sts ) happyReduction_427 _ _ = notHappyAtAll happyReduce_428 = happySpecReduce_2 176 happyReduction_428 happyReduction_428 (HappyAbsSyn219 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_MDo)) = HappyAbsSyn17 (let (sts, inf, ss) = happy_var_2 in MDo (nIS happy_var_1 <++> inf <** happy_var_1:ss) sts ) happyReduction_428 _ _ = notHappyAtAll happyReduce_429 = happySpecReduce_1 176 happyReduction_429 happyReduction_429 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_429 _ = notHappyAtAll happyReduce_430 = happyReduce 4 177 happyReduction_430 happyReduction_430 ((HappyAbsSyn17 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 PragmaEnd)) `HappyStk` (HappyTerminal happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 CORE)) `HappyStk` happyRest) = HappyAbsSyn17 (let Loc l (StringTok (s,_)) = happy_var_2 in CorePragma (nIS happy_var_1 <++> ann happy_var_4 <** [l,happy_var_3]) s happy_var_4 ) `HappyStk` happyRest happyReduce_431 = happyReduce 4 177 happyReduction_431 happyReduction_431 ((HappyAbsSyn17 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 PragmaEnd)) `HappyStk` (HappyTerminal happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 SCC)) `HappyStk` happyRest) = HappyAbsSyn17 (let Loc l (StringTok (s,_)) = happy_var_2 in SCCPragma (nIS happy_var_1 <++> ann happy_var_4 <** [l,happy_var_3]) s happy_var_4 ) `HappyStk` happyRest happyReduce_432 = happyReduce 11 177 happyReduction_432 happyReduction_432 ((HappyAbsSyn17 happy_var_11) `HappyStk` (HappyTerminal (Loc happy_var_10 PragmaEnd)) `HappyStk` (HappyTerminal happy_var_9) `HappyStk` (HappyTerminal (Loc happy_var_8 Colon)) `HappyStk` (HappyTerminal happy_var_7) `HappyStk` (HappyTerminal (Loc happy_var_6 Minus)) `HappyStk` (HappyTerminal happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 Colon)) `HappyStk` (HappyTerminal happy_var_3) `HappyStk` (HappyTerminal happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 GENERATED)) `HappyStk` happyRest) = HappyAbsSyn17 (let { Loc l0 (StringTok (s,_)) = happy_var_2; Loc l1 (IntTok (i1,_)) = happy_var_3; Loc l2 (IntTok (i2,_)) = happy_var_5; Loc l3 (IntTok (i3,_)) = happy_var_7; Loc l4 (IntTok (i4,_)) = happy_var_9} in GenPragma (nIS happy_var_1 <++> ann happy_var_11 <** [happy_var_1,l0,l1,happy_var_4,l2,happy_var_6,l3,happy_var_8,l4,happy_var_10]) s (fromInteger i1, fromInteger i2) (fromInteger i3, fromInteger i4) happy_var_11 ) `HappyStk` happyRest happyReduce_433 = happySpecReduce_2 178 happyReduction_433 happyReduction_433 (HappyAbsSyn17 happy_var_2) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (App (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 ) happyReduction_433 _ _ = notHappyAtAll happyReduce_434 = happySpecReduce_1 178 happyReduction_434 happyReduction_434 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_434 _ = notHappyAtAll happyReduce_435 = happySpecReduce_2 179 happyReduction_435 happyReduction_435 (HappyAbsSyn180 happy_var_2) (HappyAbsSyn179 happy_var_1) = HappyAbsSyn179 (happy_var_2 : happy_var_1 ) happyReduction_435 _ _ = notHappyAtAll happyReduce_436 = happySpecReduce_1 179 happyReduction_436 happyReduction_436 (HappyAbsSyn180 happy_var_1) = HappyAbsSyn179 ([happy_var_1] ) happyReduction_436 _ = notHappyAtAll happyReduce_437 = happyMonadReduce 1 180 happyReduction_437 happyReduction_437 ((HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkPattern happy_var_1) ) (\r -> happyReturn (HappyAbsSyn180 r)) happyReduce_438 = happyMonadReduce 2 180 happyReduction_438 happyReduction_438 ((HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 Exclamation)) `HappyStk` happyRest) tk = happyThen (( checkPattern (BangPat (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2)) ) (\r -> happyReturn (HappyAbsSyn180 r)) happyReduce_439 = happyMonadReduce 3 181 happyReduction_439 happyReduction_439 ((HappyAbsSyn17 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 At)) `HappyStk` (HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { n <- checkUnQual happy_var_1; return (AsPat (happy_var_1 <> happy_var_3 <** [happy_var_2]) n happy_var_3) }) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_440 = happyMonadReduce 3 181 happyReduction_440 happyReduction_440 ((HappyAbsSyn17 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 RPCAt)) `HappyStk` (HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { n <- checkUnQual happy_var_1; return (CAsRP (happy_var_1 <> happy_var_3 <** [happy_var_2]) n happy_var_3) }) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_441 = happySpecReduce_2 181 happyReduction_441 happyReduction_441 (HappyAbsSyn17 happy_var_2) (HappyTerminal (Loc happy_var_1 Tilde)) = HappyAbsSyn17 (IrrPat (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_441 _ _ = notHappyAtAll happyReduce_442 = happySpecReduce_2 181 happyReduction_442 happyReduction_442 (HappyAbsSyn81 happy_var_2) (HappyTerminal (Loc happy_var_1 TApp)) = HappyAbsSyn17 (TypeApp (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_442 _ _ = notHappyAtAll happyReduce_443 = happySpecReduce_1 181 happyReduction_443 happyReduction_443 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_443 _ = notHappyAtAll happyReduce_444 = happyMonadReduce 3 182 happyReduction_444 happyReduction_444 ((HappyTerminal (Loc happy_var_3 RightCurly)) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftCurly)) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( liftM (amap (const (ann happy_var_1 <++> nIS happy_var_3 <** [happy_var_2,happy_var_3]))) $ mkRecConstrOrUpdate happy_var_1 []) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_445 = happyMonadReduce 4 182 happyReduction_445 happyReduction_445 ((HappyTerminal (Loc happy_var_4 RightCurly)) `HappyStk` (HappyAbsSyn223 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftCurly)) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( liftM (amap (const (ann happy_var_1 <++> nIS happy_var_4 <** (happy_var_2:snd happy_var_3 ++ [happy_var_4])))) $ mkRecConstrOrUpdate happy_var_1 (fst happy_var_3)) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_446 = happySpecReduce_1 182 happyReduction_446 happyReduction_446 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_446 _ = notHappyAtAll happyReduce_447 = happySpecReduce_1 183 happyReduction_447 happyReduction_447 (HappyAbsSyn232 happy_var_1) = HappyAbsSyn17 (IPVar (ann happy_var_1) happy_var_1 ) happyReduction_447 _ = notHappyAtAll happyReduce_448 = happySpecReduce_1 183 happyReduction_448 happyReduction_448 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn17 (Var (ann happy_var_1) happy_var_1 ) happyReduction_448 _ = notHappyAtAll happyReduce_449 = happySpecReduce_1 183 happyReduction_449 happyReduction_449 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_449 _ = notHappyAtAll happyReduce_450 = happySpecReduce_1 183 happyReduction_450 happyReduction_450 (HappyAbsSyn257 happy_var_1) = HappyAbsSyn17 (Lit (ann happy_var_1) happy_var_1 ) happyReduction_450 _ = notHappyAtAll happyReduce_451 = happySpecReduce_3 183 happyReduction_451 happyReduction_451 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn17 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn17 (Paren (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_451 _ _ _ = notHappyAtAll happyReduce_452 = happySpecReduce_3 183 happyReduction_452 happyReduction_452 (HappyAbsSyn186 happy_var_3) (HappyAbsSyn17 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn17 (TupleSection (happy_var_1 <^^> head (snd happy_var_3) <** happy_var_1:reverse (snd happy_var_3)) Boxed (Just happy_var_2 : fst happy_var_3) ) happyReduction_452 _ _ _ = notHappyAtAll happyReduce_453 = happyReduce 4 183 happyReduction_453 happyReduction_453 ((HappyTerminal (Loc happy_var_4 RightParen)) `HappyStk` (HappyAbsSyn17 happy_var_3) `HappyStk` (HappyAbsSyn27 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftParen)) `HappyStk` happyRest) = HappyAbsSyn17 (TupleSection (happy_var_1 <^^> happy_var_4 <** happy_var_1:reverse (happy_var_4:happy_var_2)) Boxed (replicate (length happy_var_2) Nothing ++ [Just happy_var_3]) ) `HappyStk` happyRest happyReduce_454 = happyReduce 4 183 happyReduction_454 happyReduction_454 ((HappyAbsSyn186 happy_var_4) `HappyStk` (HappyAbsSyn17 happy_var_3) `HappyStk` (HappyAbsSyn27 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftParen)) `HappyStk` happyRest) = HappyAbsSyn17 (TupleSection (happy_var_1 <^^> head (snd happy_var_4) <** happy_var_1:reverse (snd happy_var_4 ++ happy_var_2)) Boxed (replicate (length happy_var_2) Nothing ++ Just happy_var_3 : fst happy_var_4) ) `HappyStk` happyRest happyReduce_455 = happySpecReduce_3 183 happyReduction_455 happyReduction_455 (HappyAbsSyn186 happy_var_3) (HappyAbsSyn17 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftHashParen)) = HappyAbsSyn17 (TupleSection (happy_var_1 <^^> head (snd happy_var_3) <** happy_var_1:reverse (snd happy_var_3)) Unboxed (Just happy_var_2 : fst happy_var_3) ) happyReduction_455 _ _ _ = notHappyAtAll happyReduce_456 = happySpecReduce_3 183 happyReduction_456 happyReduction_456 (HappyTerminal (Loc happy_var_3 RightHashParen)) (HappyAbsSyn17 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftHashParen)) = HappyAbsSyn17 (TupleSection (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) Unboxed [Just happy_var_2] ) happyReduction_456 _ _ _ = notHappyAtAll happyReduce_457 = happyReduce 4 183 happyReduction_457 happyReduction_457 ((HappyTerminal (Loc happy_var_4 RightHashParen)) `HappyStk` (HappyAbsSyn17 happy_var_3) `HappyStk` (HappyAbsSyn27 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftHashParen)) `HappyStk` happyRest) = HappyAbsSyn17 (TupleSection (happy_var_1 <^^> happy_var_4 <** happy_var_1:reverse (happy_var_4:happy_var_2)) Unboxed (replicate (length happy_var_2) Nothing ++ [Just happy_var_3]) ) `HappyStk` happyRest happyReduce_458 = happyReduce 4 183 happyReduction_458 happyReduction_458 ((HappyAbsSyn186 happy_var_4) `HappyStk` (HappyAbsSyn17 happy_var_3) `HappyStk` (HappyAbsSyn27 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftHashParen)) `HappyStk` happyRest) = HappyAbsSyn17 (TupleSection (happy_var_1 <^^> head (snd happy_var_4) <** happy_var_1:reverse (snd happy_var_4 ++ happy_var_2)) Unboxed (replicate (length happy_var_2) Nothing ++ Just happy_var_3 : fst happy_var_4) ) `HappyStk` happyRest happyReduce_459 = happySpecReduce_3 183 happyReduction_459 happyReduction_459 (HappyTerminal (Loc happy_var_3 RightSquare)) (HappyAbsSyn199 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftSquare)) = HappyAbsSyn17 (amap (\l -> l <** [happy_var_3]) $ happy_var_2 (happy_var_1 <^^> happy_var_3 <** [happy_var_1]) ) happyReduction_459 _ _ _ = notHappyAtAll happyReduce_460 = happySpecReduce_3 183 happyReduction_460 happyReduction_460 (HappyTerminal (Loc happy_var_3 ParArrayRightSquare)) (HappyAbsSyn199 happy_var_2) (HappyTerminal (Loc happy_var_1 ParArrayLeftSquare)) = HappyAbsSyn17 (amap (\l -> l <** [happy_var_3]) $ happy_var_2 (happy_var_1 <^^> happy_var_3 <** [happy_var_1]) ) happyReduction_460 _ _ _ = notHappyAtAll happyReduce_461 = happySpecReduce_1 183 happyReduction_461 happyReduction_461 (HappyTerminal (Loc happy_var_1 Underscore)) = HappyAbsSyn17 (WildCard (nIS happy_var_1) ) happyReduction_461 _ = notHappyAtAll happyReduce_462 = happyMonadReduce 3 183 happyReduction_462 happyReduction_462 ((HappyTerminal (Loc happy_var_3 RightParen)) `HappyStk` (HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftParen)) `HappyStk` happyRest) tk = happyThen (( checkEnabled RegularPatterns >> return (Paren (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2)) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_463 = happySpecReduce_3 183 happyReduction_463 happyReduction_463 (HappyTerminal (Loc happy_var_3 RPGuardClose)) (HappyAbsSyn188 happy_var_2) (HappyTerminal (Loc happy_var_1 RPGuardOpen)) = HappyAbsSyn17 (SeqRP (happy_var_1 <^^> happy_var_3 <** (happy_var_1:reverse (snd happy_var_2) ++ [happy_var_3])) $ reverse (fst happy_var_2) ) happyReduction_463 _ _ _ = notHappyAtAll happyReduce_464 = happyReduce 5 183 happyReduction_464 happyReduction_464 ((HappyTerminal (Loc happy_var_5 RPGuardClose)) `HappyStk` (HappyAbsSyn205 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 Bar)) `HappyStk` (HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 RPGuardOpen)) `HappyStk` happyRest) = HappyAbsSyn17 (GuardRP (happy_var_1 <^^> happy_var_5 <** (happy_var_1:happy_var_3 : snd happy_var_4 ++ [happy_var_5])) happy_var_2 $ (reverse $ fst happy_var_4) ) `HappyStk` happyRest happyReduce_465 = happySpecReduce_1 183 happyReduction_465 happyReduction_465 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_465 _ = notHappyAtAll happyReduce_466 = happySpecReduce_1 183 happyReduction_466 happyReduction_466 (HappyTerminal happy_var_1) = HappyAbsSyn17 (let Loc l (THIdEscape s) = happy_var_1 in SpliceExp (nIS l) $ IdSplice (nIS l) s ) happyReduction_466 _ = notHappyAtAll happyReduce_467 = happySpecReduce_3 183 happyReduction_467 happyReduction_467 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn168 happy_var_2) (HappyTerminal (Loc happy_var_1 THParenEscape)) = HappyAbsSyn17 (let l = (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) in SpliceExp l $ ParenSplice l happy_var_2 ) happyReduction_467 _ _ _ = notHappyAtAll happyReduce_468 = happySpecReduce_3 183 happyReduction_468 happyReduction_468 (HappyTerminal (Loc happy_var_3 THCloseQuote)) (HappyAbsSyn168 happy_var_2) (HappyTerminal (Loc happy_var_1 THExpQuote)) = HappyAbsSyn17 (let l = (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) in BracketExp l $ ExpBracket l happy_var_2 ) happyReduction_468 _ _ _ = notHappyAtAll happyReduce_469 = happyMonadReduce 3 183 happyReduction_469 happyReduction_469 ((HappyTerminal (Loc happy_var_3 THCloseQuote)) `HappyStk` (HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 THPatQuote)) `HappyStk` happyRest) tk = happyThen (( do { p <- checkPattern happy_var_2; let {l = (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) }; return $ BracketExp l $ PatBracket l p }) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_470 = happySpecReduce_3 183 happyReduction_470 happyReduction_470 (HappyTerminal (Loc happy_var_3 THCloseQuote)) (HappyAbsSyn81 happy_var_2) (HappyTerminal (Loc happy_var_1 THTypQuote)) = HappyAbsSyn17 (let l = happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3] in BracketExp l $ TypeBracket l happy_var_2 ) happyReduction_470 _ _ _ = notHappyAtAll happyReduce_471 = happyReduce 5 183 happyReduction_471 happyReduction_471 ((HappyTerminal (Loc happy_var_5 THCloseQuote)) `HappyStk` (HappyAbsSyn258 happy_var_4) `HappyStk` (HappyAbsSyn56 happy_var_3) `HappyStk` (HappyAbsSyn258 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 THDecQuote)) `HappyStk` happyRest) = HappyAbsSyn17 (let l = happy_var_1 <^^> happy_var_5 <** (happy_var_1:snd happy_var_3 ++ [happy_var_5]) in BracketExp l $ DeclBracket (happy_var_1 <^^> happy_var_5 <** (happy_var_2:snd happy_var_3 ++ [happy_var_4,happy_var_5])) (fst happy_var_3) ) `HappyStk` happyRest happyReduce_472 = happySpecReduce_2 183 happyReduction_472 happyReduction_472 (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 THVarQuote)) = HappyAbsSyn17 (VarQuote (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_472 _ _ = notHappyAtAll happyReduce_473 = happySpecReduce_2 183 happyReduction_473 happyReduction_473 (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 THVarQuote)) = HappyAbsSyn17 (VarQuote (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_473 _ _ = notHappyAtAll happyReduce_474 = happySpecReduce_2 183 happyReduction_474 happyReduction_474 (HappyAbsSyn100 happy_var_2) (HappyTerminal (Loc happy_var_1 THTyQuote)) = HappyAbsSyn17 (TypQuote (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) (UnQual (ann happy_var_2) happy_var_2) ) happyReduction_474 _ _ = notHappyAtAll happyReduce_475 = happySpecReduce_2 183 happyReduction_475 happyReduction_475 (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 THTyQuote)) = HappyAbsSyn17 (TypQuote (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_475 _ _ = notHappyAtAll happyReduce_476 = happySpecReduce_1 183 happyReduction_476 happyReduction_476 (HappyTerminal happy_var_1) = HappyAbsSyn17 (let Loc l (THQuasiQuote (n,q)) = happy_var_1 in QuasiQuote (nIS l) n q ) happyReduction_476 _ = notHappyAtAll happyReduce_477 = happySpecReduce_2 184 happyReduction_477 happyReduction_477 (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn27 (happy_var_2 : happy_var_1 ) happyReduction_477 _ _ = notHappyAtAll happyReduce_478 = happySpecReduce_1 184 happyReduction_478 happyReduction_478 (HappyTerminal (Loc happy_var_1 Comma)) = HappyAbsSyn27 ([happy_var_1] ) happyReduction_478 _ = notHappyAtAll happyReduce_479 = happySpecReduce_1 185 happyReduction_479 happyReduction_479 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_479 _ = notHappyAtAll happyReduce_480 = happySpecReduce_2 185 happyReduction_480 happyReduction_480 (HappyAbsSyn17 happy_var_2) (HappyAbsSyn241 happy_var_1) = HappyAbsSyn17 (PreOp (happy_var_1 <> happy_var_2) happy_var_1 happy_var_2 ) happyReduction_480 _ _ = notHappyAtAll happyReduce_481 = happyMonadReduce 3 185 happyReduction_481 happyReduction_481 ((HappyAbsSyn180 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 RightArrow)) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do {checkEnabled ViewPatterns; return $ ViewPat (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3}) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_482 = happySpecReduce_3 186 happyReduction_482 happyReduction_482 (HappyAbsSyn186 happy_var_3) (HappyAbsSyn17 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn186 (let (mes, ss) = happy_var_3 in (replicate (length happy_var_1 - 1) Nothing ++ Just happy_var_2 : mes, ss ++ happy_var_1) ) happyReduction_482 _ _ _ = notHappyAtAll happyReduce_483 = happySpecReduce_3 186 happyReduction_483 happyReduction_483 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn17 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn186 ((replicate (length happy_var_1 - 1) Nothing ++ [Just happy_var_2], happy_var_3 : happy_var_1) ) happyReduction_483 _ _ _ = notHappyAtAll happyReduce_484 = happySpecReduce_2 186 happyReduction_484 happyReduction_484 (HappyTerminal (Loc happy_var_2 RightParen)) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn186 ((replicate (length happy_var_1) Nothing, happy_var_2 : happy_var_1) ) happyReduction_484 _ _ = notHappyAtAll happyReduce_485 = happySpecReduce_3 187 happyReduction_485 happyReduction_485 (HappyAbsSyn186 happy_var_3) (HappyAbsSyn17 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn186 (let (mes, ss) = happy_var_3 in (replicate (length happy_var_1 - 1) Nothing ++ Just happy_var_2 : mes, ss ++ happy_var_1) ) happyReduction_485 _ _ _ = notHappyAtAll happyReduce_486 = happySpecReduce_3 187 happyReduction_486 happyReduction_486 (HappyTerminal (Loc happy_var_3 RightHashParen)) (HappyAbsSyn17 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn186 ((replicate (length happy_var_1 - 1) Nothing ++ [Just happy_var_2], happy_var_3 : happy_var_1) ) happyReduction_486 _ _ _ = notHappyAtAll happyReduce_487 = happySpecReduce_2 187 happyReduction_487 happyReduction_487 (HappyTerminal (Loc happy_var_2 RightHashParen)) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn186 ((replicate (length happy_var_1) Nothing, happy_var_2 : happy_var_1) ) happyReduction_487 _ _ = notHappyAtAll happyReduce_488 = happySpecReduce_3 188 happyReduction_488 happyReduction_488 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn188 happy_var_1) = HappyAbsSyn188 ((happy_var_3 : fst happy_var_1, happy_var_2 : snd happy_var_1) ) happyReduction_488 _ _ _ = notHappyAtAll happyReduce_489 = happySpecReduce_1 188 happyReduction_489 happyReduction_489 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn188 (([happy_var_1],[]) ) happyReduction_489 _ = notHappyAtAll happyReduce_490 = happySpecReduce_3 189 happyReduction_490 happyReduction_490 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 Bar)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (EitherRP (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_490 _ _ _ = notHappyAtAll happyReduce_491 = happySpecReduce_3 189 happyReduction_491 happyReduction_491 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 Bar)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (EitherRP (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_491 _ _ _ = notHappyAtAll happyReduce_492 = happyMonadReduce 10 190 happyReduction_492 happyReduction_492 ((HappyTerminal (Loc happy_var_10 XStdTagClose)) `HappyStk` (HappyAbsSyn193 happy_var_9) `HappyStk` (HappyTerminal (Loc happy_var_8 XCloseTagOpen)) `HappyStk` (HappyAbsSyn27 happy_var_7) `HappyStk` (HappyAbsSyn191 happy_var_6) `HappyStk` (HappyTerminal (Loc happy_var_5 XStdTagClose)) `HappyStk` (HappyAbsSyn198 happy_var_4) `HappyStk` (HappyAbsSyn196 happy_var_3) `HappyStk` (HappyAbsSyn193 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 XStdTagOpen)) `HappyStk` happyRest) tk = happyThen (( do { n <- checkEqNames happy_var_2 happy_var_9; let { cn = reverse happy_var_6; as = reverse happy_var_3; l = happy_var_1 <^^> happy_var_10 <** [happy_var_1,happy_var_5] ++ happy_var_7 ++ [happy_var_8,srcInfoSpan (ann happy_var_9),happy_var_10] }; return $ XTag l n as happy_var_4 cn }) ) (\r -> happyReturn (HappyAbsSyn17 r)) happyReduce_493 = happyReduce 5 190 happyReduction_493 happyReduction_493 ((HappyTerminal (Loc happy_var_5 XEmptyTagClose)) `HappyStk` (HappyAbsSyn198 happy_var_4) `HappyStk` (HappyAbsSyn196 happy_var_3) `HappyStk` (HappyAbsSyn193 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 XStdTagOpen)) `HappyStk` happyRest) = HappyAbsSyn17 (XETag (happy_var_1 <^^> happy_var_5 <** [happy_var_1,happy_var_5]) happy_var_2 (reverse happy_var_3) happy_var_4 ) `HappyStk` happyRest happyReduce_494 = happySpecReduce_3 190 happyReduction_494 happyReduction_494 (HappyTerminal (Loc happy_var_3 XCodeTagClose)) (HappyAbsSyn17 happy_var_2) (HappyTerminal (Loc happy_var_1 XCodeTagOpen)) = HappyAbsSyn17 (XExpTag (happy_var_1 <^^> happy_var_3 <** [happy_var_1,happy_var_3]) happy_var_2 ) happyReduction_494 _ _ _ = notHappyAtAll happyReduce_495 = happyReduce 5 190 happyReduction_495 happyReduction_495 ((HappyTerminal (Loc happy_var_5 XCodeTagClose)) `HappyStk` (HappyTerminal (Loc happy_var_4 XCloseTagOpen)) `HappyStk` (HappyAbsSyn27 happy_var_3) `HappyStk` (HappyAbsSyn191 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 XChildTagOpen)) `HappyStk` happyRest) = HappyAbsSyn17 (XChildTag (happy_var_1 <^^> happy_var_5 <** (happy_var_1:happy_var_3++[happy_var_4,happy_var_5])) (reverse happy_var_2) ) `HappyStk` happyRest happyReduce_496 = happySpecReduce_2 191 happyReduction_496 happyReduction_496 (HappyAbsSyn17 happy_var_2) (HappyAbsSyn191 happy_var_1) = HappyAbsSyn191 (happy_var_2 : happy_var_1 ) happyReduction_496 _ _ = notHappyAtAll happyReduce_497 = happySpecReduce_0 191 happyReduction_497 happyReduction_497 = HappyAbsSyn191 ([] ) happyReduce_498 = happySpecReduce_1 192 happyReduction_498 happyReduction_498 (HappyTerminal happy_var_1) = HappyAbsSyn17 (let Loc l (XPCDATA pcd) = happy_var_1 in XPcdata (nIS l) pcd ) happyReduction_498 _ = notHappyAtAll happyReduce_499 = happySpecReduce_3 192 happyReduction_499 happyReduction_499 (HappyTerminal (Loc happy_var_3 XRPatClose)) (HappyAbsSyn188 happy_var_2) (HappyTerminal (Loc happy_var_1 XRPatOpen)) = HappyAbsSyn17 (XRPats (happy_var_1 <^^> happy_var_3 <** (snd happy_var_2 ++ [happy_var_1,happy_var_3])) $ reverse (fst happy_var_2) ) happyReduction_499 _ _ _ = notHappyAtAll happyReduce_500 = happySpecReduce_1 192 happyReduction_500 happyReduction_500 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn17 (happy_var_1 ) happyReduction_500 _ = notHappyAtAll happyReduce_501 = happySpecReduce_3 193 happyReduction_501 happyReduction_501 (HappyAbsSyn194 happy_var_3) (HappyTerminal (Loc happy_var_2 Colon)) (HappyAbsSyn194 happy_var_1) = HappyAbsSyn193 (let {Loc l1 s1 = happy_var_1; Loc l2 s2 = happy_var_3} in XDomName (nIS l1 <++> nIS l2 <** [l1,happy_var_2,l2]) s1 s2 ) happyReduction_501 _ _ _ = notHappyAtAll happyReduce_502 = happySpecReduce_1 193 happyReduction_502 happyReduction_502 (HappyAbsSyn194 happy_var_1) = HappyAbsSyn193 (let Loc l str = happy_var_1 in XName (nIS l) str ) happyReduction_502 _ = notHappyAtAll happyReduce_503 = happySpecReduce_1 194 happyReduction_503 happyReduction_503 (HappyTerminal happy_var_1) = HappyAbsSyn194 (let Loc l (VarId s) = happy_var_1 in Loc l s ) happyReduction_503 _ = notHappyAtAll happyReduce_504 = happySpecReduce_1 194 happyReduction_504 happyReduction_504 (HappyTerminal happy_var_1) = HappyAbsSyn194 (let Loc l (ConId s) = happy_var_1 in Loc l s ) happyReduction_504 _ = notHappyAtAll happyReduce_505 = happySpecReduce_1 194 happyReduction_505 happyReduction_505 (HappyTerminal happy_var_1) = HappyAbsSyn194 (let Loc l (DVarId s) = happy_var_1 in Loc l $ mkDVar s ) happyReduction_505 _ = notHappyAtAll happyReduce_506 = happySpecReduce_1 194 happyReduction_506 happyReduction_506 (HappyAbsSyn194 happy_var_1) = HappyAbsSyn194 (happy_var_1 ) happyReduction_506 _ = notHappyAtAll happyReduce_507 = happySpecReduce_1 195 happyReduction_507 happyReduction_507 (HappyTerminal (Loc happy_var_1 KW_Type)) = HappyAbsSyn194 (Loc happy_var_1 "type" ) happyReduction_507 _ = notHappyAtAll happyReduce_508 = happySpecReduce_1 195 happyReduction_508 happyReduction_508 (HappyTerminal (Loc happy_var_1 KW_Class)) = HappyAbsSyn194 (Loc happy_var_1 "class" ) happyReduction_508 _ = notHappyAtAll happyReduce_509 = happySpecReduce_1 195 happyReduction_509 happyReduction_509 (HappyTerminal (Loc happy_var_1 KW_Data)) = HappyAbsSyn194 (Loc happy_var_1 "data" ) happyReduction_509 _ = notHappyAtAll happyReduce_510 = happySpecReduce_1 195 happyReduction_510 happyReduction_510 (HappyTerminal (Loc happy_var_1 KW_Foreign)) = HappyAbsSyn194 (Loc happy_var_1 "foreign" ) happyReduction_510 _ = notHappyAtAll happyReduce_511 = happySpecReduce_1 195 happyReduction_511 happyReduction_511 (HappyTerminal (Loc happy_var_1 KW_Export)) = HappyAbsSyn194 (Loc happy_var_1 "export" ) happyReduction_511 _ = notHappyAtAll happyReduce_512 = happySpecReduce_1 195 happyReduction_512 happyReduction_512 (HappyTerminal (Loc happy_var_1 KW_Safe)) = HappyAbsSyn194 (Loc happy_var_1 "safe" ) happyReduction_512 _ = notHappyAtAll happyReduce_513 = happySpecReduce_1 195 happyReduction_513 happyReduction_513 (HappyTerminal (Loc happy_var_1 KW_Unsafe)) = HappyAbsSyn194 (Loc happy_var_1 "unsafe" ) happyReduction_513 _ = notHappyAtAll happyReduce_514 = happySpecReduce_1 195 happyReduction_514 happyReduction_514 (HappyTerminal (Loc happy_var_1 KW_Interruptible)) = HappyAbsSyn194 (Loc happy_var_1 "interruptible" ) happyReduction_514 _ = notHappyAtAll happyReduce_515 = happySpecReduce_1 195 happyReduction_515 happyReduction_515 (HappyTerminal (Loc happy_var_1 KW_Threadsafe)) = HappyAbsSyn194 (Loc happy_var_1 "threadsafe" ) happyReduction_515 _ = notHappyAtAll happyReduce_516 = happySpecReduce_1 195 happyReduction_516 happyReduction_516 (HappyTerminal (Loc happy_var_1 KW_StdCall)) = HappyAbsSyn194 (Loc happy_var_1 "stdcall" ) happyReduction_516 _ = notHappyAtAll happyReduce_517 = happySpecReduce_1 195 happyReduction_517 happyReduction_517 (HappyTerminal (Loc happy_var_1 KW_CCall)) = HappyAbsSyn194 (Loc happy_var_1 "ccall" ) happyReduction_517 _ = notHappyAtAll happyReduce_518 = happySpecReduce_1 195 happyReduction_518 happyReduction_518 (HappyTerminal (Loc happy_var_1 KW_CPlusPlus)) = HappyAbsSyn194 (Loc happy_var_1 "cplusplus" ) happyReduction_518 _ = notHappyAtAll happyReduce_519 = happySpecReduce_1 195 happyReduction_519 happyReduction_519 (HappyTerminal (Loc happy_var_1 KW_DotNet)) = HappyAbsSyn194 (Loc happy_var_1 "dotnet" ) happyReduction_519 _ = notHappyAtAll happyReduce_520 = happySpecReduce_1 195 happyReduction_520 happyReduction_520 (HappyTerminal (Loc happy_var_1 KW_Jvm)) = HappyAbsSyn194 (Loc happy_var_1 "jvm" ) happyReduction_520 _ = notHappyAtAll happyReduce_521 = happySpecReduce_1 195 happyReduction_521 happyReduction_521 (HappyTerminal (Loc happy_var_1 KW_Js)) = HappyAbsSyn194 (Loc happy_var_1 "js" ) happyReduction_521 _ = notHappyAtAll happyReduce_522 = happySpecReduce_1 195 happyReduction_522 happyReduction_522 (HappyTerminal (Loc happy_var_1 KW_JavaScript)) = HappyAbsSyn194 (Loc happy_var_1 "javascript" ) happyReduction_522 _ = notHappyAtAll happyReduce_523 = happySpecReduce_1 195 happyReduction_523 happyReduction_523 (HappyTerminal (Loc happy_var_1 KW_CApi)) = HappyAbsSyn194 (Loc happy_var_1 "capi" ) happyReduction_523 _ = notHappyAtAll happyReduce_524 = happySpecReduce_1 195 happyReduction_524 happyReduction_524 (HappyTerminal (Loc happy_var_1 KW_As)) = HappyAbsSyn194 (Loc happy_var_1 "as" ) happyReduction_524 _ = notHappyAtAll happyReduce_525 = happySpecReduce_1 195 happyReduction_525 happyReduction_525 (HappyTerminal (Loc happy_var_1 KW_By)) = HappyAbsSyn194 (Loc happy_var_1 "by" ) happyReduction_525 _ = notHappyAtAll happyReduce_526 = happySpecReduce_1 195 happyReduction_526 happyReduction_526 (HappyTerminal (Loc happy_var_1 KW_Case)) = HappyAbsSyn194 (Loc happy_var_1 "case" ) happyReduction_526 _ = notHappyAtAll happyReduce_527 = happySpecReduce_1 195 happyReduction_527 happyReduction_527 (HappyTerminal (Loc happy_var_1 KW_Default)) = HappyAbsSyn194 (Loc happy_var_1 "default" ) happyReduction_527 _ = notHappyAtAll happyReduce_528 = happySpecReduce_1 195 happyReduction_528 happyReduction_528 (HappyTerminal (Loc happy_var_1 KW_Deriving)) = HappyAbsSyn194 (Loc happy_var_1 "deriving" ) happyReduction_528 _ = notHappyAtAll happyReduce_529 = happySpecReduce_1 195 happyReduction_529 happyReduction_529 (HappyTerminal (Loc happy_var_1 KW_Do)) = HappyAbsSyn194 (Loc happy_var_1 "do" ) happyReduction_529 _ = notHappyAtAll happyReduce_530 = happySpecReduce_1 195 happyReduction_530 happyReduction_530 (HappyTerminal (Loc happy_var_1 KW_Else)) = HappyAbsSyn194 (Loc happy_var_1 "else" ) happyReduction_530 _ = notHappyAtAll happyReduce_531 = happySpecReduce_1 195 happyReduction_531 happyReduction_531 (HappyTerminal (Loc happy_var_1 KW_Family)) = HappyAbsSyn194 (Loc happy_var_1 "family" ) happyReduction_531 _ = notHappyAtAll happyReduce_532 = happySpecReduce_1 195 happyReduction_532 happyReduction_532 (HappyTerminal (Loc happy_var_1 KW_Forall)) = HappyAbsSyn194 (Loc happy_var_1 "forall" ) happyReduction_532 _ = notHappyAtAll happyReduce_533 = happySpecReduce_1 195 happyReduction_533 happyReduction_533 (HappyTerminal (Loc happy_var_1 KW_Group)) = HappyAbsSyn194 (Loc happy_var_1 "group" ) happyReduction_533 _ = notHappyAtAll happyReduce_534 = happySpecReduce_1 195 happyReduction_534 happyReduction_534 (HappyTerminal (Loc happy_var_1 KW_Hiding)) = HappyAbsSyn194 (Loc happy_var_1 "hiding" ) happyReduction_534 _ = notHappyAtAll happyReduce_535 = happySpecReduce_1 195 happyReduction_535 happyReduction_535 (HappyTerminal (Loc happy_var_1 KW_If)) = HappyAbsSyn194 (Loc happy_var_1 "if" ) happyReduction_535 _ = notHappyAtAll happyReduce_536 = happySpecReduce_1 195 happyReduction_536 happyReduction_536 (HappyTerminal (Loc happy_var_1 KW_Import)) = HappyAbsSyn194 (Loc happy_var_1 "import" ) happyReduction_536 _ = notHappyAtAll happyReduce_537 = happySpecReduce_1 195 happyReduction_537 happyReduction_537 (HappyTerminal (Loc happy_var_1 KW_In)) = HappyAbsSyn194 (Loc happy_var_1 "in" ) happyReduction_537 _ = notHappyAtAll happyReduce_538 = happySpecReduce_1 195 happyReduction_538 happyReduction_538 (HappyTerminal (Loc happy_var_1 KW_Infix)) = HappyAbsSyn194 (Loc happy_var_1 "infix" ) happyReduction_538 _ = notHappyAtAll happyReduce_539 = happySpecReduce_1 195 happyReduction_539 happyReduction_539 (HappyTerminal (Loc happy_var_1 KW_InfixL)) = HappyAbsSyn194 (Loc happy_var_1 "infixl" ) happyReduction_539 _ = notHappyAtAll happyReduce_540 = happySpecReduce_1 195 happyReduction_540 happyReduction_540 (HappyTerminal (Loc happy_var_1 KW_InfixR)) = HappyAbsSyn194 (Loc happy_var_1 "infixr" ) happyReduction_540 _ = notHappyAtAll happyReduce_541 = happySpecReduce_1 195 happyReduction_541 happyReduction_541 (HappyTerminal (Loc happy_var_1 KW_Instance)) = HappyAbsSyn194 (Loc happy_var_1 "instance" ) happyReduction_541 _ = notHappyAtAll happyReduce_542 = happySpecReduce_1 195 happyReduction_542 happyReduction_542 (HappyTerminal (Loc happy_var_1 KW_Let)) = HappyAbsSyn194 (Loc happy_var_1 "let" ) happyReduction_542 _ = notHappyAtAll happyReduce_543 = happySpecReduce_1 195 happyReduction_543 happyReduction_543 (HappyTerminal (Loc happy_var_1 KW_MDo)) = HappyAbsSyn194 (Loc happy_var_1 "mdo" ) happyReduction_543 _ = notHappyAtAll happyReduce_544 = happySpecReduce_1 195 happyReduction_544 happyReduction_544 (HappyTerminal (Loc happy_var_1 KW_Module)) = HappyAbsSyn194 (Loc happy_var_1 "module" ) happyReduction_544 _ = notHappyAtAll happyReduce_545 = happySpecReduce_1 195 happyReduction_545 happyReduction_545 (HappyTerminal (Loc happy_var_1 KW_NewType)) = HappyAbsSyn194 (Loc happy_var_1 "newtype" ) happyReduction_545 _ = notHappyAtAll happyReduce_546 = happySpecReduce_1 195 happyReduction_546 happyReduction_546 (HappyTerminal (Loc happy_var_1 KW_Of)) = HappyAbsSyn194 (Loc happy_var_1 "of" ) happyReduction_546 _ = notHappyAtAll happyReduce_547 = happySpecReduce_1 195 happyReduction_547 happyReduction_547 (HappyTerminal (Loc happy_var_1 KW_Proc)) = HappyAbsSyn194 (Loc happy_var_1 "proc" ) happyReduction_547 _ = notHappyAtAll happyReduce_548 = happySpecReduce_1 195 happyReduction_548 happyReduction_548 (HappyTerminal (Loc happy_var_1 KW_Rec)) = HappyAbsSyn194 (Loc happy_var_1 "rec" ) happyReduction_548 _ = notHappyAtAll happyReduce_549 = happySpecReduce_1 195 happyReduction_549 happyReduction_549 (HappyTerminal (Loc happy_var_1 KW_Then)) = HappyAbsSyn194 (Loc happy_var_1 "then" ) happyReduction_549 _ = notHappyAtAll happyReduce_550 = happySpecReduce_1 195 happyReduction_550 happyReduction_550 (HappyTerminal (Loc happy_var_1 KW_Using)) = HappyAbsSyn194 (Loc happy_var_1 "using" ) happyReduction_550 _ = notHappyAtAll happyReduce_551 = happySpecReduce_1 195 happyReduction_551 happyReduction_551 (HappyTerminal (Loc happy_var_1 KW_Where)) = HappyAbsSyn194 (Loc happy_var_1 "where" ) happyReduction_551 _ = notHappyAtAll happyReduce_552 = happySpecReduce_1 195 happyReduction_552 happyReduction_552 (HappyTerminal (Loc happy_var_1 KW_Qualified)) = HappyAbsSyn194 (Loc happy_var_1 "qualified" ) happyReduction_552 _ = notHappyAtAll happyReduce_553 = happySpecReduce_2 196 happyReduction_553 happyReduction_553 (HappyAbsSyn197 happy_var_2) (HappyAbsSyn196 happy_var_1) = HappyAbsSyn196 (happy_var_2 : happy_var_1 ) happyReduction_553 _ _ = notHappyAtAll happyReduce_554 = happySpecReduce_0 196 happyReduction_554 happyReduction_554 = HappyAbsSyn196 ([] ) happyReduce_555 = happySpecReduce_3 197 happyReduction_555 happyReduction_555 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 Equals)) (HappyAbsSyn193 happy_var_1) = HappyAbsSyn197 (XAttr (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_555 _ _ _ = notHappyAtAll happyReduce_556 = happySpecReduce_1 198 happyReduction_556 happyReduction_556 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn198 (Just happy_var_1 ) happyReduction_556 _ = notHappyAtAll happyReduce_557 = happySpecReduce_0 198 happyReduction_557 happyReduction_557 = HappyAbsSyn198 (Nothing ) happyReduce_558 = happySpecReduce_1 199 happyReduction_558 happyReduction_558 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn199 (\l -> List l [happy_var_1] ) happyReduction_558 _ = notHappyAtAll happyReduce_559 = happySpecReduce_1 199 happyReduction_559 happyReduction_559 (HappyAbsSyn188 happy_var_1) = HappyAbsSyn199 (\l -> let (ps,ss) = happy_var_1 in List (l <** reverse ss) (reverse ps) ) happyReduction_559 _ = notHappyAtAll happyReduce_560 = happySpecReduce_2 199 happyReduction_560 happyReduction_560 (HappyTerminal (Loc happy_var_2 DotDot)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn199 (\l -> EnumFrom (l <** [happy_var_2]) happy_var_1 ) happyReduction_560 _ _ = notHappyAtAll happyReduce_561 = happyReduce 4 199 happyReduction_561 happyReduction_561 ((HappyTerminal (Loc happy_var_4 DotDot)) `HappyStk` (HappyAbsSyn17 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 Comma)) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn199 (\l -> EnumFromThen (l <** [happy_var_2,happy_var_4]) happy_var_1 happy_var_3 ) `HappyStk` happyRest happyReduce_562 = happySpecReduce_3 199 happyReduction_562 happyReduction_562 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 DotDot)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn199 (\l -> EnumFromTo (l <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_562 _ _ _ = notHappyAtAll happyReduce_563 = happyReduce 5 199 happyReduction_563 happyReduction_563 ((HappyAbsSyn17 happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 DotDot)) `HappyStk` (HappyAbsSyn17 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 Comma)) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn199 (\l -> EnumFromThenTo (l <** [happy_var_2,happy_var_4]) happy_var_1 happy_var_3 happy_var_5 ) `HappyStk` happyRest happyReduce_564 = happySpecReduce_3 199 happyReduction_564 happyReduction_564 (HappyAbsSyn201 happy_var_3) (HappyTerminal (Loc happy_var_2 Bar)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn199 (\l -> let (stss, ss) = happy_var_3 in ParComp (l <** (happy_var_2:ss)) happy_var_1 (reverse stss) ) happyReduction_564 _ _ _ = notHappyAtAll happyReduce_565 = happySpecReduce_3 200 happyReduction_565 happyReduction_565 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn188 happy_var_1) = HappyAbsSyn188 (let (es, ss) = happy_var_1 in (happy_var_3 : es, happy_var_2 : ss) ) happyReduction_565 _ _ _ = notHappyAtAll happyReduce_566 = happySpecReduce_3 200 happyReduction_566 happyReduction_566 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn188 (([happy_var_3,happy_var_1], [happy_var_2]) ) happyReduction_566 _ _ _ = notHappyAtAll happyReduce_567 = happySpecReduce_3 201 happyReduction_567 happyReduction_567 (HappyAbsSyn202 happy_var_3) (HappyTerminal (Loc happy_var_2 Bar)) (HappyAbsSyn201 happy_var_1) = HappyAbsSyn201 (let { (stss, ss1) = happy_var_1; (sts, ss2) = happy_var_3 } in (reverse sts : stss, ss1 ++ [happy_var_2] ++ reverse ss2) ) happyReduction_567 _ _ _ = notHappyAtAll happyReduce_568 = happySpecReduce_1 201 happyReduction_568 happyReduction_568 (HappyAbsSyn202 happy_var_1) = HappyAbsSyn201 (let (sts, ss) = happy_var_1 in ([reverse sts], reverse ss) ) happyReduction_568 _ = notHappyAtAll happyReduce_569 = happySpecReduce_3 202 happyReduction_569 happyReduction_569 (HappyAbsSyn203 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn202 happy_var_1) = HappyAbsSyn202 (let (sts, ss) = happy_var_1 in (happy_var_3 : sts, happy_var_2 : ss) ) happyReduction_569 _ _ _ = notHappyAtAll happyReduce_570 = happySpecReduce_1 202 happyReduction_570 happyReduction_570 (HappyAbsSyn203 happy_var_1) = HappyAbsSyn202 (([happy_var_1],[]) ) happyReduction_570 _ = notHappyAtAll happyReduce_571 = happySpecReduce_1 203 happyReduction_571 happyReduction_571 (HappyAbsSyn203 happy_var_1) = HappyAbsSyn203 (happy_var_1 ) happyReduction_571 _ = notHappyAtAll happyReduce_572 = happySpecReduce_1 203 happyReduction_572 happyReduction_572 (HappyAbsSyn206 happy_var_1) = HappyAbsSyn203 (QualStmt (ann happy_var_1) happy_var_1 ) happyReduction_572 _ = notHappyAtAll happyReduce_573 = happySpecReduce_2 204 happyReduction_573 happyReduction_573 (HappyAbsSyn168 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Then)) = HappyAbsSyn203 (ThenTrans (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_573 _ _ = notHappyAtAll happyReduce_574 = happyReduce 4 204 happyReduction_574 happyReduction_574 ((HappyAbsSyn168 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 KW_By)) `HappyStk` (HappyAbsSyn168 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Then)) `HappyStk` happyRest) = HappyAbsSyn203 (ThenBy (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3]) happy_var_2 happy_var_4 ) `HappyStk` happyRest happyReduce_575 = happyReduce 4 204 happyReduction_575 happyReduction_575 ((HappyAbsSyn168 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 KW_By)) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Group)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Then)) `HappyStk` happyRest) = HappyAbsSyn203 (GroupBy (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_2,happy_var_3]) happy_var_4 ) `HappyStk` happyRest happyReduce_576 = happyReduce 4 204 happyReduction_576 happyReduction_576 ((HappyAbsSyn168 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 KW_Using)) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Group)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Then)) `HappyStk` happyRest) = HappyAbsSyn203 (GroupUsing (nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_2,happy_var_3]) happy_var_4 ) `HappyStk` happyRest happyReduce_577 = happyReduce 6 204 happyReduction_577 happyReduction_577 ((HappyAbsSyn168 happy_var_6) `HappyStk` (HappyTerminal (Loc happy_var_5 KW_Using)) `HappyStk` (HappyAbsSyn168 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 KW_By)) `HappyStk` (HappyTerminal (Loc happy_var_2 KW_Group)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Then)) `HappyStk` happyRest) = HappyAbsSyn203 (GroupByUsing (nIS happy_var_1 <++> ann happy_var_6 <** [happy_var_1,happy_var_2,happy_var_3,happy_var_5]) happy_var_4 happy_var_6 ) `HappyStk` happyRest happyReduce_578 = happySpecReduce_3 205 happyReduction_578 happyReduction_578 (HappyAbsSyn206 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn205 happy_var_1) = HappyAbsSyn205 (let (sts, ss) = happy_var_1 in (happy_var_3 : sts, happy_var_2 : ss) ) happyReduction_578 _ _ _ = notHappyAtAll happyReduce_579 = happySpecReduce_1 205 happyReduction_579 happyReduction_579 (HappyAbsSyn206 happy_var_1) = HappyAbsSyn205 (([happy_var_1],[]) ) happyReduction_579 _ = notHappyAtAll happyReduce_580 = happySpecReduce_3 206 happyReduction_580 happyReduction_580 (HappyAbsSyn168 happy_var_3) (HappyTerminal (Loc happy_var_2 LeftArrow)) (HappyAbsSyn180 happy_var_1) = HappyAbsSyn206 (Generator (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_580 _ _ _ = notHappyAtAll happyReduce_581 = happySpecReduce_1 206 happyReduction_581 happyReduction_581 (HappyAbsSyn168 happy_var_1) = HappyAbsSyn206 (Qualifier (ann happy_var_1) happy_var_1 ) happyReduction_581 _ = notHappyAtAll happyReduce_582 = happySpecReduce_2 206 happyReduction_582 happyReduction_582 (HappyAbsSyn76 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Let)) = HappyAbsSyn206 (LetStmt (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_582 _ _ = notHappyAtAll happyReduce_583 = happySpecReduce_0 207 happyReduction_583 happyReduction_583 = HappyAbsSyn199 (\l -> ParArray l [] ) happyReduce_584 = happySpecReduce_1 207 happyReduction_584 happyReduction_584 (HappyAbsSyn17 happy_var_1) = HappyAbsSyn199 (\l -> ParArray l [happy_var_1] ) happyReduction_584 _ = notHappyAtAll happyReduce_585 = happySpecReduce_1 207 happyReduction_585 happyReduction_585 (HappyAbsSyn188 happy_var_1) = HappyAbsSyn199 (\l -> let (ps,ss) = happy_var_1 in ParArray (l <** reverse ss) (reverse ps) ) happyReduction_585 _ = notHappyAtAll happyReduce_586 = happySpecReduce_3 207 happyReduction_586 happyReduction_586 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 DotDot)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn199 (\l -> ParArrayFromTo (l <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_586 _ _ _ = notHappyAtAll happyReduce_587 = happyReduce 5 207 happyReduction_587 happyReduction_587 ((HappyAbsSyn17 happy_var_5) `HappyStk` (HappyTerminal (Loc happy_var_4 DotDot)) `HappyStk` (HappyAbsSyn17 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 Comma)) `HappyStk` (HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn199 (\l -> ParArrayFromThenTo (l <** [happy_var_2,happy_var_4]) happy_var_1 happy_var_3 happy_var_5 ) `HappyStk` happyRest happyReduce_588 = happySpecReduce_3 207 happyReduction_588 happyReduction_588 (HappyAbsSyn201 happy_var_3) (HappyTerminal (Loc happy_var_2 Bar)) (HappyAbsSyn17 happy_var_1) = HappyAbsSyn199 (\l -> let (stss, ss) = happy_var_3 in ParArrayComp (l <** (happy_var_2:ss)) happy_var_1 (reverse stss) ) happyReduction_588 _ _ _ = notHappyAtAll happyReduce_589 = happySpecReduce_3 208 happyReduction_589 happyReduction_589 (HappyTerminal (Loc happy_var_3 RightCurly)) (HappyAbsSyn209 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftCurly)) = HappyAbsSyn208 ((fst happy_var_2, happy_var_1 <^^> happy_var_3, happy_var_1:snd happy_var_2 ++ [happy_var_3]) ) happyReduction_589 _ _ _ = notHappyAtAll happyReduce_590 = happySpecReduce_3 208 happyReduction_590 happyReduction_590 (HappyAbsSyn258 happy_var_3) (HappyAbsSyn209 happy_var_2) (HappyAbsSyn258 happy_var_1) = HappyAbsSyn208 (let l' = ann . last $ fst happy_var_2 in (fst happy_var_2, nIS happy_var_1 <++> l', happy_var_1:snd happy_var_2 ++ [happy_var_3]) ) happyReduction_590 _ _ _ = notHappyAtAll happyReduce_591 = happySpecReduce_3 209 happyReduction_591 happyReduction_591 (HappyAbsSyn27 happy_var_3) (HappyAbsSyn209 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn209 ((reverse $ fst happy_var_2, happy_var_1 ++ snd happy_var_2 ++ happy_var_3) ) happyReduction_591 _ _ _ = notHappyAtAll happyReduce_592 = happySpecReduce_3 210 happyReduction_592 happyReduction_592 (HappyAbsSyn211 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn209 happy_var_1) = HappyAbsSyn209 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ happy_var_2) ) happyReduction_592 _ _ _ = notHappyAtAll happyReduce_593 = happySpecReduce_1 210 happyReduction_593 happyReduction_593 (HappyAbsSyn211 happy_var_1) = HappyAbsSyn209 (([happy_var_1],[]) ) happyReduction_593 _ = notHappyAtAll happyReduce_594 = happySpecReduce_3 211 happyReduction_594 happyReduction_594 (HappyAbsSyn163 happy_var_3) (HappyAbsSyn165 happy_var_2) (HappyAbsSyn180 happy_var_1) = HappyAbsSyn211 (Alt (happy_var_1 <> happy_var_2 <+?> (fmap ann) (fst happy_var_3) <** snd happy_var_3) happy_var_1 happy_var_2 (fst happy_var_3) ) happyReduction_594 _ _ _ = notHappyAtAll happyReduce_595 = happySpecReduce_2 212 happyReduction_595 happyReduction_595 (HappyAbsSyn168 happy_var_2) (HappyTerminal (Loc happy_var_1 RightArrow)) = HappyAbsSyn165 (UnGuardedRhs (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_595 _ _ = notHappyAtAll happyReduce_596 = happySpecReduce_1 212 happyReduction_596 happyReduction_596 (HappyAbsSyn166 happy_var_1) = HappyAbsSyn165 (GuardedRhss (snd happy_var_1) (reverse $ fst happy_var_1) ) happyReduction_596 _ = notHappyAtAll happyReduce_597 = happySpecReduce_2 213 happyReduction_597 happyReduction_597 (HappyAbsSyn167 happy_var_2) (HappyAbsSyn166 happy_var_1) = HappyAbsSyn166 ((happy_var_2 : fst happy_var_1, snd happy_var_1 <++> ann happy_var_2) ) happyReduction_597 _ _ = notHappyAtAll happyReduce_598 = happySpecReduce_1 213 happyReduction_598 happyReduction_598 (HappyAbsSyn167 happy_var_1) = HappyAbsSyn166 (([happy_var_1], ann happy_var_1) ) happyReduction_598 _ = notHappyAtAll happyReduce_599 = happyMonadReduce 4 214 happyReduction_599 happyReduction_599 ((HappyAbsSyn168 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 RightArrow)) `HappyStk` (HappyAbsSyn205 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 Bar)) `HappyStk` happyRest) tk = happyThen (( do { checkPatternGuards (fst happy_var_2); let {l = nIS happy_var_1 <++> ann happy_var_4 <** (happy_var_1:snd happy_var_2 ++ [happy_var_3])}; return (GuardedRhs l (reverse (fst happy_var_2)) happy_var_4) }) ) (\r -> happyReturn (HappyAbsSyn167 r)) happyReduce_600 = happyMonadReduce 1 215 happyReduction_600 happyReduction_600 ((HappyAbsSyn17 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkPattern happy_var_1) ) (\r -> happyReturn (HappyAbsSyn180 r)) happyReduce_601 = happyMonadReduce 2 215 happyReduction_601 happyReduction_601 ((HappyAbsSyn17 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 Exclamation)) `HappyStk` happyRest) tk = happyThen (( checkPattern (BangPat (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2)) ) (\r -> happyReturn (HappyAbsSyn180 r)) happyReduce_602 = happySpecReduce_3 216 happyReduction_602 happyReduction_602 (HappyTerminal (Loc happy_var_3 RightCurly)) (HappyAbsSyn217 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftCurly)) = HappyAbsSyn216 ((fst happy_var_2, happy_var_1 <^^> happy_var_3, happy_var_1:snd happy_var_2 ++ [happy_var_3]) ) happyReduction_602 _ _ _ = notHappyAtAll happyReduce_603 = happySpecReduce_3 216 happyReduction_603 happyReduction_603 (HappyAbsSyn258 happy_var_3) (HappyAbsSyn217 happy_var_2) (HappyAbsSyn258 happy_var_1) = HappyAbsSyn216 (let l' = ann . last $ fst happy_var_2 in (fst happy_var_2, nIS happy_var_1 <++> l', happy_var_1:snd happy_var_2 ++ [happy_var_3]) ) happyReduction_603 _ _ _ = notHappyAtAll happyReduce_604 = happySpecReduce_3 217 happyReduction_604 happyReduction_604 (HappyAbsSyn27 happy_var_3) (HappyAbsSyn217 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn217 ((reverse $ fst happy_var_2, happy_var_1 ++ snd happy_var_2 ++ happy_var_3) ) happyReduction_604 _ _ _ = notHappyAtAll happyReduce_605 = happySpecReduce_3 218 happyReduction_605 happyReduction_605 (HappyAbsSyn167 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn217 happy_var_1) = HappyAbsSyn217 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ happy_var_2) ) happyReduction_605 _ _ _ = notHappyAtAll happyReduce_606 = happySpecReduce_1 218 happyReduction_606 happyReduction_606 (HappyAbsSyn167 happy_var_1) = HappyAbsSyn217 (([happy_var_1], []) ) happyReduction_606 _ = notHappyAtAll happyReduce_607 = happySpecReduce_3 219 happyReduction_607 happyReduction_607 (HappyTerminal (Loc happy_var_3 RightCurly)) (HappyAbsSyn205 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftCurly)) = HappyAbsSyn219 ((fst happy_var_2, happy_var_1 <^^> happy_var_3, happy_var_1:snd happy_var_2 ++ [happy_var_3]) ) happyReduction_607 _ _ _ = notHappyAtAll happyReduce_608 = happySpecReduce_3 219 happyReduction_608 happyReduction_608 (HappyAbsSyn258 happy_var_3) (HappyAbsSyn205 happy_var_2) (HappyAbsSyn258 happy_var_1) = HappyAbsSyn219 (let l' = ann . last $ fst happy_var_2 in (fst happy_var_2, nIS happy_var_1 <++> l', happy_var_1:snd happy_var_2 ++ [happy_var_3]) ) happyReduction_608 _ _ _ = notHappyAtAll happyReduce_609 = happySpecReduce_2 220 happyReduction_609 happyReduction_609 (HappyAbsSyn205 happy_var_2) (HappyAbsSyn206 happy_var_1) = HappyAbsSyn205 ((happy_var_1 : fst happy_var_2, snd happy_var_2) ) happyReduction_609 _ _ = notHappyAtAll happyReduce_610 = happySpecReduce_2 220 happyReduction_610 happyReduction_610 (HappyAbsSyn205 happy_var_2) (HappyTerminal (Loc happy_var_1 SemiColon)) = HappyAbsSyn205 ((fst happy_var_2, happy_var_1 : snd happy_var_2) ) happyReduction_610 _ _ = notHappyAtAll happyReduce_611 = happySpecReduce_0 220 happyReduction_611 happyReduction_611 = HappyAbsSyn205 (([],[]) ) happyReduce_612 = happySpecReduce_2 221 happyReduction_612 happyReduction_612 (HappyAbsSyn205 happy_var_2) (HappyTerminal (Loc happy_var_1 SemiColon)) = HappyAbsSyn205 ((fst happy_var_2, happy_var_1 : snd happy_var_2) ) happyReduction_612 _ _ = notHappyAtAll happyReduce_613 = happySpecReduce_0 221 happyReduction_613 happyReduction_613 = HappyAbsSyn205 (([],[]) ) happyReduce_614 = happySpecReduce_2 222 happyReduction_614 happyReduction_614 (HappyAbsSyn76 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Let)) = HappyAbsSyn206 (LetStmt (nIS happy_var_1 <++> ann happy_var_2 <** [happy_var_1]) happy_var_2 ) happyReduction_614 _ _ = notHappyAtAll happyReduce_615 = happySpecReduce_3 222 happyReduction_615 happyReduction_615 (HappyAbsSyn168 happy_var_3) (HappyTerminal (Loc happy_var_2 LeftArrow)) (HappyAbsSyn180 happy_var_1) = HappyAbsSyn206 (Generator (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_615 _ _ _ = notHappyAtAll happyReduce_616 = happySpecReduce_1 222 happyReduction_616 happyReduction_616 (HappyAbsSyn168 happy_var_1) = HappyAbsSyn206 (Qualifier (ann happy_var_1) happy_var_1 ) happyReduction_616 _ = notHappyAtAll happyReduce_617 = happySpecReduce_2 222 happyReduction_617 happyReduction_617 (HappyAbsSyn219 happy_var_2) (HappyTerminal (Loc happy_var_1 KW_Rec)) = HappyAbsSyn206 (let (stms,inf,ss) = happy_var_2 in RecStmt (nIS happy_var_1 <++> inf <** happy_var_1:ss) stms ) happyReduction_617 _ _ = notHappyAtAll happyReduce_618 = happySpecReduce_3 223 happyReduction_618 happyReduction_618 (HappyAbsSyn223 happy_var_3) (HappyTerminal (Loc happy_var_2 Comma)) (HappyAbsSyn224 happy_var_1) = HappyAbsSyn223 (let (fbs, ss) = happy_var_3 in (happy_var_1 : fbs, happy_var_2 : ss) ) happyReduction_618 _ _ _ = notHappyAtAll happyReduce_619 = happySpecReduce_1 223 happyReduction_619 happyReduction_619 (HappyAbsSyn224 happy_var_1) = HappyAbsSyn223 (([happy_var_1],[]) ) happyReduction_619 _ = notHappyAtAll happyReduce_620 = happyMonadReduce 1 223 happyReduction_620 happyReduction_620 ((HappyTerminal (Loc happy_var_1 DotDot)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled RecordWildCards `atSrcLoc` (getPointLoc happy_var_1); return ([FieldWildcard (nIS happy_var_1)], []) }) ) (\r -> happyReturn (HappyAbsSyn223 r)) happyReduce_621 = happySpecReduce_3 224 happyReduction_621 happyReduction_621 (HappyAbsSyn17 happy_var_3) (HappyTerminal (Loc happy_var_2 Equals)) (HappyAbsSyn34 happy_var_1) = HappyAbsSyn224 (FieldUpdate (happy_var_1 <>happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_621 _ _ _ = notHappyAtAll happyReduce_622 = happyMonadReduce 1 224 happyReduction_622 happyReduction_622 ((HappyAbsSyn34 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled NamedFieldPuns >> checkQualOrUnQual happy_var_1 >>= return . FieldPun (ann happy_var_1)) ) (\r -> happyReturn (HappyAbsSyn224 r)) happyReduce_623 = happySpecReduce_3 225 happyReduction_623 happyReduction_623 (HappyAbsSyn27 happy_var_3) (HappyAbsSyn225 happy_var_2) (HappyAbsSyn27 happy_var_1) = HappyAbsSyn225 ((reverse (fst happy_var_2), reverse happy_var_1 ++ snd happy_var_2 ++ reverse happy_var_3) ) happyReduction_623 _ _ _ = notHappyAtAll happyReduce_624 = happySpecReduce_3 226 happyReduction_624 happyReduction_624 (HappyAbsSyn227 happy_var_3) (HappyAbsSyn27 happy_var_2) (HappyAbsSyn225 happy_var_1) = HappyAbsSyn225 ((happy_var_3 : fst happy_var_1, snd happy_var_1 ++ reverse happy_var_2) ) happyReduction_624 _ _ _ = notHappyAtAll happyReduce_625 = happySpecReduce_1 226 happyReduction_625 happyReduction_625 (HappyAbsSyn227 happy_var_1) = HappyAbsSyn225 (([happy_var_1],[]) ) happyReduction_625 _ = notHappyAtAll happyReduce_626 = happySpecReduce_3 227 happyReduction_626 happyReduction_626 (HappyAbsSyn168 happy_var_3) (HappyTerminal (Loc happy_var_2 Equals)) (HappyAbsSyn232 happy_var_1) = HappyAbsSyn227 (IPBind (happy_var_1 <> happy_var_3 <** [happy_var_2]) happy_var_1 happy_var_3 ) happyReduction_626 _ _ _ = notHappyAtAll happyReduce_627 = happySpecReduce_2 228 happyReduction_627 happyReduction_627 (HappyTerminal (Loc happy_var_2 RightParen)) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn17 (p_unit_con (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) ) happyReduction_627 _ _ = notHappyAtAll happyReduce_628 = happySpecReduce_2 228 happyReduction_628 happyReduction_628 (HappyTerminal (Loc happy_var_2 RightSquare)) (HappyTerminal (Loc happy_var_1 LeftSquare)) = HappyAbsSyn17 (List (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) [] ) happyReduction_628 _ _ = notHappyAtAll happyReduce_629 = happySpecReduce_3 228 happyReduction_629 happyReduction_629 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn27 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn17 (p_tuple_con (happy_var_1 <^^> happy_var_3 <** happy_var_1:reverse (happy_var_3:happy_var_2)) Boxed (length happy_var_2) ) happyReduction_629 _ _ _ = notHappyAtAll happyReduce_630 = happySpecReduce_2 228 happyReduction_630 happyReduction_630 (HappyTerminal (Loc happy_var_2 RightHashParen)) (HappyTerminal (Loc happy_var_1 LeftHashParen)) = HappyAbsSyn17 (p_unboxed_singleton_con (happy_var_1 <^^> happy_var_2 <** [happy_var_1,happy_var_2]) ) happyReduction_630 _ _ = notHappyAtAll happyReduce_631 = happySpecReduce_3 228 happyReduction_631 happyReduction_631 (HappyTerminal (Loc happy_var_3 RightHashParen)) (HappyAbsSyn27 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftHashParen)) = HappyAbsSyn17 (p_tuple_con (happy_var_1 <^^> happy_var_3 <** happy_var_1:reverse (happy_var_3:happy_var_2)) Unboxed (length happy_var_2) ) happyReduction_631 _ _ _ = notHappyAtAll happyReduce_632 = happySpecReduce_1 228 happyReduction_632 happyReduction_632 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn17 (Con (ann happy_var_1) happy_var_1 ) happyReduction_632 _ = notHappyAtAll happyReduce_633 = happySpecReduce_1 229 happyReduction_633 happyReduction_633 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_633 _ = notHappyAtAll happyReduce_634 = happySpecReduce_3 229 happyReduction_634 happyReduction_634 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn100 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn100 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 ) happyReduction_634 _ _ _ = notHappyAtAll happyReduce_635 = happySpecReduce_1 230 happyReduction_635 happyReduction_635 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_635 _ = notHappyAtAll happyReduce_636 = happySpecReduce_3 230 happyReduction_636 happyReduction_636 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn100 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn100 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 ) happyReduction_636 _ _ _ = notHappyAtAll happyReduce_637 = happySpecReduce_1 231 happyReduction_637 happyReduction_637 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_637 _ = notHappyAtAll happyReduce_638 = happySpecReduce_3 231 happyReduction_638 happyReduction_638 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn34 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 ) happyReduction_638 _ _ _ = notHappyAtAll happyReduce_639 = happySpecReduce_1 232 happyReduction_639 happyReduction_639 (HappyAbsSyn232 happy_var_1) = HappyAbsSyn232 (happy_var_1 ) happyReduction_639 _ = notHappyAtAll happyReduce_640 = happySpecReduce_1 233 happyReduction_640 happyReduction_640 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_640 _ = notHappyAtAll happyReduce_641 = happySpecReduce_3 233 happyReduction_641 happyReduction_641 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn100 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn100 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 ) happyReduction_641 _ _ _ = notHappyAtAll happyReduce_642 = happySpecReduce_1 234 happyReduction_642 happyReduction_642 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_642 _ = notHappyAtAll happyReduce_643 = happySpecReduce_3 234 happyReduction_643 happyReduction_643 (HappyTerminal (Loc happy_var_3 RightParen)) (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 LeftParen)) = HappyAbsSyn34 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 ) happyReduction_643 _ _ _ = notHappyAtAll happyReduce_644 = happySpecReduce_1 235 happyReduction_644 happyReduction_644 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_644 _ = notHappyAtAll happyReduce_645 = happySpecReduce_3 235 happyReduction_645 happyReduction_645 (HappyTerminal (Loc happy_var_3 BackQuote)) (HappyAbsSyn100 happy_var_2) (HappyTerminal (Loc happy_var_1 BackQuote)) = HappyAbsSyn100 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 ) happyReduction_645 _ _ _ = notHappyAtAll happyReduce_646 = happySpecReduce_1 236 happyReduction_646 happyReduction_646 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_646 _ = notHappyAtAll happyReduce_647 = happySpecReduce_3 236 happyReduction_647 happyReduction_647 (HappyTerminal (Loc happy_var_3 BackQuote)) (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 BackQuote)) = HappyAbsSyn34 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 ) happyReduction_647 _ _ _ = notHappyAtAll happyReduce_648 = happySpecReduce_1 237 happyReduction_648 happyReduction_648 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_648 _ = notHappyAtAll happyReduce_649 = happySpecReduce_3 237 happyReduction_649 happyReduction_649 (HappyTerminal (Loc happy_var_3 BackQuote)) (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 BackQuote)) = HappyAbsSyn34 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 ) happyReduction_649 _ _ _ = notHappyAtAll happyReduce_650 = happySpecReduce_1 238 happyReduction_650 happyReduction_650 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_650 _ = notHappyAtAll happyReduce_651 = happySpecReduce_3 238 happyReduction_651 happyReduction_651 (HappyTerminal (Loc happy_var_3 BackQuote)) (HappyAbsSyn100 happy_var_2) (HappyTerminal (Loc happy_var_1 BackQuote)) = HappyAbsSyn100 (fmap (const (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3])) happy_var_2 ) happyReduction_651 _ _ _ = notHappyAtAll happyReduce_652 = happySpecReduce_1 239 happyReduction_652 happyReduction_652 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_652 _ = notHappyAtAll happyReduce_653 = happySpecReduce_3 239 happyReduction_653 happyReduction_653 (HappyTerminal (Loc happy_var_3 BackQuote)) (HappyAbsSyn34 happy_var_2) (HappyTerminal (Loc happy_var_1 BackQuote)) = HappyAbsSyn34 (updateQNameLoc (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 ) happyReduction_653 _ _ _ = notHappyAtAll happyReduce_654 = happySpecReduce_1 240 happyReduction_654 happyReduction_654 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn240 (VarOp (ann happy_var_1) happy_var_1 ) happyReduction_654 _ = notHappyAtAll happyReduce_655 = happySpecReduce_1 240 happyReduction_655 happyReduction_655 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn240 (ConOp (ann happy_var_1) happy_var_1 ) happyReduction_655 _ = notHappyAtAll happyReduce_656 = happySpecReduce_1 241 happyReduction_656 happyReduction_656 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn241 (QVarOp (ann happy_var_1) happy_var_1 ) happyReduction_656 _ = notHappyAtAll happyReduce_657 = happySpecReduce_1 241 happyReduction_657 happyReduction_657 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn241 (QConOp (ann happy_var_1) happy_var_1 ) happyReduction_657 _ = notHappyAtAll happyReduce_658 = happySpecReduce_1 242 happyReduction_658 happyReduction_658 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn241 (QVarOp (ann happy_var_1) happy_var_1 ) happyReduction_658 _ = notHappyAtAll happyReduce_659 = happySpecReduce_1 242 happyReduction_659 happyReduction_659 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn241 (QConOp (ann happy_var_1) happy_var_1 ) happyReduction_659 _ = notHappyAtAll happyReduce_660 = happySpecReduce_1 243 happyReduction_660 happyReduction_660 (HappyTerminal (Loc happy_var_1 Colon)) = HappyAbsSyn34 (list_cons_name (nIS happy_var_1) ) happyReduction_660 _ = notHappyAtAll happyReduce_661 = happySpecReduce_1 243 happyReduction_661 happyReduction_661 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_661 _ = notHappyAtAll happyReduce_662 = happySpecReduce_1 244 happyReduction_662 happyReduction_662 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn34 (UnQual (ann happy_var_1) happy_var_1 ) happyReduction_662 _ = notHappyAtAll happyReduce_663 = happySpecReduce_1 244 happyReduction_663 happyReduction_663 (HappyTerminal happy_var_1) = HappyAbsSyn34 (let {Loc l (QVarId q) = happy_var_1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Ident nis (snd q)) ) happyReduction_663 _ = notHappyAtAll happyReduce_664 = happySpecReduce_1 245 happyReduction_664 happyReduction_664 (HappyTerminal happy_var_1) = HappyAbsSyn100 (let Loc l (VarId v) = happy_var_1 in Ident (nIS l) v ) happyReduction_664 _ = notHappyAtAll happyReduce_665 = happySpecReduce_1 245 happyReduction_665 happyReduction_665 (HappyTerminal (Loc happy_var_1 KW_As)) = HappyAbsSyn100 (as_name (nIS happy_var_1) ) happyReduction_665 _ = notHappyAtAll happyReduce_666 = happySpecReduce_1 245 happyReduction_666 happyReduction_666 (HappyTerminal (Loc happy_var_1 KW_Qualified)) = HappyAbsSyn100 (qualified_name (nIS happy_var_1) ) happyReduction_666 _ = notHappyAtAll happyReduce_667 = happySpecReduce_1 245 happyReduction_667 happyReduction_667 (HappyTerminal (Loc happy_var_1 KW_Hiding)) = HappyAbsSyn100 (hiding_name (nIS happy_var_1) ) happyReduction_667 _ = notHappyAtAll happyReduce_668 = happySpecReduce_1 245 happyReduction_668 happyReduction_668 (HappyTerminal (Loc happy_var_1 KW_Export)) = HappyAbsSyn100 (export_name (nIS happy_var_1) ) happyReduction_668 _ = notHappyAtAll happyReduce_669 = happySpecReduce_1 245 happyReduction_669 happyReduction_669 (HappyTerminal (Loc happy_var_1 KW_StdCall)) = HappyAbsSyn100 (stdcall_name (nIS happy_var_1) ) happyReduction_669 _ = notHappyAtAll happyReduce_670 = happySpecReduce_1 245 happyReduction_670 happyReduction_670 (HappyTerminal (Loc happy_var_1 KW_CCall)) = HappyAbsSyn100 (ccall_name (nIS happy_var_1) ) happyReduction_670 _ = notHappyAtAll happyReduce_671 = happySpecReduce_1 245 happyReduction_671 happyReduction_671 (HappyTerminal (Loc happy_var_1 KW_CPlusPlus)) = HappyAbsSyn100 (cplusplus_name (nIS happy_var_1) ) happyReduction_671 _ = notHappyAtAll happyReduce_672 = happySpecReduce_1 245 happyReduction_672 happyReduction_672 (HappyTerminal (Loc happy_var_1 KW_DotNet)) = HappyAbsSyn100 (dotnet_name (nIS happy_var_1) ) happyReduction_672 _ = notHappyAtAll happyReduce_673 = happySpecReduce_1 245 happyReduction_673 happyReduction_673 (HappyTerminal (Loc happy_var_1 KW_Jvm)) = HappyAbsSyn100 (jvm_name (nIS happy_var_1) ) happyReduction_673 _ = notHappyAtAll happyReduce_674 = happySpecReduce_1 245 happyReduction_674 happyReduction_674 (HappyTerminal (Loc happy_var_1 KW_Js)) = HappyAbsSyn100 (js_name (nIS happy_var_1) ) happyReduction_674 _ = notHappyAtAll happyReduce_675 = happySpecReduce_1 245 happyReduction_675 happyReduction_675 (HappyTerminal (Loc happy_var_1 KW_JavaScript)) = HappyAbsSyn100 (javascript_name (nIS happy_var_1) ) happyReduction_675 _ = notHappyAtAll happyReduce_676 = happySpecReduce_1 245 happyReduction_676 happyReduction_676 (HappyTerminal (Loc happy_var_1 KW_CApi)) = HappyAbsSyn100 (capi_name (nIS happy_var_1) ) happyReduction_676 _ = notHappyAtAll happyReduce_677 = happySpecReduce_1 246 happyReduction_677 happyReduction_677 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_677 _ = notHappyAtAll happyReduce_678 = happySpecReduce_1 246 happyReduction_678 happyReduction_678 (HappyTerminal (Loc happy_var_1 KW_Safe)) = HappyAbsSyn100 (safe_name (nIS happy_var_1) ) happyReduction_678 _ = notHappyAtAll happyReduce_679 = happySpecReduce_1 246 happyReduction_679 happyReduction_679 (HappyTerminal (Loc happy_var_1 KW_Unsafe)) = HappyAbsSyn100 (unsafe_name (nIS happy_var_1) ) happyReduction_679 _ = notHappyAtAll happyReduce_680 = happySpecReduce_1 246 happyReduction_680 happyReduction_680 (HappyTerminal (Loc happy_var_1 KW_Interruptible)) = HappyAbsSyn100 (interruptible_name (nIS happy_var_1) ) happyReduction_680 _ = notHappyAtAll happyReduce_681 = happySpecReduce_1 246 happyReduction_681 happyReduction_681 (HappyTerminal (Loc happy_var_1 KW_Threadsafe)) = HappyAbsSyn100 (threadsafe_name (nIS happy_var_1) ) happyReduction_681 _ = notHappyAtAll happyReduce_682 = happySpecReduce_1 246 happyReduction_682 happyReduction_682 (HappyTerminal (Loc happy_var_1 KW_Forall)) = HappyAbsSyn100 (forall_name (nIS happy_var_1) ) happyReduction_682 _ = notHappyAtAll happyReduce_683 = happySpecReduce_1 246 happyReduction_683 happyReduction_683 (HappyTerminal (Loc happy_var_1 KW_Family)) = HappyAbsSyn100 (family_name (nIS happy_var_1) ) happyReduction_683 _ = notHappyAtAll happyReduce_684 = happySpecReduce_1 246 happyReduction_684 happyReduction_684 (HappyTerminal (Loc happy_var_1 KW_Role)) = HappyAbsSyn100 (role_name (nIS happy_var_1) ) happyReduction_684 _ = notHappyAtAll happyReduce_685 = happySpecReduce_1 247 happyReduction_685 happyReduction_685 (HappyTerminal happy_var_1) = HappyAbsSyn232 (let Loc l (IDupVarId i) = happy_var_1 in IPDup (nIS l) i ) happyReduction_685 _ = notHappyAtAll happyReduce_686 = happySpecReduce_1 247 happyReduction_686 happyReduction_686 (HappyTerminal happy_var_1) = HappyAbsSyn232 (let Loc l (ILinVarId i) = happy_var_1 in IPLin (nIS l) i ) happyReduction_686 _ = notHappyAtAll happyReduce_687 = happySpecReduce_1 248 happyReduction_687 happyReduction_687 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn34 (UnQual (ann happy_var_1) happy_var_1 ) happyReduction_687 _ = notHappyAtAll happyReduce_688 = happySpecReduce_1 248 happyReduction_688 happyReduction_688 (HappyTerminal happy_var_1) = HappyAbsSyn34 (let {Loc l (QConId q) = happy_var_1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Ident nis (snd q)) ) happyReduction_688 _ = notHappyAtAll happyReduce_689 = happySpecReduce_1 249 happyReduction_689 happyReduction_689 (HappyTerminal happy_var_1) = HappyAbsSyn100 (let Loc l (ConId c) = happy_var_1 in Ident (nIS l) c ) happyReduction_689 _ = notHappyAtAll happyReduce_690 = happySpecReduce_1 250 happyReduction_690 happyReduction_690 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn34 (UnQual (ann happy_var_1) happy_var_1 ) happyReduction_690 _ = notHappyAtAll happyReduce_691 = happySpecReduce_1 250 happyReduction_691 happyReduction_691 (HappyTerminal happy_var_1) = HappyAbsSyn34 (let {Loc l (QConSym q) = happy_var_1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Symbol nis (snd q)) ) happyReduction_691 _ = notHappyAtAll happyReduce_692 = happySpecReduce_1 251 happyReduction_692 happyReduction_692 (HappyTerminal happy_var_1) = HappyAbsSyn100 (let Loc l (ConSym c) = happy_var_1 in Symbol (nIS l) c ) happyReduction_692 _ = notHappyAtAll happyReduce_693 = happySpecReduce_1 252 happyReduction_693 happyReduction_693 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn34 (UnQual (ann happy_var_1) happy_var_1 ) happyReduction_693 _ = notHappyAtAll happyReduce_694 = happySpecReduce_1 252 happyReduction_694 happyReduction_694 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_694 _ = notHappyAtAll happyReduce_695 = happySpecReduce_1 253 happyReduction_695 happyReduction_695 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn34 (UnQual (ann happy_var_1) happy_var_1 ) happyReduction_695 _ = notHappyAtAll happyReduce_696 = happySpecReduce_1 253 happyReduction_696 happyReduction_696 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_696 _ = notHappyAtAll happyReduce_697 = happySpecReduce_1 254 happyReduction_697 happyReduction_697 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_697 _ = notHappyAtAll happyReduce_698 = happySpecReduce_1 254 happyReduction_698 happyReduction_698 (HappyTerminal (Loc happy_var_1 Minus)) = HappyAbsSyn100 (minus_name (nIS happy_var_1) ) happyReduction_698 _ = notHappyAtAll happyReduce_699 = happySpecReduce_1 255 happyReduction_699 happyReduction_699 (HappyTerminal happy_var_1) = HappyAbsSyn100 (let Loc l (VarSym v) = happy_var_1 in Symbol (nIS l) v ) happyReduction_699 _ = notHappyAtAll happyReduce_700 = happySpecReduce_1 255 happyReduction_700 happyReduction_700 (HappyTerminal (Loc happy_var_1 Exclamation)) = HappyAbsSyn100 (bang_name (nIS happy_var_1) ) happyReduction_700 _ = notHappyAtAll happyReduce_701 = happySpecReduce_1 255 happyReduction_701 happyReduction_701 (HappyTerminal (Loc happy_var_1 Dot)) = HappyAbsSyn100 (dot_name (nIS happy_var_1) ) happyReduction_701 _ = notHappyAtAll happyReduce_702 = happySpecReduce_1 255 happyReduction_702 happyReduction_702 (HappyTerminal (Loc happy_var_1 Star)) = HappyAbsSyn100 (star_name (nIS happy_var_1) ) happyReduction_702 _ = notHappyAtAll happyReduce_703 = happySpecReduce_1 256 happyReduction_703 happyReduction_703 (HappyTerminal happy_var_1) = HappyAbsSyn34 (let {Loc l (QVarSym q) = happy_var_1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Symbol nis (snd q)) ) happyReduction_703 _ = notHappyAtAll happyReduce_704 = happySpecReduce_1 257 happyReduction_704 happyReduction_704 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (IntTok (i,raw)) = happy_var_1 in Int (nIS l) i raw ) happyReduction_704 _ = notHappyAtAll happyReduce_705 = happySpecReduce_1 257 happyReduction_705 happyReduction_705 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (Character (c,raw)) = happy_var_1 in Char (nIS l) c raw ) happyReduction_705 _ = notHappyAtAll happyReduce_706 = happySpecReduce_1 257 happyReduction_706 happyReduction_706 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (FloatTok (r,raw)) = happy_var_1 in Frac (nIS l) r raw ) happyReduction_706 _ = notHappyAtAll happyReduce_707 = happySpecReduce_1 257 happyReduction_707 happyReduction_707 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (StringTok (s,raw)) = happy_var_1 in String (nIS l) s raw ) happyReduction_707 _ = notHappyAtAll happyReduce_708 = happySpecReduce_1 257 happyReduction_708 happyReduction_708 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (IntTokHash (i,raw)) = happy_var_1 in PrimInt (nIS l) i raw ) happyReduction_708 _ = notHappyAtAll happyReduce_709 = happySpecReduce_1 257 happyReduction_709 happyReduction_709 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (WordTokHash (w,raw)) = happy_var_1 in PrimWord (nIS l) w raw ) happyReduction_709 _ = notHappyAtAll happyReduce_710 = happySpecReduce_1 257 happyReduction_710 happyReduction_710 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (FloatTokHash (f,raw)) = happy_var_1 in PrimFloat (nIS l) f raw ) happyReduction_710 _ = notHappyAtAll happyReduce_711 = happySpecReduce_1 257 happyReduction_711 happyReduction_711 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (DoubleTokHash (d,raw)) = happy_var_1 in PrimDouble (nIS l) d raw ) happyReduction_711 _ = notHappyAtAll happyReduce_712 = happySpecReduce_1 257 happyReduction_712 happyReduction_712 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (CharacterHash (c,raw)) = happy_var_1 in PrimChar (nIS l) c raw ) happyReduction_712 _ = notHappyAtAll happyReduce_713 = happySpecReduce_1 257 happyReduction_713 happyReduction_713 (HappyTerminal happy_var_1) = HappyAbsSyn257 (let Loc l (StringHash (s,raw)) = happy_var_1 in PrimString (nIS l) s raw ) happyReduction_713 _ = notHappyAtAll happyReduce_714 = happyMonadReduce 0 258 happyReduction_714 happyReduction_714 (happyRest) tk = happyThen (( pushCurrentContext >> getSrcLoc >>= \s -> return $ mkSrcSpan s s {- >>= \x -> trace (show x) (return x) -}) ) (\r -> happyReturn (HappyAbsSyn258 r)) happyReduce_715 = happySpecReduce_1 259 happyReduction_715 happyReduction_715 (HappyTerminal (Loc happy_var_1 VRightCurly)) = HappyAbsSyn258 (happy_var_1 {- >>= \x -> trace (show x ++ show x ++ show x) (return x) -} ) happyReduction_715 _ = notHappyAtAll happyReduce_716 = happyMonadReduce 1 259 happyReduction_716 happyReduction_716 (_ `HappyStk` happyRest) tk = happyThen (( popContext >> getSrcLoc >>= \s -> return $ mkSrcSpan s s {- >>= \x -> trace (show x ++ show x) (return x) -}) ) (\r -> happyReturn (HappyAbsSyn258 r)) happyReduce_717 = happyMonadReduce 1 260 happyReduction_717 happyReduction_717 ((HappyAbsSyn49 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkEnabled PatternSynonyms >> return happy_var_1) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_718 = happyReduce 4 261 happyReduction_718 happyReduction_718 ((HappyAbsSyn180 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 Equals)) `HappyStk` (HappyAbsSyn180 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Pattern)) `HappyStk` happyRest) = HappyAbsSyn49 (let l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3] in PatSyn l happy_var_2 happy_var_4 ImplicitBidirectional ) `HappyStk` happyRest happyReduce_719 = happyReduce 4 261 happyReduction_719 happyReduction_719 ((HappyAbsSyn180 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 LeftArrow)) `HappyStk` (HappyAbsSyn180 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Pattern)) `HappyStk` happyRest) = HappyAbsSyn49 (let l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1,happy_var_3] in PatSyn l happy_var_2 happy_var_4 Unidirectional ) `HappyStk` happyRest happyReduce_720 = happyReduce 5 261 happyReduction_720 happyReduction_720 ((HappyAbsSyn264 happy_var_5) `HappyStk` (HappyAbsSyn180 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 LeftArrow)) `HappyStk` (HappyAbsSyn180 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Pattern)) `HappyStk` happyRest) = HappyAbsSyn49 (let l = nIS happy_var_1 <++> ann happy_var_4 <** [happy_var_1, happy_var_3] in PatSyn l happy_var_2 happy_var_4 happy_var_5 ) `HappyStk` happyRest happyReduce_721 = happySpecReduce_2 262 happyReduction_721 happyReduction_721 (HappyAbsSyn179 happy_var_2) (HappyAbsSyn100 happy_var_1) = HappyAbsSyn180 (let l = case happy_var_2 of [] -> ann happy_var_1 (_:_) -> ann happy_var_1 <++> (ann $ last happy_var_2) in PApp l (UnQual (ann happy_var_1) happy_var_1) happy_var_2 ) happyReduction_721 _ _ = notHappyAtAll happyReduce_722 = happySpecReduce_3 262 happyReduction_722 happyReduction_722 (HappyAbsSyn100 happy_var_3) (HappyAbsSyn34 happy_var_2) (HappyAbsSyn100 happy_var_1) = HappyAbsSyn180 (PInfixApp (ann happy_var_1 <++> ann happy_var_3) (PVar (ann happy_var_1) happy_var_1) happy_var_2 (PVar (ann happy_var_3) happy_var_3) ) happyReduction_722 _ _ _ = notHappyAtAll happyReduce_723 = happySpecReduce_0 263 happyReduction_723 happyReduction_723 = HappyAbsSyn179 ([] ) happyReduce_724 = happySpecReduce_2 263 happyReduction_724 happyReduction_724 (HappyAbsSyn179 happy_var_2) (HappyAbsSyn100 happy_var_1) = HappyAbsSyn179 (PVar (ann happy_var_1) happy_var_1 : happy_var_2 ) happyReduction_724 _ _ = notHappyAtAll happyReduce_725 = happyMonadReduce 4 264 happyReduction_725 happyReduction_725 ((HappyTerminal (Loc happy_var_4 RightCurly)) `HappyStk` (HappyAbsSyn56 happy_var_3) `HappyStk` (HappyTerminal (Loc happy_var_2 LeftCurly)) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Where)) `HappyStk` happyRest) tk = happyThen (( checkExplicitPatSyn happy_var_1 happy_var_2 happy_var_3 happy_var_4) ) (\r -> happyReturn (HappyAbsSyn264 r)) happyReduce_726 = happyMonadReduce 4 264 happyReduction_726 happyReduction_726 ((HappyAbsSyn258 happy_var_4) `HappyStk` (HappyAbsSyn56 happy_var_3) `HappyStk` (HappyAbsSyn258 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Where)) `HappyStk` happyRest) tk = happyThen (( checkExplicitPatSyn happy_var_1 happy_var_2 happy_var_3 happy_var_4) ) (\r -> happyReturn (HappyAbsSyn264 r)) happyReduce_727 = happyMonadReduce 4 265 happyReduction_727 happyReduction_727 ((HappyAbsSyn266 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 DoubleColon)) `HappyStk` (HappyAbsSyn100 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Pattern)) `HappyStk` happyRest) tk = happyThen (( do { checkEnabled PatternSynonyms ; let {(qtvs, ps, prov, req, ty) = happy_var_4} ; let {sig = PatSynSig (nIS happy_var_1 <++> ann ty <** [happy_var_1, happy_var_3] ++ ps) happy_var_2 qtvs prov req ty} ; return sig }) ) (\r -> happyReturn (HappyAbsSyn49 r)) happyReduce_728 = happyReduce 4 266 happyReduction_728 happyReduction_728 ((HappyAbsSyn266 happy_var_4) `HappyStk` (HappyTerminal (Loc happy_var_3 Dot)) `HappyStk` (HappyAbsSyn122 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 KW_Forall)) `HappyStk` happyRest) = HappyAbsSyn266 (let (qtvs, ps, prov, req, ty) = happy_var_4 in (Just (reverse (fst happy_var_2) ++ fromMaybe [] qtvs), (happy_var_1 : happy_var_3 : ps), prov, req, ty) ) `HappyStk` happyRest happyReduce_729 = happyMonadReduce 3 266 happyReduction_729 happyReduction_729 ((HappyAbsSyn103 happy_var_3) `HappyStk` (HappyAbsSyn119 happy_var_2) `HappyStk` (HappyAbsSyn119 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { c1 <- checkContext (Just happy_var_1) ; c2 <- checkContext (Just happy_var_2) ; t <- checkType happy_var_3 ; return $ (Nothing, [], c1, c2, t) }) ) (\r -> happyReturn (HappyAbsSyn266 r)) happyReduce_730 = happyMonadReduce 2 266 happyReduction_730 happyReduction_730 ((HappyAbsSyn103 happy_var_2) `HappyStk` (HappyAbsSyn119 happy_var_1) `HappyStk` happyRest) tk = happyThen (( do { c1 <- checkContext (Just happy_var_1); t <- checkType happy_var_2; return (Nothing, [], c1, Nothing, t) }) ) (\r -> happyReturn (HappyAbsSyn266 r)) happyReduce_731 = happyMonadReduce 1 266 happyReduction_731 happyReduction_731 ((HappyAbsSyn103 happy_var_1) `HappyStk` happyRest) tk = happyThen (( checkType happy_var_1 >>= \t -> return (Nothing, [], Nothing, Nothing, t)) ) (\r -> happyReturn (HappyAbsSyn266 r)) happyReduce_732 = happySpecReduce_1 267 happyReduction_732 happyReduction_732 (HappyTerminal happy_var_1) = HappyAbsSyn267 (let Loc l (ConId n) = happy_var_1 in ModuleName (nIS l) n ) happyReduction_732 _ = notHappyAtAll happyReduce_733 = happySpecReduce_1 267 happyReduction_733 happyReduction_733 (HappyTerminal happy_var_1) = HappyAbsSyn267 (let Loc l (QConId n) = happy_var_1 in ModuleName (nIS l) (fst n ++ '.':snd n) ) happyReduction_733 _ = notHappyAtAll happyReduce_734 = happySpecReduce_1 268 happyReduction_734 happyReduction_734 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_734 _ = notHappyAtAll happyReduce_735 = happySpecReduce_1 269 happyReduction_735 happyReduction_735 (HappyAbsSyn34 happy_var_1) = HappyAbsSyn34 (happy_var_1 ) happyReduction_735 _ = notHappyAtAll happyReduce_736 = happySpecReduce_1 270 happyReduction_736 happyReduction_736 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_736 _ = notHappyAtAll happyReduce_737 = happySpecReduce_1 271 happyReduction_737 happyReduction_737 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn100 (happy_var_1 ) happyReduction_737 _ = notHappyAtAll happyReduce_738 = happySpecReduce_1 271 happyReduction_738 happyReduction_738 (HappyTerminal (Loc happy_var_1 KW_Safe)) = HappyAbsSyn100 (safe_name (nIS happy_var_1) ) happyReduction_738 _ = notHappyAtAll happyReduce_739 = happySpecReduce_1 271 happyReduction_739 happyReduction_739 (HappyTerminal (Loc happy_var_1 KW_Unsafe)) = HappyAbsSyn100 (unsafe_name (nIS happy_var_1) ) happyReduction_739 _ = notHappyAtAll happyReduce_740 = happySpecReduce_1 271 happyReduction_740 happyReduction_740 (HappyTerminal (Loc happy_var_1 KW_Threadsafe)) = HappyAbsSyn100 (threadsafe_name (nIS happy_var_1) ) happyReduction_740 _ = notHappyAtAll happyReduce_741 = happySpecReduce_3 272 happyReduction_741 happyReduction_741 (HappyTerminal (Loc happy_var_3 BackQuote)) (HappyAbsSyn100 happy_var_2) (HappyTerminal (Loc happy_var_1 BackQuote)) = HappyAbsSyn34 (UnQual (happy_var_1 <^^> happy_var_3 <** [happy_var_1, srcInfoSpan (ann happy_var_2), happy_var_3]) happy_var_2 ) happyReduction_741 _ _ _ = notHappyAtAll happyReduce_742 = happySpecReduce_1 272 happyReduction_742 happyReduction_742 (HappyAbsSyn100 happy_var_1) = HappyAbsSyn34 (UnQual (ann happy_var_1) happy_var_1 ) happyReduction_742 _ = notHappyAtAll happyReduce_743 = happySpecReduce_1 273 happyReduction_743 happyReduction_743 (HappyTerminal happy_var_1) = HappyAbsSyn100 (let Loc l (VarSym x) = happy_var_1 in Symbol (nIS l) x ) happyReduction_743 _ = notHappyAtAll happyReduce_744 = happySpecReduce_1 273 happyReduction_744 happyReduction_744 (HappyTerminal (Loc happy_var_1 Minus)) = HappyAbsSyn100 (Symbol (nIS happy_var_1) "-" ) happyReduction_744 _ = notHappyAtAll happyReduce_745 = happyReduce 5 274 happyReduction_745 happyReduction_745 ((HappyTerminal (Loc happy_var_5 RightCurly)) `HappyStk` (HappyAbsSyn27 happy_var_4) `HappyStk` (HappyAbsSyn35 happy_var_3) `HappyStk` (HappyAbsSyn27 happy_var_2) `HappyStk` (HappyTerminal (Loc happy_var_1 LeftCurly)) `HappyStk` happyRest) = HappyAbsSyn274 (let (ids, ss) = happy_var_3 in (ids, happy_var_1 : reverse happy_var_2 ++ ss ++ reverse happy_var_4 ++ [happy_var_5], happy_var_1 <^^> happy_var_5) ) `HappyStk` happyRest happyReduce_746 = happyReduce 5 274 happyReduction_746 happyReduction_746 ((HappyAbsSyn258 happy_var_5) `HappyStk` (HappyAbsSyn27 happy_var_4) `HappyStk` (HappyAbsSyn35 happy_var_3) `HappyStk` (HappyAbsSyn27 happy_var_2) `HappyStk` (HappyAbsSyn258 happy_var_1) `HappyStk` happyRest) = HappyAbsSyn274 (let (ids, ss) = happy_var_3 in (ids, happy_var_1 : reverse happy_var_2 ++ ss ++ reverse happy_var_4 ++ [happy_var_5], happy_var_1 <^^> happy_var_5) ) `HappyStk` happyRest happyReduce_747 = happySpecReduce_3 275 happyReduction_747 happyReduction_747 (HappyAbsSyn267 happy_var_3) _ (HappyAbsSyn18 happy_var_1) = HappyAbsSyn275 ((happy_var_1, Just happy_var_3) ) happyReduction_747 _ _ _ = notHappyAtAll happyReduce_748 = happySpecReduce_1 275 happyReduction_748 happyReduction_748 (HappyAbsSyn18 happy_var_1) = HappyAbsSyn275 ((happy_var_1, Nothing) ) happyReduction_748 _ = notHappyAtAll happyReduce_749 = happySpecReduce_2 276 happyReduction_749 happyReduction_749 (HappyAbsSyn23 happy_var_2) (HappyAbsSyn18 happy_var_1) = HappyAbsSyn276 ((happy_var_1, happy_var_2) ) happyReduction_749 _ _ = notHappyAtAll happyReduce_750 = happySpecReduce_3 277 happyReduction_750 happyReduction_750 (HappyAbsSyn274 happy_var_3) (HappyAbsSyn23 happy_var_2) (HappyAbsSyn18 happy_var_1) = HappyAbsSyn277 ((happy_var_1, happy_var_2, Just happy_var_3) ) happyReduction_750 _ _ _ = notHappyAtAll happyReduce_751 = happySpecReduce_2 277 happyReduction_751 happyReduction_751 (HappyAbsSyn23 happy_var_2) (HappyAbsSyn18 happy_var_1) = HappyAbsSyn277 ((happy_var_1, happy_var_2, Nothing) ) happyReduction_751 _ _ = notHappyAtAll happyNewToken action sts stk = lexer(\tk -> let cont i = action i i tk (HappyState action) sts stk in case tk of { Loc _ EOF -> action 426 426 tk (HappyState action) sts stk; Loc _ (VarId _) -> cont 278; Loc _ (QVarId _) -> cont 279; Loc _ (IDupVarId _) -> cont 280; Loc _ (ILinVarId _) -> cont 281; Loc _ (ConId _) -> cont 282; Loc _ (QConId _) -> cont 283; Loc _ (DVarId _) -> cont 284; Loc _ (VarSym _) -> cont 285; Loc _ (ConSym _) -> cont 286; Loc _ (QVarSym _) -> cont 287; Loc _ (QConSym _) -> cont 288; Loc _ (IntTok _) -> cont 289; Loc _ (FloatTok _) -> cont 290; Loc _ (Character _) -> cont 291; Loc _ (StringTok _) -> cont 292; Loc _ (IntTokHash _) -> cont 293; Loc _ (WordTokHash _) -> cont 294; Loc _ (FloatTokHash _) -> cont 295; Loc _ (DoubleTokHash _) -> cont 296; Loc _ (CharacterHash _) -> cont 297; Loc _ (StringHash _) -> cont 298; Loc happy_dollar_dollar LeftParen -> cont 299; Loc happy_dollar_dollar RightParen -> cont 300; Loc happy_dollar_dollar LeftHashParen -> cont 301; Loc happy_dollar_dollar RightHashParen -> cont 302; Loc happy_dollar_dollar SemiColon -> cont 303; Loc happy_dollar_dollar LeftCurly -> cont 304; Loc happy_dollar_dollar RightCurly -> cont 305; Loc happy_dollar_dollar VRightCurly -> cont 306; Loc happy_dollar_dollar LeftSquare -> cont 307; Loc happy_dollar_dollar RightSquare -> cont 308; Loc happy_dollar_dollar ParArrayLeftSquare -> cont 309; Loc happy_dollar_dollar ParArrayRightSquare -> cont 310; Loc happy_dollar_dollar Comma -> cont 311; Loc happy_dollar_dollar Underscore -> cont 312; Loc happy_dollar_dollar BackQuote -> cont 313; Loc happy_dollar_dollar Dot -> cont 314; Loc happy_dollar_dollar DotDot -> cont 315; Loc happy_dollar_dollar Colon -> cont 316; Loc happy_dollar_dollar DoubleColon -> cont 317; Loc happy_dollar_dollar Equals -> cont 318; Loc happy_dollar_dollar Backslash -> cont 319; Loc happy_dollar_dollar Bar -> cont 320; Loc happy_dollar_dollar LeftArrow -> cont 321; Loc happy_dollar_dollar RightArrow -> cont 322; Loc happy_dollar_dollar At -> cont 323; Loc happy_dollar_dollar TApp -> cont 324; Loc happy_dollar_dollar Tilde -> cont 325; Loc happy_dollar_dollar DoubleArrow -> cont 326; Loc happy_dollar_dollar Minus -> cont 327; Loc happy_dollar_dollar Exclamation -> cont 328; Loc happy_dollar_dollar Star -> cont 329; Loc happy_dollar_dollar LeftArrowTail -> cont 330; Loc happy_dollar_dollar RightArrowTail -> cont 331; Loc happy_dollar_dollar LeftDblArrowTail -> cont 332; Loc happy_dollar_dollar RightDblArrowTail -> cont 333; Loc happy_dollar_dollar RPGuardOpen -> cont 334; Loc happy_dollar_dollar RPGuardClose -> cont 335; Loc happy_dollar_dollar RPCAt -> cont 336; Loc _ (THIdEscape _) -> cont 337; Loc happy_dollar_dollar THParenEscape -> cont 338; Loc happy_dollar_dollar THExpQuote -> cont 339; Loc happy_dollar_dollar THPatQuote -> cont 340; Loc happy_dollar_dollar THTypQuote -> cont 341; Loc happy_dollar_dollar THDecQuote -> cont 342; Loc happy_dollar_dollar THCloseQuote -> cont 343; Loc happy_dollar_dollar THVarQuote -> cont 344; Loc happy_dollar_dollar THTyQuote -> cont 345; Loc _ (THQuasiQuote _) -> cont 346; Loc _ (XPCDATA _) -> cont 347; Loc happy_dollar_dollar XStdTagOpen -> cont 348; Loc happy_dollar_dollar XCloseTagOpen -> cont 349; Loc happy_dollar_dollar XCodeTagOpen -> cont 350; Loc happy_dollar_dollar XChildTagOpen -> cont 351; Loc happy_dollar_dollar XStdTagClose -> cont 352; Loc happy_dollar_dollar XEmptyTagClose -> cont 353; Loc happy_dollar_dollar XCodeTagClose -> cont 354; Loc happy_dollar_dollar XRPatOpen -> cont 355; Loc happy_dollar_dollar XRPatClose -> cont 356; Loc happy_dollar_dollar KW_Foreign -> cont 357; Loc happy_dollar_dollar KW_Export -> cont 358; Loc happy_dollar_dollar KW_Safe -> cont 359; Loc happy_dollar_dollar KW_Unsafe -> cont 360; Loc happy_dollar_dollar KW_Threadsafe -> cont 361; Loc happy_dollar_dollar KW_Interruptible -> cont 362; Loc happy_dollar_dollar KW_StdCall -> cont 363; Loc happy_dollar_dollar KW_CCall -> cont 364; Loc happy_dollar_dollar KW_CPlusPlus -> cont 365; Loc happy_dollar_dollar KW_DotNet -> cont 366; Loc happy_dollar_dollar KW_Jvm -> cont 367; Loc happy_dollar_dollar KW_Js -> cont 368; Loc happy_dollar_dollar KW_JavaScript -> cont 369; Loc happy_dollar_dollar KW_CApi -> cont 370; Loc happy_dollar_dollar KW_As -> cont 371; Loc happy_dollar_dollar KW_By -> cont 372; Loc happy_dollar_dollar KW_Case -> cont 373; Loc happy_dollar_dollar KW_Class -> cont 374; Loc happy_dollar_dollar KW_Data -> cont 375; Loc happy_dollar_dollar KW_Default -> cont 376; Loc happy_dollar_dollar KW_Deriving -> cont 377; Loc happy_dollar_dollar KW_Do -> cont 378; Loc happy_dollar_dollar KW_Else -> cont 379; Loc happy_dollar_dollar KW_Family -> cont 380; Loc happy_dollar_dollar KW_Forall -> cont 381; Loc happy_dollar_dollar KW_Group -> cont 382; Loc happy_dollar_dollar KW_Hiding -> cont 383; Loc happy_dollar_dollar KW_If -> cont 384; Loc happy_dollar_dollar KW_Import -> cont 385; Loc happy_dollar_dollar KW_In -> cont 386; Loc happy_dollar_dollar KW_Infix -> cont 387; Loc happy_dollar_dollar KW_InfixL -> cont 388; Loc happy_dollar_dollar KW_InfixR -> cont 389; Loc happy_dollar_dollar KW_Instance -> cont 390; Loc happy_dollar_dollar KW_Let -> cont 391; Loc happy_dollar_dollar KW_MDo -> cont 392; Loc happy_dollar_dollar KW_Module -> cont 393; Loc happy_dollar_dollar KW_NewType -> cont 394; Loc happy_dollar_dollar KW_Of -> cont 395; Loc happy_dollar_dollar KW_Proc -> cont 396; Loc happy_dollar_dollar KW_Rec -> cont 397; Loc happy_dollar_dollar KW_Then -> cont 398; Loc happy_dollar_dollar KW_Type -> cont 399; Loc happy_dollar_dollar KW_Using -> cont 400; Loc happy_dollar_dollar KW_Where -> cont 401; Loc happy_dollar_dollar KW_Qualified -> cont 402; Loc happy_dollar_dollar KW_Role -> cont 403; Loc happy_dollar_dollar KW_Pattern -> cont 404; Loc _ (INLINE _) -> cont 405; Loc happy_dollar_dollar INLINE_CONLIKE -> cont 406; Loc happy_dollar_dollar SPECIALISE -> cont 407; Loc _ (SPECIALISE_INLINE _) -> cont 408; Loc happy_dollar_dollar SOURCE -> cont 409; Loc happy_dollar_dollar RULES -> cont 410; Loc happy_dollar_dollar CORE -> cont 411; Loc happy_dollar_dollar SCC -> cont 412; Loc happy_dollar_dollar GENERATED -> cont 413; Loc happy_dollar_dollar DEPRECATED -> cont 414; Loc happy_dollar_dollar WARNING -> cont 415; Loc happy_dollar_dollar UNPACK -> cont 416; Loc happy_dollar_dollar NOUNPACK -> cont 417; Loc _ (OPTIONS _) -> cont 418; Loc happy_dollar_dollar LANGUAGE -> cont 419; Loc happy_dollar_dollar ANN -> cont 420; Loc happy_dollar_dollar MINIMAL -> cont 421; Loc happy_dollar_dollar NO_OVERLAP -> cont 422; Loc happy_dollar_dollar OVERLAP -> cont 423; Loc happy_dollar_dollar INCOHERENT -> cont 424; Loc happy_dollar_dollar PragmaEnd -> cont 425; _ -> happyError' tk }) happyError_ 426 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' :: () => (Loc Token) -> P a happyError' tk = parseError tk mparseModule = happySomeParser where happySomeParser = happyThen (happyParse action_0) (\x -> case x of {HappyAbsSyn16 z -> happyReturn z; _other -> notHappyAtAll }) mparseExp = happySomeParser where happySomeParser = happyThen (happyParse action_1) (\x -> case x of {HappyAbsSyn168 z -> happyReturn z; _other -> notHappyAtAll }) mparsePat = happySomeParser where happySomeParser = happyThen (happyParse action_2) (\x -> case x of {HappyAbsSyn180 z -> happyReturn z; _other -> notHappyAtAll }) mparseDeclAux = happySomeParser where happySomeParser = happyThen (happyParse action_3) (\x -> case x of {HappyAbsSyn25 z -> happyReturn z; _other -> notHappyAtAll }) mparseType = happySomeParser where happySomeParser = happyThen (happyParse action_4) (\x -> case x of {HappyAbsSyn81 z -> happyReturn z; _other -> notHappyAtAll }) mparseStmt = happySomeParser where happySomeParser = happyThen (happyParse action_5) (\x -> case x of {HappyAbsSyn206 z -> happyReturn z; _other -> notHappyAtAll }) mparseImportDecl = happySomeParser where happySomeParser = happyThen (happyParse action_6) (\x -> case x of {HappyAbsSyn36 z -> happyReturn z; _other -> notHappyAtAll }) ngparseModulePragmas = happySomeParser where happySomeParser = happyThen (happyParse action_7) (\x -> case x of {HappyAbsSyn18 z -> happyReturn z; _other -> notHappyAtAll }) ngparseModuleHeadAndImports = happySomeParser where happySomeParser = happyThen (happyParse action_8) (\x -> case x of {HappyAbsSyn277 z -> happyReturn z; _other -> notHappyAtAll }) ngparsePragmasAndModuleHead = happySomeParser where happySomeParser = happyThen (happyParse action_9) (\x -> case x of {HappyAbsSyn276 z -> happyReturn z; _other -> notHappyAtAll }) ngparsePragmasAndModuleName = happySomeParser where happySomeParser = happyThen (happyParse action_10) (\x -> case x of {HappyAbsSyn275 z -> happyReturn z; _other -> notHappyAtAll }) happySeq = happyDontSeq type L = SrcSpanInfo -- just for convenience type S = SrcSpan parseError :: Loc Token -> P a parseError t = fail $ "Parse error: " ++ showToken (unLoc t) (<>) :: (Annotated a, Annotated b) => a SrcSpanInfo -> b SrcSpanInfo -> SrcSpanInfo a <> b = ann a <++> ann b infixl 6 <> nIS = noInfoSpan iS = infoSpan mparseDecl :: P (Decl SrcSpanInfo) mparseDecl = do (is, ds, _, _) <- mparseDeclAux when (not $ null is) $ fail $ "Expected single declaration, found import declaration" checkSingleDecl ds {-# LINE 1 "templates/GenericTemplate.hs" #-} {-# LINE 1 "templates/GenericTemplate.hs" #-} {-# LINE 1 "" #-} {-# LINE 16 "" #-} {-# LINE 1 "/Users/matt/Downloads/ghc-7.10.1.app/Contents/lib/ghc-7.10.1/include/ghcversion.h" #-} {-# LINE 17 "" #-} {-# LINE 1 "templates/GenericTemplate.hs" #-} -- Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp {-# LINE 13 "templates/GenericTemplate.hs" #-} {-# LINE 46 "templates/GenericTemplate.hs" #-} {-# LINE 67 "templates/GenericTemplate.hs" #-} {-# LINE 77 "templates/GenericTemplate.hs" #-} infixr 9 `HappyStk` data HappyStk a = HappyStk a (HappyStk a) ----------------------------------------------------------------------------- -- starting the parse happyParse start_state = happyNewToken start_state notHappyAtAll notHappyAtAll ----------------------------------------------------------------------------- -- Accepting the parse -- If the current token is (1), it means we've just accepted a partial -- parse (a %partial parser). We must ignore the saved token on the top of -- the stack in this case. happyAccept (1) tk st sts (_ `HappyStk` ans `HappyStk` _) = happyReturn1 ans happyAccept j tk st sts (HappyStk ans _) = (happyReturn1 ans) ----------------------------------------------------------------------------- -- Arrays only: do the next action {-# LINE 155 "templates/GenericTemplate.hs" #-} ----------------------------------------------------------------------------- -- HappyState data type (not arrays) newtype HappyState b c = HappyState (Int -> -- token number Int -> -- token number (yes, again) b -> -- token semantic value HappyState b c -> -- current state [HappyState b c] -> -- state stack c) ----------------------------------------------------------------------------- -- Shifting a token happyShift new_state (1) tk st sts stk@(x `HappyStk` _) = let i = (case x of { HappyErrorToken (i) -> i }) in -- trace "shifting the error token" $ new_state i i tk (HappyState (new_state)) ((st):(sts)) (stk) happyShift new_state i tk st sts stk = happyNewToken new_state ((st):(sts)) ((HappyTerminal (tk))`HappyStk`stk) -- happyReduce is specialised for the common cases. happySpecReduce_0 i fn (1) tk st sts stk = happyFail (1) tk st sts stk happySpecReduce_0 nt fn j tk st@((HappyState (action))) sts stk = action nt j tk st ((st):(sts)) (fn `HappyStk` stk) happySpecReduce_1 i fn (1) tk st sts stk = happyFail (1) tk st sts stk happySpecReduce_1 nt fn j tk _ sts@(((st@(HappyState (action))):(_))) (v1`HappyStk`stk') = let r = fn v1 in happySeq r (action nt j tk st sts (r `HappyStk` stk')) happySpecReduce_2 i fn (1) tk st sts stk = happyFail (1) tk st sts stk happySpecReduce_2 nt fn j tk _ ((_):(sts@(((st@(HappyState (action))):(_))))) (v1`HappyStk`v2`HappyStk`stk') = let r = fn v1 v2 in happySeq r (action nt j tk st sts (r `HappyStk` stk')) happySpecReduce_3 i fn (1) tk st sts stk = happyFail (1) tk st sts stk happySpecReduce_3 nt fn j tk _ ((_):(((_):(sts@(((st@(HappyState (action))):(_))))))) (v1`HappyStk`v2`HappyStk`v3`HappyStk`stk') = let r = fn v1 v2 v3 in happySeq r (action nt j tk st sts (r `HappyStk` stk')) happyReduce k i fn (1) tk st sts stk = happyFail (1) tk st sts stk happyReduce k nt fn j tk st sts stk = case happyDrop (k - ((1) :: Int)) sts of sts1@(((st1@(HappyState (action))):(_))) -> let r = fn stk in -- it doesn't hurt to always seq here... happyDoSeq r (action nt j tk st1 sts1 r) happyMonadReduce k nt fn (1) tk st sts stk = happyFail (1) tk st sts stk happyMonadReduce k nt fn j tk st sts stk = case happyDrop k ((st):(sts)) of sts1@(((st1@(HappyState (action))):(_))) -> let drop_stk = happyDropStk k stk in happyThen1 (fn stk tk) (\r -> action nt j tk st1 sts1 (r `HappyStk` drop_stk)) happyMonad2Reduce k nt fn (1) tk st sts stk = happyFail (1) tk st sts stk happyMonad2Reduce k nt fn j tk st sts stk = case happyDrop k ((st):(sts)) of sts1@(((st1@(HappyState (action))):(_))) -> let drop_stk = happyDropStk k stk new_state = action in happyThen1 (fn stk tk) (\r -> happyNewToken new_state sts1 (r `HappyStk` drop_stk)) happyDrop (0) l = l happyDrop n ((_):(t)) = happyDrop (n - ((1) :: Int)) t happyDropStk (0) l = l happyDropStk n (x `HappyStk` xs) = happyDropStk (n - ((1)::Int)) xs ----------------------------------------------------------------------------- -- Moving to a new state after a reduction happyGoto action j tk st = action j j tk (HappyState action) ----------------------------------------------------------------------------- -- Error recovery ((1) is the error token) -- parse error if we are in recovery and we fail again happyFail (1) tk old_st _ stk@(x `HappyStk` _) = let i = (case x of { HappyErrorToken (i) -> i }) in -- trace "failing" $ happyError_ i tk {- We don't need state discarding for our restricted implementation of "error". In fact, it can cause some bogus parses, so I've disabled it for now --SDM -- discard a state happyFail (1) tk old_st (((HappyState (action))):(sts)) (saved_tok `HappyStk` _ `HappyStk` stk) = -- trace ("discarding state, depth " ++ show (length stk)) $ action (1) (1) tk (HappyState (action)) sts ((saved_tok`HappyStk`stk)) -} -- Enter error recovery: generate an error token, -- save the old token and carry on. happyFail i tk (HappyState (action)) sts stk = -- trace "entering error recovery" $ action (1) (1) tk (HappyState (action)) sts ( (HappyErrorToken (i)) `HappyStk` stk) -- Internal happy errors: notHappyAtAll :: a notHappyAtAll = error "Internal Happy error\n" ----------------------------------------------------------------------------- -- Hack to get the typechecker to accept our action functions ----------------------------------------------------------------------------- -- Seq-ing. If the --strict flag is given, then Happy emits -- happySeq = happyDoSeq -- otherwise it emits -- happySeq = happyDontSeq happyDoSeq, happyDontSeq :: a -> b -> b happyDoSeq a b = a `seq` b happyDontSeq a b = b ----------------------------------------------------------------------------- -- Don't inline any functions from the template. GHC has a nasty habit -- of deciding to inline happyGoto everywhere, which increases the size of -- the generated parser quite a bit. {-# 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. haskell-src-exts-1.18.2/src/Language/Haskell/Exts/InternalParser.ly0000644000000000000000000032042712746233113023313 0ustar0000000000000000> { > {-# OPTIONS_HADDOCK hide #-} > ----------------------------------------------------------------------------- > -- | > -- Module : Language.Haskell.Exts.Annotated.Parser > -- Copyright : (c) Niklas Broberg 2004-2009, > -- Original (c) Simon Marlow, Sven Panne 1997-2000 > -- License : BSD-style (see the file LICENSE.txt) > -- > -- Maintainer : Niklas Broberg, d00nibro@chalmers.se > -- Stability : stable > -- Portability : portable > -- > -- > ----------------------------------------------------------------------------- > > module Language.Haskell.Exts.InternalParser ( > mparseModule, > mparseExp, > mparsePat, > mparseDecl, > mparseType, > mparseStmt, > mparseImportDecl, > ngparseModulePragmas, > ngparseModuleHeadAndImports, > ngparsePragmasAndModuleHead, > ngparsePragmasAndModuleName > ) where > > import Language.Haskell.Exts.Syntax hiding ( Type(..), Exp(..), Asst(..), XAttr(..), FieldUpdate(..) ) > import Language.Haskell.Exts.Syntax ( Type, Exp, Asst ) > import Language.Haskell.Exts.ParseMonad > import Language.Haskell.Exts.InternalLexer > import Language.Haskell.Exts.ParseUtils > import Language.Haskell.Exts.Fixity > import Language.Haskell.Exts.SrcLoc > import Language.Haskell.Exts.Extension > import Control.Monad ( liftM, (<=<), when ) > import Control.Applicative ( (<$>) ) > import Data.Maybe import Debug.Trace (trace) > } ----------------------------------------------------------------------------- This module comprises a parser for Haskell 98 with the following extensions * Multi-parameter type classes with functional dependencies * Implicit parameters * Pattern guards * Mdo notation * FFI * HaRP * HSP Most of the code is blatantly stolen from the GHC module Language.Haskell.Parser. Some of the code for extensions is greatly influenced by GHC's internal parser library, ghc/compiler/parser/Parser.y. ----------------------------------------------------------------------------- Conflicts: 7 shift/reduce 2 for ambiguity in 'case x of y | let z = y in z :: Bool -> b' [State 99, 186] (don't know whether to reduce 'Bool' as a btype or shift the '->'. Similarly lambda and if. The default resolution in favour of the shift means that a guard can never end with a type signature. In mitigation: it's a rare case and no Haskell implementation allows these, because it would require unbounded lookahead.) There are 2 conflicts rather than one because contexts are parsed as btypes (cf ctype). 1 for ambiguity in 'let ?x ...' [State 604] the parser can't tell whether the ?x is the lhs of a normal binding or an implicit binding. Fortunately resolving as shift gives it the only sensible meaning, namely the lhs of an implicit binding. 1 for ambiguity using hybrid modules [State 159] For HSP pages that start with a <% %> block, the parser cannot tell whether to reduce a srcloc or shift the starting <%. Since any other body could not start with <%, shifting is the only sensible thing to do. 1 for ambiguity using toplevel xml modules [State 158] For HSP xml pages starting with a <, the parser cannot tell whether to shift that < or reduce an implicit 'open'. Since no other body could possibly start with <, shifting is the only sensible thing to do. 1 for ambiguity in '{-# RULES "name" [ ... #-}' [State 177] we don't know whether the '[' starts the activation or not: it might be the start of the declaration with the activation being empty. Resolving with shift means the declaration cannot start with '['. 1 for ambiguity in '{-# RULES "name" forall = ... #-}' [State 544] since 'forall' is a valid variable name, we don't know whether to treat a forall on the input as the beginning of a quantifier or the beginning of the rule itself. Resolving to shift means it's always treated as a quantifier, hence the above is disallowed. This saves explicitly defining a grammar for the rule lhs that doesn't include 'forall'. ----------------------------------------------------------------------------- > %token > VARID { Loc _ (VarId _) } -- 1 > LABELVARID { Loc _ (LabelVarId _) } > QVARID { Loc _ (QVarId _) } > IDUPID { Loc _ (IDupVarId _) } -- duplicable implicit parameter ?x > ILINID { Loc _ (ILinVarId _) } -- linear implicit parameter %x > CONID { Loc _ (ConId _) } > QCONID { Loc _ (QConId _) } > DVARID { Loc _ (DVarId _) } -- VARID containing dashes > VARSYM { Loc _ (VarSym _) } > CONSYM { Loc _ (ConSym _) } > QVARSYM { Loc _ (QVarSym _) } -- 10 > QCONSYM { Loc _ (QConSym _) } > INT { Loc _ (IntTok _) } > RATIONAL { Loc _ (FloatTok _) } > CHAR { Loc _ (Character _) } > STRING { Loc _ (StringTok _) } > PRIMINT { Loc _ (IntTokHash _) } > PRIMWORD { Loc _ (WordTokHash _) } > PRIMFLOAT { Loc _ (FloatTokHash _) } > PRIMDOUBLE { Loc _ (DoubleTokHash _) } > PRIMCHAR { Loc _ (CharacterHash _) } -- 20 > PRIMSTRING { Loc _ (StringHash _) } Symbols > '(' { Loc $$ LeftParen } > ')' { Loc $$ RightParen } > '(#' { Loc $$ LeftHashParen } > '#)' { Loc $$ RightHashParen } > ';' { Loc $$ SemiColon } > '{' { Loc $$ LeftCurly } > '}' { Loc $$ RightCurly } -- 30 > vccurly { Loc $$ VRightCurly } -- a virtual close brace > '[' { Loc $$ LeftSquare } > ']' { Loc $$ RightSquare } > '[:' { Loc $$ ParArrayLeftSquare } > ':]' { Loc $$ ParArrayRightSquare } > ',' { Loc $$ Comma } > '_' { Loc $$ Underscore } > '`' { Loc $$ BackQuote } Reserved operators > '.' { Loc $$ Dot } > '..' { Loc $$ DotDot } > ':' { Loc $$ Colon } > '::' { Loc $$ DoubleColon } -- 40 > '=' { Loc $$ Equals } > '\\' { Loc $$ Backslash } > '|' { Loc $$ Bar } > '<-' { Loc $$ LeftArrow } > '->' { Loc $$ RightArrow } > '@' { Loc $$ At } > TYPEAPP { Loc $$ TApp } > '~' { Loc $$ Tilde } > '=>' { Loc $$ DoubleArrow } > '-' { Loc $$ Minus } > '!' { Loc $$ Exclamation } -- 50 > '*' { Loc $$ Star } Arrows > '-<' { Loc $$ LeftArrowTail } > '>-' { Loc $$ RightArrowTail } > '-<<' { Loc $$ LeftDblArrowTail } > '>>-' { Loc $$ RightDblArrowTail } Harp > '(|' { Loc $$ RPGuardOpen } > '|)' { Loc $$ RPGuardClose } > '@:' { Loc $$ RPCAt } Template Haskell > IDSPLICE { Loc _ (THIdEscape _) } -- $x > '$(' { Loc $$ THParenEscape } -- 60 > '[|' { Loc $$ THExpQuote } > '[p|' { Loc $$ THPatQuote } > '[t|' { Loc $$ THTypQuote } > '[d|' { Loc $$ THDecQuote } > '|]' { Loc $$ THCloseQuote } > VARQUOTE { Loc $$ THVarQuote } -- 'x > TYPQUOTE { Loc $$ THTyQuote } -- ''T > QUASIQUOTE { Loc _ (THQuasiQuote _) } Hsx > PCDATA { Loc _ (XPCDATA _) } > '<' { Loc $$ XStdTagOpen } -- 70 > ' '<%' { Loc $$ XCodeTagOpen } > '<%>' { Loc $$ XChildTagOpen } > '>' { Loc $$ XStdTagClose } > '/>' { Loc $$ XEmptyTagClose } > '%>' { Loc $$ XCodeTagClose } > '<[' { Loc $$ XRPatOpen } > ']>' { Loc $$ XRPatClose } FFI > 'foreign' { Loc $$ KW_Foreign } > 'export' { Loc $$ KW_Export } -- 80 > 'safe' { Loc $$ KW_Safe } > 'unsafe' { Loc $$ KW_Unsafe } > 'threadsafe' { Loc $$ KW_Threadsafe } > 'interruptible' { Loc $$ KW_Interruptible } > 'stdcall' { Loc $$ KW_StdCall } > 'ccall' { Loc $$ KW_CCall } > 'cplusplus' { Loc $$ KW_CPlusPlus } > 'dotnet' { Loc $$ KW_DotNet } > 'jvm' { Loc $$ KW_Jvm } > 'js' { Loc $$ KW_Js } -- 90 > 'javascript' { Loc $$ KW_JavaScript } > 'capi' { Loc $$ KW_CApi } Reserved Ids > 'as' { Loc $$ KW_As } > 'by' { Loc $$ KW_By } -- transform list comprehensions > 'case' { Loc $$ KW_Case } > 'class' { Loc $$ KW_Class } > 'data' { Loc $$ KW_Data } > 'default' { Loc $$ KW_Default } > 'deriving' { Loc $$ KW_Deriving } > 'do' { Loc $$ KW_Do } > 'else' { Loc $$ KW_Else } -- 100 > 'family' { Loc $$ KW_Family } -- indexed type families > 'forall' { Loc $$ KW_Forall } -- universal/existential qualification > 'group' { Loc $$ KW_Group } -- transform list comprehensions > 'hiding' { Loc $$ KW_Hiding } > 'if' { Loc $$ KW_If } > 'import' { Loc $$ KW_Import } > 'in' { Loc $$ KW_In } > 'infix' { Loc $$ KW_Infix } > 'infixl' { Loc $$ KW_InfixL } > 'infixr' { Loc $$ KW_InfixR } -- 110 > 'instance' { Loc $$ KW_Instance } > 'let' { Loc $$ KW_Let } > 'mdo' { Loc $$ KW_MDo } > 'module' { Loc $$ KW_Module } -- 114 > 'newtype' { Loc $$ KW_NewType } > 'of' { Loc $$ KW_Of } > 'proc' { Loc $$ KW_Proc } -- arrows > 'rec' { Loc $$ KW_Rec } -- arrows or RecursiveDo > 'then' { Loc $$ KW_Then } > 'type' { Loc $$ KW_Type } -- 120 > 'using' { Loc $$ KW_Using } -- transform list comprehensions > 'where' { Loc $$ KW_Where } > 'qualified' { Loc $$ KW_Qualified } > 'role' { Loc $$ KW_Role } > 'pattern' { Loc $$ KW_Pattern } Pragmas > '{-# INLINE' { Loc _ (INLINE _) } > '{-# INLINE CONLIKE' { Loc $$ INLINE_CONLIKE } > '{-# SPECIALISE' { Loc $$ SPECIALISE } > '{-# SPECIALISE INLINE' { Loc _ (SPECIALISE_INLINE _) } > '{-# SOURCE' { Loc $$ SOURCE } > '{-# RULES' { Loc $$ RULES } > '{-# CORE' { Loc $$ CORE } -- 130 > '{-# SCC' { Loc $$ SCC } > '{-# GENERATED' { Loc $$ GENERATED } > '{-# DEPRECATED' { Loc $$ DEPRECATED } > '{-# WARNING' { Loc $$ WARNING } > '{-# UNPACK' { Loc $$ UNPACK } > '{-# NOUNPACK' { Loc $$ NOUNPACK } > '{-# OPTIONS' { Loc _ (OPTIONS _) } '{-# CFILES' { Loc _ (CFILES _) } '{-# INCLUDE' { Loc _ (INCLUDE _) } > '{-# LANGUAGE' { Loc $$ LANGUAGE } -- 137 > '{-# ANN' { Loc $$ ANN } > '{-# MINIMAL' { Loc $$ MINIMAL } > '{-# NO_OVERLAP' { Loc $$ NO_OVERLAP } > '{-# OVERLAP' { Loc $$ OVERLAP } > '{-# INCOHERENT' { Loc $$ INCOHERENT } > '#-}' { Loc $$ PragmaEnd } -- 139 > %monad { P } > %lexer { lexer } { Loc _ EOF } > %error { parseError } > %name mparseModule page > %name mparseExp trueexp > %name mparsePat pat > %name mparseDeclAux body > %name mparseType truectype > %name mparseStmt stmt > %name mparseImportDecl impdecl > %partial ngparseModulePragmas toppragmas > %partial ngparseModuleHeadAndImports moduletopimps > %partial ngparsePragmasAndModuleHead moduletophead > %partial ngparsePragmasAndModuleName moduletopname > %tokentype { Loc Token } > %expect 10 > %% ----------------------------------------------------------------------------- Testing multiple modules in one file > modules :: { [Module L] } > : toppragmas modules1 { let (os,ss,l) = $1 in map (\x -> x os ss l) $2 } > modules1 :: { [[ModulePragma L] -> [S] -> L -> Module L] } > : module modules1 { $1 : $2 } > | module { [$1] } ----------------------------------------------------------------------------- HSP Pages Any HSP-specific parts requiring the XmlSyntax extension enabled will be governed by the lexing, since all productions require at least one special lexeme. TODO: Yuck, this is messy, needs fixing in the AST! > page :: { Module L } > : toppragmas topxml {% checkPageModule $2 $1 } > | toppragmas '<%' module '%>' topxml {% let (os,ss,l) = $1 in checkHybridModule $5 ($3 os ss l) $2 $4 } > | toppragmas module { let (os,ss,l) = $1 in $2 os ss l } > topxml :: { PExp L } > : '<' name attrs mattr '>' children '' {% do { n <- checkEqNames $2 $8; > let { cn = reverse $6; > as = reverse $3; }; > return $ XTag ($1 <^^> $9 <** [$1,$5,$7,$9]) n as $4 cn } } > | '<' name attrs mattr '/>' { XETag ($1 <^^> $5 <** [$1,$5]) $2 (reverse $3) $4 } > toppragmas :: { ([ModulePragma L],[S],L) } > : open toppragmasaux close { let (os,ss,ml) = $2 in (os,$1:ss++[$3],$1 <^^> $3) } > toppragmasaux :: { ([ModulePragma L],[S],Maybe L) } > : toppragma optsemis toppragmasaux { let (os,ss,ml) = $3; > ss' = reverse $2 ++ ss; > l' = case $2 of > [] -> ann $1 > _ -> ann $1 <++> nIS (last $2); > in ($1 : os, ss', Just $ l' <+?> ml) } > | {- nothing -} { ([],[],Nothing) } > toppragma :: { ModulePragma L } > : '{-# LANGUAGE' conids optsemis '#-}' { LanguagePragma ($1 <^^> $4 <** ($1:snd $2 ++ reverse $3 ++ [$4])) (fst $2) } > | '{-# OPTIONS' optsemis '#-}' { let Loc l (OPTIONS (mc, s)) = $1 > in OptionsPragma (l <^^> $3 <** (l:reverse $2 ++ [$3])) (readTool mc) s } > | '{-# ANN' annotation '#-}' { AnnModulePragma ($1 <^^> $3 <** [$1,$3]) $2 } > conids :: { ([Name L],[S]) } > : conids ',' conid { (fst $1 ++ [$3], snd $1 ++ [$2]) } > | optsemis conid { ([$2],[]) } ----------------------------------------------------------------------------- Module Header > module :: { [ModulePragma L] -> [S] -> L -> Module L } > : optmodulehead body > { let (is,ds,ss1,inf) = $2 > in \os ss l -> Module (l <++> inf <** (ss ++ ss1)) $1 os is ds } > optmodulehead :: { Maybe (ModuleHead L) } > : 'module' modid maybemodwarning maybeexports 'where' { Just $ ModuleHead ($1 <^^> $5 <** [$1,$5]) $2 $3 $4 } > | {- empty -} { Nothing } > maybemodwarning :: { Maybe (WarningText L) } > : '{-# DEPRECATED' STRING '#-}' { let Loc l (StringTok (s,_)) = $2 in Just $ DeprText ($1 <^^> $3 <** [$1,l,$3]) s } > | '{-# WARNING' STRING '#-}' { let Loc l (StringTok (s,_)) = $2 in Just $ WarnText ($1 <^^> $3 <** [$1,l,$3]) s } > | {- empty -} { Nothing } > body :: { ([ImportDecl L],[Decl L],[S],L) } > : '{' bodyaux '}' { let (is,ds,ss) = $2 in (is,ds,$1:ss ++ [$3], $1 <^^> $3) } Trailing optsemis in the next line is a workaround for #25. Having the optsemis here causes one more shift/reduce conflict. > | open bodyaux close optsemis { let (is,ds,ss) = $2 in (is,ds,$1:ss ++ [$3], $1 <^^> $3) } > bodyaux :: { ([ImportDecl L],[Decl L],[S]) } > : optsemis impdecls semis topdecls { (reverse (fst $2), fst $4, reverse $1 ++ snd $2 ++ reverse $3 ++ snd $4) } > | optsemis topdecls { ([], fst $2, reverse $1 ++ snd $2) } > | optsemis impdecls optsemis { (reverse (fst $2), [], reverse $1 ++ snd $2 ++ reverse $3) } > | optsemis { ([], [], reverse $1) } > semis :: { [S] } > : optsemis ';' { $2 : $1 } > optsemis :: { [S] } > : semis { $1 } > | {- empty -} { [] } ----------------------------------------------------------------------------- The Export List > maybeexports :: { Maybe (ExportSpecList L) } > : exports { Just $1 } > | {- empty -} { Nothing } > exports :: { ExportSpecList L } > : '(' exportlist optcomma ')' { ExportSpecList ($1 <^^> $4 <** ($1:reverse (snd $2) ++ $3 ++ [$4])) (reverse (fst $2)) } > | '(' optcomma ')' { ExportSpecList ($1 <^^> $3 <** ($1:$2++[$3])) [] } > optcomma :: { [S] } > : ',' { [$1] } > | {- empty -} { [ ] } > exportlist :: { ([ExportSpec L],[S]) } > : exportlist ',' export { ($3 : fst $1, $2 : snd $1) } > | export { ([$1],[]) } > export :: { ExportSpec L } > : qvar { EVar (ann $1) $1 } > | 'type' qcname {% do { checkEnabled ExplicitNamespaces; > return (EAbs (nIS $1 <++> ann $2 <** [$1, srcInfoSpan (ann $2)]) (TypeNamespace (nIS $1 <** [$1])) $2) } } > | qtyconorcls { EAbs (ann $1) (NoNamespace (ann $1)) $1 } > | qtyconorcls '(' ')' { EThingWith (ann $1 <++> nIS $3 <** [$2,$3]) (NoWildcard noSrcSpan) $1 [] } > | qtyconorcls '(' export_names ')' {% mkEThingWith (ann $1 <++> nIS $4 <** ($2:reverse (snd $3) ++ [$4])) $1 (reverse $ fst $3) } > | 'module' modid { EModuleContents (nIS $1 <++> ann $2 <** [$1]) $2 } > | 'pattern' qcon {% do { checkEnabled PatternSynonyms; > return $ EAbs (nIS $1 <++> (ann $2) <** [$1]) > (PatternNamespace (nIS $1)) $2 }} > export_names :: { ([Either S (CName L)],[S]) } > : export_names ',' cname_w_wildcard { ($3 : fst $1, $2 : snd $1) } > | cname_w_wildcard { ([$1],[]) } > cname_w_wildcard :: { Either S (CName L) } > : '..' { Left $1 } > | cname { Right $1 } > > qcname :: { QName L } > : qvar { $1 } > | qconid { $1 } ----------------------------------------------------------------------------- Import Declarations > impdecls :: { ([ImportDecl L],[S]) } > : impdecls semis impdecl { ($3 : fst $1, snd $1 ++ reverse $2) } > | impdecl { ([$1],[]) } > impdecl :: { ImportDecl L } > : 'import' optsrc optsafe optqualified maybepkg modid maybeas maybeimpspec > { let { (mmn,ss,ml) = $7 ; > l = nIS $1 <++> ann $6 <+?> ml <+?> (fmap ann) $8 <** ($1:snd $2 ++ snd $3 ++ snd $4 ++ snd $5 ++ ss)} > in ImportDecl l $6 (fst $4) (fst $2) (fst $3) (fst $5) mmn $8 } > optsrc :: { (Bool,[S]) } > : '{-# SOURCE' '#-}' { (True,[$1,$2]) } > | {- empty -} { (False,[]) } > optsafe :: { (Bool,[S]) } > : 'safe' {% do { checkEnabledOneOf [Safe, SafeImports, Trustworthy] ; > return (True, [$1]) } } > | {- empty -} { (False, []) } > optqualified :: { (Bool,[S]) } > : 'qualified' { (True,[$1]) } > | {- empty -} { (False, []) } Requires the PackageImports extension enabled. > maybepkg :: { (Maybe String,[S]) } > : STRING {% do { checkEnabled PackageImports ; > let { Loc l (StringTok (s,_)) = $1 } ; > return $ (Just s,[l]) } } > | {- empty -} { (Nothing,[]) } > maybeas :: { (Maybe (ModuleName L),[S],Maybe L) } > : 'as' modid { (Just $2,[$1],Just (nIS $1 <++> ann $2)) } > | {- empty -} { (Nothing,[],Nothing) } > maybeimpspec :: { Maybe (ImportSpecList L) } > : impspec { Just $1 } > | {- empty -} { Nothing } > impspec :: { ImportSpecList L } > : opthiding '(' importlist optcomma ')' { let {(b,ml,s) = $1 ; > l = (ml ($2 <^^> $5)) <** (s ++ $2:reverse (snd $3) ++ $4 ++ [$5])} > in ImportSpecList l b (reverse (fst $3)) } > | opthiding '(' optcomma ')' { let {(b,ml,s) = $1 ; l = (ml ($2 <^^> $4)) <** (s ++ $2:$3 ++ [$4])} > in ImportSpecList l b [] } > opthiding :: { (Bool, Maybe L,[S]) } > : 'hiding' { (True,Just (nIS $1),[$1]) } > | {- empty -} { (False,Nothing,[]) } > importlist :: { ([ImportSpec L],[S]) } > : importlist ',' importspec { ($3 : fst $1, $2 : snd $1) } > | importspec { ([$1],[]) } > importspec :: { ImportSpec L } > : var { IVar (ann $1) $1 } > | 'type' var {% do { checkEnabled ExplicitNamespaces; > return (IAbs (nIS $1 <++> ann $2 <** [$1, srcInfoSpan (ann $2)]) (TypeNamespace (nIS $1 <** [$1])) $2) } } > | 'pattern' con {% do { checkEnabled PatternSynonyms; > return (IAbs (nIS $1 <++> ann $2 <** [$1, srcInfoSpan (ann $2)]) (PatternNamespace (nIS $1 <** [$1])) $2) } } > | tyconorcls { IAbs (ann $1) (NoNamespace (ann $1)) $1 } > | tyconorcls '(' '..' ')' { IThingAll (ann $1 <++> nIS $4 <** [$2,$3,$4]) $1 } > | tyconorcls '(' ')' { IThingWith (ann $1 <++> nIS $3 <** [$2,$3]) $1 [] } > | tyconorcls '(' import_names ')' { IThingWith (ann $1 <++> nIS $4 <** ($2:reverse (snd $3) ++ [$4])) $1 (reverse (fst $3)) } > import_names :: { ([CName L],[S]) } > : import_names ',' cname { ($3 : fst $1, $2 : snd $1) } > | cname { ([$1],[]) } > cname :: { CName L } > : var { VarName (ann $1) $1 } > | con { ConName (ann $1) $1 } ----------------------------------------------------------------------------- Fixity Declarations > fixdecl :: { Decl L } > : infix prec ops { let (ops,ss,l) = $3 > in InfixDecl (ann $1 <++> l <** (snd $2 ++ reverse ss)) $1 (fst $2) (reverse ops) } > prec :: { (Maybe Int, [S]) } > : {- empty -} { (Nothing, []) } > | INT {% let Loc l (IntTok (i,_)) = $1 in checkPrec i >>= \i -> return (Just i, [l]) } > infix :: { Assoc L } > : 'infix' { AssocNone $ nIS $1 } > | 'infixl' { AssocLeft $ nIS $1 } > | 'infixr' { AssocRight $ nIS $1 } > ops :: { ([Op L],[S],L) } > : ops ',' op { let (ops,ss,l) = $1 in ($3 : ops, $2 : ss, l <++> ann $3) } > | op { ([$1],[],ann $1) } > opt_injectivity_info :: { Maybe (InjectivityInfo L) } > : {- empty -} { Nothing } > | injectivity_info { Just $1 } > injectivity_info :: { InjectivityInfo L } > : '|' tyvarid '->' inj_varids > { InjectivityInfo (nIS $1 <++> ann (last $4) <** [$1,$3]) $2 (reverse $4) } > > > inj_varids :: { [Name L] } > : inj_varids tyvarid { $2 : $1 } > | tyvarid { [$1] } ----------------------------------------------------------------------------- Top-Level Declarations Note: The report allows topdecls to be empty. This would result in another shift/reduce-conflict, so we don't handle this case here, but in bodyaux. > topdecls :: { ([Decl L],[S]) } > : topdecls1 optsemis {% checkRevDecls (fst $1) >>= \ds -> return (ds, snd $1 ++ reverse $2) } > topdecls1 :: { ([Decl L],[S]) } > : topdecls1 semis topdecl { ($3 : fst $1, snd $1 ++ reverse $2) } > | topdecl { ([$1],[]) } > topdecl :: { Decl L } > : role_annot {% checkEnabled RoleAnnotations >> return $1 } > | 'type' dtype '=' truectype > {% do { dh <- checkSimpleType $2; > let {l = nIS $1 <++> ann $4 <** [$1,$3]}; > return (TypeDecl l dh $4) } } Requires the TypeFamilies extension enabled, but the lexer will handle that through the 'family' keyword. > | 'type' 'family' type opt_tyfam_kind_sig opt_injectivity_info where_type_family > {% do { dh <- checkSimpleType $3; > let {l = nIS $1 <++> ann $3 <** [$1,$2]}; > case $6 of { > Nothing -> return (TypeFamDecl l dh $4 $5); > Just (x,a) -> return (ClosedTypeFamDecl (l <** [a]) dh $4 $5 x); }}} Here there is no special keyword so we must do the check. > | 'type' 'instance' truedtype '=' truectype > {% do { -- no checkSimpleType $4 since dtype may contain type patterns > checkEnabled TypeFamilies ; > let {l = nIS $1 <++> ann $5 <** [$1,$2,$4]}; > return (TypeInsDecl l $3 $5) } } > | data_or_newtype ctype constrs0 deriving > {% do { (cs,dh) <- checkDataHeader $2; > let { (qds,ss,minf) = $3; > l = $1 <> $2 <+?> minf <+?> fmap ann $4 <** ss}; > checkDataOrNew $1 qds; > return (DataDecl l $1 cs dh (reverse qds) $4) } } Requires the GADTs extension enabled, handled in gadtlist. > | data_or_newtype ctype optkind gadtlist deriving > {% do { (cs,dh) <- checkDataHeader $2; > let { (gs,ss,minf) = $4; > l = ann $1 <+?> minf <+?> fmap ann $5 <** (snd $3 ++ ss)}; > checkDataOrNewG $1 gs; > case (gs, fst $3) of > ([], Nothing) -> return (DataDecl l $1 cs dh [] $5) > _ -> checkEnabled GADTs >> return (GDataDecl l $1 cs dh (fst $3) (reverse gs) $5) } } Same as above, lexer will handle it through the 'family' keyword. > | 'data' 'family' ctype opt_datafam_kind_sig > {% do { (cs,dh) <- checkDataHeader $3; > let {l = nIS $1 <++> ann $3 <+?> (fmap ann) $4 <** [$1,$2]}; > return (DataFamDecl l cs dh $4) } } Here we must check for TypeFamilies. > | data_or_newtype 'instance' truectype constrs0 deriving > {% do { -- (cs,c,t) <- checkDataHeader $4; > checkEnabled TypeFamilies ; > let { (qds,ss,minf) = $4 ; > l = $1 <> $3 <+?> minf <+?> fmap ann $5 <** $2:ss }; > checkDataOrNew $1 qds; > return (DataInsDecl l $1 $3 (reverse qds) $5) } } This style requires both TypeFamilies and GADTs, the latter is handled in gadtlist. > | data_or_newtype 'instance' truectype optkind gadtlist deriving > {% do { -- (cs,c,t) <- checkDataHeader $4; > checkEnabled TypeFamilies ; > let {(gs,ss,minf) = $5; > l = ann $1 <+?> minf <+?> fmap ann $6 <** ($2:snd $4 ++ ss)}; > checkDataOrNewG $1 gs; > return (GDataInsDecl l $1 $3 (fst $4) (reverse gs) $6) } } > | 'class' ctype fds optcbody > {% do { (cs,dh) <- checkClassHeader $2; > let {(fds,ss1,minf1) = $3;(mcs,ss2,minf2) = $4} ; > let { l = nIS $1 <++> ann $2 <+?> minf1 <+?> minf2 <** ($1:ss1 ++ ss2)} ; > return (ClassDecl l cs dh fds mcs) } } > | 'instance' optoverlap ctype optvaldefs > {% do { ih <- checkInstHeader $3; > let {(mis,ss,minf) = $4}; > return (InstDecl (nIS $1 <++> ann $3 <+?> minf <** ($1:ss)) $2 ih mis) } } Requires the StandaloneDeriving extension enabled. > | 'deriving' 'instance' optoverlap ctype > {% do { checkEnabled StandaloneDeriving ; > ih <- checkInstHeader $4; > let {l = nIS $1 <++> ann $4 <** [$1,$2]}; > return (DerivDecl l $3 ih) } } > | 'default' '(' typelist ')' > { DefaultDecl ($1 <^^> $4 <** ($1:$2 : snd $3 ++ [$4])) (fst $3) } Requires the TemplateHaskell extension, but the lexer will handle that through the '$(' lexeme. CHANGE: Arbitrary top-level expressions are considered implicit splices > | exp0 {% do > checkToplevel $1 > checkExpr $1 >>= \e -> return (SpliceDecl (ann e) e) > } | '$(' trueexp ')' { let l = $1 <^^> $3 <** [$1,$3] in SpliceDecl l $ ParenSplice l $2 } These require the ForeignFunctionInterface extension, handled by the lexer through the 'foreign' (and 'export') keyword. > | 'foreign' 'import' callconv safety fspec > { let (s,n,t,ss) = $5 in ForImp (nIS $1 <++> ann t <** ($1:$2:ss)) $3 $4 s n t } > | 'foreign' 'export' callconv fspec > { let (s,n,t,ss) = $4 in ForExp (nIS $1 <++> ann t <** ($1:$2:ss)) $3 s n t } > | '{-# RULES' rules '#-}' { RulePragmaDecl ($1 <^^> $3 <** [$1,$3]) $ reverse $2 } > | '{-# DEPRECATED' warndeprs '#-}' { DeprPragmaDecl ($1 <^^> $3 <** ($1:snd $2++[$3])) $ reverse (fst $2) } > | '{-# WARNING' warndeprs '#-}' { WarnPragmaDecl ($1 <^^> $3 <** ($1:snd $2++[$3])) $ reverse (fst $2) } > | '{-# ANN' annotation '#-}' { AnnPragma ($1 <^^> $3 <** [$1,$3]) $2 } > | decl { $1 } > -- Family result/return kind signatures > > opt_datafam_kind_sig :: { Maybe (ResultSig L) } > : { Nothing } > | '::' kind { (Just $ KindSig (nIS $1 <++> ann $2 <** [$1]) $2) } > > opt_tyfam_kind_sig :: { Maybe (ResultSig L) } > : { Nothing } > | '::' kind { (Just $ KindSig (nIS $1 <++> ann $2 <** [$1]) $2) } > | '=' ktyvar { (Just $ TyVarSig (nIS $1 <++> ann $2 <** [$1]) $2) } > > opt_at_kind_inj_sig :: { (Maybe (ResultSig L), Maybe (InjectivityInfo L))} > : { (Nothing, Nothing) } > | '::' kind { (Just (KindSig (nIS $1 <++> ann $2 <** [$1]) $2), Nothing) } > | '=' ktyvar injectivity_info > { (Just (TyVarSig (nIS $1 <++> ann $2 <** [$1]) $2), Just $3) } > opt_at_kind_inj_sig2 :: { (Maybe (ResultSig L), Maybe (S, Type L), Maybe (InjectivityInfo L))} > : { (Nothing, Nothing, Nothing) } > | '::' kind { (Just (KindSig (nIS $1 <++> ann $2 <** [$1]) $2), Nothing, Nothing) } > | '=' truectype opt_injectivity_info { (Nothing, Just ($1, $2), $3) } Role annotations > role_annot :: { Decl L } > role_annot : 'type' 'role' otycon roles > {% mkRoleAnnotDecl $1 $2 $3 (reverse $4) } -- Reversed! > roles :: { [(Maybe String, L)] } > roles : {- empty -} { [] } > | roles role { $2 : $1 } > -- read it in as a varid for better error messages > role :: { (Maybe String, L) } > role : VARID { let (VarId v) = unLoc $1 in (Just v, nIS $ loc $1) } > | '_' { (Nothing, nIS $1) } > optoverlap :: { Maybe (Overlap L) } > : '{-# OVERLAP' '#-}' { Just (Overlap (nIS $1)) } > | '{-# INCOHERENT' '#-}' { Just (Incoherent (nIS $1)) } > | '{-# NO_OVERLAP' '#-}' { Just (NoOverlap (nIS $1)) } > | {- empty -} { Nothing } Parsing the body of a closed type family, partially stolen from the source of GHC. > where_type_family :: { Maybe ([TypeEqn L], S) } > : {- empty -} { Nothing } > | 'where' ty_fam_inst_eqn_list { Just ($2, $1) } > ty_fam_inst_eqn_list :: { [TypeEqn L] } > : '{' ty_fam_inst_eqns '}' { $2 } > | open ty_fam_inst_eqns close { $2 } > ty_fam_inst_eqns :: { [TypeEqn L] } > : ty_fam_inst_eqns ';' ty_fam_inst_eqn { $1 ++ [$3] } > | ty_fam_inst_eqns ';' { $1 } > | ty_fam_inst_eqn { [$1] } > ty_fam_inst_eqn :: { TypeEqn L } > : truectype '=' truectype > {% do { checkEnabled TypeFamilies ; > return (TypeEqn (ann $1 <++> ann $3 <** [$2]) $1 $3) } } > data_or_newtype :: { DataOrNew L } > : 'data' { DataType $ nIS $1 } > | 'newtype' { NewType $ nIS $1 } > typelist :: { ([Type L],[S]) } > : types {% do { ts <- mapM checkType (fst $1); > return $ (reverse ts, reverse (snd $1)) } } > | truetype { ([$1],[]) } > | {- empty -} { ([],[]) } > decls :: { ([Decl L],[S]) } > : optsemis decls1 optsemis {% checkRevDecls (fst $2) >>= \ds -> return (ds, reverse $1 ++ snd $2 ++ reverse $3) } > | optsemis { ([],reverse $1) } > decls1 :: { ([Decl L],[S]) } > : decls1 semis decl { ($3 : fst $1, snd $1 ++ reverse $2) } > | decl { ([$1],[]) } > decl :: { Decl L } > : signdecl { $1 } > | fixdecl { $1 } > | valdef { $1 } > | pat_syn { $1 } > | pattern_synonym_sig { $1 } > decllist :: { Binds L } > : '{' decls '}' { BDecls ($1 <^^> $3 <** ($1:snd $2++[$3])) (fst $2) } > | open decls close { let l' = if null (fst $2) then nIS $3 else (ann . last $ fst $2) > in BDecls (nIS $1 <++> l' <** ($1:snd $2++[$3])) (fst $2) } > signdecl :: { Decl L } > : signdecl0 { $1 } > | specinldecl { $1 } > signdecl0 :: { Decl L } > : exp0b '::' truectype {% do { v <- checkSigVar $1; > return $ TypeSig ($1 <> $3 <** [$2]) [v] $3 } } > | exp0b ',' vars '::' truectype {% do { v <- checkSigVar $1; > let {(vs,ss,_) = $3 ; l = $1 <> $5 <** ($2 : reverse ss ++ [$4]) } ; > return $ TypeSig l (v : reverse vs) $5 } } > specinldecl :: { Decl L } > : '{-# INLINE' activation qvar '#-}' { let Loc l (INLINE s) = $1 in InlineSig (l <^^> $4 <** [l,$4]) s $2 $3 } > | '{-# INLINE CONLIKE' activation qvar '#-}' { InlineConlikeSig ($1 <^^> $4 <** [$1,$4]) $2 $3 } > | '{-# SPECIALISE' activation qvar '::' sigtypes '#-}' > { SpecSig ($1 <^^> $6 <** ($1: $4 : snd $5 ++ [$6])) $2 $3 (fst $5) } > | '{-# SPECIALISE INLINE' activation qvar '::' sigtypes '#-}' > { let Loc l (SPECIALISE_INLINE s) = $1 > in SpecInlineSig (l <^^> $6 <** (l:$4:snd $5++[$6])) s $2 $3 (fst $5) } > | '{-# SPECIALISE' 'instance' ctype '#-}' {% do { ih <- checkInstHeader $3; > let {l = $1 <^^> $4 <** [$1,$2,$4]}; > return $ InstSig l ih } } > | '{-# MINIMAL' name_boolformula '#-}' { MinimalPragma ($1 <^^> $3 <** [$1,$3]) $2 } > sigtypes :: { ([Type L],[S]) } > : sigtype { ([$1],[]) } > | sigtype ',' sigtypes { ($1 : fst $3, $2 : snd $3) } > sigtype :: { Type L } > : ctype {% checkType $ mkTyForall (ann $1) Nothing Nothing $1 } > name_boolformula :: { Maybe (BooleanFormula L) } > : name_boolformula1 { Just $1 } > | {- empty -} { Nothing } > name_boolformula1 :: { BooleanFormula L } > : name_boolformula_and { $1 } > | name_boolformula_and '|' name_boolformula1 { OrFormula (ann $1 <++> ann $3 <** [$2]) [$1,$3] } > name_boolformula_and :: { BooleanFormula L } > : name_boolformula_atom { $1 } > | name_boolformula_atom ',' name_boolformula_and { AndFormula (ann $1 <++> ann $3 <** [$2]) [$1,$3] } > name_boolformula_atom :: { BooleanFormula L } > : '(' name_boolformula1 ')' { ParenFormula ($1 <^^> $3 <** [$1,$3]) $2 } > | var { VarFormula (ann $1) $1 } Binding can be either of implicit parameters, or it can be a normal sequence of declarations. The two kinds cannot be mixed within the same block of binding. > binds :: { Binds L } > : decllist { $1 } > | '{' ipbinds '}' { IPBinds ($1 <^^> $3 <** snd $2) (fst $2) } > | open ipbinds close { let l' = ann . last $ fst $2 > in IPBinds (nIS $1 <++> l' <** snd $2) (fst $2) } ATTENTION: Dirty Hackery Ahead! If the second alternative of vars is var instead of qvar, we get another shift/reduce-conflict. Consider the following programs: { (+) :: ... } only var { (+) x y = ... } could (incorrectly) be qvar We re-use expressions for patterns, so a qvar would be allowed in patterns instead of a var only (which would be correct). But deciding what the + is, would require more lookahead. So let's check for ourselves... > vars :: { ([Name L],[S],L) } > : vars ',' var { let (ns,ss,l) = $1 in ($3 : ns, $2 : ss, l <++> ann $3) } > | qvar {% do { n <- checkUnQual $1; > return ([n],[],ann n) } } ----------------------------------------------------------------------------- FFI These will only be called on in the presence of a 'foreign' keyword, so no need to check for extensions. > callconv :: { CallConv L } > : 'stdcall' { StdCall (nIS $1) } > | 'ccall' { CCall (nIS $1) } > | 'cplusplus' { CPlusPlus (nIS $1) } > | 'dotnet' { DotNet (nIS $1) } > | 'jvm' { Jvm (nIS $1) } > | 'js' { Js (nIS $1) } > | 'javascript' { JavaScript (nIS $1) } > | 'capi' { CApi (nIS $1) } > safety :: { Maybe (Safety L) } > : 'safe' { Just $ PlaySafe (nIS $1) False } > | 'unsafe' { Just $ PlayRisky (nIS $1) } > | 'threadsafe' { Just $ PlaySafe (nIS $1) True } > | 'interruptible' { Just $ PlayInterruptible (nIS $1) } > | {- empty -} { Nothing } > fspec :: { (Maybe String, Name L, Type L, [S]) } > : STRING var_no_safety '::' truedtype { let Loc l (StringTok (s,_)) = $1 in (Just s, $2, $4, [l,$3]) } > | var_no_safety '::' truedtype { (Nothing, $1, $3, [$2]) } ----------------------------------------------------------------------------- Pragmas > rules :: { [Rule L] } > : rules ';'rule { $3 : $1 } > | rules ';' { $1 } > | rule { [$1] } > | {- empty -} { [] } > rule :: { Rule L } > : STRING activation ruleforall exp0 '=' trueexp {% do { let {Loc l (StringTok (s,_)) = $1}; > e <- checkRuleExpr $4; > return $ Rule (nIS l <++> ann $6 <** l:snd $3 ++ [$5]) s $2 (fst $3) e $6 } } > activation :: { Maybe (Activation L) } > : {- empty -} { Nothing } > | '[' INT ']' { let Loc l (IntTok (i,_)) = $2 in Just $ ActiveFrom ($1 <^^> $3 <** [$1,l,$3]) (fromInteger i) } > | '[' '~' INT ']' { let Loc l (IntTok (i,_)) = $3 in Just $ ActiveUntil ($1 <^^> $4 <** [$1,$2,l,$4]) (fromInteger i) } > ruleforall :: { (Maybe [RuleVar L],[S]) } > : {- empty -} { (Nothing,[]) } > | 'forall' rulevars '.' { (Just $2,[$1,$3]) } > rulevars :: { [RuleVar L] } > : rulevar { [$1] } > | rulevar rulevars { $1 : $2 } > rulevar :: { RuleVar L } > : varid { RuleVar (ann $1) $1 } > | '(' varid '::' truectype ')' { TypedRuleVar ($1 <^^> $5 <** [$1,$3,$5]) $2 $4 } > warndeprs :: { ([([Name L],String)],[S]) } > : warndeprs ';' warndepr { (fst $3 : fst $1, snd $1 ++ ($2:snd $3)) } > | warndeprs ';' { (fst $1, snd $1 ++ [$2]) } > | warndepr { ([fst $1],snd $1) } > | {- empty -} { ([],[]) } > warndepr :: { (([Name L], String),[S]) } > : namevars STRING { let Loc l (StringTok (s,_)) = $2 in ((fst $1,s),snd $1 ++ [l]) } > namevars :: { ([Name L],[S]) } > : namevar { ([$1],[]) } > | namevar ',' namevars { ($1 : fst $3, $2 : snd $3) } > namevar :: { Name L } > : con { $1 } > | var { $1 } > annotation :: { Annotation L } > : 'type' conid aexp {% checkExpr $3 >>= \e -> return (TypeAnn (nIS $1 <++> ann e <** [$1]) $2 e) } > | 'module' aexp {% checkExpr $2 >>= \e -> return (ModuleAnn (nIS $1 <++> ann e <** [$1]) e) } > | namevar aexp {% checkExpr $2 >>= \e -> return (Ann ($1 <> e) $1 e) } ----------------------------------------------------------------------------- Types Type equality contraints need the TypeFamilies extension. > truedtype :: { Type L } > : dtype {% checkType $1 } > dtype :: { PType L } > : btype { splitTilde $1 } > | btype qtyconop dtype { TyInfix ($1 <> $3) $1 $2 $3 } > | btype qtyvarop dtype { TyInfix ($1 <> $3) $1 $2 $3 } -- FIXME > | btype '->' ctype { TyFun ($1 <> $3 <** [$2]) (splitTilde $1) $3 } | btype '~' btype {% do { checkEnabledOneOf [TypeFamilies, GADTs] ; let {l = $1 <> $3 <** [$2]}; return $ TyPred l $ EqualP l $1 $3 } } Implicit parameters can occur in normal types, as well as in contexts. > truetype :: { Type L } > : type {% checkType $1 } > type :: { PType L } > : ivar '::' dtype { let l = ($1 <> $3 <** [$2]) in TyPred l $ IParam l $1 $3 } > | dtype { $1 } > truebtype :: { Type L } > : btype {% checkType (splitTilde $1) } > trueatype :: { Type L } > : atype {% checkType $1 } > btype :: { PType L } > : btype atype { TyApp ($1 <> $2) $1 $2 } > | atype { $1 } UnboxedTuples requires the extension, but that will be handled through the (# and #) lexemes. Kinds will be handled at the kind rule. > atype :: { PType L } > : gtycon { TyCon (ann $1) $1 } > | tyvar {% checkTyVar $1 } > | strict_mark atype { let (mstrict, mupack) = $1 > in bangType mstrict mupack $2 } > | '(' types ')' { TyTuple ($1 <^^> $3 <** ($1:reverse ($3:snd $2))) Boxed (reverse (fst $2)) } > | '(#' types1 '#)' { TyTuple ($1 <^^> $3 <** ($1:reverse ($3:snd $2))) Unboxed (reverse (fst $2)) } > | '[' type ']' { TyList ($1 <^^> $3 <** [$1,$3]) $2 } > | '[:' type ':]' { TyParArray ($1 <^^> $3 <** [$1,$3]) $2 } > | '(' ctype ')' { TyParen ($1 <^^> $3 <** [$1,$3]) $2 } > | '(' ctype '::' kind ')' { TyKind ($1 <^^> $5 <** [$1,$3,$5]) $2 $4 } > | '$(' trueexp ')' { let l = ($1 <^^> $3 <** [$1,$3]) in TySplice l $ ParenSplice l $2 } > | IDSPLICE { let Loc l (THIdEscape s) = $1 in TySplice (nIS l) $ IdSplice (nIS l) s } > | '_' { TyWildCard (nIS $1) Nothing } > | QUASIQUOTE { let Loc l (THQuasiQuote (n,q)) = $1 in TyQuasiQuote (nIS l) n q } > | ptype { % checkEnabled DataKinds >> return (TyPromoted (ann $1) $1) } > ptype :: { Promoted L } > : VARQUOTE '[' types1 ']' {% PromotedList ($1 <^^> $4 <** ($1:reverse($4:snd $3))) True . reverse <\$> mapM checkType (fst $3) } > | VARQUOTE '[' ']' { PromotedList ($1 <^^> $3 <** [$1, $3]) True [] } > | '[' types ']' {% PromotedList ($1 <^^> $3 <** ($1:reverse($3:snd $2))) False . reverse <\$> mapM checkType (fst $2) } > | VARQUOTE '(' types1 ')' {% PromotedTuple ($1 <^^> $4 <** ($1:reverse($4:snd $3))) . reverse <\$> mapM checkType (fst $3) } > | VARQUOTE '(' ')' { PromotedUnit ($1 <^^> $3 ) } > | VARQUOTE gconsym { PromotedCon ((noInfoSpan $1 <++> ann $2) <** [$1]) True $2 } > | VARQUOTE qtyconorcls { PromotedCon ((noInfoSpan $1 <++> ann $2) <** [$1]) True $2 } > | INT { let Loc l (IntTok (i,raw)) = $1 in PromotedInteger (nIS l) i raw } > | STRING { let Loc l (StringTok (s,raw)) = $1 in PromotedString (nIS l) s raw } > strict_mark :: { (Maybe (L -> BangType L,S), Maybe (Unpackedness L)) } > : strictness { (Just $1, Nothing) } > | unpackedness { (Nothing, Just $1) } > | unpackedness strictness { (Just $2, Just $1) } > strictness :: { (L -> BangType L, S) } > : '!' { (BangedTy, $1) } > | '~' { (LazyTy, $1) } > unpackedness :: { Unpackedness L } > : '{-# UNPACK' '#-}' { (Unpack ((nIS $1 <++> nIS $2) <** [$1,$2])) } > | '{-# NOUNPACK' '#-}' { (NoUnpack ((nIS $1 <++> nIS $2) <** [$1,$2])) } > gtycon :: { QName L } > : otycon { $1 } > | '(' ')' { unit_tycon_name ($1 <^^> $2 <** [$1,$2]) } > | '(' '->' ')' { fun_tycon_name ($1 <^^> $3 <** [$1,$2,$3]) } > | '[' ']' { list_tycon_name ($1 <^^> $2 <** [$1,$2]) } > | '(' commas ')' { tuple_tycon_name ($1 <^^> $3 <** ($1:reverse $2 ++ [$3])) Boxed (length $2) } > | '(#' '#)' { unboxed_singleton_tycon_name ($1 <^^> $2 <** [$1,$2]) } > | '(#' commas '#)' { tuple_tycon_name ($1 <^^> $3 <** ($1:reverse $2 ++ [$3])) Unboxed (length $2) } > otycon :: { QName L } > : qconid { $1 } > | '(' gconsym ')' { updateQNameLoc ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3]) $2 } > | '(' qvarsym ')' { updateQNameLoc ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3]) $2 } These are for infix types > qtyconop :: { QName L } > : qconop { $1 } (Slightly edited) Comment from GHC's hsparser.y: "context => type" vs "type" is a problem, because you can't distinguish between foo :: (Baz a, Baz a) bar :: (Baz a, Baz a) => [a] -> [a] -> [a] with one token of lookahead. The HACK is to parse the context as a btype (more specifically as a tuple type), then check that it has the right form C a, or (C1 a, C2 b, ... Cn z) and convert it into a context. Blaach! Forall-quantified types require some extension to enable them, which is any of the keyword-enabling ones, except ExistentialQuantification. > truectype :: { Type L } > : ctype {% checkType $1 } > ctype :: { PType L } > : 'forall' ktyvars '.' ctype { mkTyForall (nIS $1 <++> ann $4 <** [$1,$3]) (Just (reverse (fst $2))) Nothing $4 } > | context ctype { mkTyForall ($1 <> $2) Nothing (Just $1) $2 } > | type { $1 } Equality constraints require the TypeFamilies extension. > context :: { PContext L } > : btype '=>' {% checkPContext $ (amap (\l -> l <++> nIS $2 <** (srcInfoPoints l ++ [$2]))) (splitTilde $1) } > types :: { ([PType L],[S]) } > : types1 ',' ctype { ($3 : fst $1, $2 : snd $1) } > types1 :: { ([PType L],[S]) } > : ctype { ([$1],[]) } > | types1 ',' ctype { ($3 : fst $1, $2 : snd $1) } > ktyvars :: { ([TyVarBind L],Maybe L) } > : ktyvars ktyvar { ($2 : fst $1, Just (snd $1 ann $2)) } > | {- empty -} { ([],Nothing) } > ktyvar :: { TyVarBind L } > : tyvar { UnkindedVar (ann $1) $1 } > | '(' tyvar '::' kind ')' { KindedVar ($1 <^^> $5 <** [$1,$3,$5]) $2 $4 } > tyvars :: { ([Name L],Maybe L) } > : tyvars tyvar { ($2 : fst $1, Just (snd $1 ann $2)) } > | {- empty -} { ([], Nothing) } > tyvars1 :: { ([Name L],L) } > : tyvars tyvar { ($2 : fst $1, snd $1 ann $2) } ----------------------------------------------------------------------------- Functional Dependencies These require the FunctionalDependencies extension to be enabled. > fds :: { ([FunDep L],[S],Maybe L) } > : {- empty -} { ([],[], Nothing) } > | '|' fds1 {% do { checkEnabled FunctionalDependencies ; > let {(fds,ss,l) = $2} ; > return (reverse fds, $1 : reverse ss, Just (nIS $1 <++> l)) } } > fds1 :: { ([FunDep L],[S],L) } > : fds1 ',' fd { let (fds,ss,l) = $1 in ($3 : fds, $2 : ss, l <++> ann $3) } > | fd { ([$1],[],ann $1) } > fd :: { FunDep L } > : tyvars '->' tyvars1 { FunDep (snd $1 nIS $2 <++> snd $3 <** [$2]) (reverse (fst $1)) (reverse (fst $3)) } ----------------------------------------------------------------------------- Datatype declarations GADTs - require the GADTs extension enabled, but we handle that at the calling site. gadtlist :: { ([GadtDecl L],[S],L) } : gadtlist1 {% >> return $1 } > gadtlist :: { ([GadtDecl L],[S],Maybe L) } > : 'where' '{' gadtconstrs1 '}' {% return (fst $3, $1 : $2 : snd $3 ++ [$4], Just $ $1 <^^> $4) } > | 'where' open gadtconstrs1 close {% return (fst $3, $1 : $2 : snd $3 ++ [$4], Just $ $1 <^^> $4) } > | {- empty -} {% checkEnabled EmptyDataDecls >> return ([],[],Nothing) } > gadtconstrs1 :: { ([GadtDecl L],[S]) } > : optsemis gadtconstrs optsemis { (fst $2, reverse $1 ++ snd $2 ++ reverse $3) } > gadtconstrs :: { ([GadtDecl L],[S]) } > : gadtconstrs semis gadtconstr { ($3 ++ fst $1, snd $1 ++ reverse $2) } > | gadtconstr { ($1,[]) } > gadtconstr :: { [GadtDecl L] } > : qcon '::' truectype {% do { c <- checkUnQual $1; > return [GadtDecl ($1 <> $3 <** [$2]) c Nothing $3] } } > | qcon '::' '{' fielddecls '}' '->' truectype > {% do { c <- checkUnQual $1; > return [GadtDecl ($1 <> $7 <** [$2,$3,$5,$6] ++ snd $4) c (Just (reverse $ fst $4)) $7] } } To allow the empty case we need the EmptyDataDecls extension. > constrs0 :: { ([QualConDecl L],[S],Maybe L) } : {- empty -} {% checkEnabled EmptyDataDecls >> return ([],[],Nothing) } > : '=' constrs { let (ds,ss,l) = $2 in (ds, $1 : reverse ss, Just $ nIS $1 <++> l) } > constrs :: { ([QualConDecl L],[S],L) } > : constrs '|' constr { let (ds,ss,l) = $1 in ($3 : ds, $2 : ss, l <++> ann $3) } > | constr { ([$1],[],ann $1) } > constr :: { QualConDecl L } > : forall context constr1 {% do { checkEnabled ExistentialQuantification ; > ctxt <- checkContext (Just $2) ; > let {(mtvs,ss,ml) = $1} ; > return $ QualConDecl (ml ann $3 <** ss) mtvs ctxt $3 } } > | forall constr1 { let (mtvs, ss, ml) = $1 in QualConDecl (ml ann $2 <** ss) mtvs Nothing $2 } > forall :: { (Maybe [TyVarBind L], [S], Maybe L) } > : 'forall' ktyvars '.' {% checkEnabled ExistentialQuantification >> return (Just (fst $2), [$1,$3], Just $ $1 <^^> $3) } > | {- empty -} { (Nothing, [], Nothing) } To avoid conflicts when introducing type operators, we need to parse record constructors as qcon and then check separately that they are truly unqualified. > constr1 :: { ConDecl L } > : scontype { let (n,ts,l) = $1 in ConDecl l n ts } > | truebtype conop truebtype { InfixConDecl ($1 <> $3) $1 $2 $3 } > | qcon '{' '}' {% do { c <- checkUnQual $1; return $ RecDecl (ann $1 <++> nIS $3 <** [$2,$3]) c [] } } > | qcon '{' fielddecls '}' {% do { c <- checkUnQual $1; > return $ RecDecl (ann $1 <++> nIS $4 <** ($2:reverse (snd $3) ++ [$4])) c (reverse (fst $3)) } } > scontype :: { (Name L, [Type L], L) } > : btype {% do { (c,ts) <- splitTyConApp $1; > return (c, ts, ann $1) } } > fielddecls :: { ([FieldDecl L],[S]) } > : fielddecls ',' fielddecl { ($3 : fst $1, $2 : snd $1) } > | fielddecl { ([$1],[]) } > fielddecl :: { FieldDecl L } > : vars '::' truectype { let (ns,ss,l) = $1 in FieldDecl (l <++> ann $3 <** (reverse ss ++ [$2])) (reverse ns) $3 } > deriving :: { Maybe (Deriving L) } > : {- empty -} { Nothing } > | 'deriving' qtycls1 { let l = nIS $1 <++> ann $2 <** [$1] in Just $ Deriving l [IRule (ann $2) Nothing Nothing $2] } > | 'deriving' '(' ')' { Just $ Deriving ($1 <^^> $3 <** [$1,$2,$3]) [] } > | 'deriving' '(' dclasses ')' { -- Distinguish deriving (Show) from deriving Show (#189) > case fst $3 of > [ts] -> Just $ Deriving ($1 <^^> $4 <** [$1]) [IParen ($2 <^^> $4 <** [$2,$4]) ts] > tss -> Just $ Deriving ($1 <^^> $4 <** $1:$2: reverse (snd $3) ++ [$4]) (reverse tss)} > dclasses :: { ([InstRule L],[S]) } > : types1 {% checkDeriving (fst $1) >>= \ds -> return (ds, snd $1) } > qtycls1 :: { InstHead L } > : qconid { IHCon (ann $1) $1 } ----------------------------------------------------------------------------- Kinds > kind :: { Kind L } > : kind1 {% checkEnabled KindSignatures >> return $1 } > kind1 :: { Kind L } > : bkind { $1 } > | bkind '->' kind1 { KindFn ($1 <> $3 <** [$2]) $1 $3 } > bkind :: { Kind L } > : akind { $1 } > | bkind akind { KindApp ($1 <> $2) $1 $2 } > akind :: { Kind L } > : '*' { KindStar (nIS $1) } > | '(' kind1 ')' { KindParen ($1 <^^> $3 <** [$1,$3]) $2 } > | pkind {% checkKind $1 >> return $1 } > | qvarid {% checkEnabled PolyKinds >> return (KindVar (ann $1) $1) } KindParen covers 1-tuples, KindVar l while KindTuple is for pairs > pkind :: { Kind L } > : qtyconorcls { KindVar (ann $1) $1 } > | '(' ')' { let l = $1 <^^> $2 in KindVar l (unit_tycon_name l) } > | '(' kind ',' comma_kinds1 ')' > { KindTuple ($1 <^^> $5 <** ($1:$3:reverse ($5:snd $4))) ($2:reverse (fst $4)) } > | '[' kind ']' { KindList (($1 <^^> $3) <** [$1, $3]) $2 } > comma_kinds1 :: { ([Kind L], [S]) } > : kind1 { ([$1], []) } > | kind1 ',' comma_kinds1 { ($1 : (fst $3), $2 : (snd $3)) } > optkind :: { (Maybe (Kind L), [S]) } > : {-empty-} { (Nothing,[]) } > | '::' kind { (Just $2,[$1]) } ----------------------------------------------------------------------------- Class declarations TODO: Lots of stuff to pass around here. No implicit parameters in the where clause of a class declaration. > optcbody :: { (Maybe [ClassDecl L],[S],Maybe L) } > : 'where' '{' cldecls '}' {% checkClassBody (fst $3) >>= \vs -> return (Just vs, $1:$2: snd $3 ++ [$4], Just ($1 <^^> $4)) } > | 'where' open cldecls close {% do { vs <- checkClassBody (fst $3); > let { l' = if null (fst $3) then nIS $4 else (ann . last $ fst $3) }; > return (Just vs, $1:$2: snd $3 ++ [$4], Just (nIS $1 <++> l')) } } > | {- empty -} { (Nothing,[],Nothing) } > cldecls :: { ([ClassDecl L],[S]) } > : optsemis cldecls1 optsemis {% checkRevClsDecls (fst $2) >>= \cs -> return (cs, reverse $1 ++ snd $2 ++ reverse $3) } > | optsemis { ([],reverse $1) } > cldecls1 :: { ([ClassDecl L],[S]) } > : cldecls1 semis cldecl { ($3 : fst $1, snd $1 ++ reverse $2) } > | cldecl { ([$1],[]) } Associated types require the TypeFamilies extension. > cldecl :: { ClassDecl L } > : decl { ClsDecl (ann $1) $1 } > | atdecl {% checkEnabled TypeFamilies >> return $1 } > | 'default' signdecl {% checkEnabled DefaultSignatures >> checkDefSigDef $2 >>= \(n,t,l) -> return (ClsDefSig (nIS $1 <++> ann $2 <** [$1,l]) n t) } > opt_family :: { [S] } > : {- empty -} { [] } > | 'family' { [$1] } > atdecl :: { ClassDecl L } > : 'data' opt_family type opt_datafam_kind_sig > {% do { (cs,dh) <- checkDataHeader $3; > return (ClsDataFam (nIS $1 <++> ann $3 <+?> (fmap ann) $4 <** [$1]) cs dh $4) } } > | 'type' type opt_at_kind_inj_sig2 > {% mkAssocType $1 $2 $3 } > | 'type' 'family' type opt_at_kind_inj_sig > {% do { dh <- checkSimpleType $3; > return (ClsTyFam (nIS $1 <++> ann $3 <+?> (fmap ann) (fst $4) > <+?> (fmap ann) (snd $4) > <** [$1]) dh (fst $4) (snd $4)) } } > | 'type' 'instance' ty_fam_inst_eqn > { ClsTyDef (nIS $1 <++> ann $3 <** [$1,$2]) $3 } ----------------------------------------------------------------------------- Instance declarations > optvaldefs :: { (Maybe [InstDecl L],[S],Maybe L) } > : 'where' '{' valdefs '}' {% checkInstBody (fst $3) >>= \vs -> return (Just vs, $1:$2: snd $3 ++ [$4], Just ($1 <^^> $4)) } > | 'where' open valdefs close {% checkInstBody (fst $3) >>= \vs -> return (Just vs, $1:$2: snd $3 ++ [$4], Just ($1 <^^> $4)) } > | {- empty -} { (Nothing, [], Nothing) } > valdefs :: { ([InstDecl L],[S]) } > : optsemis valdefs1 optsemis {% checkRevInstDecls (fst $2) >>= \is -> return (is, reverse $1 ++ snd $2 ++ reverse $3) } > | optsemis { ([],reverse $1) } > valdefs1 :: { ([InstDecl L],[S]) } > : valdefs1 semis insvaldef { ($3 : fst $1, snd $1 ++ reverse $2) } > | insvaldef { ([$1],[]) } Associated types require the TypeFamilies extension enabled. > insvaldef :: { InstDecl L } > : valdef { InsDecl (ann $1) $1 } > | atinst {% checkEnabled TypeFamilies >> return $1 } > | specinldecl { InsDecl (ann $1) $1 } > | signdecl0 {% checkEnabled InstanceSigs >> return (InsDecl (ann $1) $1) } inlinst :: { InstDecl L } : '{-# INLINE' activation qvar '#-}' { let Loc l (INLINE s) = $1 in InsInline (l <^^> $4 <** [l,$4]) s $2 $3 } > atinst :: { InstDecl L } > : 'type' truedtype '=' truectype > {% do { -- no checkSimpleType $4 since dtype may contain type patterns > return (InsType (nIS $1 <++> ann $4 <** [$1,$3]) $2 $4) } } > | data_or_newtype truectype constrs0 deriving > {% do { -- (cs,c,t) <- checkDataHeader $4; > let {(ds,ss,minf) = $3}; > checkDataOrNew $1 ds; > return (InsData ($1 <> $2 <+?> minf <+?> fmap ann $4 <** ss ) $1 $2 (reverse ds) $4) } } > | data_or_newtype truectype optkind gadtlist deriving > {% do { -- (cs,c,t) <- checkDataHeader $4; > let { (gs,ss,minf) = $4 } ; > checkDataOrNewG $1 gs; > return $ InsGData (ann $1 <+?> minf <+?> fmap ann $5 <** (snd $3 ++ ss)) $1 $2 (fst $3) (reverse gs) $5 } } ----------------------------------------------------------------------------- Value definitions > valdef :: { Decl L } > : exp0b optsig rhs optwhere {% checkValDef (($1 <> $3 <+?> (fmap ann) (fst $4)) <** (snd $4)) $1 $2 $3 (fst $4) } > | '!' aexp rhs optwhere {% do { checkEnabled BangPatterns ; > let { l = nIS $1 <++> ann $2 <** [$1] }; > p <- checkPattern (BangPat l $2); > return $ PatBind (p <> $3 <+?> (fmap ann) (fst $4) <** snd $4) > p $3 (fst $4) } } May bind implicit parameters > optwhere :: { (Maybe (Binds L),[S]) } > : 'where' binds { (Just $2, [$1]) } > | {- empty -} { (Nothing, []) } Type signatures on value definitions require ScopedTypeVariables (or PatternSignatures, which is deprecated). > optsig :: { (Maybe (Type L, S)) } > : '::' truectype {% checkEnabled ScopedTypeVariables >> return (Just ($2, $1)) } > | {- empty -} { Nothing } > rhs :: { Rhs L } > : '=' trueexp { UnGuardedRhs (nIS $1 <++> ann $2 <** [$1]) $2 } > | gdrhs { GuardedRhss (snd $1) (reverse $ fst $1) } > gdrhs :: { ([GuardedRhs L],L) } > : gdrhs gdrh { ($2 : fst $1, snd $1 <++> ann $2) } > | gdrh { ([$1],ann $1) } Guards may contain patterns if PatternGuards is enabled, hence quals instead of exp. > gdrh :: { GuardedRhs L } > : '|' quals '=' trueexp {% do { checkPatternGuards (fst $2); > return $ GuardedRhs (nIS $1 <++> ann $4 <** ($1:snd $2 ++ [$3])) (reverse (fst $2)) $4 } } ----------------------------------------------------------------------------- Expressions Note: The Report specifies a meta-rule for lambda, let and if expressions (the exp's that end with a subordinate exp): they extend as far to the right as possible. That means they cannot be followed by a type signature or infix application. To implement this without shift/reduce conflicts, we split exp10 into these expressions (exp10a) and the others (exp10b). That also means that only an exp0 ending in an exp10b (an exp0b) can followed by a type signature or infix application. So we duplicate the exp0 productions to distinguish these from the others (exp0a). Ugly: We need non-parenthesized post-operators for HaRP, and to parse both these and normal left sections, we parse both as PostOp and let the post pass mangle them into the correct form depending on context. > trueexp :: { Exp L } > : exp {% checkExpr $1 } > exp :: { PExp L } > : exp0b '::' truectype { ExpTypeSig ($1 <> $3 <** [$2]) $1 $3 } > | exp0 { $1 } > | exp0b qop { PostOp ($1 <> $2) $1 $2 } > | exp0b '-<' exp { LeftArrApp ($1 <> $3 <** [$2]) $1 $3 } > | exp0b '>-' exp { RightArrApp ($1 <> $3 <** [$2]) $1 $3 } > | exp0b '-<<' exp { LeftArrHighApp ($1 <> $3 <** [$2]) $1 $3 } > | exp0b '>>-' exp { RightArrHighApp ($1 <> $3 <** [$2]) $1 $3 } > exp0 :: { PExp L } > : exp0a { $1 } > | exp0b { $1 } > exp0a :: { PExp L } > : exp0b qop exp10a { InfixApp ($1 <> $3) $1 $2 $3 } > | exp10a { $1 } > exp0b :: { PExp L } > : exp0b qop exp10b { InfixApp ($1 <> $3) $1 $2 $3 } > | exp10b { $1 } > exp10a :: { PExp L } > : '\\' apats '->' exp { Lambda (nIS $1 <++> ann $4 <** [$1,$3]) (reverse $2) $4 } A let may bind implicit parameters > | 'let' binds 'in' exp { Let (nIS $1 <++> ann $4 <** [$1,$3]) $2 $4 } > | 'if' exp optlayoutsemi 'then' exp optlayoutsemi 'else' exp > { If (nIS $1 <++> ann $8 <** ($1:$3 ++ $4:$6 ++ [$7])) $2 $5 $8 } > | 'if' ifaltslist {% checkEnabled MultiWayIf >> > let (alts, inf, ss) = $2 > in return (MultiIf (nIS $1 <++> inf <** ($1:ss)) alts) } > | 'proc' apat '->' exp { Proc (nIS $1 <++> ann $4 <** [$1,$3]) $2 $4 } > | exppragma { $1 } > optlayoutsemi :: { [S] } > : ';' {% checkEnabled DoAndIfThenElse >> return [$1] } > | {- empty -} { [] } We won't come here unless XmlSyntax is already checked. > opthsxsemi :: { [S] } > : ';' { [$1] } > | {- empty -} { [] } mdo blocks require the RecursiveDo extension enabled, but the lexer handles that. > exp10b :: { PExp L } > : 'case' exp 'of' altslist { let (als, inf, ss) = $4 in Case (nIS $1 <++> inf <** ($1:$3:ss)) $2 als } > | '\\' 'case' altslist {% do { checkEnabled LambdaCase ; > let { (als, inf, ss) = $3 } ; > return (LCase (nIS $1 <++> inf <** ($1:$2:ss)) als) } } > | '-' fexp { NegApp (nIS $1 <++> ann $2 <** [$1]) $2 } > | 'do' stmtlist { let (sts, inf, ss) = $2 in Do (nIS $1 <++> inf <** $1:ss) sts } > | 'mdo' stmtlist { let (sts, inf, ss) = $2 in MDo (nIS $1 <++> inf <** $1:ss) sts } > | fexp { $1 } > exppragma :: { PExp L } > : '{-# CORE' STRING '#-}' exp { let Loc l (StringTok (s,_)) = $2 in CorePragma (nIS $1 <++> ann $4 <** [l,$3]) s $4 } > | '{-# SCC' STRING '#-}' exp { let Loc l (StringTok (s,_)) = $2 in SCCPragma (nIS $1 <++> ann $4 <** [l,$3]) s $4 } > | '{-# GENERATED' STRING INT ':' INT '-' INT ':' INT '#-}' exp > { let { Loc l0 (StringTok (s,_)) = $2; > Loc l1 (IntTok (i1,_)) = $3; > Loc l2 (IntTok (i2,_)) = $5; > Loc l3 (IntTok (i3,_)) = $7; > Loc l4 (IntTok (i4,_)) = $9} > in GenPragma (nIS $1 <++> ann $11 <** [$1,l0,l1,$4,l2,$6,l3,$8,l4,$10]) > s (fromInteger i1, fromInteger i2) > (fromInteger i3, fromInteger i4) $11 } > fexp :: { PExp L } > : fexp aexp { App ($1 <> $2) $1 $2 } > | aexp { $1 } > apats :: { [Pat L] } > : apats apat { $2 : $1 } > | apat { [$1] } > apat :: { Pat L } > : aexp {% checkPattern $1 } > | '!' aexp {% checkPattern (BangPat (nIS $1 <++> ann $2 <** [$1]) $2) } UGLY: Because patterns and expressions are mixed, aexp has to be split into two rules: One right-recursive and one left-recursive. Otherwise we get two reduce/reduce-errors (for as-patterns and irrefutable patters). Even though the variable in an as-pattern cannot be qualified, we use qvar here to avoid a shift/reduce conflict, and then check it ourselves (as for vars above). Non-linear name binding, @:, requires RegularPatterns, but the lexer handles that. > aexp :: { PExp L } > : qvar '@' aexp {% do { n <- checkUnQual $1; > return (AsPat ($1 <> $3 <** [$2]) n $3) } } > | qvar '@:' aexp {% do { n <- checkUnQual $1; > return (CAsRP ($1 <> $3 <** [$2]) n $3) } } > | '~' aexp { IrrPat (nIS $1 <++> ann $2 <** [$1]) $2 } > | TYPEAPP trueatype { TypeApp (nIS $1 <++> ann $2 <** [$1]) $2 } > | aexp1 { $1 } Note: The first two alternatives of aexp1 are not necessarily record updates: they could be labeled constructions. > aexp1 :: { PExp L } > : aexp1 '{' '}' {% liftM (amap (const (ann $1 <++> nIS $3 <** [$2,$3]))) $ mkRecConstrOrUpdate $1 [] } > | aexp1 '{' fbinds '}' {% liftM (amap (const (ann $1 <++> nIS $4 <** ($2:snd $3 ++ [$4])))) > $ mkRecConstrOrUpdate $1 (fst $3) } > | aexp2 { $1 } According to the Report, the left section (e op) is legal iff (e op x) parses equivalently to ((e) op x). Thus e must be an exp0b. An implicit parameter can be used as an expression, enabled by the lexer. Extensions using banana brackets are also enabled by the lexer. The only thing we need to look at here is the erpats that use no non-standard lexemes. > aexp2 :: { PExp L } > : ivar { IPVar (ann $1) $1 } > | overloaded_label { $1 } > | qvar { Var (ann $1) $1 } > | gcon { $1 } > | literal { Lit (ann $1) $1 } > | '(' texp ')' { Paren ($1 <^^> $3 <** [$1,$3]) $2 } > | '(' texp tsectend { TupleSection ($1 <^^> head (snd $3) <** $1:reverse (snd $3)) Boxed (Just $2 : fst $3) } > | '(' commas texp ')' { TupleSection ($1 <^^> $4 <** $1:reverse ($4:$2)) Boxed > (replicate (length $2) Nothing ++ [Just $3]) } > | '(' commas texp tsectend { TupleSection ($1 <^^> head (snd $4) <** $1:reverse (snd $4 ++ $2)) Boxed > (replicate (length $2) Nothing ++ Just $3 : fst $4) } > | '(#' texp thashsectend { TupleSection ($1 <^^> head (snd $3) <** $1:reverse (snd $3)) Unboxed (Just $2 : fst $3) } > | '(#' texp '#)' { TupleSection ($1 <^^> $3 <** [$1,$3]) Unboxed [Just $2] } > | '(#' commas texp '#)' { TupleSection ($1 <^^> $4 <** $1:reverse ($4:$2)) Unboxed > (replicate (length $2) Nothing ++ [Just $3]) } > | '(#' commas texp thashsectend { TupleSection ($1 <^^> head (snd $4) <** $1:reverse (snd $4 ++ $2)) Unboxed > (replicate (length $2) Nothing ++ Just $3 : fst $4) } > | '[' list ']' { amap (\l -> l <** [$3]) $ $2 ($1 <^^> $3 <** [$1]) } > | '[:' parr ':]' { amap (\l -> l <** [$3]) $ $2 ($1 <^^> $3 <** [$1]) } > | '_' { WildCard (nIS $1) } > | '(' erpats ')' {% checkEnabled RegularPatterns >> return (Paren ($1 <^^> $3 <** [$1,$3]) $2) } > | '(|' sexps '|)' { SeqRP ($1 <^^> $3 <** ($1:reverse (snd $2) ++ [$3])) $ reverse (fst $2) } > | '(|' exp '|' quals '|)' { GuardRP ($1 <^^> $5 <** ($1:$3 : snd $4 ++ [$5])) $2 $ (reverse $ fst $4) } > | xml { $1 } Template Haskell - all this is enabled in the lexer. > | IDSPLICE { let Loc l (THIdEscape s) = $1 in SpliceExp (nIS l) $ IdSplice (nIS l) s } > | '$(' trueexp ')' { let l = ($1 <^^> $3 <** [$1,$3]) in SpliceExp l $ ParenSplice l $2 } > | '[|' trueexp '|]' { let l = ($1 <^^> $3 <** [$1,$3]) in BracketExp l $ ExpBracket l $2 } > | '[p|' exp0 '|]' {% do { p <- checkPattern $2; > let {l = ($1 <^^> $3 <** [$1,$3]) }; > return $ BracketExp l $ PatBracket l p } } > | '[t|' truectype '|]' { let l = $1 <^^> $3 <** [$1,$3] in BracketExp l $ TypeBracket l $2 } > | '[d|' open topdecls close '|]' { let l = $1 <^^> $5 <** ($1:snd $3 ++ [$5]) > in BracketExp l $ DeclBracket ($1 <^^> $5 <** ($2:snd $3 ++ [$4,$5])) (fst $3) } > | VARQUOTE '(' ')' { let {l1 = $1 <^^> $3 <** [$1]; > l2 = $2 <^^> $3 <** [$2,$3];} > in VarQuote l1 (unit_con_name l2) } > | VARQUOTE qvar { VarQuote (nIS $1 <++> ann $2 <** [$1]) $2 } > | VARQUOTE qcon { VarQuote (nIS $1 <++> ann $2 <** [$1]) $2 } > | TYPQUOTE tyvar { TypQuote (nIS $1 <++> ann $2 <** [$1]) (UnQual (ann $2) $2) } > | TYPQUOTE gtycon { TypQuote (nIS $1 <++> ann $2 <** [$1]) $2 } > | QUASIQUOTE { let Loc l (THQuasiQuote (n,q)) = $1 in QuasiQuote (nIS l) n q } End Template Haskell > commas :: { [S] } > : commas ',' { $2 : $1 } > | ',' { [$1] } > texp :: { PExp L } > : exp { $1 } > | qopm exp0 { PreOp ($1 <> $2) $1 $2 } > | exp '->' pat {% do {checkEnabled ViewPatterns; > return $ ViewPat ($1 <> $3 <** [$2]) $1 $3} } > tsectend :: { ([Maybe (PExp L)],[S]) } > : commas texp tsectend { let (mes, ss) = $3 in (replicate (length $1 - 1) Nothing ++ Just $2 : mes, ss ++ $1) } > | commas texp ')' { (replicate (length $1 - 1) Nothing ++ [Just $2], $3 : $1) } > | commas ')' { (replicate (length $1) Nothing, $2 : $1) } > thashsectend :: { ([Maybe (PExp L)],[S]) } > : commas texp thashsectend { let (mes, ss) = $3 in (replicate (length $1 - 1) Nothing ++ Just $2 : mes, ss ++ $1) } > | commas texp '#)' { (replicate (length $1 - 1) Nothing ++ [Just $2], $3 : $1) } > | commas '#)' { (replicate (length $1) Nothing, $2 : $1) } ----------------------------------------------------------------------------- Harp Extensions > sexps :: { ([PExp L],[S]) } > : sexps ',' exp { ($3 : fst $1, $2 : snd $1) } > | exp { ([$1],[]) } Either patterns are left associative > erpats :: { PExp L } > : exp '|' erpats { EitherRP ($1 <> $3 <** [$2]) $1 $3 } > | exp '|' exp { EitherRP ($1 <> $3 <** [$2]) $1 $3 } ----------------------------------------------------------------------------- Hsx Extensions - requires XmlSyntax, but the lexer handles all that. > xml :: { PExp L } > : '<' name attrs mattr '>' children opthsxsemi '' > {% do { n <- checkEqNames $2 $9; > let { cn = reverse $6; > as = reverse $3; > l = $1 <^^> $10 <** [$1,$5] ++ $7 ++ [$8,srcInfoSpan (ann $9),$10] }; > return $ XTag l n as $4 cn } } > | '<' name attrs mattr '/>' { XETag ($1 <^^> $5 <** [$1,$5]) $2 (reverse $3) $4 } > | '<%' exp '%>' { XExpTag ($1 <^^> $3 <** [$1,$3]) $2 } > | '<%>' children opthsxsemi '' { XChildTag ($1 <^^> $5 <** ($1:$3++[$4,$5])) (reverse $2) } > children :: { [PExp L] } > : children child { $2 : $1 } > | {- empty -} { [] } > child :: { PExp L } > : PCDATA { let Loc l (XPCDATA pcd) = $1 in XPcdata (nIS l) pcd } > | '<[' sexps ']>' { XRPats ($1 <^^> $3 <** (snd $2 ++ [$1,$3])) $ reverse (fst $2) } > | xml { $1 } > name :: { XName L } > : xmlname ':' xmlname { let {Loc l1 s1 = $1; Loc l2 s2 = $3} > in XDomName (nIS l1 <++> nIS l2 <** [l1,$2,l2]) s1 s2 } > | xmlname { let Loc l str = $1 in XName (nIS l) str } > xmlname :: { Loc String } > : VARID { let Loc l (VarId s) = $1 in Loc l s } > | CONID { let Loc l (ConId s) = $1 in Loc l s } > | DVARID { let Loc l (DVarId s) = $1 in Loc l $ mkDVar s } > | xmlkeyword { $1 } > xmlkeyword :: { Loc String } > : 'type' { Loc $1 "type" } > | 'class' { Loc $1 "class" } > | 'data' { Loc $1 "data" } > | 'foreign' { Loc $1 "foreign" } > | 'export' { Loc $1 "export" } > | 'safe' { Loc $1 "safe" } > | 'unsafe' { Loc $1 "unsafe" } > | 'interruptible' { Loc $1 "interruptible" } > | 'threadsafe' { Loc $1 "threadsafe" } > | 'stdcall' { Loc $1 "stdcall" } > | 'ccall' { Loc $1 "ccall" } > | 'cplusplus' { Loc $1 "cplusplus" } > | 'dotnet' { Loc $1 "dotnet" } > | 'jvm' { Loc $1 "jvm" } > | 'js' { Loc $1 "js" } > | 'javascript' { Loc $1 "javascript" } > | 'capi' { Loc $1 "capi" } > | 'as' { Loc $1 "as" } > | 'by' { Loc $1 "by" } > | 'case' { Loc $1 "case" } > | 'default' { Loc $1 "default" } > | 'deriving' { Loc $1 "deriving" } > | 'do' { Loc $1 "do" } > | 'else' { Loc $1 "else" } > | 'family' { Loc $1 "family" } > | 'forall' { Loc $1 "forall" } > | 'group' { Loc $1 "group" } > | 'hiding' { Loc $1 "hiding" } > | 'if' { Loc $1 "if" } > | 'import' { Loc $1 "import" } > | 'in' { Loc $1 "in" } > | 'infix' { Loc $1 "infix" } > | 'infixl' { Loc $1 "infixl" } > | 'infixr' { Loc $1 "infixr" } > | 'instance' { Loc $1 "instance" } > | 'let' { Loc $1 "let" } > | 'mdo' { Loc $1 "mdo" } > | 'module' { Loc $1 "module" } > | 'newtype' { Loc $1 "newtype" } > | 'of' { Loc $1 "of" } > | 'proc' { Loc $1 "proc" } > | 'rec' { Loc $1 "rec" } > | 'then' { Loc $1 "then" } > | 'using' { Loc $1 "using" } > | 'where' { Loc $1 "where" } > | 'qualified' { Loc $1 "qualified" } > attrs :: { [ParseXAttr L] } > : attrs attr { $2 : $1 } > | {- empty -} { [] } > attr :: { ParseXAttr L } > : name '=' aexp { XAttr ($1 <> $3 <** [$2]) $1 $3 } > mattr :: { Maybe (PExp L) } > : aexp { Just $1 } > | {-empty-} { Nothing } ----------------------------------------------------------------------------- List expressions The rules below are little bit contorted to keep lexps left-recursive while avoiding another shift/reduce-conflict. > list :: { L -> PExp L } > : texp { \l -> List l [$1] } > | lexps { \l -> let (ps,ss) = $1 in List (l <** reverse ss) (reverse ps) } > | texp '..' { \l -> EnumFrom (l <** [$2]) $1 } > | texp ',' exp '..' { \l -> EnumFromThen (l <** [$2,$4]) $1 $3 } > | texp '..' exp { \l -> EnumFromTo (l <** [$2]) $1 $3 } > | texp ',' exp '..' exp { \l -> EnumFromThenTo (l <** [$2,$4]) $1 $3 $5 } > | texp '|' pqualstmts { \l -> let (stss, ss) = $3 in ParComp (l <** ($2:ss)) $1 (reverse stss) } > lexps :: { ([PExp L],[S]) } > : lexps ',' texp { let (es, ss) = $1 in ($3 : es, $2 : ss) } > | texp ',' texp { ([$3,$1], [$2]) } ----------------------------------------------------------------------------- List comprehensions > pqualstmts :: { ([[QualStmt L]],[S]) } > : pqualstmts '|' qualstmts { let { (stss, ss1) = $1; > (sts, ss2) = $3 } > in (reverse sts : stss, ss1 ++ [$2] ++ reverse ss2) } > | qualstmts { let (sts, ss) = $1 in ([reverse sts], reverse ss) } > qualstmts :: { ([QualStmt L],[S]) } > : qualstmts ',' qualstmt { let (sts, ss) = $1 in ($3 : sts, $2 : ss) } > | qualstmt { ([$1],[]) } > qualstmt :: { QualStmt L } > : transformqual { $1 } > | qual { QualStmt (ann $1) $1 } > transformqual :: { QualStmt L } > : 'then' trueexp { ThenTrans (nIS $1 <++> ann $2 <** [$1]) $2 } > | 'then' trueexp 'by' trueexp { ThenBy (nIS $1 <++> ann $4 <** [$1,$3]) $2 $4 } > | 'then' 'group' 'by' trueexp { GroupBy (nIS $1 <++> ann $4 <** [$1,$2,$3]) $4 } > | 'then' 'group' 'using' trueexp { GroupUsing (nIS $1 <++> ann $4 <** [$1,$2,$3]) $4 } > | 'then' 'group' 'by' trueexp 'using' trueexp { GroupByUsing (nIS $1 <++> ann $6 <** [$1,$2,$3,$5]) $4 $6 } > quals :: { ([Stmt L],[S]) } > : quals ',' qual { let (sts, ss) = $1 in ($3 : sts, $2 : ss) } > | qual { ([$1],[]) } > qual :: { Stmt L } > : pat '<-' trueexp { Generator ($1 <> $3 <** [$2]) $1 $3 } > | trueexp { Qualifier (ann $1) $1 } > | 'let' binds { LetStmt (nIS $1 <++> ann $2 <** [$1]) $2 } ----------------------------------------------------------------------------- Parallel array expressions See comments on list expressions. Parallel arrays are finite sequences. This definition also allows empty arrays. > parr :: { L -> PExp L } > : { \l -> ParArray l [] } > | texp { \l -> ParArray l [$1] } > | lexps { \l -> let (ps,ss) = $1 in ParArray (l <** reverse ss) (reverse ps) } > | texp '..' exp { \l -> ParArrayFromTo (l <** [$2]) $1 $3 } > | texp ',' exp '..' exp { \l -> ParArrayFromThenTo (l <** [$2,$4]) $1 $3 $5 } > | texp '|' pqualstmts { \l -> let (stss, ss) = $3 in ParArrayComp (l <** ($2:ss)) $1 (reverse stss) } ----------------------------------------------------------------------------- Case alternatives > altslist :: { ([Alt L],L,[S]) } > : '{' alts '}' { (fst $2, $1 <^^> $3, $1:snd $2 ++ [$3]) } > | open alts close { let l' = ann . last $ fst $2 > in (fst $2, nIS $1 <++> l', $1:snd $2 ++ [$3]) } > alts :: { ([Alt L],[S]) } > : optsemis alts1 optsemis { (reverse $ fst $2, $1 ++ snd $2 ++ $3) } > alts1 :: { ([Alt L],[S]) } > : alts1 semis alt { ($3 : fst $1, snd $1 ++ $2) } > | alt { ([$1],[]) } > alt :: { Alt L } > : pat ralt optwhere { Alt ($1 <> $2 <+?> (fmap ann) (fst $3) <** snd $3) $1 $2 (fst $3) } > ralt :: { Rhs L } > : '->' trueexp { UnGuardedRhs (nIS $1 <++> ann $2 <** [$1]) $2 } > | gdpats { GuardedRhss (snd $1) (reverse $ fst $1) } > gdpats :: { ([GuardedRhs L],L) } > : gdpats gdpat { ($2 : fst $1, snd $1 <++> ann $2) } > | gdpat { ([$1], ann $1) } A guard can be a pattern guard if PatternGuards is enabled, hence quals instead of exp0. > gdpat :: { GuardedRhs L } > : '|' quals '->' trueexp {% do { checkPatternGuards (fst $2); > let {l = nIS $1 <++> ann $4 <** ($1:snd $2 ++ [$3])}; > return (GuardedRhs l (reverse (fst $2)) $4) } } > pat :: { Pat L } > : exp {% checkPattern $1 } > | '!' aexp {% checkPattern (BangPat (nIS $1 <++> ann $2 <** [$1]) $2) } > ifaltslist :: { ([GuardedRhs L], L, [S]) } > : '{' ifalts '}' { (fst $2, $1 <^^> $3, $1:snd $2 ++ [$3]) } > | open ifalts close { let l' = ann . last $ fst $2 > in (fst $2, nIS $1 <++> l', $1:snd $2 ++ [$3]) } > ifalts :: { ([GuardedRhs L], [S]) } > : optsemis ifalts1 optsemis { (reverse $ fst $2, $1 ++ snd $2 ++ $3) } > ifalts1 :: { ([GuardedRhs L], [S]) } > : ifalts1 optsemis gdpat { ($3 : fst $1, snd $1 ++ $2) } > | gdpat { ([$1], []) } ----------------------------------------------------------------------------- Statement sequences As per the Report, but with stmt expanded to simplify building the list without introducing conflicts. This also ensures that the last stmt is an expression. TODO: The points can't be added here, must be propagated! > stmtlist :: { ([Stmt L],L,[S]) } > : '{' stmts '}' { (fst $2, $1 <^^> $3, $1:snd $2 ++ [$3]) } > | open stmts close { let l' = ann . last $ fst $2 > in (fst $2, nIS $1 <++> l', $1:snd $2 ++ [$3]) } > stmts :: { ([Stmt L],[S]) } > : stmt stmts1 { ($1 : fst $2, snd $2) } > | ';' stmts { (fst $2, $1 : snd $2) } > | {- empty -} { ([],[]) } > stmts1 :: { ([Stmt L],[S]) } > : ';' stmts { (fst $2, $1 : snd $2) } > | {- empty -} { ([],[]) } A let statement may bind implicit parameters. > stmt :: { Stmt L } > : 'let' binds { LetStmt (nIS $1 <++> ann $2 <** [$1]) $2 } > | pat '<-' trueexp { Generator ($1 <> $3 <** [$2]) $1 $3 } > | trueexp { Qualifier (ann $1) $1 } > | 'rec' stmtlist { let (stms,inf,ss) = $2 in RecStmt (nIS $1 <++> inf <** $1:ss) stms } ----------------------------------------------------------------------------- Record Field Update/Construction > fbinds :: { ([PFieldUpdate L],[S]) } > : fbind ',' fbinds { let (fbs, ss) = $3 in ($1 : fbs, $2 : ss) } > | fbind { ([$1],[]) } > | '..' {% do { checkEnabled RecordWildCards `atSrcLoc` (getPointLoc $1); > return ([FieldWildcard (nIS $1)], []) } } Puns and wild cards need the respective extensions enabled. > fbind :: { PFieldUpdate L } > : qvar '=' exp { FieldUpdate ($1 <>$3 <** [$2]) $1 $3 } > | qvar {% checkEnabled NamedFieldPuns >> checkQualOrUnQual $1 >>= return . FieldPun (ann $1) } ----------------------------------------------------------------------------- Implicit parameter bindings - need the ImplicitParameter extension enabled, but the lexer handles that. > ipbinds :: { ([IPBind L],[S]) } > : optsemis ipbinds1 optsemis { (reverse (fst $2), reverse $1 ++ snd $2 ++ reverse $3) } > ipbinds1 :: { ([IPBind L],[S]) } > : ipbinds1 semis ipbind { ($3 : fst $1, snd $1 ++ reverse $2) } > | ipbind { ([$1],[]) } > ipbind :: { IPBind L } > : ivar '=' trueexp { IPBind ($1 <> $3 <** [$2]) $1 $3 } ----------------------------------------------------------------------------- Variables, Constructors and Operators. > gcon :: { PExp L } > : '(' ')' { p_unit_con ($1 <^^> $2 <** [$1,$2]) } > | '[' ']' { List ($1 <^^> $2 <** [$1,$2]) [] } > | '(' commas ')' { p_tuple_con ($1 <^^> $3 <** $1:reverse ($3:$2)) Boxed (length $2) } > | '(#' '#)' { p_unboxed_singleton_con ($1 <^^> $2 <** [$1,$2]) } > | '(#' commas '#)' { p_tuple_con ($1 <^^> $3 <** $1:reverse ($3:$2)) Unboxed (length $2) } > | qcon { Con (ann $1) $1 } > var :: { Name L } > : varid { $1 } > | '(' varsym ')' { fmap (const ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3])) $2 } > var_no_safety :: { Name L } > : varid_no_safety { $1 } > | '(' varsym ')' { fmap (const ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3])) $2 } > qvar :: { QName L } > : qvarid { $1 } > | '(' qvarsym ')' { updateQNameLoc ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3]) $2 } Implicit parameter > ivar :: { IPName L } > : ivarid { $1 } > con :: { Name L } > : conid { $1 } > | '(' consym ')' { fmap (const ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3])) $2 } > qcon :: { QName L } > : qconid { $1 } > | '(' gconsym ')' { updateQNameLoc ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3]) $2 } > varop :: { Name L } > : varsym { $1 } > | '`' varid '`' { fmap (const ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3])) $2 } > qvarop :: { QName L } > : qvarsym { $1 } > | '`' qvarid '`' { updateQNameLoc ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3]) $2 } > qvaropm :: { QName L } > : qvarsymm { $1 } > | '`' qvarid '`' { updateQNameLoc ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3]) $2 } > conop :: { Name L } > : consym { $1 } > | '`' conid '`' { fmap (const ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3])) $2 } > qconop :: { QName L } > : gconsym { $1 } > | '`' qconid '`' { updateQNameLoc ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3]) $2 } > op :: { Op L } > : varop { VarOp (ann $1) $1 } > | conop { ConOp (ann $1) $1 } > qop :: { QOp L } > : qvarop { QVarOp (ann $1) $1 } > | qconop { QConOp (ann $1) $1 } > qopm :: { QOp L } > : qvaropm { QVarOp (ann $1) $1 } > | qconop { QConOp (ann $1) $1 } > gconsym :: { QName L } > : ':' { list_cons_name (nIS $1) } > | qconsym { $1 } > overloaded_label :: { PExp L } > : LABELVARID { let Loc l (LabelVarId v) = $1 in OverloadedLabel > (nIS l) v } ----------------------------------------------------------------------------- Identifiers and Symbols > qvarid :: { QName L } > : varid { UnQual (ann $1) $1 } > | QVARID { let {Loc l (QVarId q) = $1; nis = nIS l} > in Qual nis (ModuleName nis (fst q)) (Ident nis (snd q)) } > varid_no_safety :: { Name L } > : VARID { let Loc l (VarId v) = $1 in Ident (nIS l) v } > | 'as' { as_name (nIS $1) } > | 'qualified' { qualified_name (nIS $1) } > | 'hiding' { hiding_name (nIS $1) } > | 'export' { export_name (nIS $1) } > | 'stdcall' { stdcall_name (nIS $1) } > | 'ccall' { ccall_name (nIS $1) } > | 'cplusplus' { cplusplus_name (nIS $1) } > | 'dotnet' { dotnet_name (nIS $1) } > | 'jvm' { jvm_name (nIS $1) } > | 'js' { js_name (nIS $1) } > | 'javascript' { javascript_name (nIS $1) } > | 'capi' { capi_name (nIS $1) } > varid :: { Name L } > : varid_no_safety { $1 } > | 'safe' { safe_name (nIS $1) } > | 'unsafe' { unsafe_name (nIS $1) } > | 'interruptible' { interruptible_name (nIS $1) } > | 'threadsafe' { threadsafe_name (nIS $1) } > | 'forall' { forall_name (nIS $1) } > | 'family' { family_name (nIS $1) } > | 'role' { role_name (nIS $1) } Implicit parameter > ivarid :: { IPName L } > : IDUPID { let Loc l (IDupVarId i) = $1 in IPDup (nIS l) i } > | ILINID { let Loc l (ILinVarId i) = $1 in IPLin (nIS l) i } > qconid :: { QName L } > : conid { UnQual (ann $1) $1 } > | QCONID { let {Loc l (QConId q) = $1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Ident nis (snd q)) } > conid :: { Name L } > : CONID { let Loc l (ConId c) = $1 in Ident (nIS l) c } > qconsym :: { QName L } > : consym { UnQual (ann $1) $1 } > | QCONSYM { let {Loc l (QConSym q) = $1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Symbol nis (snd q)) } > consym :: { Name L } > : CONSYM { let Loc l (ConSym c) = $1 in Symbol (nIS l) c } > qvarsym :: { QName L } > : varsym { UnQual (ann $1) $1 } > | qvarsym1 { $1 } > qvarsymm :: { QName L } > : varsymm { UnQual (ann $1) $1 } > | qvarsym1 { $1 } > varsym :: { Name L } > : varsymm { $1 } > | '-' { minus_name (nIS $1) } > varsymm :: { Name L } -- varsym not including '-' > : VARSYM { let Loc l (VarSym v) = $1 in Symbol (nIS l) v } > | '!' { bang_name (nIS $1) } > | '.' { dot_name (nIS $1) } > | '*' { star_name (nIS $1) } > qvarsym1 :: { QName L } > : QVARSYM { let {Loc l (QVarSym q) = $1; nis = nIS l} in Qual nis (ModuleName nis (fst q)) (Symbol nis (snd q)) } > literal :: { Literal L } > : INT { let Loc l (IntTok (i,raw)) = $1 in Int (nIS l) i raw } > | CHAR { let Loc l (Character (c,raw)) = $1 in Char (nIS l) c raw } > | RATIONAL { let Loc l (FloatTok (r,raw)) = $1 in Frac (nIS l) r raw } > | STRING { let Loc l (StringTok (s,raw)) = $1 in String (nIS l) s raw } > | PRIMINT { let Loc l (IntTokHash (i,raw)) = $1 in PrimInt (nIS l) i raw } > | PRIMWORD { let Loc l (WordTokHash (w,raw)) = $1 in PrimWord (nIS l) w raw } > | PRIMFLOAT { let Loc l (FloatTokHash (f,raw)) = $1 in PrimFloat (nIS l) f raw } > | PRIMDOUBLE { let Loc l (DoubleTokHash (d,raw)) = $1 in PrimDouble (nIS l) d raw } > | PRIMCHAR { let Loc l (CharacterHash (c,raw)) = $1 in PrimChar (nIS l) c raw } > | PRIMSTRING { let Loc l (StringHash (s,raw)) = $1 in PrimString (nIS l) s raw } ----------------------------------------------------------------------------- Layout > open :: { S } : {% pushCurrentContext >> getSrcLoc >>= \s -> return $ mkSrcSpan s s {- >>= \x -> trace (show x) (return x) -} } > close :: { S } > : vccurly { $1 {- >>= \x -> trace (show x ++ show x ++ show x) (return x) -} } -- context popped in lexer. > | error {% popContext >> getSrcLoc >>= \s -> return $ mkSrcSpan s s {- >>= \x -> trace (show x ++ show x) (return x) -} } ----------------------------------------------------------------------------- Pattern Synonyms -- Pattern synonyms > pat_syn :: { Decl L } > : pattern_synonym_decl {% checkEnabled PatternSynonyms >> return $1 } -- Glasgow extension: pattern synonyms > pattern_synonym_decl :: { Decl L } > : 'pattern' pattern_synonym_lhs '=' pat > { let l = nIS $1 <++> ann $4 <** [$1,$3] > in PatSyn l $2 $4 ImplicitBidirectional > } > | 'pattern' pattern_synonym_lhs '<-' pat > { let l = nIS $1 <++> ann $4 <** [$1,$3] > in PatSyn l $2 $4 Unidirectional > } > | 'pattern' pattern_synonym_lhs '<-' pat where_decls > { let l = nIS $1 <++> ann $4 <** [$1, $3] > in PatSyn l $2 $4 $5} > > pattern_synonym_lhs :: { Pat L } > : con vars0 { let l = case $2 of > [] -> ann $1 > (_:_) -> ann $1 <++> (ann $ last $2) > in PApp l (UnQual (ann $1) $1) $2 } > | varid qconsym varid { PInfixApp (ann $1 <++> ann $3) (PVar (ann $1) $1) $2 (PVar (ann $3) $3) } > | con '{' commavars '}' { let { (ss, ns) = $3 ; > qnames = (map (\n -> UnQual (ann n) n) ns) } > in PRec (ann $1 <++> nIS $4 <** ($2 : ss ++ [$4])) > (UnQual (ann $1) $1) (map (\q -> PFieldPun (ann q) q) qnames) } > > vars0 :: { [Pat L] } > : {- empty -} { [] } > | varid vars0 { PVar (ann $1) $1 : $2 } > commavars :: { ([S], [Name L]) } > : varid { ([], [$1] ) } > | varid ',' commavars { let (ss, ns) = $3 in ($2 : ss, $1 : ns) } > where_decls :: { PatternSynDirection L } > : 'where' '{' decls '}' {% checkExplicitPatSyn $1 $2 $3 $4 } > | 'where' open decls close {% checkExplicitPatSyn $1 $2 $3 $4 } > pattern_synonym_sig :: { Decl L } > : 'pattern' con '::' pstype > {% do { checkEnabled PatternSynonyms ; > let {(qtvs, ps, prov, req, ty) = $4} ; > let {sig = PatSynSig (nIS $1 <++> ann ty <** [$1, $3] ++ ps) $2 qtvs prov req ty} ; > return sig } } > pstype :: { (Maybe [TyVarBind L], [S], Maybe (Context L), Maybe (Context L), Type L )} > : 'forall' ktyvars '.' pstype > { let (qtvs, ps, prov, req, ty) = $4 > in (Just (reverse (fst $2) ++ fromMaybe [] qtvs), ($1 : $3 : ps), prov, req, ty) } > | context context type > {% do { c1 <- checkContext (Just $1) ; > c2 <- checkContext (Just $2) ; > t <- checkType $3 ; > return $ (Nothing, [], c1, c2, t) }} > | context type > {% do { c1 <- checkContext (Just $1); > t <- checkType $2; > return (Nothing, [], c1, Nothing, t) } } > | type > {% checkType $1 >>= \t -> return (Nothing, [], Nothing, Nothing, t) } ----------------------------------------------------------------------------- Miscellaneous (mostly renamings) > modid :: { ModuleName L } > : CONID { let Loc l (ConId n) = $1 in ModuleName (nIS l) n } > | QCONID { let Loc l (QConId n) = $1 in ModuleName (nIS l) (fst n ++ '.':snd n) } > tyconorcls :: { Name L } > : con { $1 } > qtyconorcls :: { QName L } > : qcon { $1 } > tyvar :: { Name L } > : tyvarid { $1 } > tyvarid :: { Name L } > : varid_no_safety { $1 } > | 'safe' { safe_name (nIS $1) } > | 'unsafe' { unsafe_name (nIS $1) } > | 'threadsafe' { threadsafe_name (nIS $1) } | 'forall' { forall_name (nIS $1) } | 'family' { family_name (nIS $1) } > qtyvarop :: { QName L } > qtyvarop : '`' tyvar '`' { UnQual ($1 <^^> $3 <** [$1, srcInfoSpan (ann $2), $3]) $2 } > | tyvarsym { UnQual (ann $1) $1 } > tyvarsym :: { Name L } > tyvarsym : VARSYM { let Loc l (VarSym x) = $1 in Symbol (nIS l) x } > | '-' { Symbol (nIS $1) "-" } > impdeclsblock :: { ([ImportDecl L],[S],L) } > : '{' optsemis impdecls optsemis '}' { let (ids, ss) = $3 in (ids, $1 : reverse $2 ++ ss ++ reverse $4 ++ [$5], $1 <^^> $5) } > | open optsemis impdecls optsemis close { let (ids, ss) = $3 in (ids, $1 : reverse $2 ++ ss ++ reverse $4 ++ [$5], $1 <^^> $5) } Exported as partial parsers: > moduletopname :: { (([ModulePragma L], [S], L), Maybe (ModuleName L)) } > : toppragmas 'module' modid { ($1, Just $3) } > | toppragmas {- empty -} { ($1, Nothing) } > moduletophead :: { (([ModulePragma L], [S], L), Maybe (ModuleHead L)) } > : toppragmas optmodulehead { ($1, $2) } > moduletopimps :: { (([ModulePragma L], [S], L), Maybe (ModuleHead L), Maybe ([ImportDecl L],[S],L)) } > : toppragmas optmodulehead impdeclsblock { ($1, $2, Just $3) } > | toppragmas optmodulehead {- empty -} { ($1, $2, Nothing) } ----------------------------------------------------------------------------- > { > type L = SrcSpanInfo -- just for convenience > type S = SrcSpan > parseError :: Loc Token -> P a > parseError t = fail $ "Parse error: " ++ showToken (unLoc t) > (<>) :: (Annotated a, Annotated b) => a SrcSpanInfo -> b SrcSpanInfo -> SrcSpanInfo > a <> b = ann a <++> ann b > > infixl 6 <> > nIS = noInfoSpan > iS = infoSpan > mparseDecl :: P (Decl SrcSpanInfo) > mparseDecl = do > (is, ds, _, _) <- mparseDeclAux > when (not $ null is) $ > fail $ "Expected single declaration, found import declaration" > checkSingleDecl ds > } haskell-src-exts-1.18.2/src/Language/Haskell/Exts/Lexer.hs0000644000000000000000000000263412746233113021424 0ustar0000000000000000----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Lexer -- Copyright : (c) The GHC Team, 1997-2000 -- (c) Niklas Broberg, 2004-2012 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, niklas.broberg@chalmers.se -- Stability : stable -- Portability : portable -- -- Lexer for Haskell with extensions. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.Lexer ( lexTokenStream, lexTokenStreamWithMode, Token(..), Loc(..), showToken ) where import Language.Haskell.Exts.InternalLexer import Language.Haskell.Exts.ParseMonad import Language.Haskell.Exts.SrcLoc -- | Lex a string into a list of Haskell 2010 source tokens. lexTokenStream :: String -> ParseResult [Loc Token] lexTokenStream = lexTokenStreamWithMode defaultParseMode -- | Lex a string into a list of Haskell source tokens, using an explicit mode. lexTokenStreamWithMode :: ParseMode -> String -> ParseResult [Loc Token] lexTokenStreamWithMode mode = runParserWithMode mode lexIt where lexIt :: P [Loc Token] lexIt = runL go return go :: Lex [Loc Token] [Loc Token] go = do ltok <- topLexer case ltok of Loc _ EOF -> return [] _ -> do ts <- go return (ltok:ts) haskell-src-exts-1.18.2/src/Language/Haskell/Exts/ParseMonad.hs0000644000000000000000000004612712746233113022403 0ustar0000000000000000{-# OPTIONS_HADDOCK hide #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.ParseMonad -- Copyright : Niklas Broberg (c) 2004-2009, -- Original (c) The GHC Team, 1997-2000 -- License : BSD-style (see the file libraries/base/LICENSE) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- Monads for the Haskell parser and lexer. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.ParseMonad( -- * Generic Parsing Parseable(..), -- * Parsing P, ParseResult(..), atSrcLoc, LexContext(..), ParseMode(..), defaultParseMode, fromParseResult, runParserWithMode, runParserWithModeComments, runParser, getSrcLoc, pushCurrentContext, popContext, getExtensions, getIgnoreFunctionArity, -- * Lexing Lex(runL), getInput, discard, getLastChar, lexNewline, lexTab, lexWhile, lexWhile_, alternative, checkBOL, setBOL, startToken, getOffside, pushContextL, popContextL, getExtensionsL, addExtensionL, saveExtensionsL, restoreExtensionsL, pushComment, getSrcLocL, setSrcLineL, ignoreLinePragmasL, setLineFilenameL, -- * Harp/Hsx ExtContext(..), pushExtContextL, popExtContextL, getExtContext, pullCtxtFlag, flagDo, getModuleName ) where import Language.Haskell.Exts.SrcLoc (SrcLoc(..), noLoc) import Language.Haskell.Exts.Fixity (Fixity, preludeFixities) import Language.Haskell.Exts.Comments import Language.Haskell.Exts.Extension -- (Extension, impliesExts, haskell2010) import Data.List (intercalate) import Control.Applicative import Control.Monad (when, liftM, ap) import Data.Monoid -- To avoid import warnings for Control.Applicative and Data.Monoid import Prelude -- | Class providing function for parsing at many different types. -- -- Note that for convenience of implementation, the default methods have -- definitions equivalent to 'undefined'. The minimal definition is all of -- the visible methods. class Parseable ast where -- | Parse a string with default mode. parse :: String -> ParseResult ast parse = parseWithMode defaultParseMode -- | Parse a string with an explicit 'ParseMode'. parseWithMode :: ParseMode -> String -> ParseResult ast parseWithMode mode = runParserWithMode mode . parser $ fixities mode -- | Parse a string with an explicit 'ParseMode', returning all comments along -- with the AST. parseWithComments :: ParseMode -> String -> ParseResult (ast, [Comment]) parseWithComments mode = runParserWithModeComments mode . parser $ fixities mode -- | Internal parser, used to provide default definitions for the others. parser :: Maybe [Fixity] -> P ast -- | The result of a parse. data ParseResult a = ParseOk a -- ^ The parse succeeded, yielding a value. | ParseFailed SrcLoc String -- ^ The parse failed at the specified -- source location, with an error message. deriving Show -- | Retrieve the result of a successful parse, throwing an -- error if the parse is actually not successful. fromParseResult :: ParseResult a -> a fromParseResult (ParseOk a) = a fromParseResult (ParseFailed loc str) = error $ "fromParseResult: Parse failed at [" ++ srcFilename loc ++ "] (" ++ show (srcLine loc) ++ ":" ++ show (srcColumn loc) ++ "): " ++ str instance Functor ParseResult where fmap f (ParseOk x) = ParseOk $ f x fmap _ (ParseFailed loc msg) = ParseFailed loc msg instance Applicative ParseResult where pure = ParseOk ParseOk f <*> x = f <$> x ParseFailed loc msg <*> _ = ParseFailed loc msg instance Monad ParseResult where return = ParseOk fail = ParseFailed noLoc ParseOk x >>= f = f x ParseFailed loc msg >>= _ = ParseFailed loc msg instance Monoid m => Monoid (ParseResult m) where mempty = ParseOk mempty ParseOk x `mappend` ParseOk y = ParseOk $ x `mappend` y ParseOk _ `mappend` err = err err `mappend` _ = err -- left-biased -- internal version data ParseStatus a = Ok ParseState a | Failed SrcLoc String deriving Show data LexContext = NoLayout | Layout Int deriving (Eq,Ord,Show) data ExtContext = CodeCtxt | HarpCtxt | TagCtxt | ChildCtxt | CloseTagCtxt | CodeTagCtxt deriving (Eq,Ord,Show) type CtxtFlag = (Bool,Bool) -- (True,_) = We're in a do context. -- (_, True)= Next token must be a virtual closing brace. type ParseState = ([LexContext],[[KnownExtension]],[ExtContext],CtxtFlag,[Comment]) indentOfParseState :: ParseState -> Int indentOfParseState (Layout n:_,_,_,_,_) = n indentOfParseState _ = 0 -- | Static parameters governing a parse. -- Note that the various parse functions in "Language.Haskell.Exts.Parser" -- never look at LANGUAGE pragmas, regardless of -- what the @ignoreLanguagePragmas@ flag is set to. -- Only the various @parseFile@ functions in "Language.Haskell.Exts" will -- act on it, when set to 'False'. data ParseMode = ParseMode { -- | original name of the file being parsed parseFilename :: String, -- | base language (e.g. Haskell98, Haskell2010) baseLanguage :: Language, -- | list of extensions enabled for parsing extensions :: [Extension], -- | if 'True', the parser won't care about further extensions -- in LANGUAGE pragmas in source files ignoreLanguagePragmas :: Bool, -- | if 'True', the parser won't read line position information -- from LINE pragmas in source files ignoreLinePragmas :: Bool, -- | list of fixities to be aware of fixities :: Maybe [Fixity], -- | Checks whether functions have a consistent arity ignoreFunctionArity :: Bool } -- | Default parameters for a parse. -- The default is an unknown filename, -- no extensions (i.e. Haskell 98), -- don't ignore LANGUAGE pragmas, do ignore LINE pragmas, -- and be aware of fixities from the 'Prelude'. defaultParseMode :: ParseMode defaultParseMode = ParseMode { parseFilename = ".hs", baseLanguage = Haskell2010, extensions = [], ignoreLanguagePragmas = False, ignoreLinePragmas = True, fixities = Just preludeFixities, ignoreFunctionArity = False } -- Version of ParseMode used internally, -- where the language and extensions have -- been expanded data InternalParseMode = IParseMode { iParseFilename :: String, iExtensions :: [KnownExtension], -- iIgnoreLanguagePragmas :: Bool, iIgnoreLinePragmas :: Bool, iIgnoreFunctionArity :: Bool -- iFixities :: Maybe [Fixity] } toInternalParseMode :: ParseMode -> InternalParseMode toInternalParseMode (ParseMode pf bLang exts _ilang iline _fx farity) = IParseMode pf (toExtensionList bLang exts) {-_ilang -} iline {- _fx -} farity -- | Monad for parsing newtype P a = P { runP :: String -- input string -> Int -- current column -> Int -- current line -> SrcLoc -- location of last token read -> Char -- Last token read used for lexing TypeApplication UGH -> ParseState -- layout info. -> InternalParseMode -- parse parameters -> ParseStatus a } runParserWithMode :: ParseMode -> P a -> String -> ParseResult a {-runParserWithMode mode (P m) s = case m s 0 1 start ([],[],(False,False),[]) mode of Ok _ a -> ParseOk a Failed loc msg -> ParseFailed loc msg where start = SrcLoc { srcFilename = parseFilename mode, srcLine = 1, srcColumn = 1 } -} runParserWithMode mode pm = fmap fst . runParserWithModeComments mode pm runParser :: P a -> String -> ParseResult a runParser = runParserWithMode defaultParseMode runParserWithModeComments :: ParseMode -> P a -> String -> ParseResult (a, [Comment]) runParserWithModeComments mode = let mode2 = toInternalParseMode mode in \(P m) s -> case m s 0 1 start '\n' ([],[],[],(False,False),[]) mode2 of Ok (_,_,_,_,cs) a -> ParseOk (a, reverse cs) Failed loc msg -> ParseFailed loc msg where start = SrcLoc { srcFilename = parseFilename mode, srcLine = 1, srcColumn = 1 } -- allExts mode@(ParseMode {extensions = es}) = mode { extensions = impliesExts es } -- allExts mode = let imode = to instance Functor P where fmap = liftM instance Applicative P where pure = return (<*>) = ap instance Monad P where return a = P $ \_i _x _y _l _ch s _m -> Ok s a P m >>= k = P $ \i x y l ch s mode -> case m i x y l ch s mode of Failed loc msg -> Failed loc msg Ok s' a -> runP (k a) i x y l ch s' mode fail s = P $ \_r _col _line loc _ _stk _m -> Failed loc s atSrcLoc :: P a -> SrcLoc -> P a P m `atSrcLoc` loc = P $ \i x y _l ch -> m i x y loc ch getSrcLoc :: P SrcLoc getSrcLoc = P $ \_i _x _y l _ s _m -> Ok s l getModuleName :: P String getModuleName = P $ \_i _x _y _l _ch s m -> let fn = iParseFilename m mn = intercalate "." $ splitPath fn splitPath :: String -> [String] splitPath "" = [] splitPath str = let (l,str') = break ('\\'==) str in case str' of [] -> [removeSuffix l] (_:str'') -> l : splitPath str'' removeSuffix l = reverse $ tail $ dropWhile ('.'/=) $ reverse l in Ok s mn -- Enter a new layout context. If we are already in a layout context, -- ensure that the new indent is greater than the indent of that context. -- (So if the source loc is not to the right of the current indent, an -- empty list {} will be inserted.) pushCurrentContext :: P () pushCurrentContext = do lc <- getSrcLoc indent <- currentIndent dob <- pullDoStatus let loc = srcColumn lc when (dob && loc < indent || not dob && loc <= indent) pushCtxtFlag pushContext (Layout loc) currentIndent :: P Int currentIndent = P $ \_r _x _y _ _ stk _mode -> Ok stk (indentOfParseState stk) pushContext :: LexContext -> P () pushContext ctxt = --trace ("pushing lexical scope: " ++ show ctxt ++"\n") $ P $ \_i _x _y _l _ (s, exts, e, p, c) _m -> Ok (ctxt:s, exts, e, p, c) () popContext :: P () popContext = P $ \_i _x _y loc _ stk _m -> case stk of (_:s, exts, e, p, c) -> --trace ("popping lexical scope, context now "++show s ++ "\n") $ Ok (s, exts, e, p, c) () ([],_,_,_,_) -> Failed loc "Unexpected }" -- error "Internal error: empty context in popContext" {- -- HaRP/Hsx pushExtContext :: ExtContext -> P () pushExtContext ctxt = P $ \_i _x _y _l (s, e, p, c) _m -> Ok (s, ctxt:e, p, c) () popExtContext :: P () popExtContext = P $ \_i _x _y _l (s, e, p, c) _m -> case e of (_:e') -> Ok (s, e', p, c) () [] -> error "Internal error: empty context in popExtContext" -} -- Extension-aware lexing/parsing getExtensions :: P [KnownExtension] getExtensions = P $ \_i _x _y _l _ s m -> Ok s $ iExtensions m pushCtxtFlag :: P () pushCtxtFlag = P $ \_i _x _y _l _ (s, exts, e, (d,c), cs) _m -> case c of False -> Ok (s, exts, e, (d,True), cs) () _ -> error "Internal error: context flag already pushed" pullDoStatus :: P Bool pullDoStatus = P $ \_i _x _y _l _ (s, exts, e, (d,c), cs) _m -> Ok (s,exts,e,(False,c),cs) d getIgnoreFunctionArity :: P Bool getIgnoreFunctionArity = P $ \_i _x _y _l _ s m -> Ok s $ iIgnoreFunctionArity m ---------------------------------------------------------------------------- -- Monad for lexical analysis: -- a continuation-passing version of the parsing monad newtype Lex r a = Lex { runL :: (a -> P r) -> P r } instance Functor (Lex r) where fmap = liftM instance Applicative (Lex r) where pure = return (<*>) = ap instance Monad (Lex r) where return a = Lex $ \k -> k a Lex v >>= f = Lex $ \k -> v (\a -> runL (f a) k) Lex v >> Lex w = Lex $ \k -> v (\_ -> w k) fail s = Lex $ \_ -> fail s -- Operations on this monad getInput :: Lex r String getInput = Lex $ \cont -> P $ \r -> runP (cont r) r -- | Discard some input characters (these must not include tabs or newlines). discard :: Int -> Lex r () discard n = Lex $ \cont -> P $ \r x y loc ch -> let (newCh:rest)= if n > 0 then drop (n-1) r else (ch:r) in runP (cont ()) rest (x+n) y loc newCh -- | Get the last discarded character. -- This is only used for type application. getLastChar :: Lex r Char getLastChar = Lex $ \cont -> P $ \r x y loc ch -> runP (cont ch) r x y loc ch -- | Discard the next character, which must be a newline. lexNewline :: Lex a () lexNewline = Lex $ \cont -> P $ \rs _x y loc -> case rs of (_:r) -> runP (cont ()) r 1 (y+1) loc [] -> \_ _ _ -> Failed loc "Lexer: expected newline." -- | Discard the next character, which must be a tab. lexTab :: Lex a () lexTab = Lex $ \cont -> P $ \(_:r) x -> runP (cont ()) r (nextTab x) nextTab :: Int -> Int nextTab x = x + (tAB_LENGTH - (x-1) `mod` tAB_LENGTH) tAB_LENGTH :: Int tAB_LENGTH = 8 -- Consume and return the largest string of characters satisfying p lexWhile :: (Char -> Bool) -> Lex a String lexWhile p = Lex $ \cont -> P $ \rss c l loc char -> case rss of [] -> runP (cont []) [] c l loc char (r:rs) -> let l' = case r of '\n' -> l + 1 _ -> l c' = case r of '\n' -> 1 _ -> c + 1 in if p r then runP (runL ((r:) <$> lexWhile p) cont) rs c' l' loc r else runP (cont []) (r:rs) c l loc char -- | lexWhile without the return value. lexWhile_ :: (Char -> Bool) -> Lex a () lexWhile_ p = do _ <- lexWhile p return () -- An alternative scan, to which we can return if subsequent scanning -- is unsuccessful. alternative :: Lex a v -> Lex a (Lex a v) alternative (Lex v) = Lex $ \cont -> P $ \r x y -> runP (cont (Lex $ \cont' -> P $ \_r _x _y -> runP (v cont') r x y)) r x y -- The source location is the coordinates of the previous token, -- or, while scanning a token, the start of the current token. -- col is the current column in the source file. -- We also need to remember between scanning tokens whether we are -- somewhere at the beginning of the line before the first token. -- This could be done with an extra Bool argument to the P monad, -- but as a hack we use a col value of 0 to indicate this situation. -- Setting col to 0 is used in two places: just after emitting a virtual -- close brace due to layout, so that next time through we check whether -- we also need to emit a semi-colon, and at the beginning of the file, -- by runParser, to kick off the lexer. -- Thus when col is zero, the true column can be taken from the loc. checkBOL :: Lex a Bool checkBOL = Lex $ \cont -> P $ \r x y loc -> if x == 0 then runP (cont True) r (srcColumn loc) y loc else runP (cont False) r x y loc setBOL :: Lex a () setBOL = Lex $ \cont -> P $ \r _ -> runP (cont ()) r 0 -- Set the loc to the current position startToken :: Lex a () startToken = Lex $ \cont -> P $ \s x y _ c stk mode -> let loc = SrcLoc { srcFilename = iParseFilename mode, srcLine = y, srcColumn = x } in runP (cont ()) s x y loc c stk mode -- Current status with respect to the offside (layout) rule: -- LT: we are to the left of the current indent (if any) -- EQ: we are at the current indent (if any) -- GT: we are to the right of the current indent, or not subject to layout getOffside :: Lex a Ordering getOffside = Lex $ \cont -> P $ \r x y loc ch stk -> runP (cont (compare x (indentOfParseState stk))) r x y loc ch stk getSrcLocL :: Lex a SrcLoc getSrcLocL = Lex $ \cont -> P $ \i x y l -> runP (cont (l { srcLine = y, srcColumn = x })) i x y l setSrcLineL :: Int -> Lex a () setSrcLineL y = Lex $ \cont -> P $ \i x _ -> runP (cont ()) i x y pushContextL :: LexContext -> Lex a () pushContextL ctxt = Lex $ \cont -> P $ \r x y loc ch (stk, exts, e, pst, cs) -> runP (cont ()) r x y loc ch (ctxt:stk, exts, e, pst, cs) popContextL :: String -> Lex a () popContextL _ = Lex $ \cont -> P $ \r x y loc ch stk m -> case stk of (_:ctxt, exts, e, pst, cs) -> runP (cont ()) r x y loc ch (ctxt, exts, e, pst, cs) m ([], _, _, _, _) -> Failed loc "Unexpected }" pullCtxtFlag :: Lex a Bool pullCtxtFlag = Lex $ \cont -> P $ \r x y loc ch (ct, exts, e, (d,c), cs) -> runP (cont c) r x y loc ch (ct, exts, e, (d,False), cs) flagDo :: Lex a () flagDo = Lex $ \cont -> P $ \r x y loc ch (ct, exts, e, (_,c), cs) -> runP (cont ()) r x y loc ch (ct, exts, e, (True,c), cs) -- Harp/Hsx getExtContext :: Lex a (Maybe ExtContext) getExtContext = Lex $ \cont -> P $ \r x y loc ch stk@(_, _, e, _, _) -> let me = case e of [] -> Nothing (c:_) -> Just c in runP (cont me) r x y loc ch stk pushExtContextL :: ExtContext -> Lex a () pushExtContextL ec = Lex $ \cont -> P $ \r x y loc ch (s, exts, e, p, c) -> runP (cont ()) r x y loc ch (s, exts, ec:e, p, c) popExtContextL :: String -> Lex a () popExtContextL fn = Lex $ \cont -> P $ \r x y loc ch (s,exts,e,p,c) m -> case e of (_:ec) -> runP (cont ()) r x y loc ch (s,exts,ec,p,c) m [] -> Failed loc ("Internal error: empty tag context in " ++ fn) -- Extension-aware lexing getExtensionsL :: Lex a [KnownExtension] getExtensionsL = Lex $ \cont -> P $ \r x y loc ch s m -> runP (cont $ iExtensions m) r x y loc ch s m -- | Add an extension to the current configuration. addExtensionL :: KnownExtension -> Lex a () addExtensionL ext = Lex $ \cont -> P $ \r x y loc ch (s, oldExts, e, p, c) m -> let newExts = impliesExts [ext] ++ iExtensions m in runP (cont ()) r x y loc ch (s, oldExts, e, p, c) (m {iExtensions = newExts}) -- | Save the current configuration of extensions. saveExtensionsL :: Lex a () saveExtensionsL = Lex $ \cont -> P $ \r x y loc ch (s, oldExts, e, p, c) m -> runP (cont ()) r x y loc ch (s, iExtensions m:oldExts, e, p, c) m -- | Return to the previous saved extensions configuration. restoreExtensionsL :: Lex a () restoreExtensionsL = Lex $ \cont -> P $ \r x y loc ch (s,exts,e,p,c) m -> case exts of (_:prev) -> runP (cont ()) r x y loc ch (s,prev,e,p,c) m _ -> Failed loc "Internal error: empty extension stack" -- LINE-aware lexing ignoreLinePragmasL :: Lex a Bool ignoreLinePragmasL = Lex $ \cont -> P $ \r x y loc c s m -> runP (cont $ iIgnoreLinePragmas m) r x y loc c s m -- If we read a file name in a LINE pragma, we should update the state. setLineFilenameL :: String -> Lex a () setLineFilenameL name = Lex $ \cont -> P $ \r x y loc ch s m -> runP (cont ()) r x y loc ch s (m {iParseFilename = name}) -- Comments pushComment :: Comment -> Lex a () pushComment c = Lex $ \cont -> P $ \r x y loc ch (s, exts, e, p, cs) -> runP (cont ()) r x y loc ch (s, exts, e, p, c:cs) haskell-src-exts-1.18.2/src/Language/Haskell/Exts/Parser.hs0000644000000000000000000002734312746233113021605 0ustar0000000000000000{-# LANGUAGE CPP, DeriveDataTypeable, FlexibleInstances, DeriveFunctor #-} {-# OPTIONS_GHC -fno-warn-orphans #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Annotated.Parser -- Copyright : (c) Niklas Broberg 2004-2009 -- (c) Michael Sloan 2013 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- Annotated parser for Haskell with extensions. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.Parser ( -- * General parsing Parseable(parse, parseWithMode, parseWithComments) , ParseMode(..), defaultParseMode, ParseResult(..), fromParseResult -- * Parsing of specific AST elements -- ** Modules , parseModule, parseModuleWithMode, parseModuleWithComments -- ** Expressions , parseExp, parseExpWithMode, parseExpWithComments -- ** Statements , parseStmt, parseStmtWithMode, parseStmtWithComments -- ** Patterns , parsePat, parsePatWithMode, parsePatWithComments -- ** Declarations , parseDecl, parseDeclWithMode, parseDeclWithComments -- ** Types , parseType, parseTypeWithMode, parseTypeWithComments -- ** Imports , parseImportDecl, parseImportDeclWithMode, parseImportDeclWithComments -- * Non-greedy parsers , NonGreedy(..) , ListOf(..), unListOf -- ** Module head parsers , getTopPragmas , PragmasAndModuleName(..) , PragmasAndModuleHead(..) , ModuleHeadAndImports(..) ) where import Data.Data hiding (Fixity) import Language.Haskell.Exts.Fixity import Language.Haskell.Exts.Syntax import Language.Haskell.Exts.Comments import Language.Haskell.Exts.InternalParser import Language.Haskell.Exts.ParseMonad import Language.Haskell.Exts.SrcLoc instance Parseable (Decl SrcSpanInfo) where parser = normalParser mparseDecl instance Parseable (Exp SrcSpanInfo) where parser = normalParser mparseExp instance Parseable (Module SrcSpanInfo) where parser = normalParser mparseModule instance Parseable (Pat SrcSpanInfo) where parser = normalParser mparsePat instance Parseable (Stmt SrcSpanInfo) where parser = normalParser mparseStmt instance Parseable (Type SrcSpanInfo) where parser = normalParserNoFixity mparseType instance Parseable (ImportDecl SrcSpanInfo) where parser = normalParserNoFixity mparseImportDecl normalParser :: AppFixity a => P (a SrcSpanInfo) -> Maybe [Fixity] -> P (a SrcSpanInfo) normalParser p Nothing = p normalParser p (Just fixs) = p >>= \ast -> applyFixities fixs ast `atSrcLoc` noLoc normalParserNoFixity :: P (a SrcSpanInfo) -> Maybe [Fixity] -> P (a SrcSpanInfo) normalParserNoFixity p _ = p -- Type-specific functions -- | Parse of a string, which should contain a complete Haskell module, using 'defaultParseMode'. parseModule :: String -> ParseResult (Module SrcSpanInfo) parseModule = parse -- | Parse of a string containing a complete Haskell module, using an explicit 'ParseMode'. parseModuleWithMode :: ParseMode -> String -> ParseResult (Module SrcSpanInfo) parseModuleWithMode = parseWithMode -- | Parse of a string containing a complete Haskell module, using an explicit 'ParseMode', retaining comments. parseModuleWithComments :: ParseMode -> String -> ParseResult (Module SrcSpanInfo, [Comment]) parseModuleWithComments = parseWithComments -- | Parse of a string containing a Haskell expression, using 'defaultParseMode'. parseExp :: String -> ParseResult (Exp SrcSpanInfo) parseExp = parse -- | Parse of a string containing a Haskell expression, using an explicit 'ParseMode'. parseExpWithMode :: ParseMode -> String -> ParseResult (Exp SrcSpanInfo) parseExpWithMode = parseWithMode -- | Parse of a string containing a complete Haskell module, using an explicit 'ParseMode', retaining comments. parseExpWithComments :: ParseMode -> String -> ParseResult (Exp SrcSpanInfo, [Comment]) parseExpWithComments = parseWithComments -- | Parse of a string containing a Haskell pattern, using 'defaultParseMode'. parsePat :: String -> ParseResult (Pat SrcSpanInfo) parsePat = parse -- | Parse of a string containing a Haskell pattern, using an explicit 'ParseMode'. parsePatWithMode :: ParseMode -> String -> ParseResult (Pat SrcSpanInfo) parsePatWithMode = parseWithMode -- | Parse of a string containing a complete Haskell module, using an explicit 'ParseMode', retaining comments. parsePatWithComments :: ParseMode -> String -> ParseResult (Pat SrcSpanInfo, [Comment]) parsePatWithComments = parseWithComments -- | Parse of a string containing a Haskell top-level declaration, using 'defaultParseMode'. parseDecl :: String -> ParseResult (Decl SrcSpanInfo) parseDecl = parse -- | Parse of a string containing a Haskell top-level declaration, using an explicit 'ParseMode'. parseDeclWithMode :: ParseMode -> String -> ParseResult (Decl SrcSpanInfo) parseDeclWithMode = parseWithMode -- | Parse of a string containing a complete Haskell module, using an explicit 'ParseMode', retaining comments. parseDeclWithComments :: ParseMode -> String -> ParseResult (Decl SrcSpanInfo, [Comment]) parseDeclWithComments = parseWithComments -- | Parse of a string containing a Haskell type, using 'defaultParseMode'. parseType :: String -> ParseResult (Type SrcSpanInfo) parseType = parse -- | Parse of a string containing a Haskell type, using an explicit 'ParseMode'. parseTypeWithMode :: ParseMode -> String -> ParseResult (Type SrcSpanInfo) parseTypeWithMode = parseWithMode -- | Parse of a string containing a complete Haskell module, using an explicit 'ParseMode', retaining comments. parseTypeWithComments :: ParseMode -> String -> ParseResult (Type SrcSpanInfo, [Comment]) parseTypeWithComments = parseWithComments -- | Parse of a string containing a Haskell statement, using 'defaultParseMode'. parseStmt :: String -> ParseResult (Stmt SrcSpanInfo) parseStmt = parse -- | Parse of a string containing a Haskell type, using an explicit 'ParseMode'. parseStmtWithMode :: ParseMode -> String -> ParseResult (Stmt SrcSpanInfo) parseStmtWithMode = parseWithMode -- | Parse of a string containing a complete Haskell module, using an explicit 'ParseMode', retaining comments. parseStmtWithComments :: ParseMode -> String -> ParseResult (Stmt SrcSpanInfo, [Comment]) parseStmtWithComments = parseWithComments -- | Parse of a string containing a Haskell statement, using 'defaultParseMode'. parseImportDecl :: String -> ParseResult (ImportDecl SrcSpanInfo) parseImportDecl = parse -- | Parse of a string containing a Haskell type, using an explicit 'ParseMode'. parseImportDeclWithMode :: ParseMode -> String -> ParseResult (ImportDecl SrcSpanInfo) parseImportDeclWithMode = parseWithMode -- | Parse of a string containing a complete Haskell module, using an explicit 'ParseMode', retaining comments. parseImportDeclWithComments :: ParseMode -> String -> ParseResult (ImportDecl SrcSpanInfo, [Comment]) parseImportDeclWithComments = parseWithComments -- Non-greedy parsers (should use ng- prefixed parses exported by InternalParser) -- | Non-greedy parse of a string starting with a series of top-level option pragmas. getTopPragmas :: String -> ParseResult [ModulePragma SrcSpanInfo] getTopPragmas = fmap (unListOf . unNonGreedy) . parse instance Parseable (NonGreedy (ListOf (ModulePragma SrcSpanInfo))) where parser = nglistParserNoFixity ngparseModulePragmas nglistParserNoFixity :: P ([a SrcSpanInfo], [SrcSpan], SrcSpanInfo) -> Maybe [Fixity] -> P (NonGreedy (ListOf (a SrcSpanInfo))) nglistParserNoFixity f = fmap (NonGreedy . toListOf) . normalParserNoFixity f -- | Type intended to be used with 'Parseable', with instances that implement a -- non-greedy parse of the module name, including top-level pragmas. This -- means that a parse error that comes after the module header won't be -- returned. If the 'Maybe' value is 'Nothing', then this means that there was -- no module header. data PragmasAndModuleName l = PragmasAndModuleName l [ModulePragma l] (Maybe (ModuleName l)) deriving (Eq,Ord,Show,Typeable,Data) instance Parseable (NonGreedy (PragmasAndModuleName SrcSpanInfo)) where parser _ = do ((pragmas, pss, pl), mn) <- ngparsePragmasAndModuleName let l = combSpanMaybe (pl <** pss) (fmap ann mn) return $ NonGreedy $ PragmasAndModuleName l pragmas mn -- Type intended to be used with 'Parseable', with instances that -- implement a non-greedy parse of the module name, including -- top-level pragmas. This means that a parse error that comes -- after the module header won't be returned. If the 'Maybe' value -- is 'Nothing', this means that there was no module head. -- -- Note that the 'ParseMode' matters for this due to the 'MagicHash' -- changing the lexing of identifiers to include \"#\". data PragmasAndModuleHead l = PragmasAndModuleHead l [ModulePragma l] (Maybe (ModuleHead l)) deriving (Eq,Ord,Show,Typeable,Data) instance Parseable (NonGreedy (PragmasAndModuleHead SrcSpanInfo)) where parser _ = do ((pragmas, pss, pl), mh) <- ngparsePragmasAndModuleHead let l = combSpanMaybe (pl <** pss) (fmap ann mh) return $ NonGreedy $ PragmasAndModuleHead l pragmas mh -- Type intended to be used with 'Parseable', with instances that -- implement a non-greedy parse of the module head, including -- top-level pragmas, module name, export list, and import -- list. This means that if a parse error that comes after the -- imports won't be returned. If the 'Maybe' value is 'Nothing', -- this means that there was no module head. -- -- Note that the 'ParseMode' matters for this due to the 'MagicHash' -- changing the lexing of identifiers to include \"#\". data ModuleHeadAndImports l = ModuleHeadAndImports l [ModulePragma l] (Maybe (ModuleHead l)) [ImportDecl l] deriving (Eq,Ord,Show,Typeable,Data) instance Parseable (NonGreedy (ModuleHeadAndImports SrcSpanInfo)) where parser _ = do ((pragmas, pss, pl), mh, mimps) <- ngparseModuleHeadAndImports let l = (pl <** pss) `combSpanMaybe` (fmap ann mh) `combSpanMaybe` (fmap (\(_, iss, il) -> il <** iss) mimps) imps = maybe [] (\(x, _, _) -> x) mimps return $ NonGreedy $ ModuleHeadAndImports l pragmas mh imps -- | Instances of 'Parseable' for @NonGreedy a@ will only consume the input -- until @a@ is fully parsed. This means that parse errors that come later -- in the input will be ignored. It's also more efficient, as it's fully lazy -- in the remainder of the input: -- -- >>> parse (unlines ("module A where" : "main =" : repeat "blah")) :: ParseResult PragmasAndModuleHead -- ParseOk (NonGreedy {unNonGreedy = PragmasAndModuleHead [] (ModuleName "A",Nothing,Nothing)}) -- -- (this example uses the simplified AST) newtype NonGreedy a = NonGreedy { unNonGreedy :: a } deriving (Eq,Ord,Show,Typeable,Data) instance Functor NonGreedy where fmap f (NonGreedy x) = NonGreedy (f x) -- | @ListOf a@ stores lists of the AST type @a@, along with a 'SrcSpanInfo', -- in order to provide 'Parseable' instances for lists. These instances are -- provided when the type is used as a list in the syntax, and the same -- delimiters are used in all of its usages. Some exceptions are made: data ListOf a = ListOf SrcSpanInfo [a] deriving (Eq,Ord,Show,Typeable,Data,Functor) unListOf :: ListOf a -> [a] unListOf (ListOf _ xs) = xs -- It's safe to forget about the previous SrcSpanInfo 'srcInfoPoints', -- as long as they are created with (presently) are all created with -- 'noInfoSpan' ('nIS'), '(<^^>)', or '(<++>)', all of which have -- empty 'srcInfoPoints'. Ideally, the parsers would return better -- types, but this works. toListOf :: ([a], [SrcSpan], SrcSpanInfo) -> ListOf a toListOf (xs, ss, l) = ListOf (infoSpan (srcInfoSpan l) ss) xs haskell-src-exts-1.18.2/src/Language/Haskell/Exts/ParseSyntax.hs0000644000000000000000000004113612746233113022626 0ustar0000000000000000{-# LANGUAGE DeriveFunctor #-} {-# OPTIONS_HADDOCK hide #-} module Language.Haskell.Exts.ParseSyntax where import Language.Haskell.Exts.Syntax hiding ( Type(..), Asst(..), Exp(..), FieldUpdate(..), XAttr(..), Context(..) ) import qualified Language.Haskell.Exts.Syntax as S ( Type(..), Promoted(..) ) --------------------------------------- -- Expressions as we parse them (and patterns, and regular patterns) data PExp l = Var l (QName l) -- ^ variable | OverloadedLabel l String -- ^ overloaded label #foo | IPVar l (IPName l) -- ^ implicit parameter variable | Con l (QName l) -- ^ data constructor | Lit l (Literal l) -- ^ literal constant | InfixApp l (PExp l) (QOp l) (PExp l) -- ^ infix application | App l (PExp l) (PExp l) -- ^ ordinary application | NegApp l (PExp l) -- ^ negation expression @-@ /exp/ | Lambda l [Pat l] (PExp l) -- ^ lambda expression | Let l (Binds l) (PExp l) -- ^ local declarations with @let@ | If l (PExp l) (PExp l) (PExp l) -- ^ @if@ /exp/ @then@ /exp/ @else@ /exp/ | MultiIf l [GuardedRhs l] -- ^ @if@ @|@ /stmts/ @->@ /exp/ ... | Case l (PExp l) [Alt l] -- ^ @case@ /exp/ @of@ /alts/ | Do l [Stmt l] -- ^ @do@-expression: -- the last statement in the list -- should be an expression. | MDo l [Stmt l] -- ^ @mdo@-expression | TupleSection l Boxed [Maybe (PExp l)] -- ^ tuple section expression, e.g. @(,,3)@ | List l [PExp l] -- ^ list expression | ParArray l [PExp l] -- ^ parallel array expression | Paren l (PExp l) -- ^ parenthesized expression | RecConstr l (QName l) [PFieldUpdate l] -- ^ record construction expression | RecUpdate l (PExp l) [PFieldUpdate l] -- ^ record update expression | EnumFrom l (PExp l) -- ^ unbounded arithmetic sequence, -- incrementing by 1 | EnumFromTo l (PExp l) (PExp l) -- ^ bounded arithmetic sequence, -- incrementing by 1 | EnumFromThen l (PExp l) (PExp l) -- ^ unbounded arithmetic sequence, -- with first two elements given | EnumFromThenTo l (PExp l) (PExp l) (PExp l) -- ^ bounded arithmetic sequence, -- with first two elements given | ParArrayFromTo l (PExp l) (PExp l) -- ^ bounded arithmetic sequence, -- incrementing by 1 | ParArrayFromThenTo l (PExp l) (PExp l) (PExp l) -- ^ bounded arithmetic sequence, -- with first two elements given | ParComp l (PExp l) [[QualStmt l]] -- ^ parallel list comprehension | ParArrayComp l (PExp l) [[QualStmt l]] -- ^ parallel array comprehension | ExpTypeSig l (PExp l) (S.Type l) -- ^ expression type signature | AsPat l (Name l) (PExp l) -- ^ patterns only | WildCard l -- ^ patterns only | IrrPat l (PExp l) -- ^ patterns only -- Post-ops for parsing left sections and regular patterns. Not to be left in the final tree. | PostOp l (PExp l) (QOp l) -- ^ post-ops | PreOp l (QOp l) (PExp l) -- ^ pre-ops -- View patterns | ViewPat l (PExp l) (Pat l) -- ^ patterns only -- HaRP | SeqRP l [PExp l] -- ^ regular patterns only | GuardRP l (PExp l) [Stmt l] -- ^ regular patterns only | EitherRP l (PExp l) (PExp l) -- ^ regular patterns only | CAsRP l (Name l) (PExp l) -- ^ regular patterns only -- Template Haskell | VarQuote l (QName l) -- ^ 'x | TypQuote l (QName l) -- ^ ''T | BracketExp l (Bracket l) | SpliceExp l (Splice l) | QuasiQuote l String String -- ^ [$...|...] -- Hsx | XTag l (XName l) [ParseXAttr l] (Maybe (PExp l)) [PExp l] -- ^ ... | XETag l (XName l) [ParseXAttr l] (Maybe (PExp l)) -- ^ | XPcdata l String -- ^ PCDATA | XExpTag l (PExp l) -- ^ <% ... %> | XChildTag l [PExp l] -- ^ <%> ... | XRPats l [PExp l] -- ^ <[ ... ]> -- Pragmas | CorePragma l String (PExp l) -- ^ {-# CORE #-} pragma | SCCPragma l String (PExp l) -- ^ {-# SCC #-} pragma | GenPragma l String (Int, Int) (Int, Int) (PExp l) -- ^ {-# GENERATED ... #-} pragma -- Bang Patterns | BangPat l (PExp l) -- ^ f !a = ... -- Arrows | Proc l (Pat l) (PExp l) -- ^ proc p -> do | LeftArrApp l (PExp l) (PExp l) -- ^ e -< e | RightArrApp l (PExp l) (PExp l) -- ^ e >- e | LeftArrHighApp l (PExp l) (PExp l) -- ^ e -<< e | RightArrHighApp l (PExp l) (PExp l) -- ^ e >>- e -- LambdaCase | LCase l [Alt l] -- ^ @\case@ /alts/ | TypeApp l (S.Type l) deriving (Eq,Show,Functor) data PFieldUpdate l = FieldUpdate l (QName l) (PExp l) | FieldPun l (QName l) | FieldWildcard l deriving (Eq,Show,Functor) data ParseXAttr l = XAttr l (XName l) (PExp l) deriving (Eq,Show,Functor) instance Annotated PExp where ann e = case e of Var l _ -> l OverloadedLabel l _ -> l IPVar l _ -> l Con l _ -> l Lit l _ -> l InfixApp l _ _ _ -> l App l _ _ -> l NegApp l _ -> l Lambda l _ _ -> l Let l _ _ -> l If l _ _ _ -> l Case l _ _ -> l Do l _ -> l MDo l _ -> l TupleSection l _ _ -> l List l _ -> l ParArray l _ -> l Paren l _ -> l RecConstr l _ _ -> l RecUpdate l _ _ -> l EnumFrom l _ -> l EnumFromTo l _ _ -> l EnumFromThen l _ _ -> l EnumFromThenTo l _ _ _ -> l ParArrayFromTo l _ _ -> l ParArrayFromThenTo l _ _ _ -> l ParComp l _ _ -> l ParArrayComp l _ _ -> l ExpTypeSig l _ _ -> l AsPat l _ _ -> l WildCard l -> l IrrPat l _ -> l PostOp l _ _ -> l PreOp l _ _ -> l ViewPat l _ _ -> l SeqRP l _ -> l GuardRP l _ _ -> l EitherRP l _ _ -> l CAsRP l _ _ -> l VarQuote l _ -> l TypQuote l _ -> l BracketExp l _ -> l SpliceExp l _ -> l QuasiQuote l _ _ -> l XTag l _ _ _ _ -> l XETag l _ _ _ -> l XPcdata l _ -> l XExpTag l _ -> l XChildTag l _ -> l XRPats l _ -> l CorePragma l _ _ -> l SCCPragma l _ _ -> l GenPragma l _ _ _ _ -> l BangPat l _ -> l Proc l _ _ -> l LeftArrApp l _ _ -> l RightArrApp l _ _ -> l LeftArrHighApp l _ _ -> l RightArrHighApp l _ _ -> l LCase l _ -> l MultiIf l _ -> l TypeApp l _ -> l amap f e' = case e' of Var l qn -> Var (f l) qn OverloadedLabel l qn -> OverloadedLabel (f l) qn IPVar l ipn -> IPVar (f l) ipn Con l qn -> Con (f l) qn Lit l lit -> Lit (f l) lit InfixApp l e1 qop e2 -> InfixApp (f l) e1 qop e2 App l e1 e2 -> App (f l) e1 e2 NegApp l e -> NegApp (f l) e Lambda l ps e -> Lambda (f l) ps e Let l bs e -> Let (f l) bs e If l ec et ee -> If (f l) ec et ee Case l e alts -> Case (f l) e alts Do l ss -> Do (f l) ss MDo l ss -> MDo (f l) ss TupleSection l bx mes -> TupleSection (f l) bx mes List l es -> List (f l) es ParArray l es -> ParArray (f l) es Paren l e -> Paren (f l) e RecConstr l qn fups -> RecConstr (f l) qn fups RecUpdate l e fups -> RecUpdate (f l) e fups EnumFrom l e -> EnumFrom (f l) e EnumFromTo l ef et -> EnumFromTo (f l) ef et EnumFromThen l ef et -> EnumFromThen (f l) ef et EnumFromThenTo l ef eth eto -> EnumFromThenTo (f l) ef eth eto ParArrayFromTo l ef et -> ParArrayFromTo (f l) ef et ParArrayFromThenTo l ef eth eto -> ParArrayFromThenTo (f l) ef eth eto ParComp l e qsss -> ParComp (f l) e qsss ParArrayComp l e qsss -> ParArrayComp (f l) e qsss ExpTypeSig l e t -> ExpTypeSig (f l) e t AsPat l n e -> AsPat (f l) n e WildCard l -> WildCard (f l) IrrPat l e -> IrrPat (f l) e PostOp l e op -> PostOp (f l) e op PreOp l op e -> PreOp (f l) op e ViewPat l e1 e2 -> ViewPat (f l) e1 e2 SeqRP l es -> SeqRP (f l) es GuardRP l e ss -> GuardRP (f l) e ss EitherRP l e1 e2 -> EitherRP (f l) e1 e2 CAsRP l n e -> CAsRP (f l) n e BangPat l e -> BangPat (f l) e VarQuote l qn -> VarQuote (f l) qn TypQuote l qn -> TypQuote (f l) qn BracketExp l br -> BracketExp (f l) br SpliceExp l sp -> SpliceExp (f l) sp QuasiQuote l sn se -> QuasiQuote (f l) sn se XTag l xn xas me es -> XTag (f l) xn xas me es XETag l xn xas me -> XETag (f l) xn xas me XPcdata l s -> XPcdata (f l) s XExpTag l e -> XExpTag (f l) e XChildTag l es -> XChildTag (f l) es XRPats l es -> XRPats (f l) es CorePragma l s e -> CorePragma (f l) s e SCCPragma l s e -> SCCPragma (f l) s e GenPragma l s n12 n34 e -> GenPragma (f l) s n12 n34 e Proc l p e -> Proc (f l) p e LeftArrApp l e1 e2 -> LeftArrApp (f l) e1 e2 RightArrApp l e1 e2 -> RightArrApp (f l) e1 e2 LeftArrHighApp l e1 e2 -> LeftArrHighApp (f l) e1 e2 RightArrHighApp l e1 e2 -> RightArrHighApp (f l) e1 e2 LCase l alts -> LCase (f l) alts MultiIf l alts -> MultiIf (f l) alts TypeApp l ty -> TypeApp (f l) ty instance Annotated PFieldUpdate where ann (FieldUpdate l _ _) = l ann (FieldPun l _) = l ann (FieldWildcard l) = l amap f (FieldUpdate l qn e) = FieldUpdate (f l) qn e amap f (FieldPun l n) = FieldPun (f l) n amap f (FieldWildcard l) = FieldWildcard (f l) instance Annotated ParseXAttr where ann (XAttr l _ _) = l amap f (XAttr l xn e) = XAttr (f l) xn e p_unit_con :: l -> PExp l p_unit_con l = Con l (unit_con_name l) p_tuple_con :: l -> Boxed -> Int -> PExp l p_tuple_con l b i = Con l (tuple_con_name l b i) p_unboxed_singleton_con :: l -> PExp l p_unboxed_singleton_con l = Con l (unboxed_singleton_con_name l) data PContext l = CxSingle l (PAsst l) | CxTuple l [PAsst l] | CxEmpty l deriving (Eq, Show, Functor) instance Annotated PContext where ann (CxSingle l _ ) = l ann (CxTuple l _) = l ann (CxEmpty l) = l amap f (CxSingle l asst ) = CxSingle (f l) asst amap f (CxTuple l assts) = CxTuple (f l) assts amap f (CxEmpty l) = CxEmpty (f l) data PType l = TyForall l (Maybe [TyVarBind l]) (Maybe (PContext l)) (PType l) | TyFun l (PType l) (PType l) -- ^ function type | TyTuple l Boxed [PType l] -- ^ tuple type, possibly boxed | TyList l (PType l) -- ^ list syntax, e.g. [a], as opposed to [] a | TyParArray l (PType l) -- ^ parallel array syntax, e.g. [:a:] | TyApp l (PType l) (PType l) -- ^ application of a type constructor | TyVar l (Name l) -- ^ type variable | TyCon l (QName l) -- ^ named type or type constructor | TyParen l (PType l) -- ^ type surrounded by parentheses | TyPred l (PAsst l) -- ^ assertion of an implicit parameter | TyInfix l (PType l) (QName l) (PType l) -- ^ infix type constructor | TyKind l (PType l) (Kind l) -- ^ type with explicit kind signature | TyPromoted l (S.Promoted l) -- ^ promoted data type | TySplice l (Splice l) -- ^ template haskell splice type | TyBang l (BangType l) (Unpackedness l) (PType l) -- ^ Strict type marked with \"@!@\" or type marked with UNPACK pragma. | TyWildCard l (Maybe (Name l)) -- ^ Type wildcard | TyQuasiQuote l String String -- ^ @[qq| |]@ deriving (Eq, Show, Functor) instance Annotated PType where ann t = case t of TyForall l _ _ _ -> l TyFun l _ _ -> l TyTuple l _ _ -> l TyList l _ -> l TyParArray l _ -> l TyApp l _ _ -> l TyVar l _ -> l TyCon l _ -> l TyParen l _ -> l TyInfix l _ _ _ -> l TyKind l _ _ -> l TyPromoted l _ -> l TyPred l _ -> l TySplice l _ -> l TyBang l _ _ _ -> l TyWildCard l _ -> l TyQuasiQuote l _ _ -> l amap f t' = case t' of TyForall l mtvs mcx t -> TyForall (f l) mtvs mcx t TyFun l t1 t2 -> TyFun (f l) t1 t2 TyTuple l b ts -> TyTuple (f l) b ts TyList l t -> TyList (f l) t TyParArray l t -> TyParArray (f l) t TyApp l t1 t2 -> TyApp (f l) t1 t2 TyVar l n -> TyVar (f l) n TyCon l qn -> TyCon (f l) qn TyParen l t -> TyParen (f l) t TyInfix l ta qn tb -> TyInfix (f l) ta qn tb TyKind l t k -> TyKind (f l) t k TyPromoted l p -> TyPromoted (f l) p TyPred l asst -> TyPred (f l) asst TySplice l s -> TySplice (f l) s TyBang l b u t -> TyBang (f l) b u t TyWildCard l mn -> TyWildCard (f l) mn TyQuasiQuote l n s -> TyQuasiQuote (f l) n s data PAsst l = ClassA l (QName l) [PType l] | AppA l (Name l) [PType l] | InfixA l (PType l) (QName l) (PType l) | IParam l (IPName l) (PType l) | EqualP l (PType l) (PType l) | ParenA l (PAsst l) | WildCardA l (Maybe (Name l)) deriving (Eq, Show, Functor) instance Annotated PAsst where ann asst = case asst of ClassA l _ _ -> l AppA l _ _ -> l InfixA l _ _ _ -> l IParam l _ _ -> l EqualP l _ _ -> l ParenA l _ -> l WildCardA l _ -> l amap f asst = case asst of ClassA l qn ts -> ClassA (f l) qn ts AppA l t ts -> AppA (f l) t ts InfixA l ta qn tb -> InfixA (f l) ta qn tb IParam l ipn t -> IParam (f l) ipn t EqualP l t1 t2 -> EqualP (f l) t1 t2 ParenA l a -> ParenA (f l) a WildCardA l mn -> WildCardA (f l) mn haskell-src-exts-1.18.2/src/Language/Haskell/Exts/ParseUtils.hs0000644000000000000000000015027212746233113022442 0ustar0000000000000000{-# OPTIONS_HADDOCK hide #-} {-# LANGUAGE CPP #-} {-# LANGUAGE PatternGuards #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.ParseUtils -- Copyright : (c) Niklas Broberg 2004-2009, -- (c) The GHC Team, 1997-2000 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- Utilities for the Haskell-exts parser. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.ParseUtils ( splitTyConApp -- PType -> P (Name,[Type]) , checkEnabled -- (Show e, Enabled e) => e -> P () , checkEnabledOneOf , checkToplevel -- ?? , checkPatternGuards -- [Stmt] -> P () , mkRecConstrOrUpdate -- PExp -> [PFieldUpdate] -> P Exp , checkPrec -- Integer -> P Int , checkPContext -- PType -> P PContext , checkContext -- PContext -> P Context , checkAssertion -- PType -> P PAsst , checkDataHeader -- PType -> P (Context,Name,[TyVarBind]) , checkClassHeader -- PType -> P (Context,Name,[TyVarBind]) , checkInstHeader -- PType -> P (Context,QName,[Type]) , checkDeriving -- [PType] -> P [Deriving] , checkPattern -- PExp -> P Pat , checkExpr -- PExp -> P Exp , checkType -- PType -> P Type , checkTyVar -- Name -> P PType , bangType -- L -> BangType -> Type -> Type , checkKind -- Kind -> P () , checkValDef -- SrcLoc -> PExp -> Maybe Type -> Rhs -> Binds -> P Decl , checkExplicitPatSyn -- , checkClassBody -- [ClassDecl] -> P [ClassDecl] , checkInstBody -- [InstDecl] -> P [InstDecl] , checkUnQual -- QName -> P Name , checkQualOrUnQual -- QName -> P QName , checkSingleDecl -- [Decl] -> P Decl , checkRevDecls -- [Decl] -> P [Decl] , checkRevClsDecls -- [ClassDecl] -> P [ClassDecl] , checkRevInstDecls -- [InstDecl] -> P [InstDecl] , checkDataOrNew -- DataOrNew -> [QualConDecl] -> P () , checkDataOrNewG -- DataOrNew -> [GadtDecl] -> P () , checkSimpleType -- PType -> P (Name, [TyVarBind]) , checkSigVar -- PExp -> P Name , checkDefSigDef -- Decl -> P Decl , getGConName -- S.Exp -> P QName , mkTyForall -- Maybe [TyVarBind] -> PContext -> PType -> PType , mkRoleAnnotDecl -- , mkAssocType , mkEThingWith , splitTilde -- HaRP , checkRPattern -- PExp -> P RPat -- Hsx , checkEqNames -- XName -> XName -> P XName , checkPageModule , checkHybridModule , mkDVar -- [String] -> String -- Pragmas , checkRuleExpr -- PExp -> P Exp , readTool -- Maybe String -> Maybe Tool -- Helpers , updateQNameLoc -- l -> QName l -> QName l -- Parsed expressions and types , PExp(..), PFieldUpdate(..), ParseXAttr(..), PType(..), PContext, PAsst(..) , p_unit_con -- PExp , p_tuple_con -- Boxed -> Int -> PExp , p_unboxed_singleton_con -- PExp ) where import Language.Haskell.Exts.Syntax hiding ( Type(..), Asst(..), Exp(..), FieldUpdate(..), XAttr(..), Context(..) ) import qualified Language.Haskell.Exts.Syntax as S ( Type(..), Asst(..), Exp(..), FieldUpdate(..), XAttr(..), Context(..), Role(..), PatternSynDirection(..)) import Language.Haskell.Exts.ParseSyntax import Language.Haskell.Exts.ParseMonad import Language.Haskell.Exts.Pretty import Language.Haskell.Exts.SrcLoc hiding (loc) import Language.Haskell.Exts.Extension import Language.Haskell.Exts.ExtScheme import Prelude hiding (mod) import Data.List (intercalate, intersperse) import Data.Maybe (fromJust, fromMaybe) import Data.Either import Control.Monad (when,unless) #if __GLASGOW_HASKELL__ < 710 import Control.Applicative (Applicative (..), (<$>)) #endif type L = SrcSpanInfo type S = SrcSpan splitTyConApp :: PType L -> P (Name L, [S.Type L]) splitTyConApp t0 = do (n, pts) <- split t0 [] ts <- mapM checkType pts return (n,ts) where split :: PType L -> [PType L] -> P (Name L, [PType L]) split (TyApp _ t u) ts = split t (u:ts) split (TyCon _ (UnQual _ t)) ts = return (t,ts) split (TyInfix l a op b) ts = split (TyCon l op) (a:b:ts) split _ _ = fail "Illegal data/newtype declaration" ----------------------------------------------------------------------------- -- Checking for extensions checkEnabled :: (Show e, Enabled e) => e -> P () checkEnabled e = do exts <- getExtensions unless (isEnabled e exts) $ fail errorMsg where errorMsg = unwords [ show e , "language extension is not enabled." , "Please add {-# LANGUAGE " ++ show e ++ " #-}" , "pragma at the top of your module." ] checkEnabledOneOf :: (Show e, Enabled e) => [e] -> P () checkEnabledOneOf es = do exts <- getExtensions unless (any (`isEnabled` exts) es) $ fail errorMsg where errorMsg = unwords [ "At least one of" , joinOr id , "language extensions needs to be enabled." , "Please add:" , joinOr (\s -> "{-# LANGUAGE " ++ s ++ " #-}") , "language pragma at the top of your module." ] joinOr f = concat . intersperse " or " . map (f . show) $ es checkPatternGuards :: [Stmt L] -> P () checkPatternGuards [Qualifier _ _] = return () checkPatternGuards _ = checkEnabled PatternGuards checkToplevel :: PExp t -> P () checkToplevel e = do exts <- getExtensions let isQQ = case e of QuasiQuote {} -> isEnabled QuasiQuotes exts _ -> False unless isQQ (checkEnabled TemplateHaskell) ----------------------------------------------------------------------------- -- Checking contexts -- Check that a context is syntactically correct. Takes care of -- checking for MPTCs, TypeOperators, TypeFamilies (for eq constraints) -- and ImplicitParameters, but leaves checking of the class assertion -- parameters for later. checkPContext :: PType L -> P (PContext L) checkPContext (TyTuple l Boxed ts) = mapM checkAssertion ts >>= return . CxTuple l checkPContext (TyCon l (Special _ (UnitCon _))) = return $ CxEmpty l checkPContext (TyParen l t) = do c <- checkAssertion t return $ CxSingle l (ParenA l c) checkPContext (TyPred tp p@(EqualP {})) = do checkEnabledOneOf [TypeFamilies, GADTs] return $ CxSingle tp p checkPContext t = do c <- checkAssertion t return $ CxSingle (ann c) c ------------------------------------------------------------------------------------------------------------------- WORKING HERE -- Check a single assertion according to the above, still leaving -- the class assertion parameters for later. checkAssertion :: PType L -> P (PAsst L) -- We cannot even get here unless ImplicitParameters is enabled. checkAssertion (TyParen l asst) = do asst' <- checkAssertion asst return $ ParenA l asst' checkAssertion (TyPred _ p@(IParam _ _ _)) = return p -- We cannot even get here unless TypeFamilies or GADTs is enabled. -- N.B.: this is called only when the equality assertion is part of a -- tuple checkAssertion (TyPred _ p@(EqualP _ _ _)) = return p checkAssertion t' = checkAssertion' id [] t' where -- class assertions must have at least one argument checkAssertion' fl ts (TyCon l c) = do when (length ts > 1) $ checkEnabled MultiParamTypeClasses when (length ts < 1) $ checkEnabled FlexibleContexts checkAndWarnTypeOperators c return $ ClassA (fl l) c ts checkAssertion' fl ts (TyApp l a t) = -- no check on t at this stage checkAssertion' (const (fl l)) (t:ts) a checkAssertion' fl _ (TyInfix l a op b) = do -- infix operators require TypeOperators checkAndWarnTypeOperators op return $ InfixA (fl l) a op b checkAssertion' fl ts (TyParen l t) = checkAssertion' (const (fl l)) ts t checkAssertion' fl ts (TyVar l t) = do -- Dict :: cxt => Dict cxt checkEnabled ConstraintKinds return $ AppA (fl l) t (reverse ts) checkAssertion' _ _ (TyWildCard l wc) = return $ WildCardA l wc checkAssertion' _ _ _ = fail "Illegal class assertion" getSymbol :: QName L -> Maybe String getSymbol (UnQual _ (Symbol _ s)) = Just s getSymbol (Qual _ _ (Symbol _ s)) = Just s getSymbol _ = Nothing -- | Checks whether the parameter is a symbol, and gives a nice warning for -- "." if ExplicitForAll/TypeOperators are not enabled. checkAndWarnTypeOperators :: QName L -> P () checkAndWarnTypeOperators c = case getSymbol c of Just s | s == "." -> checkEnabledOneOf [ExplicitForAll, TypeOperators] | otherwise -> checkEnabled TypeOperators Nothing -> return () -- Checks simple contexts for class and instance -- headers. If FlexibleContexts is enabled then -- anything goes, otherwise only tyvars are allowed. checkSContext :: Maybe (PContext L) -> P (Maybe (S.Context L)) checkSContext (Just ctxt) = case ctxt of CxEmpty l -> return $ Just $ S.CxEmpty l CxSingle l a -> checkAsst True a >>= return . Just . S.CxSingle l CxTuple l as -> mapM (checkAsst True) as >>= return . Just . S.CxTuple l checkSContext _ = return Nothing -- Checks ordinary contexts for sigtypes and data type -- declarations. If FlexibleContexts is enabled then -- anything goes, otherwise only tyvars OR tyvars -- applied to types are allowed. checkContext :: Maybe (PContext L) -> P (Maybe (S.Context L)) checkContext (Just ctxt) = case ctxt of CxEmpty l -> return $ Just $ S.CxEmpty l CxSingle l a -> checkAsst False a >>= return . Just . S.CxSingle l CxTuple l as -> mapM (checkAsst False) as >>= return . Just . S.CxTuple l checkContext _ = return Nothing checkAsst :: Bool -> PAsst L -> P (S.Asst L) checkAsst isSimple asst = case asst of ClassA l qn pts -> do ts <- mapM (checkAsstParam isSimple) pts return $ S.ClassA l qn ts AppA l n pts -> do ts <- mapM (checkAsstParam isSimple) pts return $ S.AppA l n ts InfixA l a op b -> do [a',b'] <- mapM (checkAsstParam isSimple) [a,b] return $ S.InfixA l a' op b' IParam l ipn pt -> do t <- checkType pt return $ S.IParam l ipn t EqualP l pa pb -> do a <- checkType pa b <- checkType pb return $ S.EqualP l a b ParenA l a -> do a' <- checkAsst isSimple a return $ S.ParenA l a' WildCardA l a -> if isSimple then fail "Malformed Context: WildCards not allowed in simple contexts" else return $ S.WildCardA l a checkAsstParam :: Bool -> PType L -> P (S.Type L) checkAsstParam isSimple t = do exts <- getExtensions if FlexibleContexts `elem` exts then checkType t else case t of TyVar l n -> return $ S.TyVar l n TyWildCard l mn -> return $ S.TyWildCard l mn TyParen l t1 -> do t1' <- checkAsstParam isSimple t1 return $ S.TyParen l t1' TyApp l pf pt | not isSimple -> do f <- checkAsstParam isSimple pf t' <- checkType pt return $ S.TyApp l f t' _ -> fail "Malformed context: FlexibleContexts is not enabled" ----------------------------------------------------------------------------- -- Checking Headers checkDataHeader :: PType L -> P (Maybe (S.Context L), DeclHead L) checkDataHeader (TyForall _ Nothing cs t) = do dh <- checkSimple "data/newtype" t cs' <- checkContext cs return (cs',dh) checkDataHeader t = do dh <- checkSimple "data/newtype" t return (Nothing,dh) checkClassHeader :: PType L -> P (Maybe (S.Context L), DeclHead L) checkClassHeader (TyForall _ Nothing cs t) = do dh <- checkSimple "class" t cs' <- checkSContext cs return (cs',dh) checkClassHeader t = do dh <- checkSimple "class" t return (Nothing,dh) checkSimple :: String -> PType L -> P (DeclHead L) --checkSimple kw (TyApp _ l t) xs | isTyVarBind t = checkSimple kw l (toTyVarBind t : xs) checkSimple kw (TyApp l h t) = do tvb <- mkTyVarBind kw t h' <- checkSimple kw h return $ DHApp l h' tvb checkSimple kw (TyInfix l t1 c@(UnQual _ t) t2) = do checkAndWarnTypeOperators c tv1 <- mkTyVarBind kw t1 tv2 <- mkTyVarBind kw t2 return $ DHApp l (DHInfix l tv1 t) tv2 checkSimple _kw (TyCon _ c@(UnQual l t)) = do checkAndWarnTypeOperators c return (DHead l t) checkSimple kw (TyParen l t) = do dh <- checkSimple kw t return (DHParen l dh) checkSimple kw _ = fail ("Illegal " ++ kw ++ " declaration") mkTyVarBind :: String -> PType L -> P (TyVarBind L) mkTyVarBind _ (TyVar l n) = return $ UnkindedVar l n mkTyVarBind _ (TyKind l (TyVar _ n) k) = return $ KindedVar l n k mkTyVarBind _ (TyCon l c@(UnQual _ n@(Symbol _ _))) = checkAndWarnTypeOperators c >> return (UnkindedVar l n) mkTyVarBind _ (TyKind l (TyCon _ c@(UnQual _ n@(Symbol _ _))) k) = checkAndWarnTypeOperators c >> return (KindedVar l n k) mkTyVarBind kw _ = fail ("Illegal " ++ kw ++ " declaration") {- isTyVarBind :: PType L -> Bool isTyVarBind (TyVar _ _) = True --isTyVarBind (TyCon _ (UnQual _ n@(Symbol _ _))) = True isTyVarBind (TyKind _ (TyVar _ _) _) = True isTyVarBind _ = False toTyVarBind :: PType L -> TyVarBind L toTyVarBind (TyVar l n) = UnkindedVar l n toTyVarBind (TyKind l (TyVar _ n) k) = KindedVar l n k -} checkInstHeader :: PType L -> P (InstRule L) checkInstHeader (TyParen l t) = checkInstHeader t >>= return . IParen l checkInstHeader (TyForall l mtvs cs t) = do cs' <- checkSContext cs checkInsts (Just l) mtvs cs' t checkInstHeader t = checkInsts Nothing Nothing Nothing t checkInsts :: Maybe L -> Maybe [TyVarBind L] -> Maybe (S.Context L) -> PType L -> P (InstRule L) checkInsts _ mtvs mctxt (TyParen l t) = checkInsts Nothing mtvs mctxt t >>= return . IParen l checkInsts l1 mtvs mctxt t = do t' <- checkInstsGuts t return $ IRule (fromMaybe (fmap ann mctxt ann t') l1) mtvs mctxt t' checkInstsGuts :: PType L -> P (InstHead L) checkInstsGuts (TyApp l h t) = do t' <- checkType t h' <- checkInstsGuts h return $ IHApp l h' t' checkInstsGuts (TyCon l c) = do checkAndWarnTypeOperators c return $ IHCon l c checkInstsGuts (TyInfix l a op b) = do checkAndWarnTypeOperators op [ta,tb] <- checkTypes [a,b] return $ IHApp l (IHInfix l ta op) tb checkInstsGuts (TyParen l t) = checkInstsGuts t >>= return . IHParen l checkInstsGuts _ = fail "Illegal instance declaration" checkDeriving :: [PType L] -> P [InstRule L] checkDeriving = mapM (checkInsts Nothing Nothing Nothing) ----------------------------------------------------------------------------- -- Checking Patterns. -- We parse patterns as expressions and check for valid patterns below, -- converting the expression into a pattern at the same time. checkPattern :: PExp L -> P (Pat L) checkPattern e = checkPat e [] checkPat :: PExp L -> [Pat L] -> P (Pat L) checkPat (Con l c) args = do let l' = foldl combSpanInfo l (map ann args) return (PApp l' c args) checkPat (App _ f x) args = do x' <- checkPat x [] checkPat f (x':args) checkPat (InfixApp _ l op r) args | op =~= QVarOp () (UnQual () (Symbol () "!")) = do -- We must have BangPatterns on checkEnabled BangPatterns let (e,es) = splitBang r [] ps <- mapM checkPattern (BangPat (ann op) e:es) checkPat l (ps++args) checkPat e' [] = case e' of Var _ (UnQual l x) -> return (PVar l x) Lit l lit -> return (PLit l (Signless l2) lit) where l2 = noInfoSpan . srcInfoSpan $ l InfixApp loc l op r -> case op of QConOp _ c -> do l' <- checkPat l [] r' <- checkPat r [] return (PInfixApp loc l' c r') QVarOp ppos (UnQual _ (Symbol _ "+")) -> do checkEnabled NPlusKPatterns case (l,r) of (Var _ (UnQual _ n@(Ident _ _)), Lit _ (Int kpos k _)) -> do let pp = srcInfoSpan ppos kp = srcInfoSpan kpos return (PNPlusK (loc <** [pp,kp]) n k) _ -> patFail "" _ -> patFail "" TupleSection l bx mes -> if Nothing `notElem` mes then do ps <- mapM (\e -> checkPat e []) (map fromJust mes) return (PTuple l bx ps) else fail "Illegal tuple section in pattern" List l es -> do ps <- mapM checkRPattern es if all isStdPat ps then return . PList l $ map stripRP ps -- we don't allow truly regular patterns unless the extension is enabled else checkEnabled RegularPatterns >> return (PRPat l $ map fixRPOpPrec ps) where isStdPat :: RPat L -> Bool isStdPat (RPPat _ _) = True isStdPat (RPAs _ _ p) = isStdPat p isStdPat (RPParen _ p) = isStdPat p isStdPat _ = False stripRP :: RPat L -> Pat L stripRP (RPPat _ p) = p stripRP (RPAs l' n p) = PAsPat l' n (stripRP p) stripRP (RPParen l' p) = PParen l' (stripRP p) stripRP _ = error "cannot strip RP wrapper if not all patterns are base" Paren l e -> do p <- checkPat e [] return (PParen l p) AsPat l n e -> do p <- checkPat e [] return (PAsPat l n p) WildCard l -> return (PWildCard l) IrrPat l e -> do p <- checkPat e [] return (PIrrPat l p) ViewPat l e p -> do e1 <- checkExpr e return (PViewPat l e1 p) RecConstr l c fs -> do fs' <- mapM checkPatField fs return (PRec l c fs') NegApp l (Lit _ lit) -> let siSign = last . srcInfoPoints $ l lSign = infoSpan siSign [siSign] in do when (not . isNegatableLiteral $ lit) (patFail $ prettyPrint e') return (PLit l (Negative lSign) lit) ExpTypeSig l e t -> do -- patterns cannot have signatures unless ScopedTypeVariables is enabled. checkEnabled ScopedTypeVariables p <- checkPat e [] return (PatTypeSig l p t) -- Hsx XTag l n attrs mattr cs -> do pattrs <- mapM checkPAttr attrs pcs <- mapM (\c -> checkPat c []) cs mpattr <- maybe (return Nothing) (\e -> do p <- checkPat e [] return $ Just p) mattr let cps = mkChildrenPat pcs return $ PXTag l n pattrs mpattr cps XETag l n attrs mattr -> do pattrs <- mapM checkPAttr attrs mpattr <- maybe (return Nothing) (\e -> do p <- checkPat e [] return $ Just p) mattr return $ PXETag l n pattrs mpattr XPcdata l pcdata -> return $ PXPcdata l pcdata XExpTag l e -> do p <- checkPat e [] return $ PXPatTag l p XRPats l es -> do rps <- mapM checkRPattern es return (PXRPats l $ map fixRPOpPrec rps) -- QuasiQuotation QuasiQuote l n q -> return $ PQuasiQuote l n q -- BangPatterns BangPat l e -> do p <- checkPat e [] return $ PBangPat l p PreOp l (QVarOp _ (UnQual _ (Symbol _ "!"))) e -> do checkEnabled BangPatterns p <- checkPat e [] return $ PBangPat l p e -> patFail $ prettyPrint e checkPat e _ = patFail $ prettyPrint e isNegatableLiteral :: Literal a -> Bool isNegatableLiteral (Int _ _ _) = True isNegatableLiteral (Frac _ _ _) = True isNegatableLiteral (PrimInt _ _ _) = True isNegatableLiteral (PrimFloat _ _ _) = True isNegatableLiteral (PrimDouble _ _ _) = True isNegatableLiteral _ = False splitBang :: PExp L -> [PExp L] -> (PExp L, [PExp L]) splitBang (App _ f x) es = splitBang f (x:es) splitBang e es = (e, es) checkPatField :: PFieldUpdate L -> P (PatField L) checkPatField (FieldUpdate l n e) = do p <- checkPat e [] return (PFieldPat l n p) checkPatField (FieldPun l n) = return (PFieldPun l n) checkPatField (FieldWildcard l) = return (PFieldWildcard l) checkPAttr :: ParseXAttr L -> P (PXAttr L) checkPAttr (XAttr l n v) = do p <- checkPat v [] return $ PXAttr l n p patFail :: String -> P a patFail s = fail $ "Parse error in pattern: " ++ s checkRPattern :: PExp L -> P (RPat L) checkRPattern e' = case e' of SeqRP l es -> do rps <- mapM checkRPattern es return $ RPSeq l rps PostOp l e op -> do rpop <- checkRPatOp op rp <- checkRPattern e return $ RPOp l rp rpop GuardRP l e gs -> do rp <- checkPattern e return $ RPGuard l rp gs EitherRP l e1 e2 -> do rp1 <- checkRPattern e1 rp2 <- checkRPattern e2 return $ RPEither l rp1 rp2 CAsRP l n e -> do rp <- checkRPattern e return $ RPCAs l n rp AsPat l n e -> do rp <- checkRPattern e return $ RPAs l n rp Paren l e -> do rp <- checkRPattern e return $ RPParen l rp _ -> do p <- checkPattern e' return $ RPPat (ann p) p checkRPatOp :: QOp L -> P (RPatOp L) checkRPatOp o@(QVarOp l (UnQual _ (Symbol _ sym))) = case sym of "*" -> return $ RPStar l "*!" -> return $ RPStarG l "+" -> return $ RPPlus l "+!" -> return $ RPPlusG l "?" -> return $ RPOpt l "?!" -> return $ RPOptG l _ -> rpOpFail o checkRPatOp o = rpOpFail o rpOpFail :: Pretty a => a -> P b rpOpFail sym = fail $ "Unrecognized regular pattern operator: " ++ prettyPrint sym fixRPOpPrec :: RPat L -> RPat L fixRPOpPrec rp' = case rp' of RPOp l rp rpop -> fPrecOp rp (flip (RPOp l) rpop) RPEither l rp1 rp2 -> RPEither l (fixRPOpPrec rp1) (fixRPOpPrec rp2) RPSeq l rps -> RPSeq l $ map fixRPOpPrec rps RPCAs l n rp -> RPCAs l n $ fixRPOpPrec rp RPAs l n rp -> RPAs l n $ fixRPOpPrec rp RPParen l rp -> RPParen l $ fixRPOpPrec rp _ -> rp' where fPrecOp :: RPat L -> (RPat L -> RPat L) -> RPat L fPrecOp (RPOp l rp rpop) f = fPrecOp rp (f . flip (RPOp l) rpop) fPrecOp (RPCAs l n rp) f = fPrecAs rp f (RPCAs l n) fPrecOp (RPAs l n rp) f = fPrecAs rp f (RPAs l n) fPrecOp rp f = f $ fixRPOpPrec rp fPrecAs :: RPat L -> (RPat L -> RPat L) -> (RPat L -> RPat L) -> RPat L fPrecAs (RPCAs l n rp) f g = fPrecAs rp f (g . RPCAs l n) fPrecAs (RPAs l n rp) f g = fPrecAs rp f (g . RPAs l n) fPrecAs rp f g = g . f $ fixRPOpPrec rp mkChildrenPat :: [Pat L] -> [Pat L] mkChildrenPat ps' = mkCPAux ps' [] where mkCPAux :: [Pat L] -> [Pat L] -> [Pat L] mkCPAux [] qs = reverse qs mkCPAux (p:ps) qs = case p of (PRPat l rps) -> [mkCRP l ps (reverse rps ++ map (\q -> RPPat (ann q) q) qs)] _ -> mkCPAux ps (p:qs) mkCRP :: L -> [Pat L] -> [RPat L] -> Pat L mkCRP l [] rps = PXRPats l $ reverse rps mkCRP _ (p:ps) rps = case p of (PXRPats l rqs) -> mkCRP l ps (reverse rqs ++ rps) _ -> mkCRP (ann p) ps (RPPat (ann p) p : rps) ----------------------------------------------------------------------------- -- Check Expression Syntax checkExpr :: PExp L -> P (S.Exp L) checkExpr e' = case e' of Var l v -> return $ S.Var l v OverloadedLabel l v -> return $ S.OverloadedLabel l v IPVar l v -> return $ S.IPVar l v Con l c -> return $ S.Con l c Lit l lit -> return $ S.Lit l lit InfixApp l e1 op e2 -> check2Exprs e1 e2 (flip (S.InfixApp l) op) App l e1 e2 -> check2Exprs e1 e2 (S.App l) NegApp _ (Lit _ (PrimWord _ _ _)) -> fail $ "Parse error: negative primitive word literal: " ++ prettyPrint e' NegApp l e -> check1Expr e (S.NegApp l) Lambda loc ps e -> check1Expr e (S.Lambda loc ps) Let l bs e -> check1Expr e (S.Let l bs) If l e1 e2 e3 -> check3Exprs e1 e2 e3 (S.If l) MultiIf l alts -> return (S.MultiIf l alts) Case l e alts -> do e1 <- checkExpr e return (S.Case l e1 alts) Do l stmts -> checkDo stmts >> return (S.Do l stmts) MDo l stmts -> checkDo stmts >> return (S.MDo l stmts) TupleSection l bx mes -> if Nothing `notElem` mes then checkManyExprs (map fromJust mes) (S.Tuple l bx) else do checkEnabled TupleSections mes' <- mapM mCheckExpr mes return $ S.TupleSection l bx mes' List l es -> checkManyExprs es (S.List l) ParArray l es -> checkManyExprs es (S.ParArray l) -- Since we don't parse things as left or right sections, we need to mangle them into that. Paren l e -> case e of PostOp _ e1 op -> check1Expr e1 (flip (S.LeftSection l) op) PreOp _ op e2 -> check1Expr e2 (S.RightSection l op) _ -> check1Expr e (S.Paren l) RecConstr l c fields -> do fields1 <- mapM checkField fields return (S.RecConstr l c fields1) RecUpdate l e fields -> do fields1 <- mapM checkField fields e1 <- checkExpr e return (S.RecUpdate l e1 fields1) EnumFrom l e -> check1Expr e (S.EnumFrom l) EnumFromTo l e1 e2 -> check2Exprs e1 e2 (S.EnumFromTo l) EnumFromThen l e1 e2 -> check2Exprs e1 e2 (S.EnumFromThen l) EnumFromThenTo l e1 e2 e3 -> check3Exprs e1 e2 e3 (S.EnumFromThenTo l) ParArrayFromTo l e1 e2 -> check2Exprs e1 e2 (S.ParArrayFromTo l) ParArrayFromThenTo l e1 e2 e3 -> check3Exprs e1 e2 e3 (S.ParArrayFromThenTo l) -- a parallel list comprehension, which could be just a simple one ParComp l e qualss -> do e1 <- checkExpr e case qualss of [quals] -> return (S.ListComp l e1 quals) _ -> return (S.ParComp l e1 qualss) ParArrayComp l e qualss -> do e1 <- checkExpr e return (S.ParArrayComp l e1 qualss) ExpTypeSig loc e ty -> do e1 <- checkExpr e return (S.ExpTypeSig loc e1 ty) --Template Haskell BracketExp l e -> return $ S.BracketExp l e SpliceExp l e -> return $ S.SpliceExp l e TypQuote l q -> return $ S.TypQuote l q VarQuote l q -> return $ S.VarQuote l q QuasiQuote l n q -> return $ S.QuasiQuote l n q -- Hsx XTag l n attrs mattr cs -> do attrs1 <- mapM checkAttr attrs cs1 <- mapM checkExpr cs mattr1 <- maybe (return Nothing) (\e -> checkExpr e >>= return . Just) mattr return $ S.XTag l n attrs1 mattr1 cs1 XETag l n attrs mattr -> do attrs1 <- mapM checkAttr attrs mattr1 <- maybe (return Nothing) (\e -> checkExpr e >>= return . Just) mattr return $ S.XETag l n attrs1 mattr1 XPcdata l p -> return $ S.XPcdata l p XExpTag l e -> do e1 <- checkExpr e return $ S.XExpTag l e1 XChildTag l es -> do es1 <- mapM checkExpr es return $ S.XChildTag l es1 -- Pragmas CorePragma l s e -> check1Expr e (S.CorePragma l s) SCCPragma l s e -> check1Expr e (S.SCCPragma l s) GenPragma l s xx yy e -> check1Expr e (S.GenPragma l s xx yy) -- UnknownExpPragma n s -> return $ S.UnknownExpPragma n s -- Arrows Proc l p e -> do e1 <- checkExpr e return $ S.Proc l p e1 LeftArrApp l e1 e2 -> check2Exprs e1 e2 (S.LeftArrApp l) RightArrApp l e1 e2 -> check2Exprs e1 e2 (S.RightArrApp l) LeftArrHighApp l e1 e2 -> check2Exprs e1 e2 (S.LeftArrHighApp l) RightArrHighApp l e1 e2 -> check2Exprs e1 e2 (S.RightArrHighApp l) -- LamdaCase LCase l alts -> return $ S.LCase l alts -- Hole WildCard l -> return $ S.ExprHole l TypeApp l ty -> return $ S.TypeApp l ty _ -> fail $ "Parse error in expression: " ++ prettyPrint e' checkAttr :: ParseXAttr L -> P (S.XAttr L) checkAttr (XAttr l n v) = do v' <- checkExpr v return $ S.XAttr l n v' checkDo :: [Stmt t] -> P () checkDo [] = fail "Parse error: Last statement in a do-block must be an expression" checkDo [Qualifier _ _] = return () checkDo (_:xs) = checkDo xs -- type signature for polymorphic recursion!! check1Expr :: PExp L -> (S.Exp L -> a) -> P a check1Expr e1 f = do e1' <- checkExpr e1 return (f e1') check2Exprs :: PExp L -> PExp L -> (S.Exp L -> S.Exp L -> a) -> P a check2Exprs e1 e2 f = do e1' <- checkExpr e1 e2' <- checkExpr e2 return (f e1' e2') check3Exprs :: PExp L -> PExp L -> PExp L -> (S.Exp L -> S.Exp L -> S.Exp L -> a) -> P a check3Exprs e1 e2 e3 f = do e1' <- checkExpr e1 e2' <- checkExpr e2 e3' <- checkExpr e3 return (f e1' e2' e3') checkManyExprs :: [PExp L] -> ([S.Exp L] -> a) -> P a checkManyExprs es f = do es' <- mapM checkExpr es return (f es') mCheckExpr :: Maybe (PExp L) -> P (Maybe (S.Exp L)) mCheckExpr Nothing = return Nothing mCheckExpr (Just e) = checkExpr e >>= return . Just checkRuleExpr :: PExp L -> P (S.Exp L) checkRuleExpr = checkExpr readTool :: Maybe String -> Maybe Tool readTool = fmap readC where readC str = case str of "GHC" -> GHC "HUGS" -> HUGS "NHC98" -> NHC98 "YHC" -> YHC "HADDOCK" -> HADDOCK _ -> UnknownTool str checkField :: PFieldUpdate L -> P (S.FieldUpdate L) checkField (FieldUpdate l n e) = check1Expr e (S.FieldUpdate l n) checkField (FieldPun l n) = return $ S.FieldPun l n checkField (FieldWildcard l) = return $ S.FieldWildcard l getGConName :: S.Exp L -> P (QName L) getGConName (S.Con _ n) = return n getGConName (S.List l []) = return (list_cons_name l) getGConName _ = fail "Expression in reification is not a name" ----------------------------------------------------------------------------- -- Check Equation Syntax checkValDef :: L -> PExp L -> Maybe (S.Type L, S) -> Rhs L -> Maybe (Binds L) -> P (Decl L) checkValDef l lhs optsig rhs whereBinds = do mlhs <- isFunLhs lhs [] let whpt = srcInfoPoints l case mlhs of Just (f,es,b,pts) -> do ps <- mapM checkPattern es let l' = l { srcInfoPoints = pts ++ whpt } case optsig of -- only pattern bindings can have signatures Nothing -> return (FunBind l $ if b then [Match l' f ps rhs whereBinds] else let (a:bs) = ps in [InfixMatch l' a f bs rhs whereBinds]) Just _ -> fail "Cannot give an explicit type signature to a function binding" Nothing -> do lhs1 <- checkPattern lhs let lhs' = case optsig of Nothing -> lhs1 Just (ty, pt) -> let lp = (ann lhs1 <++> ann ty) <** [pt] in PatTypeSig lp lhs1 ty return (PatBind l lhs' rhs whereBinds) -- A variable binding is parsed as a PatBind. isFunLhs :: PExp L -> [PExp L] -> P (Maybe (Name L, [PExp L], Bool, [S])) isFunLhs (InfixApp _ l (QVarOp loc (UnQual _ op)) r) es | op =~= Symbol () "!" = do exts <- getExtensions if BangPatterns `elem` exts then let (b,bs) = splitBang r [] loc' = combSpanInfo loc (ann b) in isFunLhs l (BangPat loc' b : bs ++ es) else return $ Just (op, l:r:es, False, []) -- It's actually a definition of the operator ! | otherwise = let infos = srcInfoPoints loc op' = amap (\s -> s { srcInfoPoints = infos }) op in (return $ Just (op', l:r:es, False, [])) isFunLhs (App _ (Var l (UnQual _ f)) e) es = return $ Just (f, e:es, True, srcInfoPoints l) isFunLhs (App _ f e) es = isFunLhs f (e:es) isFunLhs (Var _ (UnQual _ f)) es@(_:_) = return $ Just (f, es, True, []) isFunLhs (Paren l f) es@(_:_) = do mlhs <- isFunLhs f es case mlhs of Just (f',es',b,pts) -> let [x,y] = srcInfoPoints l in return $ Just (f',es',b,x:pts++[y]) _ -> return Nothing isFunLhs _ _ = return Nothing -- Separating between signature declarations and value definitions in -- a post-processing step checkSigVar :: PExp L -> P (Name L) checkSigVar (Var _ (UnQual l n)) = return $ fmap (const l) n checkSigVar e = fail $ "Left-hand side of type signature is not a variable: " ++ prettyPrint e checkExplicitPatSyn :: S -> S -> ([Decl L], [S]) -> S -> P (PatternSynDirection L) checkExplicitPatSyn whereLoc openLoc (decls, semis) closeLoc = let l = whereLoc <^^> closeLoc <** ([whereLoc, openLoc] ++ semis ++ [closeLoc]) in S.ExplicitBidirectional l <$> mapM checkDecls decls where checkDecls :: Decl L -> P (Decl L) checkDecls p@(PatBind _ pat _ _) = case pat of PApp _ _ _ -> return p PInfixApp _ _ _ _ -> return p _ -> fail "Illegal pattern binding in PatternSynonym" checkDecls _ = fail "pattern synonym 'where' clause must contain a PatBind" ----------------------------------------------------------------------------- -- In a class or instance body, a pattern binding must be of a variable. checkClassBody :: [ClassDecl L] -> P [ClassDecl L] checkClassBody decls = do mapM_ checkClassMethodDef decls return decls where checkClassMethodDef (ClsDecl _ decl) = checkMethodDef decl checkClassMethodDef _ = return () checkInstBody :: [InstDecl L] -> P [InstDecl L] checkInstBody decls = do mapM_ checkInstMethodDef decls return decls where checkInstMethodDef (InsDecl _ decl) = checkMethodDef decl checkInstMethodDef _ = return () checkMethodDef :: Decl L -> P () checkMethodDef (PatBind _ (PVar _ _) _ _) = return () checkMethodDef (PatBind loc _ _ _) = fail "illegal method definition" `atSrcLoc` fromSrcInfo loc checkMethodDef _ = return () checkDefSigDef :: Decl L -> P (Name L,S.Type L,S) checkDefSigDef (TypeSig loc [name] typ) = let (b:_) = srcInfoPoints loc in return (name,typ,b) checkDefSigDef (TypeSig _ _ _) = fail "default signature must be for a single name" checkDefSigDef _ = fail "default signature must be a type signature" ----------------------------------------------------------------------------- -- Check that an identifier or symbol is unqualified. -- For occasions when doing this in the grammar would cause conflicts. checkUnQual :: QName L -> P (Name L) checkUnQual (Qual _ _ _) = fail "Illegal qualified name" checkUnQual (UnQual l n) = return $ fmap (const l) n checkUnQual (Special _ _) = fail "Illegal special name" checkQualOrUnQual :: QName L -> P (QName L) checkQualOrUnQual n@(Qual _ _ _) = return n checkQualOrUnQual n@(UnQual _ _) = return n checkQualOrUnQual (Special _ _) = fail "Illegal special name" ----------------------------------------------------------------------------- -- Check that two xml tag names are equal checkEqNames :: XName L -> XName L -> P (XName L) checkEqNames n@(XName _ n1) (XName _ n2) | n1 == n2 = return n checkEqNames n@(XDomName _ d1 n1) (XDomName _ d2 n2) | n1 == n2 && d1 == d2 = return n checkEqNames n m = fail $ "opening tag '" ++ showTag n ++ "' does not match closing tag '" ++ showTag m ++ "'" where showTag (XName _ n') = n' showTag (XDomName _ d n') = d ++ ":" ++ n' ----------------------------------------------------------------------------- -- Miscellaneous utilities checkPrec :: Integer -> P Int checkPrec i | 0 <= i && i <= 9 = return (fromInteger i) | otherwise = fail ("Illegal precedence " ++ show i) mkRecConstrOrUpdate :: PExp L -> [PFieldUpdate L] -> P (PExp L) mkRecConstrOrUpdate (Con l c) fs = return (RecConstr l c fs) mkRecConstrOrUpdate e fs@(_:_) = return (RecUpdate (ann e) e fs) mkRecConstrOrUpdate _ _ = fail "Empty record update" updateQNameLoc :: l -> QName l -> QName l updateQNameLoc l (Qual _ mn n) = Qual l mn n updateQNameLoc l (UnQual _ n) = UnQual l n updateQNameLoc l (Special _ s) = Special l s ----------------------------------------------------------------------------- -- For standalone top level Decl parser, check that we actually only -- parsed one Decl. This is needed since we parse matches of the same -- FunBind as multiple separate declarations, and merge them after. -- This should be called *after* checkRevDecls. checkSingleDecl :: [Decl L] -> P (Decl L) checkSingleDecl [d] = return d checkSingleDecl ds = fail $ "Expected a single declaration, found " ++ show (length ds) -- Reverse a list of declarations, merging adjacent FunBinds of the -- same name and checking that their arities match. checkRevDecls :: [Decl L] -> P [Decl L] checkRevDecls = mergeFunBinds [] where mergeFunBinds revDs [] = return revDs mergeFunBinds revDs (FunBind l' ms1@(Match _ name ps _ _:_):ds1) = mergeMatches ms1 ds1 l' where arity = length ps mergeMatches ms' (FunBind _ ms@(Match loc name' ps' _ _:_):ds) l | name' =~= name = do ignoreArity <- getIgnoreFunctionArity if length ps' == arity || ignoreArity then mergeMatches (ms++ms') ds (loc <++> l) else fail ("arity mismatch for '" ++ prettyPrint name ++ "'") `atSrcLoc` fromSrcInfo loc mergeMatches ms' ds l = mergeFunBinds (FunBind l ms':revDs) ds mergeFunBinds revDs (FunBind l' ims1@(InfixMatch _ _ name _ _ _:_):ds1) = mergeInfix ims1 ds1 l' where mergeInfix ims' (FunBind _ ims@(InfixMatch loc _ name' _ _ _:_):ds) l | name' =~= name = mergeInfix (ims++ims') ds (loc <++> l) mergeInfix ms' ds l = mergeFunBinds (FunBind l ms':revDs) ds mergeFunBinds revDs (d:ds) = mergeFunBinds (d:revDs) ds checkRevClsDecls :: [ClassDecl L] -> P [ClassDecl L] checkRevClsDecls = mergeClsFunBinds [] where mergeClsFunBinds revDs [] = return revDs mergeClsFunBinds revDs (ClsDecl l' (FunBind _ ms1@(Match _ name ps _ _:_)):ds1) = mergeMatches ms1 ds1 l' where arity = length ps mergeMatches ms' (ClsDecl _ (FunBind _ ms@(Match loc name' ps' _ _:_)):ds) l | name' =~= name = do ignoreArity <- getIgnoreFunctionArity if length ps' == arity || ignoreArity then mergeMatches (ms++ms') ds (loc <++> l) else fail ("arity mismatch for '" ++ prettyPrint name ++ "'") `atSrcLoc` fromSrcInfo loc mergeMatches ms' ds l = mergeClsFunBinds (ClsDecl l (FunBind l ms'):revDs) ds mergeClsFunBinds revDs (ClsDecl l' (FunBind _ ims1@(InfixMatch _ _ name _ _ _:_)):ds1) = mergeInfix ims1 ds1 l' where mergeInfix ims' (ClsDecl _ (FunBind _ ims@(InfixMatch loc _ name' _ _ _:_)):ds) l | name' =~= name = mergeInfix (ims++ims') ds (loc <++> l) mergeInfix ms' ds l = mergeClsFunBinds (ClsDecl l (FunBind l ms'):revDs) ds mergeClsFunBinds revDs (d:ds) = mergeClsFunBinds (d:revDs) ds checkRevInstDecls :: [InstDecl L] -> P [InstDecl L] checkRevInstDecls = mergeInstFunBinds [] where mergeInstFunBinds :: [InstDecl L] -> [InstDecl L] -> P [InstDecl L] mergeInstFunBinds revDs [] = return revDs mergeInstFunBinds revDs (InsDecl l' (FunBind _ ms1@(Match _ name ps _ _:_)):ds1) = mergeMatches ms1 ds1 l' where arity = length ps mergeMatches ms' (InsDecl _ (FunBind _ ms@(Match loc name' ps' _ _:_)):ds) l | name' =~= name = do ignoreArity <- getIgnoreFunctionArity if length ps' == arity || ignoreArity then mergeMatches (ms++ms') ds (loc <++> l) else fail ("arity mismatch for '" ++ prettyPrint name ++ "'") `atSrcLoc` fromSrcInfo loc mergeMatches ms' ds l = mergeInstFunBinds (InsDecl l (FunBind l ms'):revDs) ds mergeInstFunBinds revDs (InsDecl l' (FunBind _ ims1@(InfixMatch _ _ name _ _ _:_)):ds1) = mergeInfix ims1 ds1 l' where mergeInfix ims' (InsDecl _ (FunBind _ ims@(InfixMatch loc _ name' _ _ _:_)):ds) l | name' =~= name = mergeInfix (ims++ims') ds (loc <++> l) mergeInfix ms' ds l = mergeInstFunBinds (InsDecl l (FunBind l ms'):revDs) ds mergeInstFunBinds revDs (d:ds) = mergeInstFunBinds (d:revDs) ds ---------------------------------------------------------------- -- Check that newtype declarations have -- the right number (1) of constructors checkDataOrNew :: DataOrNew L -> [QualConDecl L] -> P () checkDataOrNew (DataType _) _ = return () checkDataOrNew (NewType _) [QualConDecl _ _ _ x] = cX x >> return () where cX (ConDecl _ _ [_]) = return () cX (RecDecl _ _ [_]) = return () cX _ = fail "newtype declaration constructor must have exactly one parameter." checkDataOrNew _ _ = fail "newtype declaration must have exactly one constructor." checkDataOrNewG :: DataOrNew L -> [GadtDecl L] -> P () checkDataOrNewG (DataType _) _ = return () checkDataOrNewG (NewType _) [_] = return () checkDataOrNewG _ _ = fail "newtype declaration must have exactly one constructor." checkSimpleType :: PType L -> P (DeclHead L) checkSimpleType = checkSimple "test" --------------------------------------- -- Check actual types -- | Add a strictness/unpack annotation on a type. bangType :: Maybe (L -> BangType L, S) -> Maybe (Unpackedness L) -> PType L -> PType L bangType mstrict munpack ty = case (mstrict,munpack) of (Nothing, Just upack) -> TyBang (ann upack <++> ann ty) (NoStrictAnnot noSrcSpan) upack ty (Just (strict, pos), _) -> TyBang (fmap ann munpack noInfoSpan pos <++> ann ty) (strict (noInfoSpan pos)) (fromMaybe (NoUnpackPragma noSrcSpan) munpack) ty (Nothing, Nothing) -> ty checkType :: PType L -> P (S.Type L) checkType t = checkT t False checkT :: PType L -> Bool -> P (S.Type L) checkT t simple = case t of TyForall l Nothing cs pt -> do when simple $ checkEnabled ExplicitForAll ctxt <- checkContext cs check1Type pt (S.TyForall l Nothing ctxt) TyForall l tvs cs pt -> do checkEnabled ExplicitForAll ctxt <- checkContext cs check1Type pt (S.TyForall l tvs ctxt) TyFun l at rt -> check2Types at rt (S.TyFun l) TyTuple l b pts -> checkTypes pts >>= return . S.TyTuple l b TyList l pt -> check1Type pt (S.TyList l) TyParArray l pt -> check1Type pt (S.TyParArray l) TyApp l ft at -> check2Types ft at (S.TyApp l) TyVar l n -> return $ S.TyVar l n TyCon l n -> do checkAndWarnTypeOperators n return $ S.TyCon l n TyParen l pt -> check1Type pt (S.TyParen l) -- Here we know that t will be used as an actual type (and not a data constructor) -- so we can check that TypeOperators are enabled. TyInfix l at op bt -> checkAndWarnTypeOperators op >> check2Types at bt (flip (S.TyInfix l) op) TyKind l pt k -> check1Type pt (flip (S.TyKind l) k) -- TyPred can be a valid type if ConstraintKinds is enabled, unless it is an implicit parameter, which is not a valid type TyPred _ (ClassA l className cvars) -> mapM checkType cvars >>= \vars -> return (foldl1 (S.TyApp l) (S.TyCon l className:vars)) TyPred _ (InfixA l t0 op t1) -> S.TyInfix l <$> checkType t0 <*> pure op <*> checkType t1 TyPred _ (EqualP l t0 t1) -> do checkEnabledOneOf [TypeFamilies, GADTs] S.TyEquals l <$> checkType t0 <*> checkType t1 TyPromoted l p -> return $ S.TyPromoted l p -- ?? TySplice l s -> do checkEnabled TemplateHaskell return $ S.TySplice l s TyBang l b u t' -> check1Type t' (S.TyBang l b u) TyWildCard l mn -> return $ S.TyWildCard l mn TyQuasiQuote l n s -> do checkEnabled QuasiQuotes return $ S.TyQuasiQuote l n s _ -> fail $ "Parse error in type: " ++ prettyPrint t check1Type :: PType L -> (S.Type L -> S.Type L) -> P (S.Type L) check1Type pt f = checkT pt True >>= return . f check2Types :: PType L -> PType L -> (S.Type L -> S.Type L -> S.Type L) -> P (S.Type L) check2Types at bt f = checkT at True >>= \a -> checkT bt True >>= \b -> return (f a b) checkTypes :: [PType L] -> P [S.Type L] checkTypes = mapM (flip checkT True) checkTyVar :: Name L -> P (PType L) checkTyVar n = do e <- getExtensions return $ case n of Ident il ('_':ident) | NamedWildCards `elem` e -> TyWildCard il (Just (Ident (reduceSrcSpanInfo il) ident)) _ -> TyVar (ann n) n where -- Reduces the length of the SrcSpanInfo by 1 so that it just covers the identifier. reduceSrcSpanInfo spaninfo = let ss = srcInfoSpan spaninfo ss' = ss { srcSpanStartColumn = srcSpanStartColumn ss + 1 } in spaninfo { srcInfoSpan = ss' } --------------------------------------- -- Check kinds -- ConstraintKinds allow the kind "Constraint", but not "Nat", etc. Specifically -- test for that. checkKind :: Kind l -> P () checkKind k = case k of KindVar _ q | constrKind q -> checkEnabledOneOf [ConstraintKinds, DataKinds] where constrKind name = case name of (UnQual _ (Ident _ n)) -> n == "Constraint" _ -> False _ -> checkEnabled DataKinds --------------------------------------- -- Converting a complete page checkPageModule :: PExp L -> ([ModulePragma L],[S],L) -> P (Module L) checkPageModule xml (os,ss,inf) = do mod <- getModuleName xml' <- checkExpr xml case xml' of S.XTag l xn ats mattr cs -> return $ XmlPage (inf<++>l<**(srcInfoPoints l ++ ss)) (ModuleName l mod) os xn ats mattr cs S.XETag l xn ats mattr -> return $ XmlPage (inf<++>l<**(srcInfoPoints l ++ ss)) (ModuleName l mod) os xn ats mattr [] _ -> fail "Unexpected expression; tag is expected" checkHybridModule :: PExp L -> Module L -> S -> S -> P (Module L) checkHybridModule xml (Module inf mh os is ds) s1 s2 = do xml' <- checkExpr xml case xml' of S.XTag l xn ats mattr cs -> return $ XmlHybrid (inf<++>l<**(s1 : srcInfoPoints inf ++ s2 : srcInfoPoints l)) mh os is ds xn ats mattr cs S.XETag l xn ats mattr -> return $ XmlHybrid (inf<++>l<**(s1 : srcInfoPoints inf ++ s2 : srcInfoPoints l)) mh os is ds xn ats mattr [] _ -> fail "Unexpected expression; tag is expected" checkHybridModule _ _ _ _ = fail "Hybrid module expected" --------------------------------------- -- Handle dash-identifiers mkDVar :: [String] -> String mkDVar = intercalate "-" --------------------------------------- -- Combine adjacent for-alls. -- -- A valid type must have one for-all at the top of the type, or of the fn arg types mkTyForall :: L -> Maybe [TyVarBind L] -> Maybe (PContext L) -> PType L -> PType L mkTyForall l mtvs ctxt ty = case (ctxt, ty) of (Nothing, TyForall _ Nothing ctxt2 ty2) -> TyForall l mtvs ctxt2 ty2 _ -> TyForall l mtvs ctxt ty -- Make a role annotation mkRoleAnnotDecl :: S -> S -> QName L -> [(Maybe String, L)] -> P (Decl L) mkRoleAnnotDecl l1 l2 tycon roles = do roles' <- mapM parse_role roles return (RoleAnnotDecl loc' tycon roles') where loc' = case roles of [] -> (l1 <^^> l2 <++> ann tycon) <** [l1, l2] _ -> (l1 <^^> l2 <++> ann tycon <++> foldl1 (<++>) (map snd roles)) <** [l1, l2] possible_roles = [ ("phantom", S.Phantom) , ("representational", S.Representational) , ("nominal", S.Nominal)] parse_role (Nothing, loc_role) = return $ S.RoleWildcard loc_role parse_role (Just role, loc_role) = case lookup role possible_roles of Just found_role -> return $ found_role loc_role Nothing -> fail ("Illegal role name " ++ role) mkAssocType :: S -> PType L -> (Maybe (ResultSig L), Maybe (S, S.Type L), Maybe (InjectivityInfo L)) -> P (ClassDecl L) mkAssocType tyloc ty (mres, mty, minj) = case (mres,mty, minj) of -- No additional information (Nothing, Nothing, Nothing) -> do dh <- checkSimpleType ty return $ ClsTyFam (noInfoSpan tyloc <++> ann ty) dh Nothing Nothing -- Type default (_, Just (eqloc, rhsty), Nothing) -> do ty' <- checkType ty let tyeq = TypeEqn (ann ty <++> ann rhsty <** [eqloc]) ty' rhsty return $ ClsTyDef (noInfoSpan tyloc <++> ann ty <** [tyloc]) tyeq -- Declaration with kind sig (Just ressig, _, _) -> do dh <- checkSimpleType ty return $ ClsTyFam (noInfoSpan tyloc <++> ann ressig <** [tyloc]) dh (Just ressig) Nothing -- Decl with inj info (Nothing, Just (eqloc, rhsty), Just injinfo) -> do ressig <- checkKTyVar eqloc rhsty dh <- checkSimpleType ty return $ ClsTyFam (noInfoSpan tyloc <++> ann injinfo <** [tyloc]) dh (Just ressig) minj _ -> error "mkAssocType" where checkKTyVar :: S -> S.Type L -> P (ResultSig L) checkKTyVar eqloc rhsty = case rhsty of S.TyVar l n -> return $ TyVarSig (noInfoSpan eqloc <++> l <** [eqloc]) (UnkindedVar l n) S.TyKind l (S.TyVar _ n) k -> return $ TyVarSig (noInfoSpan eqloc <++> l <** [eqloc]) (KindedVar l n k) _ -> fail ("Result of type family must be a type variable") -- | Transform btype with strict_mark's into HsEqTy's -- (((~a) ~b) c) ~d ==> ((~a) ~ (b c)) ~ d splitTilde :: PType L -> PType L splitTilde t = go t where go (TyApp loc t1 t2) | TyBang _ (LazyTy eqloc) (NoUnpackPragma _) t2' <- t2 = TyPred loc (EqualP (loc <** [srcInfoSpan eqloc]) (go t1) t2') | otherwise = case go t1 of (TyPred _ (EqualP eqloc tl tr)) -> TyPred loc (EqualP (eqloc <++> ann t2 <** srcInfoPoints eqloc) tl (TyApp (ann tr <++> ann t2) tr t2)) t' -> TyApp loc t' t2 go t' = t' -- Expects the arguments in the right order mkEThingWith :: L -> QName L -> [Either S (CName L)] -> P (ExportSpec L) mkEThingWith loc qn mcns = do when (isWc wc && not (null cnames)) (checkEnabled PatternSynonyms) return $ EThingWith loc wc qn cnames where isWc (NoWildcard {}) = False isWc _ = True wc :: EWildcard L wc = maybe (NoWildcard noSrcSpan) (\(n,Left s) -> EWildcard (noInfoSpan s) n) (findWithIndex 0 checkLeft mcns) checkLeft :: Either a b -> Bool checkLeft (Left _) = True checkLeft _ = False cnames = rights mcns findWithIndex :: Int -> (a -> Bool) -> [a] -> Maybe (Int, a) findWithIndex _ _ [] = Nothing findWithIndex n p (x:xs) | p x = Just (n, x) | otherwise = findWithIndex (n + 1) p xs haskell-src-exts-1.18.2/src/Language/Haskell/Exts/Pretty.hs0000644000000000000000000021170212746233113021632 0ustar0000000000000000{-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Pretty -- Copyright : (c) Niklas Broberg 2004-2009, -- (c) The GHC Team, Noel Winstanley 1997-2000 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- Pretty printer for Haskell with extensions. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.Pretty ( -- * Pretty printing Pretty, prettyPrintStyleMode, prettyPrintWithMode, prettyPrint, -- * Pretty-printing styles (from "Text.PrettyPrint.HughesPJ") P.Style(..), P.style, P.Mode(..), -- * Haskell formatting modes PPHsMode(..), Indent, PPLayout(..), defaultMode -- * Primitive Printers , prettyPrim, prettyPrimWithMode ) where import Language.Haskell.Exts.Syntax import qualified Language.Haskell.Exts.ParseSyntax as P import Language.Haskell.Exts.SrcLoc hiding (loc) import Prelude hiding (exp) import qualified Text.PrettyPrint as P import Data.List (intersperse) import Data.Maybe (isJust , fromMaybe) #if __GLASGOW_HASKELL__ < 710 import Control.Applicative (Applicative(..), (<$>)) #endif import qualified Control.Monad as M (ap) infixl 5 $$$ ----------------------------------------------------------------------------- -- | Varieties of layout we can use. data PPLayout = PPOffsideRule -- ^ classical layout | PPSemiColon -- ^ classical layout made explicit | PPInLine -- ^ inline decls, with newlines between them | PPNoLayout -- ^ everything on a single line deriving Eq type Indent = Int -- | Pretty-printing parameters. -- -- /Note:/ the 'onsideIndent' must be positive and less than all other indents. data PPHsMode = PPHsMode { -- | indentation of a class or instance classIndent :: Indent, -- | indentation of a @do@-expression doIndent :: Indent, -- | indentation of the body of a -- @case@ expression multiIfIndent :: Indent, -- | indentation of the body of a -- multi-@if@ expression caseIndent :: Indent, -- | indentation of the declarations in a -- @let@ expression letIndent :: Indent, -- | indentation of the declarations in a -- @where@ clause whereIndent :: Indent, -- | indentation added for continuation -- lines that would otherwise be offside onsideIndent :: Indent, -- | blank lines between statements? spacing :: Bool, -- | Pretty-printing style to use layout :: PPLayout, -- | add GHC-style @LINE@ pragmas to output? linePragmas :: Bool } -- | The default mode: pretty-print using the offside rule and sensible -- defaults. defaultMode :: PPHsMode defaultMode = PPHsMode{ classIndent = 8, doIndent = 3, multiIfIndent = 3, caseIndent = 4, letIndent = 4, whereIndent = 6, onsideIndent = 2, spacing = True, layout = PPOffsideRule, linePragmas = False } -- | Pretty printing monad newtype DocM s a = DocM (s -> a) instance Functor (DocM s) where fmap f xs = do x <- xs; return (f x) instance Applicative (DocM s) where pure = retDocM (<*>) = M.ap instance Monad (DocM s) where (>>=) = thenDocM (>>) = then_DocM return = retDocM {-# INLINE thenDocM #-} {-# INLINE then_DocM #-} {-# INLINE retDocM #-} {-# INLINE unDocM #-} {-# INLINE getPPEnv #-} thenDocM :: DocM s a -> (a -> DocM s b) -> DocM s b thenDocM m k = DocM $ \s -> case unDocM m s of a -> unDocM (k a) s then_DocM :: DocM s a -> DocM s b -> DocM s b then_DocM m k = DocM $ \s -> case unDocM m s of _ -> unDocM k s retDocM :: a -> DocM s a retDocM a = DocM $ const a unDocM :: DocM s a -> s -> a unDocM (DocM f) = f -- all this extra stuff, just for this one function. getPPEnv :: DocM s s getPPEnv = DocM id -- So that pp code still looks the same -- this means we lose some generality though -- | The document type produced by these pretty printers uses a 'PPHsMode' -- environment. type Doc = DocM PPHsMode P.Doc -- | Things that can be pretty-printed, including all the syntactic objects -- in "Language.Haskell.Exts.Syntax" and "Language.Haskell.Exts.Annotated.Syntax". class Pretty a where -- | Pretty-print something in isolation. pretty :: a -> Doc -- | Pretty-print something in a precedence context. prettyPrec :: Int -> a -> Doc pretty = prettyPrec 0 prettyPrec _ = pretty -- The pretty printing combinators empty :: Doc empty = return P.empty nest :: Int -> Doc -> Doc nest i m = m >>= return . P.nest i -- Literals text :: String -> Doc text = return . P.text char :: Char -> Doc char = return . P.char int :: Int -> Doc int = return . P.int integer :: Integer -> Doc integer = return . P.integer float :: Float -> Doc float = return . P.float double :: Double -> Doc double = return . P.double -- rational :: Rational -> Doc -- rational = return . P.rational -- Simple Combining Forms parens, brackets, braces, doubleQuotes :: Doc -> Doc parens d = d >>= return . P.parens brackets d = d >>= return . P.brackets braces d = d >>= return . P.braces -- quotes :: Doc -> Doc -- quotes d = d >>= return . P.quotes doubleQuotes d = d >>= return . P.doubleQuotes parensIf :: Bool -> Doc -> Doc parensIf True = parens parensIf False = id -- Constants semi,comma,space,equals :: Doc semi = return P.semi comma = return P.comma -- colon :: Doc -- colon = return P.colon space = return P.space equals = return P.equals {- lparen,rparen,lbrack,rbrack,lbrace,rbrace :: Doc lparen = return P.lparen rparen = return P.rparen lbrack = return P.lbrack rbrack = return P.rbrack lbrace = return P.lbrace rbrace = return P.rbrace -} -- Combinators (<>),(<+>),($$) :: Doc -> Doc -> Doc aM <> bM = do{a<-aM;b<-bM;return (a P.<> b)} aM <+> bM = do{a<-aM;b<-bM;return (a P.<+> b)} aM $$ bM = do{a<-aM;b<-bM;return (a P.$$ b)} ($+$) :: Doc -> Doc -> Doc aM $+$ bM = do{a<-aM;b<-bM;return (a P.$+$ b)} hcat,hsep,vcat,fsep :: [Doc] -> Doc hcat dl = sequence dl >>= return . P.hcat hsep dl = sequence dl >>= return . P.hsep vcat dl = sequence dl >>= return . P.vcat -- sep, cat, fcat :: [Doc] -> Doc -- sep dl = sequence dl >>= return . P.sep -- cat dl = sequence dl >>= return . P.cat fsep dl = sequence dl >>= return . P.fsep -- fcat dl = sequence dl >>= return . P.fcat -- Some More -- hang :: Doc -> Int -> Doc -> Doc -- hang dM i rM = do{d<-dM;r<-rM;return $ P.hang d i r} -- Yuk, had to cut-n-paste this one from Pretty.hs punctuate :: Doc -> [Doc] -> [Doc] punctuate _ [] = [] punctuate p (d1:ds) = go d1 ds where go d [] = [d] go d (e:es) = (d <> p) : go e es -- | render the document with a given style and mode. renderStyleMode :: P.Style -> PPHsMode -> Doc -> String renderStyleMode ppStyle ppMode d = P.renderStyle ppStyle . unDocM d $ ppMode -- | render the document with a given mode. -- renderWithMode :: PPHsMode -> Doc -> String -- renderWithMode = renderStyleMode P.style -- | render the document with 'defaultMode'. -- render :: Doc -> String -- render = renderWithMode defaultMode -- | pretty-print with a given style and mode. prettyPrintStyleMode :: Pretty a => P.Style -> PPHsMode -> a -> String prettyPrintStyleMode ppStyle ppMode = renderStyleMode ppStyle ppMode . pretty -- | pretty-print with the default style and a given mode. prettyPrintWithMode :: Pretty a => PPHsMode -> a -> String prettyPrintWithMode = prettyPrintStyleMode P.style -- | pretty-print with the default style and 'defaultMode'. prettyPrint :: Pretty a => a -> String prettyPrint = prettyPrintWithMode defaultMode -- fullRenderWithMode :: PPHsMode -> P.Mode -> Int -> Float -> -- (P.TextDetails -> a -> a) -> a -> Doc -> a -- fullRenderWithMode ppMode m i f fn e mD = -- P.fullRender m i f fn e $ (unDocM mD) ppMode -- fullRender :: P.Mode -> Int -> Float -> (P.TextDetails -> a -> a) -- -> a -> Doc -> a -- fullRender = fullRenderWithMode defaultMode -- | pretty-print with the default style and 'defaultMode'. prettyPrim :: Pretty a => a -> P.Doc prettyPrim = prettyPrimWithMode defaultMode -- | pretty-print with the default style and a given mode. prettyPrimWithMode :: Pretty a => PPHsMode -> a -> P.Doc prettyPrimWithMode pphs doc = unDocM (pretty doc) pphs ------------------------- Pretty-Print a Module -------------------- {- instance Pretty (Module l) where pretty (Module pos m os mbWarn mbExports imp decls) = markLine pos $ (myVcat $ map pretty os) $$ myVcat ( (if m == ModuleName "" then id else \x -> [topLevel (ppModuleHeader m mbWarn mbExports) x]) (map pretty imp ++ ppDecls (m /= ModuleName "" || not (null imp) || not (null os)) decls]-} -------------------------- Module Header ------------------------------ instance Pretty (ModuleHead l) where pretty (ModuleHead _ m mbWarn mbExportList) = mySep [ text "module", pretty m, maybePP ppWarnTxt mbWarn, maybePP pretty mbExportList, text "where"] instance Pretty (ExportSpecList l) where pretty (ExportSpecList _ especs) = parenList $ map pretty especs ppWarnTxt :: WarningText l -> Doc ppWarnTxt (DeprText _ s) = mySep [text "{-# DEPRECATED", text (show s), text "#-}"] ppWarnTxt (WarnText _ s) = mySep [text "{-# WARNING", text (show s), text "#-}"] instance Pretty (ModuleName l) where pretty (ModuleName _ modName) = text modName instance Pretty (Namespace l) where pretty NoNamespace {} = empty pretty TypeNamespace {} = text "type" pretty PatternNamespace {} = text "pattern" instance Pretty (ExportSpec l) where pretty (EVar _ name) = pretty name pretty (EAbs _ ns name) = pretty ns <+> pretty name pretty (EThingWith _ wc name nameList) = let prettyNames = map pretty nameList names = case wc of NoWildcard {} -> prettyNames EWildcard _ n -> let (before,after) = splitAt n prettyNames in before ++ [text ".."] ++ after in pretty name <> (parenList names) pretty (EModuleContents _ m) = text "module" <+> pretty m instance Pretty (ImportDecl l) where pretty (ImportDecl _ m qual src safe mbPkg mbName mbSpecs) = mySep [text "import", if src then text "{-# SOURCE #-}" else empty, if safe then text "safe" else empty, if qual then text "qualified" else empty, maybePP (\s -> text (show s)) mbPkg, pretty m, maybePP (\m' -> text "as" <+> pretty m') mbName, maybePP pretty mbSpecs] instance Pretty (ImportSpecList l) where pretty (ImportSpecList _ b ispecs) = (if b then text "hiding" else empty) <+> parenList (map pretty ispecs) instance Pretty (ImportSpec l) where pretty (IVar _ name ) = pretty name pretty (IAbs _ ns name) = pretty ns <+> pretty name pretty (IThingAll _ name) = pretty name <> text "(..)" pretty (IThingWith _ name nameList) = pretty name <> (parenList . map pretty $ nameList) instance Pretty (TypeEqn l) where pretty (TypeEqn _ pat eqn) = mySep [pretty pat, equals, pretty eqn] ------------------------- Declarations ------------------------------ class Pretty a => PrettyDeclLike a where wantsBlankline :: a -> Bool instance PrettyDeclLike (Decl l) where wantsBlankline (FunBind {}) = False wantsBlankline (PatBind {}) = False wantsBlankline _ = True condBlankline :: PrettyDeclLike a => a -> Doc condBlankline d = (if wantsBlankline d then blankline else id) $ pretty d ppDecls :: PrettyDeclLike a => Bool -> [a] -> [Doc] ppDecls True ds = map condBlankline ds ppDecls False (d:ds) = pretty d : map condBlankline ds ppDecls _ _ = [] --ppDecls = map condBlankline instance Pretty (InjectivityInfo l) where pretty (InjectivityInfo _ from to) = char '|' <+> pretty from <+> text "->" <+> hsep (map pretty to) instance Pretty (ResultSig l) where pretty (KindSig _ kind) = text "::" <+> pretty kind pretty (TyVarSig _ tv) = char '=' <+> pretty tv instance Pretty (Decl l) where pretty (TypeDecl _ dHead htype) = mySep ( [text "type", pretty dHead] ++ [equals, pretty htype]) pretty (DataDecl _ don context dHead constrList derives) = mySep ( [pretty don, maybePP pretty context, pretty dHead]) <+> (myVcat (zipWith (<+>) (equals : repeat (char '|')) (map pretty constrList)) $$$ maybePP pretty derives) pretty (GDataDecl _ don context dHead optkind gadtList derives) = mySep ( [pretty don, maybePP pretty context, pretty dHead] ++ ppOptKind optkind ++ [text "where"]) $$$ ppBody classIndent (map pretty gadtList) $$$ ppIndent letIndent [maybePP pretty derives] pretty (TypeFamDecl _ dHead optkind optinj) = mySep ([text "type", text "family", pretty dHead , maybePP pretty optkind, maybePP pretty optinj]) pretty (ClosedTypeFamDecl _ dHead optkind optinj eqns) = mySep ([text "type", text "family", pretty dHead , maybePP pretty optkind ,maybePP pretty optinj , text "where"]) $$$ ppBody classIndent (map pretty eqns) pretty (DataFamDecl _ context dHead optkind) = mySep ( [text "data", text "family", maybePP pretty context, pretty dHead , maybePP pretty optkind]) pretty (TypeInsDecl _ ntype htype) = mySep [text "type", text "instance", pretty ntype, equals, pretty htype] pretty (DataInsDecl _ don ntype constrList derives) = mySep [pretty don, text "instance ", pretty ntype] <+> (myVcat (zipWith (<+>) (equals : repeat (char '|')) (map pretty constrList)) $$$ maybePP pretty derives) pretty (GDataInsDecl _ don ntype optkind gadtList derives) = mySep ( [pretty don, text "instance ", pretty ntype] ++ ppOptKind optkind ++ [text "where"]) $$$ ppBody classIndent (map pretty gadtList) $$$ maybePP pretty derives --m{spacing=False} -- special case for empty class declaration pretty (ClassDecl _ context dHead fundeps Nothing) = mySep ( [text "class", maybePP pretty context, pretty dHead , ppFunDeps fundeps]) pretty (ClassDecl _ context dHead fundeps declList) = mySep ( [text "class", maybePP pretty context, pretty dHead , ppFunDeps fundeps, text "where"]) $$$ ppBody classIndent (fromMaybe [] ((ppDecls False) <$> declList)) -- m{spacing=False} -- special case for empty instance declaration pretty (InstDecl _ moverlap iHead Nothing) = mySep ( [text "instance", maybePP pretty moverlap, pretty iHead]) pretty (InstDecl _ overlap iHead declList) = mySep ( [ text "instance", maybePP pretty overlap , pretty iHead, text "where"]) $$$ ppBody classIndent (fromMaybe [] ((ppDecls False) <$> declList)) pretty (DerivDecl _ overlap irule) = mySep ( [text "deriving" , text "instance" , maybePP pretty overlap , pretty irule]) pretty (DefaultDecl _ htypes) = text "default" <+> parenList (map pretty htypes) pretty (SpliceDecl _ splice) = pretty splice pretty (TypeSig _ nameList qualType) = mySep ((punctuate comma . map pretty $ nameList) ++ [text "::", pretty qualType]) -- Req can be ommitted if it is empty -- We must print prov if req is nonempty pretty (PatSynSig _ n mtvs prov req t) = let contexts = map (maybePP pretty) [prov, req] in mySep ( [text "pattern", pretty n, text "::", ppForall mtvs] ++ contexts ++ [pretty t] ) pretty (FunBind _ matches) = do e <- fmap layout getPPEnv case e of PPOffsideRule -> foldr ($$$) empty (map pretty matches) _ -> foldr (\x y -> x <> semi <> y) empty (map pretty matches) pretty (PatBind _ pat rhs whereBinds) = myFsep [pretty pat, pretty rhs] $$$ ppWhere whereBinds pretty (InfixDecl _ assoc prec opList) = mySep ([pretty assoc, maybePP int prec] ++ (punctuate comma . map pretty $ opList)) pretty (PatSyn _ pat rhs dir) = let sep = case dir of ImplicitBidirectional {} -> "=" ExplicitBidirectional {} -> "<-" Unidirectional {} -> "<-" in (mySep ([text "pattern", pretty pat, text sep, pretty rhs])) $$$ (case dir of ExplicitBidirectional _ ds -> nest 2 (text "where" $$$ ppBody whereIndent (ppDecls False ds)) _ -> empty) pretty (ForImp _ cconv saf str name typ) = mySep [text "foreign import", pretty cconv, maybePP pretty saf, maybe empty (text . show) str, pretty name, text "::", pretty typ] pretty (ForExp _ cconv str name typ) = mySep [text "foreign export", pretty cconv, text (show str), pretty name, text "::", pretty typ] pretty (RulePragmaDecl _ rules) = myVcat $ text "{-# RULES" : map pretty rules ++ [text " #-}"] pretty (DeprPragmaDecl _ deprs) = myVcat $ text "{-# DEPRECATED" : map ppWarnDepr deprs ++ [text " #-}"] pretty (WarnPragmaDecl _ deprs) = myVcat $ text "{-# WARNING" : map ppWarnDepr deprs ++ [text " #-}"] pretty (InlineSig _ inl activ name) = mySep [text (if inl then "{-# INLINE" else "{-# NOINLINE") , maybePP pretty activ, pretty name, text "#-}"] pretty (InlineConlikeSig _ activ name) = mySep [ text "{-# INLINE CONLIKE", maybePP pretty activ , pretty name, text "#-}"] pretty (SpecSig _ activ name types) = mySep $ [text "{-# SPECIALISE", maybePP pretty activ , pretty name, text "::"] ++ punctuate comma (map pretty types) ++ [text "#-}"] pretty (SpecInlineSig _ inl activ name types) = mySep $ [text "{-# SPECIALISE", text (if inl then "INLINE" else "NOINLINE"), maybePP pretty activ, pretty name, text "::"] ++ (punctuate comma $ map pretty types) ++ [text "#-}"] pretty (InstSig _ irule) = mySep $ [ text "{-# SPECIALISE", text "instance", pretty irule , text "#-}"] pretty (AnnPragma _ annp) = mySep [text "{-# ANN", pretty annp, text "#-}"] pretty (MinimalPragma _ b) = let bs = case b of { Just b' -> pretty b'; _ -> empty } in myFsep [text "{-# MINIMAL", bs, text "#-}"] pretty (RoleAnnotDecl _ qn rs) = mySep ( [text "type", text "role", pretty qn] ++ map pretty rs ) instance Pretty (InstRule l) where pretty (IRule _ tvs mctxt qn) = mySep [ppForall tvs , maybePP pretty mctxt, pretty qn] pretty (IParen _ ih) = parens (pretty ih) instance Pretty (InstHead l) where pretty (IHCon _ qn) = pretty qn pretty (IHInfix _ ta qn) = mySep [pretty ta, pretty qn] pretty (IHParen _ ih) = parens (pretty ih) pretty (IHApp _ ih t) = myFsep [pretty ih, pretty t] instance Pretty (Annotation l) where pretty (Ann _ n e) = myFsep [pretty n, pretty e] pretty (TypeAnn _ n e) = myFsep [text "type", pretty n, pretty e] pretty (ModuleAnn _ e) = myFsep [text "module", pretty e] instance Pretty (BooleanFormula l) where pretty (VarFormula _ n) = pretty n pretty (AndFormula _ bs) = myFsep $ punctuate (text " ,") $ map pretty bs pretty (OrFormula _ bs) = myFsep $ punctuate (text " |") $ map pretty bs pretty (ParenFormula _ b) = parens $ pretty b instance Pretty (Role l) where pretty RoleWildcard{} = char '_' pretty Nominal{} = text "nominal" pretty Representational{} = text "representational" pretty Phantom{} = text "phantom" instance Pretty (DataOrNew l) where pretty DataType{} = text "data" pretty NewType{} = text "newtype" instance Pretty (Assoc l) where pretty AssocNone{} = text "infix" pretty AssocLeft{} = text "infixl" pretty AssocRight{} = text "infixr" instance Pretty (Match l) where pretty (InfixMatch _ l op rs rhs wbinds) = let lhs = case rs of [] -> [] -- Should never reach (r:rs') -> let hd = [prettyPrec 2 l, ppNameInfix op, prettyPrec 2 r] in if null rs' then hd else parens (myFsep hd) : map (prettyPrec 3) rs' in myFsep (lhs ++ [pretty rhs]) $$$ ppWhere wbinds pretty (Match _ f ps rhs whereBinds) = myFsep (pretty f : map (prettyPrec 3) ps ++ [pretty rhs]) $$$ ppWhere whereBinds ppWhere :: Maybe (Binds l) -> Doc ppWhere Nothing = empty ppWhere (Just (BDecls _ l)) = nest 2 (text "where" $$$ ppBody whereIndent (ppDecls False l)) ppWhere (Just (IPBinds _ b)) = nest 2 (text "where" $$$ ppBody whereIndent (ppDecls False b)) instance PrettyDeclLike (ClassDecl l) where wantsBlankline (ClsDecl _ d) = wantsBlankline d wantsBlankline (ClsDefSig {}) = True wantsBlankline _ = False instance Pretty (ClassDecl l) where pretty (ClsDecl _ decl) = pretty decl pretty (ClsDataFam _ context declHead optkind) = mySep ( [text "data", maybePP pretty context, pretty declHead , maybePP pretty optkind]) pretty (ClsTyFam _ declHead optkind optinj) = mySep ( [text "type", pretty declHead , maybePP pretty optkind, maybePP pretty optinj]) pretty (ClsTyDef _ ntype) = mySep [text "type", pretty ntype] pretty (ClsDefSig _ name typ) = mySep [ text "default", pretty name, text "::", pretty typ] instance Pretty (DeclHead l) where pretty (DHead _ n) = pretty n pretty (DHInfix _ tv n) = pretty tv <+> ppNameInfix n pretty (DHParen _ d) = parens (pretty d) pretty (DHApp _ dh tv) = pretty dh <+> pretty tv instance PrettyDeclLike (InstDecl l) where wantsBlankline (InsDecl _ d) = wantsBlankline d wantsBlankline _ = False instance Pretty (InstDecl l) where pretty (InsDecl _ decl) = pretty decl pretty (InsType _ ntype htype) = mySep [text "type", pretty ntype, equals, pretty htype] pretty (InsData _ don ntype constrList derives) = mySep [pretty don, pretty ntype] <+> (myVcat (zipWith (<+>) (equals : repeat (char '|')) (map pretty constrList)) $$$ maybePP pretty derives) pretty (InsGData _ don ntype optkind gadtList derives) = mySep ( [pretty don, pretty ntype] ++ ppOptKind optkind ++ [text "where"]) $$$ ppBody classIndent (map pretty gadtList) $$$ maybePP pretty derives -- pretty (InsInline loc inl activ name) = -- markLine loc $ -- mySep [text (if inl then "{-# INLINE" else "{-# NOINLINE"), pretty activ, pretty name, text "#-}"] ------------------------- FFI stuff ------------------------------------- instance Pretty (Safety l) where pretty PlayRisky {} = text "unsafe" pretty (PlaySafe _ b) = text $ if b then "threadsafe" else "safe" pretty PlayInterruptible {} = text "interruptible" instance Pretty (CallConv l) where pretty StdCall {} = text "stdcall" pretty CCall {} = text "ccall" pretty CPlusPlus {} = text "cplusplus" pretty DotNet {} = text "dotnet" pretty Jvm {} = text "jvm" pretty Js {} = text "js" pretty JavaScript {} = text "javascript" pretty CApi {} = text "capi" ------------------------- Pragmas --------------------------------------- ppWarnDepr :: ([Name l], String) -> Doc ppWarnDepr (names, txt) = mySep $ punctuate comma (map pretty names) ++ [text $ show txt] instance Pretty (Rule l) where pretty (Rule _ tag activ rvs rhs lhs) = mySep [text $ show tag, maybePP pretty activ, maybePP ppRuleVars rvs, pretty rhs, char '=', pretty lhs] ppRuleVars :: [RuleVar l] -> Doc ppRuleVars [] = empty ppRuleVars rvs = mySep $ text "forall" : map pretty rvs ++ [char '.'] instance Pretty (Activation l) where pretty (ActiveFrom _ i) = char '[' <> int i <> char ']' pretty (ActiveUntil _ i) = text "[~" <> int i <> char ']' instance Pretty (Overlap l) where pretty Overlap {} = text "{-# OVERLAP #-}" pretty NoOverlap {} = text "{-# NO_OVERLAP #-}" pretty Incoherent {} = text "{-# INCOHERENT #-}" instance Pretty (RuleVar l) where pretty (RuleVar _ n) = pretty n pretty (TypedRuleVar _ n t) = parens $ mySep [pretty n, text "::", pretty t] -- Spaces are stripped from the pragma text but other whitespace -- is not. ppOptionsPragma :: Doc -> String -> Doc ppOptionsPragma opt s = case s of ('\n':_) -> opt <> text s <> text "#-}" _ -> myFsep [opt, text s <> text "#-}"] instance Pretty (ModulePragma l) where pretty (LanguagePragma _ ns) = myFsep $ text "{-# LANGUAGE" : punctuate (char ',') (map pretty ns) ++ [text "#-}"] pretty (OptionsPragma _ (Just tool) s) = ppOptionsPragma (text "{-# OPTIONS_" <> pretty tool) s pretty (OptionsPragma _ _ s) = ppOptionsPragma (text "{-# OPTIONS") s pretty (AnnModulePragma _ mann) = myFsep [text "{-# ANN", pretty mann, text "#-}"] instance Pretty Tool where pretty (UnknownTool s) = text s pretty t = text $ show t ------------------------- Data & Newtype Bodies ------------------------- instance Pretty (QualConDecl l) where pretty (QualConDecl _pos tvs ctxt con) = myFsep [ppForall tvs, maybePP pretty ctxt, pretty con] instance Pretty (GadtDecl l) where pretty (GadtDecl _pos name names ty) = case names of Nothing -> myFsep [pretty name, text "::", pretty ty] Just ts' -> myFsep [pretty name, text "::" , braceList . map pretty $ ts', text "->", pretty ty] instance Pretty (ConDecl l) where pretty (RecDecl _ name fieldList) = pretty name <> braceList (map pretty fieldList) {- pretty (ConDecl name@(Symbol _) [l, r]) = myFsep [prettyPrec prec_btype l, ppName name, prettyPrec prec_btype r] -} pretty (ConDecl _ name typeList) = mySep $ pretty name : map (prettyPrec prec_atype) typeList pretty (InfixConDecl _ l name r) = myFsep [prettyPrec prec_btype l, ppNameInfix name, prettyPrec prec_btype r] instance Pretty (FieldDecl l) where pretty (FieldDecl _ names ty) = myFsepSimple $ (punctuate comma . map pretty $ names) ++ [text "::", pretty ty] instance Pretty (BangType l) where pretty BangedTy {} = char '!' pretty LazyTy {} = char '~' pretty NoStrictAnnot {} = empty instance Pretty (Unpackedness l) where pretty Unpack {} = text "{-# UNPACK #-} " pretty NoUnpack {} = text "{-# NOUNPACK #-} " pretty NoUnpackPragma {} = empty instance Pretty (Deriving l) where pretty (Deriving _ []) = empty pretty (Deriving _ [d]) = text "deriving" <+> pretty d pretty (Deriving _ d) = text "deriving" <+> parenList (map pretty d) ------------------------- Types ------------------------- ppBType :: Type l -> Doc ppBType = prettyPrec prec_btype ppAType :: Type l -> Doc ppAType = prettyPrec prec_atype -- precedences for types prec_btype, prec_atype :: Int prec_btype = 1 -- left argument of ->, -- or either argument of an infix data constructor prec_atype = 2 -- argument of type or data constructor, or of a class instance Pretty (Type l) where prettyPrec p (TyForall _ mtvs ctxt htype) = parensIf (p > 0) $ myFsep [ppForall mtvs, maybePP pretty ctxt, pretty htype] prettyPrec p (TyFun _ a b) = parensIf (p > 0) $ myFsep [ppBType a, text "->", pretty b] prettyPrec _ (TyTuple _ bxd l) = let ds = map pretty l in case bxd of Boxed -> parenList ds Unboxed -> hashParenList ds prettyPrec _ (TyList _ t) = brackets $ pretty t prettyPrec _ (TyParArray _ t) = bracketColonList [pretty t] prettyPrec p (TyApp _ a b) = {- | a == list_tycon = brackets $ pretty b -- special case | otherwise = -} parensIf (p > prec_btype) $ myFsep [pretty a, ppAType b] prettyPrec _ (TyVar _ name) = pretty name prettyPrec _ (TyCon _ name) = pretty name prettyPrec _ (TyParen _ t) = parens (pretty t) -- prettyPrec _ (TyPred asst) = pretty asst prettyPrec _ (TyInfix _ a op b) = myFsep [pretty a, ppQNameInfix op, pretty b] prettyPrec _ (TyKind _ t k) = parens (myFsep [pretty t, text "::", pretty k]) prettyPrec _ (TyPromoted _ p) = pretty p prettyPrec p (TyEquals _ a b) = parensIf (p > 0) (myFsep [pretty a, text "~", pretty b]) prettyPrec _ (TySplice _ s) = pretty s prettyPrec _ (TyBang _ b u t) = pretty u <> pretty b <> prettyPrec prec_atype t prettyPrec _ (TyWildCard _ mn) = char '_' <> maybePP pretty mn prettyPrec _ (TyQuasiQuote _ n qt) = text ("[" ++ n ++ "|" ++ qt ++ "|]") instance Pretty (Promoted l) where pretty p = case p of PromotedInteger _ n _ -> integer n PromotedString _ s _ -> doubleQuotes $ text s PromotedCon _ hasQuote qn -> addQuote hasQuote $ maybe (pretty qn) pretty (getSpecialName qn) PromotedList _ hasQuote list -> addQuote hasQuote $ bracketList . punctuate comma . map pretty $ list PromotedTuple _ list -> addQuote True $ parenList $ map pretty list PromotedUnit {} -> addQuote True $ text "()" where addQuote True doc = char '\'' <> doc addQuote False doc = doc instance Pretty (TyVarBind l) where pretty (KindedVar _ var kind) = parens $ myFsep [pretty var, text "::", pretty kind] pretty (UnkindedVar _ var) = pretty var ppForall :: Maybe [TyVarBind l] -> Doc ppForall Nothing = empty ppForall (Just []) = empty ppForall (Just vs) = myFsep (text "forall" : map pretty vs ++ [char '.']) ---------------------------- Kinds ---------------------------- instance Pretty (Kind l) where prettyPrec _ KindStar{} = text "*" prettyPrec n (KindFn _ a b) = parensIf (n > 0) $ myFsep [prettyPrec 1 a, text "->", pretty b] prettyPrec _ (KindParen _ k) = parens $ pretty k prettyPrec _ (KindVar _ n) = pretty n prettyPrec _ (KindTuple _ t) = parenList . map pretty $ t prettyPrec _ (KindList _ l) = brackets . pretty $ l prettyPrec n (KindApp _ a b) = parensIf (n > 3) $ myFsep [prettyPrec 3 a, prettyPrec 4 b] ppOptKind :: Maybe (Kind l) -> [Doc] ppOptKind Nothing = [] ppOptKind (Just k) = [text "::", pretty k] ------------------- Functional Dependencies ------------------- instance Pretty (FunDep l) where pretty (FunDep _ from to) = myFsep $ map pretty from ++ [text "->"] ++ map pretty to ppFunDeps :: [FunDep l] -> Doc ppFunDeps [] = empty ppFunDeps fds = myFsep $ (char '|':) . punctuate comma . map pretty $ fds ------------------------- Expressions ------------------------- instance Pretty (Rhs l) where pretty (UnGuardedRhs _ e) = equals <+> pretty e pretty (GuardedRhss _ guardList) = myVcat . map pretty $ guardList instance Pretty (GuardedRhs l) where pretty (GuardedRhs _pos guards ppBody') = myFsep $ [char '|'] ++ (punctuate comma . map pretty $ guards) ++ [equals, pretty ppBody'] newtype GuardedAlts l = GuardedAlts (Rhs l) newtype GuardedAlt l = GuardedAlt (GuardedRhs l) instance Pretty (GuardedAlts l) where pretty (GuardedAlts (UnGuardedRhs _ e)) = text "->" <+> pretty e pretty (GuardedAlts (GuardedRhss _ guardList)) = myVcat . map (pretty . GuardedAlt) $ guardList instance Pretty (GuardedAlt l) where pretty (GuardedAlt (GuardedRhs _pos guards ppBody')) = myFsep $ [char '|'] ++ (punctuate comma . map pretty $ guards) ++ [text "->", pretty ppBody'] instance Pretty (Literal l) where pretty (Int _ i _) = integer i pretty (Char _ c _) = text (show c) pretty (String _ s _) = text (show s) pretty (Frac _ r _) = double (fromRational r) -- GHC unboxed literals: pretty (PrimChar _ c _) = text (show c) <> char '#' pretty (PrimString _ s _) = text (show s) <> char '#' pretty (PrimInt _ i _) = integer i <> char '#' pretty (PrimWord _ w _) = integer w <> text "##" pretty (PrimFloat _ r _) = float (fromRational r) <> char '#' pretty (PrimDouble _ r _) = double (fromRational r) <> text "##" instance Pretty (Exp l) where prettyPrec _ (Lit _ l) = pretty l -- lambda stuff -- WARNING: This stuff is fragile. See #152 for one example of how -- things can break. prettyPrec p (InfixApp _ a op b) = parensIf (p > 2) $ myFsep [prettyPrec 1 a, pretty op, prettyPrec 1 b] prettyPrec p (NegApp _ e) = parensIf (p > 0) $ char '-' <> prettyPrec 2 e prettyPrec p (App _ a b) = parensIf (p > 3) $ myFsep [prettyPrec 3 a, prettyPrec 4 b] prettyPrec p (Lambda _loc patList ppBody') = parensIf (p > 1) $ myFsep $ char '\\' : map (prettyPrec 3) patList ++ [text "->", pretty ppBody'] -- keywords -- two cases for lets prettyPrec p (Let _ (BDecls _ declList) letBody) = parensIf (p > 1) $ ppLetExp declList letBody prettyPrec p (Let _ (IPBinds _ bindList) letBody) = parensIf (p > 1) $ ppLetExp bindList letBody prettyPrec p (If _ cond thenexp elsexp) = parensIf (p > 1) $ myFsep [text "if", pretty cond, text "then", pretty thenexp, text "else", pretty elsexp] prettyPrec p (MultiIf _ alts) = parensIf (p > 1) $ text "if" $$$ ppBody multiIfIndent (map (pretty . GuardedAlt) alts) prettyPrec p (Case _ cond altList) = parensIf (p > 1) $ myFsep [text "case", pretty cond, text "of"] $$$ ppBody caseIndent (map pretty altList) prettyPrec p (Do _ stmtList) = parensIf (p > 1) $ text "do" $$$ ppBody doIndent (map pretty stmtList) prettyPrec p (MDo _ stmtList) = parensIf (p > 1) $ text "mdo" $$$ ppBody doIndent (map pretty stmtList) -- Constructors & Vars prettyPrec _ (Var _ name) = pretty name prettyPrec _ (OverloadedLabel _ name) = text ('#':name) prettyPrec _ (IPVar _ ipname) = pretty ipname prettyPrec _ (Con _ name) = pretty name prettyPrec _ (Tuple _ bxd expList) = let ds = map pretty expList in case bxd of Boxed -> parenList ds Unboxed -> hashParenList ds prettyPrec _ (TupleSection _ bxd mExpList) = let ds = map (maybePP pretty) mExpList in case bxd of Boxed -> parenList ds Unboxed -> hashParenList ds -- weird stuff prettyPrec _ (Paren _ e) = parens . pretty $ e prettyPrec _ (LeftSection _ e op) = parens (pretty e <+> pretty op) prettyPrec _ (RightSection _ op e) = parens (pretty op <+> pretty e) prettyPrec _ (RecConstr _ c fieldList) = pretty c <> (braceList . map pretty $ fieldList) prettyPrec _ (RecUpdate _ e fieldList) = pretty e <> (braceList . map pretty $ fieldList) -- Lists and parallel arrays prettyPrec _ (List _ list) = bracketList . punctuate comma . map pretty $ list prettyPrec _ (ParArray _ arr) = bracketColonList . map pretty $ arr prettyPrec _ (EnumFrom _ e) = bracketList [pretty e, text ".."] prettyPrec _ (EnumFromTo _ from to) = bracketList [pretty from, text "..", pretty to] prettyPrec _ (EnumFromThen _ from thenE) = bracketList [pretty from <> comma, pretty thenE, text ".."] prettyPrec _ (EnumFromThenTo _ from thenE to) = bracketList [pretty from <> comma, pretty thenE, text "..", pretty to] prettyPrec _ (ParArrayFromTo _ from to) = bracketColonList [pretty from, text "..", pretty to] prettyPrec _ (ParArrayFromThenTo _ from thenE to) = bracketColonList [pretty from <> comma, pretty thenE, text "..", pretty to] prettyPrec _ (ListComp _ e qualList) = bracketList ([pretty e, char '|'] ++ (punctuate comma . map pretty $ qualList)) prettyPrec _ (ParComp _ e qualLists) = bracketList (punctuate (char '|') $ pretty e : map (hsep . punctuate comma . map pretty) qualLists) prettyPrec _ (ParArrayComp _ e qualArrs) = bracketColonList (punctuate (char '|') $ pretty e : map (hsep . punctuate comma . map pretty) qualArrs) prettyPrec p (ExpTypeSig _pos e ty) = parensIf (p > 0) $ myFsep [pretty e, text "::", pretty ty] -- Template Haskell prettyPrec _ (BracketExp _ b) = pretty b prettyPrec _ (SpliceExp _ s) = pretty s prettyPrec _ (TypQuote _ t) = text "\'\'" <> pretty t prettyPrec _ (VarQuote _ x) = text "\'" <> pretty x prettyPrec _ (QuasiQuote _ n qt) = text ("[" ++ n ++ "|" ++ qt ++ "|]") -- Hsx prettyPrec _ (XTag _ n attrs mattr cs) = let ax = maybe [] (return . pretty) mattr in hcat $ (myFsep $ (char '<' <> pretty n): map pretty attrs ++ ax ++ [char '>']): map pretty cs ++ [myFsep [text " pretty n, char '>']] prettyPrec _ (XETag _ n attrs mattr) = let ax = maybe [] (return . pretty) mattr in myFsep $ (char '<' <> pretty n): map pretty attrs ++ ax ++ [text "/>"] prettyPrec _ (XPcdata _ s) = text s prettyPrec _ (XExpTag _ e) = myFsep [text "<%", pretty e, text "%>"] prettyPrec _ (XChildTag _ cs) = myFsep $ text "<%>" : map pretty cs ++ [text ""] -- Pragmas prettyPrec _ (CorePragma _ s e) = myFsep $ map text ["{-# CORE", show s, "#-}"] ++ [pretty e] prettyPrec _ (SCCPragma _ s e) = myFsep $ map text ["{-# SCC", show s, "#-}"] ++ [pretty e] prettyPrec _ (GenPragma _ s (a,b) (c,d) e) = myFsep [text "{-# GENERATED", text $ show s, int a, char ':', int b, char '-', int c, char ':', int d, text "#-}", pretty e] -- Arrows prettyPrec p (Proc _ pat e) = parensIf (p > 1) $ myFsep [text "proc", pretty pat, text "->", pretty e] prettyPrec p (LeftArrApp _ l r) = parensIf (p > 0) $ myFsep [pretty l, text "-<", pretty r] prettyPrec p (RightArrApp _ l r) = parensIf (p > 0) $ myFsep [pretty l, text ">-", pretty r] prettyPrec p (LeftArrHighApp _ l r) = parensIf (p > 0) $ myFsep [pretty l, text "-<<", pretty r] prettyPrec p (RightArrHighApp _ l r) = parensIf (p > 0) $ myFsep [pretty l, text ">>-", pretty r] -- LamdaCase prettyPrec p (LCase _ altList) = parensIf (p > 1) $ text "\\case" $$$ ppBody caseIndent (map pretty altList) prettyPrec _ ExprHole{} = char '_' prettyPrec _ (TypeApp _ ty) = char '@' <> pretty ty instance Pretty (XAttr l) where pretty (XAttr _ n v) = myFsep [pretty n, char '=', pretty v] instance Pretty (XName l) where pretty (XName _ n) = text n pretty (XDomName _ d n) = text d <> char ':' <> text n ppLetExp :: (PrettyDeclLike a, Pretty b) => [a] -> b -> Doc ppLetExp l b = myFsep [text "let" <+> ppBody letIndent (ppDecls False l), text "in", pretty b] --------------------- Template Haskell ------------------------- instance Pretty (Bracket l) where pretty (ExpBracket _ e) = ppBracket "[|" e pretty (PatBracket _ p) = ppBracket "[p|" p pretty (TypeBracket _ t) = ppBracket "[t|" t pretty (DeclBracket _ d) = myFsep $ text "[d|" : ppDecls True d ++ [text "|]"] ppBracket :: Pretty a => String -> a -> Doc ppBracket o x = myFsep [text o, pretty x, text "|]"] instance Pretty (Splice l) where pretty (IdSplice _ s) = char '$' <> text s pretty (ParenSplice _ e) = myFsep [text "$(", pretty e, char ')'] ------------------------- Patterns ----------------------------- instance Pretty (Pat l) where prettyPrec _ (PVar _ name) = pretty name prettyPrec _ (PLit _ (Signless {}) lit) = pretty lit prettyPrec p (PLit _ (Negative{}) lit) = parensIf (p > 1) $ char '-' <> pretty lit prettyPrec p (PInfixApp l a op b) = parensIf (p > 0) $ myFsep [prettyPrec 1 a, pretty (QConOp l op), prettyPrec 1 b] prettyPrec p (PApp _ n ps) = parensIf (p > 2 && not (null ps)) $ myFsep (pretty n : map (prettyPrec 3) ps) prettyPrec _ (PTuple _ bxd ps) = let ds = map pretty ps in case bxd of Boxed -> parenList ds Unboxed -> hashParenList ds prettyPrec _ (PList _ ps) = bracketList . punctuate comma . map pretty $ ps prettyPrec _ (PParen _ pat) = parens . pretty $ pat prettyPrec _ (PRec _ c fields) = pretty c <> (braceList . map pretty $ fields) -- special case that would otherwise be buggy prettyPrec _ (PAsPat _ name (PIrrPat _ pat)) = myFsep [pretty name <> char '@', char '~' <> prettyPrec 3 pat] prettyPrec _ (PAsPat _ name pat) = hcat [pretty name, char '@', prettyPrec 3 pat] prettyPrec _ PWildCard {} = char '_' prettyPrec _ (PIrrPat _ pat) = char '~' <> prettyPrec 3 pat prettyPrec p (PatTypeSig _pos pat ty) = parensIf (p > 0) $ myFsep [pretty pat, text "::", pretty ty] prettyPrec p (PViewPat _ e pat) = parensIf (p > 0) $ myFsep [pretty e, text "->", pretty pat] prettyPrec p (PNPlusK _ n k) = parensIf (p > 0) $ myFsep [pretty n, text "+", text $ show k] -- HaRP prettyPrec _ (PRPat _ rs) = bracketList . punctuate comma . map pretty $ rs -- Hsx prettyPrec _ (PXTag _ n attrs mattr cp) = let ap = maybe [] (return . pretty) mattr in hcat $ -- TODO: should not introduce blanks (myFsep $ (char '<' <> pretty n): map pretty attrs ++ ap ++ [char '>']): map pretty cp ++ [myFsep [text " pretty n, char '>']] prettyPrec _ (PXETag _ n attrs mattr) = let ap = maybe [] (return . pretty) mattr in myFsep $ (char '<' <> pretty n): map pretty attrs ++ ap ++ [text "/>"] prettyPrec _ (PXPcdata _ s) = text s prettyPrec _ (PXPatTag _ p) = myFsep [text "<%", pretty p, text "%>"] prettyPrec _ (PXRPats _ ps) = myFsep $ text "<[" : map pretty ps ++ [text "%>"] -- BangPatterns prettyPrec _ (PBangPat _ pat) = text "!" <> prettyPrec 3 pat prettyPrec _ (PQuasiQuote _ n qt) = text ("[$" ++ n ++ "|" ++ qt ++ "|]") instance Pretty (PXAttr l) where pretty (PXAttr _ n p) = myFsep [pretty n, char '=', pretty p] instance Pretty (PatField l) where pretty (PFieldPat _ name pat) = myFsep [pretty name, equals, pretty pat] pretty (PFieldPun _ name) = pretty name pretty (PFieldWildcard{}) = text ".." --------------------- Regular Patterns ------------------------- instance Pretty (RPat l) where pretty (RPOp _ r op) = pretty r <> pretty op pretty (RPEither _ r1 r2) = parens . myFsep $ [pretty r1, char '|', pretty r2] pretty (RPSeq _ rs) = myFsep $ text "(|" : (punctuate comma . map pretty $ rs) ++ [text "|)"] pretty (RPGuard _ r gs) = myFsep $ text "(|" : pretty r : char '|' : (punctuate comma . map pretty $ gs) ++ [text "|)"] -- special case that would otherwise be buggy pretty (RPCAs _ n (RPPat _ (PIrrPat _ p))) = myFsep [pretty n <> text "@:", char '~' <> pretty p] pretty (RPCAs _ n r) = hcat [pretty n, text "@:", pretty r] -- special case that would otherwise be buggy pretty (RPAs _ n (RPPat _ (PIrrPat _ p))) = myFsep [pretty n <> text "@:", char '~' <> pretty p] pretty (RPAs _ n r) = hcat [pretty n, char '@', pretty r] pretty (RPPat _ p) = pretty p pretty (RPParen _ rp) = parens . pretty $ rp instance Pretty (RPatOp l) where pretty RPStar{} = char '*' pretty RPStarG{} = text "*!" pretty RPPlus{} = char '+' pretty RPPlusG{} = text "+!" pretty RPOpt{} = char '?' pretty RPOptG{} = text "?!" ------------------------- Case bodies ------------------------- instance Pretty (Alt l) where pretty (Alt _pos e gAlts binds) = pretty e <+> pretty (GuardedAlts gAlts) $$$ ppWhere binds ------------------------- Statements in monads, guards & list comprehensions ----- instance Pretty (Stmt l) where pretty (Generator _loc e from) = pretty e <+> text "<-" <+> pretty from pretty (Qualifier _ e) = pretty e -- two cases for lets pretty (LetStmt _ (BDecls _ declList)) = ppLetStmt declList pretty (LetStmt _ (IPBinds _ bindList)) = ppLetStmt bindList pretty (RecStmt _ stmtList) = text "rec" $$$ ppBody letIndent (map pretty stmtList) ppLetStmt :: Pretty a => [a] -> Doc ppLetStmt l = text "let" $$$ ppBody letIndent (map pretty l) instance Pretty (QualStmt l) where pretty (QualStmt _ s) = pretty s pretty (ThenTrans _ f) = myFsep [text "then", pretty f] pretty (ThenBy _ f e) = myFsep [text "then", pretty f, text "by", pretty e] pretty (GroupBy _ e) = myFsep [text "then", text "group", text "by", pretty e] pretty (GroupUsing _ f) = myFsep [text "then", text "group", text "using", pretty f] pretty (GroupByUsing _ e f) = myFsep [text "then", text "group", text "by", pretty e, text "using", pretty f] ------------------------- Record updates instance Pretty (FieldUpdate l) where pretty (FieldUpdate _ name e) = myFsep [pretty name, equals, pretty e] pretty (FieldPun _ name) = pretty name pretty (FieldWildcard {}) = text ".." ------------------------- Names ------------------------- instance Pretty (QOp l) where pretty (QVarOp _ n) = ppQNameInfix n pretty (QConOp _ n) = ppQNameInfix n ppQNameInfix :: QName l -> Doc ppQNameInfix name | isSymbolQName name = ppQName name | otherwise = char '`' <> ppQName name <> char '`' instance Pretty (QName l) where pretty name = case name of UnQual _ (Symbol _ ('#':_)) -> char '(' <+> ppQName name <+> char ')' _ -> parensIf (isSymbolQName name) (ppQName name) ppQName :: QName l -> Doc ppQName (UnQual _ name) = ppName name ppQName (Qual _ m name) = pretty m <> char '.' <> ppName name ppQName (Special _ sym) = pretty sym instance Pretty (Op l) where pretty (VarOp _ n) = ppNameInfix n pretty (ConOp _ n) = ppNameInfix n ppNameInfix :: Name l -> Doc ppNameInfix name | isSymbolName name = ppName name | otherwise = char '`' <> ppName name <> char '`' instance Pretty (Name l) where pretty name = case name of Symbol _ ('#':_) -> char '(' <+> ppName name <+> char ')' _ -> parensIf (isSymbolName name) (ppName name) ppName :: Name l -> Doc ppName (Ident _ s) = text s ppName (Symbol _ s) = text s instance Pretty (IPName l) where pretty (IPDup _ s) = char '?' <> text s pretty (IPLin _ s) = char '%' <> text s instance PrettyDeclLike (IPBind l) where wantsBlankline _ = False instance Pretty (IPBind l) where pretty (IPBind _loc ipname exp) = myFsep [pretty ipname, equals, pretty exp] instance Pretty (CName l) where pretty (VarName _ n) = pretty n pretty (ConName _ n) = pretty n instance Pretty (SpecialCon l) where pretty (UnitCon {}) = text "()" pretty (ListCon {}) = text "[]" pretty (FunCon {}) = text "->" pretty (TupleCon _ b n) = listFun $ foldr (<>) empty (replicate (n-1) comma) where listFun = if b == Unboxed then hashParens else parens pretty (Cons {}) = text ":" pretty (UnboxedSingleCon {}) = text "(# #)" isSymbolName :: Name l -> Bool isSymbolName (Symbol {}) = True isSymbolName _ = False isSymbolQName :: QName l -> Bool isSymbolQName (UnQual _ n) = isSymbolName n isSymbolQName (Qual _ _ n) = isSymbolName n isSymbolQName (Special _ (Cons {})) = True isSymbolQName (Special _ (FunCon {})) = True isSymbolQName _ = False getSpecialName :: QName l -> Maybe (SpecialCon l) getSpecialName (Special _ n) = Just n getSpecialName _ = Nothing -- Contexts are "sets" of assertions. Several members really means it's a -- CxTuple, but we can't represent that in our list of assertions. -- Therefore: print single member contexts without parenthesis, and treat -- larger contexts as tuples. instance (Pretty (Context l)) where pretty (CxEmpty _) = text "()" <+> text "=>" pretty (CxSingle _ ctxt) = pretty ctxt <+> text "=>" pretty (CxTuple _ context) = mySep [parenList (map pretty context), text "=>"] -- hacked for multi-parameter type classes instance Pretty (Asst l) where pretty (ClassA _ a ts) = myFsep $ pretty a : map ppAType ts pretty (AppA _ n ns) = myFsep $ pretty n : map pretty ns pretty (InfixA _ a op b) = myFsep [pretty a, ppQNameInfix op, pretty b] pretty (IParam _ i t) = myFsep [pretty i, text "::", pretty t] pretty (EqualP _ t1 t2) = myFsep [pretty t1, text "~", pretty t2] pretty (ParenA _ a) = parens (pretty a) pretty (WildCardA _ mn) = char '_' <> maybePP pretty mn -- Pretty print a source location, useful for printing out error messages instance Pretty SrcLoc where pretty srcLoc = return $ P.hsep [ colonFollow (P.text $ srcFilename srcLoc) , colonFollow (P.int $ srcLine srcLoc) , P.int $ srcColumn srcLoc ] colonFollow :: P.Doc -> P.Doc colonFollow p = P.hcat [ p, P.colon ] instance Pretty SrcSpan where pretty srcSpan = return $ P.hsep [ colonFollow (P.text $ srcSpanFilename srcSpan) , P.hcat [ P.text "(" , P.int $ srcSpanStartLine srcSpan , P.colon , P.int $ srcSpanStartColumn srcSpan , P.text ")" ] , P.text "-" , P.hcat [ P.text "(" , P.int $ srcSpanEndLine srcSpan , P.colon , P.int $ srcSpanEndColumn srcSpan , P.text ")" ] ] --------------------------------------------------------------------- -- Annotated version ------------------------- Pretty-Print a Module -------------------- instance Pretty (Module pos) where pretty (Module _ mbHead os imp decls) = myVcat $ map pretty os ++ (case mbHead of Nothing -> id Just h -> \x -> [topLevel (pretty h) x]) (map pretty imp ++ ppDecls (isJust mbHead || not (null imp) || not (null os)) decls) pretty (XmlPage _ _mn os n attrs mattr cs) = myVcat $ map pretty os ++ [let ax = maybe [] (return . pretty) mattr in hcat $ (myFsep $ (char '<' <> pretty n): map pretty attrs ++ ax ++ [char '>']): map pretty cs ++ [myFsep [text " pretty n, char '>']]] pretty (XmlHybrid _ mbHead os imp decls n attrs mattr cs) = myVcat $ map pretty os ++ [text "<%"] ++ (case mbHead of Nothing -> id Just h -> \x -> [topLevel (pretty h) x]) (map pretty imp ++ ppDecls (isJust mbHead || not (null imp) || not (null os)) decls ++ [let ax = maybe [] (return . pretty) mattr in hcat $ (myFsep $ (char '<' <> pretty n): map pretty attrs ++ ax ++ [char '>']): map pretty cs ++ [myFsep [text " pretty n, char '>']]]) ------------------------- pp utils ------------------------- maybePP :: (a -> Doc) -> Maybe a -> Doc maybePP _ Nothing = empty maybePP pp (Just a) = pp a parenList :: [Doc] -> Doc parenList = parens . myFsepSimple . punctuate comma hashParenList :: [Doc] -> Doc hashParenList = hashParens . myFsepSimple . punctuate comma hashParens :: Doc -> Doc hashParens = parens . hashes where hashes doc = char '#' <+> doc <+> char '#' braceList :: [Doc] -> Doc braceList = braces . myFsepSimple . punctuate comma bracketList :: [Doc] -> Doc bracketList = brackets . myFsepSimple bracketColonList :: [Doc] -> Doc bracketColonList = bracketColons . myFsepSimple where bracketColons = brackets . colons colons doc = char ':' <> doc <> char ':' -- Wrap in braces and semicolons, with an extra space at the start in -- case the first doc begins with "-", which would be scanned as {- flatBlock :: [Doc] -> Doc flatBlock = braces . (space <>) . hsep . punctuate semi -- Same, but put each thing on a separate line prettyBlock :: [Doc] -> Doc prettyBlock = braces . (space <>) . vcat . punctuate semi -- Monadic PP Combinators -- these examine the env blankline :: Doc -> Doc blankline dl = do{e<-getPPEnv;if spacing e && layout e /= PPNoLayout then text "" $+$ dl else dl} topLevel :: Doc -> [Doc] -> Doc topLevel header dl = do e <- fmap layout getPPEnv case e of PPOffsideRule -> header $$ vcat dl PPSemiColon -> header $$ prettyBlock dl PPInLine -> header $$ prettyBlock dl PPNoLayout -> header <+> flatBlock dl ppBody :: (PPHsMode -> Int) -> [Doc] -> Doc ppBody f dl = do e <- fmap layout getPPEnv case e of PPOffsideRule -> indent PPSemiColon -> indentExplicit _ -> flatBlock dl where indent = do{i <-fmap f getPPEnv;nest i . vcat $ dl} indentExplicit = do {i <- fmap f getPPEnv; nest i . prettyBlock $ dl} -- | Indent without braces. Useful for deriving clauses etc. ppIndent :: (PPHsMode -> Int) -> [Doc] -> Doc ppIndent f dl = do i <- fmap f getPPEnv nest i . vcat $ dl ($$$) :: Doc -> Doc -> Doc a $$$ b = layoutChoice (a $$) (a <+>) b mySep :: [Doc] -> Doc mySep = layoutChoice mySep' hsep where -- ensure paragraph fills with indentation. mySep' [x] = x mySep' (x:xs) = x <+> fsep xs mySep' [] = error "Internal error: mySep" myVcat :: [Doc] -> Doc myVcat = layoutChoice vcat hsep myFsepSimple :: [Doc] -> Doc myFsepSimple = layoutChoice fsep hsep -- same, except that continuation lines are indented, -- which is necessary to avoid triggering the offside rule. myFsep :: [Doc] -> Doc myFsep = layoutChoice fsep' hsep where fsep' [] = empty fsep' (d:ds) = do e <- getPPEnv let n = onsideIndent e nest n (fsep (nest (-n) d:ds)) layoutChoice :: (a -> Doc) -> (a -> Doc) -> a -> Doc layoutChoice a b dl = do e <- getPPEnv if layout e == PPOffsideRule || layout e == PPSemiColon then a dl else b dl -------------------------------------------------------------------------------- -- Pretty-printing of internal constructs, for error messages while parsing instance SrcInfo loc => Pretty (P.PExp loc) where pretty (P.Lit _ l) = pretty l pretty (P.InfixApp _ a op b) = myFsep [pretty a, pretty op, pretty b] pretty (P.NegApp _ e) = myFsep [char '-', pretty e] pretty (P.App _ a b) = myFsep [pretty a, pretty b] pretty (P.Lambda _loc expList ppBody') = myFsep $ char '\\' : map pretty expList ++ [text "->", pretty ppBody'] pretty (P.Let _ (BDecls _ declList) letBody) = ppLetExp declList letBody pretty (P.Let _ (IPBinds _ bindList) letBody) = ppLetExp bindList letBody pretty (P.If _ cond thenexp elsexp) = myFsep [text "if", pretty cond, text "then", pretty thenexp, text "else", pretty elsexp] pretty (P.MultiIf _ alts) = text "if" $$$ ppBody caseIndent (map pretty alts) pretty (P.Case _ cond altList) = myFsep [text "case", pretty cond, text "of"] $$$ ppBody caseIndent (map pretty altList) pretty (P.Do _ stmtList) = text "do" $$$ ppBody doIndent (map pretty stmtList) pretty (P.MDo _ stmtList) = text "mdo" $$$ ppBody doIndent (map pretty stmtList) pretty (P.Var _ name) = pretty name pretty (P.OverloadedLabel _ name) = text name pretty (P.IPVar _ ipname) = pretty ipname pretty (P.Con _ name) = pretty name pretty (P.TupleSection _ bxd mExpList) = let ds = map (maybePP pretty) mExpList in case bxd of Boxed -> parenList ds Unboxed -> hashParenList ds pretty (P.Paren _ e) = parens . pretty $ e pretty (P.RecConstr _ c fieldList) = pretty c <> (braceList . map pretty $ fieldList) pretty (P.RecUpdate _ e fieldList) = pretty e <> (braceList . map pretty $ fieldList) pretty (P.List _ list) = bracketList . punctuate comma . map pretty $ list pretty (P.ParArray _ arr) = bracketColonList . punctuate comma . map pretty $ arr pretty (P.EnumFrom _ e) = bracketList [pretty e, text ".."] pretty (P.EnumFromTo _ from to) = bracketList [pretty from, text "..", pretty to] pretty (P.EnumFromThen _ from thenE) = bracketList [pretty from <> comma, pretty thenE, text ".."] pretty (P.EnumFromThenTo _ from thenE to) = bracketList [pretty from <> comma, pretty thenE, text "..", pretty to] pretty (P.ParArrayFromTo _ from to) = bracketColonList [pretty from, text "..", pretty to] pretty (P.ParArrayFromThenTo _ from thenE to) = bracketColonList [pretty from <> comma, pretty thenE, text "..", pretty to] pretty (P.ParComp _ e qualLists) = bracketList (intersperse (char '|') $ pretty e : (punctuate comma . concatMap (map pretty) $ qualLists)) pretty (P.ParArrayComp _ e qualArrs) = bracketColonList (intersperse (char '|') $ pretty e : (punctuate comma . concatMap (map pretty) $ qualArrs)) pretty (P.ExpTypeSig _pos e ty) = myFsep [pretty e, text "::", pretty ty] pretty (P.BracketExp _ b) = pretty b pretty (P.SpliceExp _ s) = pretty s pretty (P.TypQuote _ t) = text "\'\'" <> pretty t pretty (P.VarQuote _ x) = text "\'" <> pretty x pretty (P.QuasiQuote _ n qt) = text ("[$" ++ n ++ "|" ++ qt ++ "|]") pretty (P.XTag _ n attrs mattr cs) = let ax = maybe [] (return . pretty) mattr in hcat $ (myFsep $ (char '<' <> pretty n): map pretty attrs ++ ax ++ [char '>']): map pretty cs ++ [myFsep [text " pretty n, char '>']] pretty (P.XETag _ n attrs mattr) = let ax = maybe [] (return . pretty) mattr in myFsep $ (char '<' <> pretty n): map pretty attrs ++ ax ++ [text "/>"] pretty (P.XPcdata _ s) = text s pretty (P.XExpTag _ e) = myFsep [text "<%", pretty e, text "%>"] pretty (P.XChildTag _ es) = myFsep $ text "<%>" : map pretty es ++ [text ""] pretty (P.CorePragma _ s e) = myFsep $ map text ["{-# CORE", show s, "#-}"] ++ [pretty e] pretty (P.SCCPragma _ s e) = myFsep $ map text ["{-# SCC", show s, "#-}"] ++ [pretty e] pretty (P.GenPragma _ s (a,b) (c,d) e) = myFsep [text "{-# GENERATED", text $ show s, int a, char ':', int b, char '-', int c, char ':', int d, text "#-}", pretty e] pretty (P.Proc _ p e) = myFsep [text "proc", pretty p, text "->", pretty e] pretty (P.LeftArrApp _ l r) = myFsep [pretty l, text "-<", pretty r] pretty (P.RightArrApp _ l r) = myFsep [pretty l, text ">-", pretty r] pretty (P.LeftArrHighApp _ l r) = myFsep [pretty l, text "-<<", pretty r] pretty (P.RightArrHighApp _ l r) = myFsep [pretty l, text ">>-", pretty r] pretty (P.AsPat _ name (P.IrrPat _ pat)) = myFsep [pretty name <> char '@', char '~' <> pretty pat] pretty (P.AsPat _ name pat) = hcat [pretty name, char '@', pretty pat] pretty (P.WildCard _) = char '_' pretty (P.IrrPat _ pat) = char '~' <> pretty pat pretty (P.PostOp _ e op) = pretty e <+> pretty op pretty (P.PreOp _ op e) = pretty op <+> pretty e pretty (P.ViewPat _ e p) = myFsep [pretty e, text "->", pretty p] pretty (P.SeqRP _ rs) = myFsep $ text "(|" : (punctuate comma . map pretty $ rs) ++ [text "|)"] pretty (P.GuardRP _ r gs) = myFsep $ text "(|" : pretty r : char '|' : (punctuate comma . map pretty $ gs) ++ [text "|)"] pretty (P.EitherRP _ r1 r2) = parens . myFsep $ [pretty r1, char '|', pretty r2] pretty (P.CAsRP _ n (P.IrrPat _ e)) = myFsep [pretty n <> text "@:", char '~' <> pretty e] pretty (P.CAsRP _ n r) = hcat [pretty n, text "@:", pretty r] pretty (P.XRPats _ ps) = myFsep $ text "<[" : map pretty ps ++ [text "%>"] pretty (P.BangPat _ e) = text "!" <> pretty e pretty (P.LCase _ altList) = text "\\case" $$$ ppBody caseIndent (map pretty altList) pretty (P.TypeApp _ ty) = char '@' <> pretty ty instance SrcInfo loc => Pretty (P.PFieldUpdate loc) where pretty (P.FieldUpdate _ name e) = myFsep [pretty name, equals, pretty e] pretty (P.FieldPun _ name) = pretty name pretty (P.FieldWildcard _) = text ".." instance SrcInfo loc => Pretty (P.ParseXAttr loc) where pretty (P.XAttr _ n v) = myFsep [pretty n, char '=', pretty v] instance SrcInfo loc => Pretty (P.PContext loc) where pretty (P.CxEmpty _) = mySep [text "()", text "=>"] pretty (P.CxSingle _ asst) = mySep [pretty asst, text "=>"] pretty (P.CxTuple _ assts) = myFsep [parenList (map pretty assts), text "=>"] instance SrcInfo loc => Pretty (P.PAsst loc) where pretty (P.ClassA _ a ts) = myFsep $ pretty ( a) : map (prettyPrec prec_atype) ts pretty (P.AppA _ n ns) = myFsep $ pretty n : map (prettyPrec prec_atype) ns pretty (P.InfixA _ a op b) = myFsep [pretty a, ppQNameInfix op, pretty b] pretty (P.IParam _ i t) = myFsep [pretty i, text "::", pretty t] pretty (P.EqualP _ t1 t2) = myFsep [pretty t1, text "~", pretty t2] pretty (P.ParenA _ a) = parens (pretty a) pretty (P.WildCardA _ mn) = char '_' <> maybePP pretty mn instance SrcInfo loc => Pretty (P.PType loc) where prettyPrec p (P.TyForall _ mtvs ctxt htype) = parensIf (p > 0) $ myFsep [ppForall mtvs, maybePP pretty ctxt, pretty htype] prettyPrec p (P.TyFun _ a b) = parensIf (p > 0) $ myFsep [prettyPrec prec_btype a, text "->", pretty b] prettyPrec _ (P.TyTuple _ bxd l) = let ds = map pretty l in case bxd of Boxed -> parenList ds Unboxed -> hashParenList ds prettyPrec _ (P.TyList _ t) = brackets $ pretty t prettyPrec _ (P.TyParArray _ t) = bracketColonList [pretty t] prettyPrec p (P.TyApp _ a b) = {- | a == list_tycon = brackets $ pretty b -- special case | otherwise = -} parensIf (p > prec_btype) $ myFsep [pretty a, prettyPrec prec_atype b] prettyPrec _ (P.TyVar _ name) = pretty name prettyPrec _ (P.TyCon _ name) = pretty name prettyPrec _ (P.TyParen _ t) = parens (pretty t) prettyPrec _ (P.TyPred _ asst) = pretty asst prettyPrec _ (P.TyInfix _ a op b) = myFsep [pretty a, ppQNameInfix op, pretty b] prettyPrec _ (P.TyKind _ t k) = parens (myFsep [pretty t, text "::", pretty k]) prettyPrec _ (P.TyPromoted _ p) = pretty p prettyPrec _ (P.TySplice _ s) = pretty s prettyPrec _ (P.TyBang _ b u t) = pretty u <+> pretty b <> prettyPrec prec_atype t prettyPrec _ (P.TyWildCard _ mn) = char '_' <> maybePP pretty mn prettyPrec _ (P.TyQuasiQuote _ n qt) = text ("[$" ++ n ++ "|" ++ qt ++ "|]") haskell-src-exts-1.18.2/src/Language/Haskell/Exts/SrcLoc.hs0000644000000000000000000001503712746233113021533 0ustar0000000000000000{-# LANGUAGE DeriveDataTypeable, DeriveGeneric #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.SrcLoc -- Copyright : (c) Niklas Broberg 2009 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- This module defines various data types representing source location -- information, of varying degree of preciseness. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.SrcLoc where import Data.Data import GHC.Generics (Generic) -- | A single position in the source. data SrcLoc = SrcLoc { srcFilename :: String , srcLine :: Int , srcColumn :: Int } deriving (Eq,Ord,Typeable,Data,Generic) instance Show SrcLoc where showsPrec n (SrcLoc fn sl sc) = showParen (n >= 11) $ showString $ "SrcLoc " ++ show fn ++ " " ++ unwords (map show [sl,sc]) noLoc :: SrcLoc noLoc = SrcLoc "" (-1) (-1) -- | A portion of the source, spanning one or more lines and zero or more columns. data SrcSpan = SrcSpan { srcSpanFilename :: String , srcSpanStartLine :: Int , srcSpanStartColumn :: Int , srcSpanEndLine :: Int , srcSpanEndColumn :: Int } deriving (Eq,Ord,Typeable,Data) instance Show SrcSpan where showsPrec n (SrcSpan fn sl sc el ec) = showParen (n >= 11) $ showString $ "SrcSpan " ++ show fn ++ " " ++ unwords (map show [sl,sc,el,ec]) -- | Returns 'srcSpanStartLine' and 'srcSpanStartColumn' in a pair. srcSpanStart :: SrcSpan -> (Int,Int) srcSpanStart x = (srcSpanStartLine x, srcSpanStartColumn x) -- | Returns 'srcSpanEndLine' and 'srcSpanEndColumn' in a pair. srcSpanEnd :: SrcSpan -> (Int,Int) srcSpanEnd x = (srcSpanEndLine x, srcSpanEndColumn x) -- | Combine two locations in the source to denote a span. mkSrcSpan :: SrcLoc -> SrcLoc -> SrcSpan mkSrcSpan (SrcLoc fn sl sc) (SrcLoc _ el ec) = SrcSpan fn sl sc el ec -- | Merge two source spans into a single span from the start of the first -- to the end of the second. Assumes that the two spans relate to the -- same source file. mergeSrcSpan :: SrcSpan -> SrcSpan -> SrcSpan mergeSrcSpan (SrcSpan fn sl1 sc1 el1 ec1) (SrcSpan _ sl2 sc2 el2 ec2) = let (sl,sc) = min (sl1,sc1) (sl2,sc2) (el,ec) = max (el1,ec1) (el2,ec2) in SrcSpan fn sl sc el ec -- | Test if a given span starts and ends at the same location. isNullSpan :: SrcSpan -> Bool isNullSpan ss = spanSize ss == (0,0) {- isNullSpan ss = srcSpanStartLine ss == srcSpanEndLine ss && srcSpanStartColumn ss >= srcSpanEndColumn ss -} spanSize :: SrcSpan -> (Int, Int) spanSize ss = (srcSpanEndLine ss - srcSpanStartLine ss, max 0 (srcSpanEndColumn ss - srcSpanStartColumn ss)) -- | An entity located in the source. data Loc a = Loc { loc :: SrcSpan , unLoc :: a } deriving (Eq,Ord,Show) -- | A portion of the source, extended with information on the position of entities within the span. data SrcSpanInfo = SrcSpanInfo { srcInfoSpan :: SrcSpan -- , explLayout :: Bool , srcInfoPoints :: [SrcSpan] -- Marks the location of specific entities inside the span } deriving (Eq,Ord,Typeable,Data) -- Identical output to the derived show instance for GHC 7.10 and earlier. instance Show SrcSpanInfo where showsPrec n (SrcSpanInfo s pts) = showParen (n >= 11) . showString $ "SrcSpanInfo {srcInfoSpan = " ++ show s ++ ", srcInfoPoints = " ++ show pts ++ "}" -- | Generate a 'SrcSpanInfo' with no positional information for entities. noInfoSpan :: SrcSpan -> SrcSpanInfo noInfoSpan ss = SrcSpanInfo ss [] -- | A bogus `SrcSpanInfo`, the location is @noLoc@. -- `noSrcSpan = noInfoSpan (mkSrcSpan noLoc noLoc)` noSrcSpan :: SrcSpanInfo noSrcSpan = noInfoSpan (mkSrcSpan noLoc noLoc) -- | Generate a 'SrcSpanInfo' with the supplied positional information for entities. infoSpan :: SrcSpan -> [SrcSpan] -> SrcSpanInfo infoSpan = SrcSpanInfo -- | Combine two 'SrcSpanInfo's into one that spans the combined source area of -- the two arguments, leaving positional information blank. combSpanInfo :: SrcSpanInfo -> SrcSpanInfo -> SrcSpanInfo combSpanInfo s1 s2 = SrcSpanInfo (mergeSrcSpan (srcInfoSpan s1) (srcInfoSpan s2)) [] -- | Like '(<+?>)', but it also concatenates the 'srcInfoPoints'. combSpanMaybe :: SrcSpanInfo -> Maybe SrcSpanInfo -> SrcSpanInfo combSpanMaybe s1 Nothing = s1 combSpanMaybe s1 (Just s2) = SrcSpanInfo (mergeSrcSpan (srcInfoSpan s1) (srcInfoSpan s2)) (srcInfoPoints s1 ++ srcInfoPoints s2) -- | Short name for 'combSpanInfo' (<++>) :: SrcSpanInfo -> SrcSpanInfo -> SrcSpanInfo (<++>) = combSpanInfo -- | Optionally combine the first argument with the second, -- or return it unchanged if the second argument is 'Nothing'. (<+?>) :: SrcSpanInfo -> Maybe SrcSpanInfo -> SrcSpanInfo a <+?> b = case b of {Nothing -> a; Just b' -> a <++> b'} -- | Optionally combine the second argument with the first, -- or return it unchanged if the first argument is 'Nothing'. () :: Maybe SrcSpanInfo -> SrcSpanInfo -> SrcSpanInfo a b = case a of {Nothing -> b; Just a' -> a' <++> b} -- | Add more positional information for entities of a span. (<**) :: SrcSpanInfo -> [SrcSpan] -> SrcSpanInfo ss@(SrcSpanInfo {srcInfoPoints = ps}) <** xs = ss {srcInfoPoints = ps ++ xs} -- | Merge two 'SrcSpan's and lift them to a 'SrcInfoSpan' with -- no positional information for entities. (<^^>) :: SrcSpan -> SrcSpan -> SrcSpanInfo a <^^> b = noInfoSpan (mergeSrcSpan a b) infixl 6 <^^> infixl 5 <++> infixl 4 <**, <+?>, -- | A class to work over all kinds of source location information. class SrcInfo si where toSrcInfo :: SrcLoc -> [SrcSpan] -> SrcLoc -> si fromSrcInfo :: SrcSpanInfo -> si getPointLoc :: si -> SrcLoc fileName :: si -> String startLine :: si -> Int startColumn :: si -> Int getPointLoc si = SrcLoc (fileName si) (startLine si) (startColumn si) instance SrcInfo SrcLoc where toSrcInfo s _ _ = s fromSrcInfo si = SrcLoc (fileName si) (startLine si) (startColumn si) fileName = srcFilename startLine = srcLine startColumn = srcColumn instance SrcInfo SrcSpan where toSrcInfo st _ end = mkSrcSpan st end fromSrcInfo = srcInfoSpan fileName = srcSpanFilename startLine = srcSpanStartLine startColumn = srcSpanStartColumn instance SrcInfo SrcSpanInfo where toSrcInfo st pts end = SrcSpanInfo (mkSrcSpan st end) pts fromSrcInfo = id fileName = fileName . srcInfoSpan startLine = startLine . srcInfoSpan startColumn = startColumn . srcInfoSpan haskell-src-exts-1.18.2/src/Language/Haskell/Exts/Syntax.hs0000644000000000000000000023337612746233113021644 0ustar0000000000000000{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE DeriveFoldable #-} {-# LANGUAGE DeriveTraversable #-} {-# LANGUAGE DeriveFunctor #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE CPP #-} ----------------------------------------------------------------------------- -- | -- Module : Language.Haskell.Exts.Syntax -- Copyright : (c) Niklas Broberg 2004-2009, -- (c) The GHC Team, 1997-2000 -- License : BSD-style (see the file LICENSE.txt) -- -- Maintainer : Niklas Broberg, d00nibro@chalmers.se -- Stability : stable -- Portability : portable -- -- A suite of datatypes describing the (semi-concrete) abstract syntax of Haskell 98 -- plus registered extensions, including: -- -- * multi-parameter type classes with functional dependencies (MultiParamTypeClasses, FunctionalDependencies) -- -- * parameters of type class assertions are unrestricted (FlexibleContexts) -- -- * 'forall' types as universal and existential quantification (RankNTypes, ExistentialQuantification, etc) -- -- * pattern guards (PatternGuards) -- -- * implicit parameters (ImplicitParameters) -- -- * generalised algebraic data types (GADTs) -- -- * template haskell (TemplateHaskell) -- -- * empty data type declarations (EmptyDataDecls) -- -- * unboxed tuples (UnboxedTuples) -- -- * regular patterns (RegularPatterns) -- -- * HSP-style XML expressions and patterns (XmlSyntax) -- -- All nodes in the syntax tree are annotated with something of a user-definable data type. -- When parsing, this annotation will contain information about the source location that the -- particular node comes from. -- ----------------------------------------------------------------------------- module Language.Haskell.Exts.Syntax ( -- * Modules Module(..), ModuleHead(..), WarningText(..), ExportSpecList(..), ExportSpec(..), EWildcard(..), ImportDecl(..), ImportSpecList(..), ImportSpec(..), Assoc(..), Namespace(..), -- * Declarations Decl(..), DeclHead(..), InstRule(..), InstHead(..), Binds(..), IPBind(..), PatternSynDirection(..), InjectivityInfo(..), ResultSig(..), -- ** Type classes and instances ClassDecl(..), InstDecl(..), Deriving(..), -- ** Data type declarations DataOrNew(..), ConDecl(..), FieldDecl(..), QualConDecl(..), GadtDecl(..), BangType(..), Unpackedness(..), -- ** Function bindings Match(..), Rhs(..), GuardedRhs(..), -- * Class Assertions and Contexts Context(..), FunDep(..), Asst(..), -- * Types Type(..), Boxed(..), Kind(..), TyVarBind(..), Promoted(..), TypeEqn (..), -- * Expressions Exp(..), Stmt(..), QualStmt(..), FieldUpdate(..), Alt(..), XAttr(..), -- * Patterns Pat(..), PatField(..), PXAttr(..), RPat(..), RPatOp(..), -- * Literals Literal(..), Sign(..), -- * Variables, Constructors and Operators ModuleName(..), QName(..), Name(..), QOp(..), Op(..), SpecialCon(..), CName(..), IPName(..), XName(..), Role(..), -- * Template Haskell Bracket(..), Splice(..), -- * FFI Safety(..), CallConv(..), -- * Pragmas ModulePragma(..), Tool(..), Overlap(..), Rule(..), RuleVar(..), Activation(..), Annotation(..), BooleanFormula(..), -- * Builtin names -- ** Modules prelude_mod, main_mod, -- ** Main function of a program main_name, -- ** Constructors unit_con_name, tuple_con_name, list_cons_name, unboxed_singleton_con_name, unit_con, tuple_con, unboxed_singleton_con, -- ** Special identifiers as_name, qualified_name, hiding_name, minus_name, bang_name, dot_name, star_name, export_name, safe_name, unsafe_name, interruptible_name, threadsafe_name, stdcall_name, ccall_name, cplusplus_name, dotnet_name, jvm_name, js_name, javascript_name, capi_name, forall_name, family_name, role_name, -- ** Type constructors unit_tycon_name, fun_tycon_name, list_tycon_name, tuple_tycon_name, unboxed_singleton_tycon_name, unit_tycon, fun_tycon, list_tycon, tuple_tycon, unboxed_singleton_tycon, -- * Source coordinates -- SrcLoc(..), -- * Annotated trees Annotated(..), (=~=), ) where import Prelude hiding (id) import Data.Data import GHC.Generics (Generic) #if __GLASGOW_HASKELL__ < 710 import Data.Foldable (Foldable) import Data.Traversable (Traversable) #endif -- | The name of a Haskell module. data ModuleName l = ModuleName l String deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Constructors with special syntax. -- These names are never qualified, and always refer to builtin type or -- data constructors. data SpecialCon l = UnitCon l -- ^ unit type and data constructor @()@ | ListCon l -- ^ list type constructor @[]@ | FunCon l -- ^ function type constructor @->@ | TupleCon l Boxed Int -- ^ /n/-ary tuple type and data -- constructors @(,)@ etc, possibly boxed @(\#,\#)@ | Cons l -- ^ list data constructor @(:)@ | UnboxedSingleCon l -- ^ unboxed singleton tuple constructor @(\# \#)@ deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | This type is used to represent qualified variables, and also -- qualified constructors. data QName l = Qual l (ModuleName l) (Name l) -- ^ name qualified with a module name | UnQual l (Name l) -- ^ unqualified local name | Special l (SpecialCon l) -- ^ built-in constructor with special syntax deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | This type is used to represent variables, and also constructors. data Name l = Ident l String -- ^ /varid/ or /conid/. | Symbol l String -- ^ /varsym/ or /consym/ deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An implicit parameter name. data IPName l = IPDup l String -- ^ ?/ident/, non-linear implicit parameter | IPLin l String -- ^ %/ident/, linear implicit parameter deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Possibly qualified infix operators (/qop/), appearing in expressions. data QOp l = QVarOp l (QName l) -- ^ variable operator (/qvarop/) | QConOp l (QName l) -- ^ constructor operator (/qconop/) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Operators appearing in @infix@ declarations are never qualified. data Op l = VarOp l (Name l) -- ^ variable operator (/varop/) | ConOp l (Name l) -- ^ constructor operator (/conop/) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A name (/cname/) of a component of a class or data type in an @import@ -- or export specification. data CName l = VarName l (Name l) -- ^ name of a method or field | ConName l (Name l) -- ^ name of a data constructor deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A complete Haskell source module. data Module l = Module l (Maybe (ModuleHead l)) [ModulePragma l] [ImportDecl l] [Decl l] -- ^ an ordinary Haskell module | XmlPage l (ModuleName l) [ModulePragma l] (XName l) [XAttr l] (Maybe (Exp l)) [Exp l] -- ^ a module consisting of a single XML document. The ModuleName never appears in the source -- but is needed for semantic purposes, it will be the same as the file name. | XmlHybrid l (Maybe (ModuleHead l)) [ModulePragma l] [ImportDecl l] [Decl l] (XName l) [XAttr l] (Maybe (Exp l)) [Exp l] -- ^ a hybrid module combining an XML document with an ordinary module deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | The head of a module, including the name and export specification. data ModuleHead l = ModuleHead l (ModuleName l) (Maybe (WarningText l)) (Maybe (ExportSpecList l)) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An explicit export specification. data ExportSpecList l = ExportSpecList l [ExportSpec l] deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An item in a module's export specification. data ExportSpec l = EVar l (QName l) -- ^ variable. | EAbs l (Namespace l) (QName l) -- ^ @T@: -- a class or datatype exported abstractly, -- or a type synonym. | EThingWith l (EWildcard l) (QName l) [CName l] -- ^ @T(C_1,...,C_n)@: -- a class exported with some of its methods, or -- a datatype exported with some of its constructors. | EModuleContents l (ModuleName l) -- ^ @module M@: -- re-export a module. deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Indicates the position of the wildcard in an export list data EWildcard l = NoWildcard l | EWildcard l Int deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Namespaces for imports/exports. data Namespace l = NoNamespace l | TypeNamespace l | PatternNamespace l deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An import declaration. data ImportDecl l = ImportDecl { importAnn :: l -- ^ annotation, used by parser for position of the @import@ keyword. , importModule :: ModuleName l -- ^ name of the module imported. , importQualified :: Bool -- ^ imported @qualified@? , importSrc :: Bool -- ^ imported with @{-\# SOURCE \#-}@? , importSafe :: Bool -- ^ Import @safe@? , importPkg :: Maybe String -- ^ imported with explicit package name , importAs :: Maybe (ModuleName l) -- ^ optional alias name in an @as@ clause. , importSpecs :: Maybe (ImportSpecList l) -- ^ optional list of import specifications. } deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An explicit import specification list. data ImportSpecList l = ImportSpecList l Bool [ImportSpec l] -- A list of import specifications. -- The 'Bool' is 'True' if the names are excluded -- by @hiding@. deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An import specification, representing a single explicit item imported -- (or hidden) from a module. data ImportSpec l = IVar l (Name l) -- ^ variable | IAbs l (Namespace l) (Name l) -- ^ @T@: -- the name of a class, datatype or type synonym. | IThingAll l (Name l) -- ^ @T(..)@: -- a class imported with all of its methods, or -- a datatype imported with all of its constructors. | IThingWith l (Name l) [CName l] -- ^ @T(C_1,...,C_n)@: -- a class imported with some of its methods, or -- a datatype imported with some of its constructors. deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Associativity of an operator. data Assoc l = AssocNone l -- ^ non-associative operator (declared with @infix@) | AssocLeft l -- ^ left-associative operator (declared with @infixl@). | AssocRight l -- ^ right-associative operator (declared with @infixr@) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A top-level declaration. data Decl l = TypeDecl l (DeclHead l) (Type l) -- ^ A type declaration | TypeFamDecl l (DeclHead l) (Maybe (ResultSig l)) (Maybe (InjectivityInfo l)) -- ^ A type family declaration | ClosedTypeFamDecl l (DeclHead l) (Maybe (ResultSig l)) (Maybe (InjectivityInfo l)) [TypeEqn l] -- ^ A closed type family declaration | DataDecl l (DataOrNew l) (Maybe (Context l)) (DeclHead l) [QualConDecl l] (Maybe (Deriving l)) -- ^ A data OR newtype declaration | GDataDecl l (DataOrNew l) (Maybe (Context l)) (DeclHead l) (Maybe (Kind l)) [GadtDecl l] (Maybe (Deriving l)) -- ^ A data OR newtype declaration, GADT style | DataFamDecl l {-data-} (Maybe (Context l)) (DeclHead l) (Maybe (ResultSig l)) -- ^ A data family declaration | TypeInsDecl l (Type l) (Type l) -- ^ A type family instance declaration | DataInsDecl l (DataOrNew l) (Type l) [QualConDecl l] (Maybe (Deriving l)) -- ^ A data family instance declaration | GDataInsDecl l (DataOrNew l) (Type l) (Maybe (Kind l)) [GadtDecl l] (Maybe (Deriving l)) -- ^ A data family instance declaration, GADT style | ClassDecl l (Maybe (Context l)) (DeclHead l) [FunDep l] (Maybe [ClassDecl l]) -- ^ A declaration of a type class | InstDecl l (Maybe (Overlap l)) (InstRule l) (Maybe [InstDecl l]) -- ^ An declaration of a type class instance | DerivDecl l (Maybe (Overlap l)) (InstRule l) -- ^ A standalone deriving declaration | InfixDecl l (Assoc l) (Maybe Int) [Op l] -- ^ A declaration of operator fixity | DefaultDecl l [Type l] -- ^ A declaration of default types | SpliceDecl l (Exp l) -- ^ A Template Haskell splicing declaration | TypeSig l [Name l] (Type l) -- ^ A type signature declaration | PatSynSig l (Name l) (Maybe [TyVarBind l]) (Maybe (Context l)) (Maybe (Context l)) (Type l) -- ^ A pattern synonym signature declation | FunBind l [Match l] -- ^ A set of function binding clauses | PatBind l (Pat l) (Rhs l) {-where-} (Maybe (Binds l)) -- ^ A pattern binding | PatSyn l (Pat l) (Pat l) (PatternSynDirection l) -- ^ A pattern synonym binding | ForImp l (CallConv l) (Maybe (Safety l)) (Maybe String) (Name l) (Type l) -- ^ A foreign import declaration | ForExp l (CallConv l) (Maybe String) (Name l) (Type l) -- ^ A foreign export declaration | RulePragmaDecl l [Rule l] -- ^ A RULES pragma | DeprPragmaDecl l [([Name l], String)] -- ^ A DEPRECATED pragma | WarnPragmaDecl l [([Name l], String)] -- ^ A WARNING pragma | InlineSig l Bool (Maybe (Activation l)) (QName l) -- ^ An INLINE pragma | InlineConlikeSig l (Maybe (Activation l)) (QName l) -- ^ An INLINE CONLIKE pragma | SpecSig l (Maybe (Activation l)) (QName l) [Type l] -- ^ A SPECIALISE pragma | SpecInlineSig l Bool (Maybe (Activation l)) (QName l) [Type l] -- ^ A SPECIALISE INLINE pragma | InstSig l (InstRule l) -- ^ A SPECIALISE instance pragma | AnnPragma l (Annotation l) -- ^ An ANN pragma | MinimalPragma l (Maybe (BooleanFormula l)) -- ^ A MINIMAL pragma | RoleAnnotDecl l (QName l) [Role l] -- ^ A role annotation deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) data PatternSynDirection l = Unidirectional -- ^ A unidirectional pattern synonym with "<-" | ImplicitBidirectional -- ^ A bidirectional pattern synonym with "=" | ExplicitBidirectional l [Decl l] -- ^ A birectional pattern synonym with the construction specified. deriving (Eq, Ord, Show, Data, Typeable, Foldable, Traversable, Functor, Generic) -- | A type equation as found in closed type families. data TypeEqn l = TypeEqn l (Type l) (Type l) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An annotation through an ANN pragma. data Annotation l = Ann l (Name l) (Exp l) -- ^ An annotation for a declared name. | TypeAnn l (Name l) (Exp l) -- ^ An annotation for a declared type. | ModuleAnn l (Exp l) -- ^ An annotation for the defining module. deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A boolean formula for MINIMAL pragmas. data BooleanFormula l = VarFormula l (Name l) -- ^ A variable. | AndFormula l [BooleanFormula l] -- ^ And boolean formulas. | OrFormula l [BooleanFormula l] -- ^ Or boolean formulas. | ParenFormula l (BooleanFormula l) -- ^ Parenthesized boolean formulas. deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) data Role l = Nominal l | Representational l | Phantom l | RoleWildcard l deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A flag stating whether a declaration is a data or newtype declaration. data DataOrNew l = DataType l | NewType l deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Injectivity info for injective type families data InjectivityInfo l = InjectivityInfo l (Name l) [Name l] deriving (Eq, Ord, Show, Typeable, Data, Foldable, Traversable, Functor, Generic) data ResultSig l = KindSig l (Kind l) | TyVarSig l (TyVarBind l) deriving (Eq, Ord, Show, Typeable, Data, Foldable, Traversable, Functor, Generic) -- | The head of a type or class declaration, which consists of the type -- or class name applied to some type variables -- -- @class C a b@ is represented as -- -- >DHApp -- > () -- > (DHApp -- > () (DHead () (Ident () "C")) (UnkindedVar () (Ident () "a"))) -- > (UnkindedVar () (Ident () "b")) -- -- (where the annotation type @l@ is instantiated with @()@) -- -- @class (a :< b) c@ is represented as -- -- >DHApp -- > () -- > (DHParen -- > () -- > (DHApp -- > () -- > (DHInfix () (UnkindedVar () (Ident () "a")) (Symbol () ":<")) -- > (UnkindedVar () (Ident () "b")))) -- > (UnkindedVar () (Ident () "c")) data DeclHead l = DHead l (Name l) -- ^ type or class name | DHInfix l (TyVarBind l) (Name l) -- ^ infix application of the type/class name to the left operand | DHParen l (DeclHead l) -- ^ parenthesized declaration head | DHApp l (DeclHead l) (TyVarBind l) -- ^ application to one more type variable deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | The instance declaration rule, which is, roughly, the part of the instance declaration before the @where@ keyword. -- -- Example: @instance Ord a => Ord (Maybe a)@ is represented as -- -- >IRule -- > () -- > Nothing -- > (Just -- > (CxSingle -- > () -- > (ClassA -- > () (UnQual () (Ident () "Ord")) [ TyVar () (Ident () "a") ]))) -- > (IHApp -- > () -- > (IHCon () (UnQual () (Ident () "Ord"))) -- > (TyParen -- > () -- > (TyApp -- > () -- > (TyCon () (UnQual () (Ident () "Maybe"))) -- > (TyVar () (Ident () "a"))))) -- -- An optional explicit forall after @instance@ is supported: -- @instance forall a . Ord a => Ord (Maybe a) where@ becomes -- -- >IRule -- > () -- > (Just [ UnkindedVar () (Ident () "a") ]) -- > ... data InstRule l = IRule l (Maybe [TyVarBind l]) (Maybe (Context l)) (InstHead l) | IParen l (InstRule l) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- See bugs #7 and #31 for more details and use cases for the rationale -- of the split. DeclOrInstHead should be used by DeclHead as the name implies. -- | The instance head. The split between rule/head allow us to represent -- @instance (Bounded a => Bounded [a]) where@ faithfully. -- -- The structure of 'InstHead' follows one of 'DeclHead'. -- -- For example, @instance C (Maybe a) Int where@ is represented as -- -- >IHApp -- > () -- > (IHApp -- > () -- > (IHCon () (UnQual () (Ident () "C"))) -- > (TyParen -- > () -- > (TyApp -- > () -- > (TyCon () (UnQual () (Ident () "Maybe"))) -- > (TyVar () (Ident () "a"))))) -- > (TyCon () (UnQual () (Ident () "Int"))))) data InstHead l = IHCon l (QName l) -- ^ type or class name | IHInfix l (Type l) (QName l) -- ^ infix application of the type/class name to the left operand | IHParen l (InstHead l) -- ^ parenthesized instance head | IHApp l (InstHead l) (Type l) -- ^ application to one more type deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A deriving clause following a data type declaration. data Deriving l = Deriving l [InstRule l] deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A binding group inside a @let@ or @where@ clause. data Binds l = BDecls l [Decl l] -- ^ An ordinary binding group | IPBinds l [IPBind l] -- ^ A binding group for implicit parameters deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A binding of an implicit parameter. data IPBind l = IPBind l (IPName l) (Exp l) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Clauses of a function binding. data Match l = Match l (Name l) [Pat l] (Rhs l) {-where-} (Maybe (Binds l)) -- ^ A clause defined with prefix notation, i.e. the function name -- followed by its argument patterns, the right-hand side and an -- optional where clause. | InfixMatch l (Pat l) (Name l) [Pat l] (Rhs l) {-where-} (Maybe (Binds l)) -- ^ A clause defined with infix notation, i.e. first its first argument -- pattern, then the function name, then its following argument(s), -- the right-hand side and an optional where clause. -- Note that there can be more than two arguments to a function declared -- infix, hence the list of pattern arguments. deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A single constructor declaration within a data type declaration, -- which may have an existential quantification binding. data QualConDecl l = QualConDecl l {-forall-} (Maybe [TyVarBind l]) {- . -} (Maybe (Context l)) {- => -} (ConDecl l) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Declaration of an ordinary data constructor. data ConDecl l = ConDecl l (Name l) [Type l] -- ^ ordinary data constructor | InfixConDecl l (Type l) (Name l) (Type l) -- ^ infix data constructor | RecDecl l (Name l) [FieldDecl l] -- ^ record constructor deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Declaration of a (list of) named field(s). data FieldDecl l = FieldDecl l [Name l] (Type l) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A single constructor declaration in a GADT data type declaration. -- -- If the GADT is declared using the record syntax, e.g. -- -- >data Ty where -- > TCon :: { field1 :: Int, field2 :: Bool } -> Ty -- -- then the fields are stored as a list of 'FieldDecl's, and the final type -- (@Ty@ in the above example) is stored in the last 'Type' field. -- -- If the GADT is declared using the ordinary syntax, e.g. -- -- >data Ty where -- > TCon :: Int -> Bool -> Ty -- -- then @'Maybe' ['FieldDecl' l]@ is 'Nothing', and the whole constructor's -- type (such as @Int -> Bool -> Ty@) is stored in the last 'Type' field. data GadtDecl l = GadtDecl l (Name l) (Maybe [FieldDecl l]) (Type l) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Declarations inside a class declaration. data ClassDecl l = ClsDecl l (Decl l) -- ^ ordinary declaration | ClsDataFam l (Maybe (Context l)) (DeclHead l) (Maybe (ResultSig l)) -- ^ declaration of an associated data type | ClsTyFam l (DeclHead l) (Maybe (ResultSig l)) (Maybe (InjectivityInfo l)) -- ^ declaration of an associated type synonym | ClsTyDef l (TypeEqn l) -- ^ default choice for an associated type synonym | ClsDefSig l (Name l) (Type l) -- ^ default signature deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Declarations inside an instance declaration. data InstDecl l = InsDecl l (Decl l) -- ^ ordinary declaration | InsType l (Type l) (Type l) -- ^ an associated type definition | InsData l (DataOrNew l) (Type l) [QualConDecl l] (Maybe (Deriving l)) -- ^ an associated data type implementation | InsGData l (DataOrNew l) (Type l) (Maybe (Kind l)) [GadtDecl l] (Maybe (Deriving l)) -- ^ an associated data type implemented using GADT style deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | The type of a constructor argument or field, optionally including -- a strictness annotation. data BangType l = BangedTy l -- ^ strict component, marked with \"@!@\" | LazyTy l -- ^ lazy component, marked with \"@~@\" | NoStrictAnnot l -- ^ No strictness information deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) data Unpackedness l = Unpack l -- {-# UNPACK #-} | NoUnpack l -- {-# NOUNPACK #-} | NoUnpackPragma l -- No pragma deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | The right hand side of a function binding, pattern binding, or a case -- alternative. data Rhs l = UnGuardedRhs l (Exp l) -- ^ unguarded right hand side (/exp/) | GuardedRhss l [GuardedRhs l] -- ^ guarded right hand side (/gdrhs/) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A guarded right hand side @|@ /stmts/ @=@ /exp/, or @|@ /stmts/ @->@ /exp/ -- for case alternatives. -- The guard is a series of statements when using pattern guards, -- otherwise it will be a single qualifier expression. data GuardedRhs l = GuardedRhs l [Stmt l] (Exp l) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A type qualified with a context. -- An unqualified type has an empty context. data Type l = TyForall l (Maybe [TyVarBind l]) (Maybe (Context l)) (Type l) -- ^ qualified type | TyFun l (Type l) (Type l) -- ^ function type | TyTuple l Boxed [Type l] -- ^ tuple type, possibly boxed | TyList l (Type l) -- ^ list syntax, e.g. [a], as opposed to [] a | TyParArray l (Type l) -- ^ parallel array syntax, e.g. [:a:] | TyApp l (Type l) (Type l) -- ^ application of a type constructor | TyVar l (Name l) -- ^ type variable | TyCon l (QName l) -- ^ named type or type constructor | TyParen l (Type l) -- ^ type surrounded by parentheses | TyInfix l (Type l) (QName l) (Type l) -- ^ infix type constructor | TyKind l (Type l) (Kind l) -- ^ type with explicit kind signature | TyPromoted l (Promoted l) -- ^ @'K@, a promoted data type (-XDataKinds). | TyEquals l (Type l) (Type l) -- ^ type equality predicate enabled by ConstraintKinds | TySplice l (Splice l) -- ^ template haskell splice type | TyBang l (BangType l) (Unpackedness l) (Type l) -- ^ Strict type marked with \"@!@\" or type marked with UNPACK pragma. | TyWildCard l (Maybe (Name l)) -- ^ Either an anonymous of named type wildcard | TyQuasiQuote l String String -- ^ @[$/name/| /string/ |]@ deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Bools here are True if there was a leading quote which may be -- left out. For example @'[k1,k2]@ means the same thing as @[k1,k2]@. data Promoted l = PromotedInteger l Integer String -- ^ parsed value and raw string | PromotedString l String String -- ^ parsed value and raw string | PromotedCon l Bool (QName l) | PromotedList l Bool [Type l] | PromotedTuple l [Type l] | PromotedUnit l deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Flag denoting whether a tuple is boxed or unboxed. data Boxed = Boxed | Unboxed deriving (Eq,Ord,Show,Typeable,Data,Generic) -- | A type variable declaration, optionally with an explicit kind annotation. data TyVarBind l = KindedVar l (Name l) (Kind l) -- ^ variable binding with kind annotation | UnkindedVar l (Name l) -- ^ ordinary variable binding deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An explicit kind annotation. data Kind l = KindStar l -- ^ @*@, the kind of types | KindFn l (Kind l) (Kind l) -- ^ @->@, the kind of a type constructor | KindParen l (Kind l) -- ^ a parenthesised kind | KindVar l (QName l) -- ^ @k@, a kind variable (-XPolyKinds) | KindApp l (Kind l) (Kind l) -- ^ @k1 k2@ | KindTuple l [Kind l] -- ^ @'(k1,k2,k3)@, a promoted tuple | KindList l (Kind l) -- ^ @'[k1]@, a promoted list literal deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A functional dependency, given on the form -- l1 l2 ... ln -> r2 r3 .. rn data FunDep l = FunDep l [Name l] [Name l] deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A context is a set of assertions data Context l = CxSingle l (Asst l) | CxTuple l [Asst l] | CxEmpty l deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Class assertions. -- In Haskell 98, the argument would be a /tyvar/, but this definition -- allows multiple parameters, and allows them to be /type/s. -- Also extended with support for implicit parameters and equality constraints. data Asst l = ClassA l (QName l) [Type l] -- ^ ordinary class assertion | AppA l (Name l) [Type l] -- ^ constraint kind assertion, @Dict :: cxt a => Dict cxt@ | InfixA l (Type l) (QName l) (Type l) -- ^ class assertion where the class name is given infix | IParam l (IPName l) (Type l) -- ^ implicit parameter assertion | EqualP l (Type l) (Type l) -- ^ type equality constraint | ParenA l (Asst l) -- ^ parenthesised class assertion | WildCardA l (Maybe (Name l)) -- ^ Context Wildcard deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | /literal/ -- Values of this type hold the abstract value of the literal, along with the -- precise string representation used. For example, @10@, @0o12@ and @0xa@ -- have the same value representation, but each carry a different string representation. data Literal l = Char l Char String -- ^ character literal | String l String String -- ^ string literal | Int l Integer String -- ^ integer literal | Frac l Rational String -- ^ floating point literal | PrimInt l Integer String -- ^ unboxed integer literal | PrimWord l Integer String -- ^ unboxed word literal | PrimFloat l Rational String -- ^ unboxed float literal | PrimDouble l Rational String -- ^ unboxed double literal | PrimChar l Char String -- ^ unboxed character literal | PrimString l String String -- ^ unboxed string literal deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An indication whether a literal pattern has been negated or not. data Sign l = Signless l | Negative l deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | Haskell expressions. data Exp l = Var l (QName l) -- ^ variable | OverloadedLabel l String -- ^ Overloaded label #foo | IPVar l (IPName l) -- ^ implicit parameter variable | Con l (QName l) -- ^ data constructor | Lit l (Literal l) -- ^ literal constant | InfixApp l (Exp l) (QOp l) (Exp l) -- ^ infix application | App l (Exp l) (Exp l) -- ^ ordinary application | NegApp l (Exp l) -- ^ negation expression @-/exp/@ (unary minus) | Lambda l [Pat l] (Exp l) -- ^ lambda expression | Let l (Binds l) (Exp l) -- ^ local declarations with @let@ ... @in@ ... | If l (Exp l) (Exp l) (Exp l) -- ^ @if@ /exp/ @then@ /exp/ @else@ /exp/ | MultiIf l [GuardedRhs l] -- ^ @if@ @|@ /stmts/ @->@ /exp/ ... | Case l (Exp l) [Alt l] -- ^ @case@ /exp/ @of@ /alts/ | Do l [Stmt l] -- ^ @do@-expression: -- the last statement in the list -- should be an expression. | MDo l [Stmt l] -- ^ @mdo@-expression | Tuple l Boxed [Exp l] -- ^ tuple expression | TupleSection l Boxed [Maybe (Exp l)] -- ^ tuple section expression, e.g. @(,,3)@ | List l [Exp l] -- ^ list expression | ParArray l [Exp l] -- ^ parallel array expression | Paren l (Exp l) -- ^ parenthesised expression | LeftSection l (Exp l) (QOp l) -- ^ left section @(@/exp/ /qop/@)@ | RightSection l (QOp l) (Exp l) -- ^ right section @(@/qop/ /exp/@)@ | RecConstr l (QName l) [FieldUpdate l] -- ^ record construction expression | RecUpdate l (Exp l) [FieldUpdate l] -- ^ record update expression | EnumFrom l (Exp l) -- ^ unbounded arithmetic sequence, -- incrementing by 1: @[from ..]@ | EnumFromTo l (Exp l) (Exp l) -- ^ bounded arithmetic sequence, -- incrementing by 1 @[from .. to]@ | EnumFromThen l (Exp l) (Exp l) -- ^ unbounded arithmetic sequence, -- with first two elements given @[from, then ..]@ | EnumFromThenTo l (Exp l) (Exp l) (Exp l) -- ^ bounded arithmetic sequence, -- with first two elements given @[from, then .. to]@ | ParArrayFromTo l (Exp l) (Exp l) -- ^ Parallel array bounded arithmetic sequence, -- incrementing by 1 @[:from .. to:]@ | ParArrayFromThenTo l (Exp l) (Exp l) (Exp l) -- ^ bounded arithmetic sequence, -- with first two elements given @[:from, then .. to:]@ | ListComp l (Exp l) [QualStmt l] -- ^ ordinary list comprehension | ParComp l (Exp l) [[QualStmt l]] -- ^ parallel list comprehension | ParArrayComp l (Exp l) [[QualStmt l]] -- ^ parallel array comprehension | ExpTypeSig l (Exp l) (Type l) -- ^ expression with explicit type signature | VarQuote l (QName l) -- ^ @'x@ for template haskell reifying of expressions | TypQuote l (QName l) -- ^ @''T@ for template haskell reifying of types | BracketExp l (Bracket l) -- ^ template haskell bracket expression | SpliceExp l (Splice l) -- ^ template haskell splice expression | QuasiQuote l String String -- ^ quasi-quotaion: @[$/name/| /string/ |]@ | TypeApp l (Type l) -- ^ Visible type application -- Hsx | XTag l (XName l) [XAttr l] (Maybe (Exp l)) [Exp l] -- ^ xml element, with attributes and children | XETag l (XName l) [XAttr l] (Maybe (Exp l)) -- ^ empty xml element, with attributes | XPcdata l String -- ^ PCDATA child element | XExpTag l (Exp l) -- ^ escaped haskell expression inside xml | XChildTag l [Exp l] -- ^ children of an xml element -- Pragmas | CorePragma l String (Exp l) -- ^ CORE pragma | SCCPragma l String (Exp l) -- ^ SCC pragma | GenPragma l String (Int, Int) (Int, Int) (Exp l) -- ^ GENERATED pragma -- Arrows | Proc l (Pat l) (Exp l) -- ^ arrows proc: @proc@ /pat/ @->@ /exp/ | LeftArrApp l (Exp l) (Exp l) -- ^ arrow application (from left): /exp/ @-<@ /exp/ | RightArrApp l (Exp l) (Exp l) -- ^ arrow application (from right): /exp/ @>-@ /exp/ | LeftArrHighApp l (Exp l) (Exp l) -- ^ higher-order arrow application (from left): /exp/ @-<<@ /exp/ | RightArrHighApp l (Exp l) (Exp l) -- ^ higher-order arrow application (from right): /exp/ @>>-@ /exp/ -- LambdaCase | LCase l [Alt l] -- ^ @\case@ /alts/ -- Holes | ExprHole l -- ^ Expression hole deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | The name of an xml element or attribute, -- possibly qualified with a namespace. data XName l = XName l String -- /pat/)@ | PRPat l [RPat l] -- ^ regular list pattern | PXTag l (XName l) [PXAttr l] (Maybe (Pat l)) [Pat l] -- ^ XML element pattern | PXETag l (XName l) [PXAttr l] (Maybe (Pat l)) -- ^ XML singleton element pattern | PXPcdata l String -- ^ XML PCDATA pattern | PXPatTag l (Pat l) -- ^ XML embedded pattern | PXRPats l [RPat l] -- ^ XML regular list pattern | PQuasiQuote l String String -- ^ quasi quote pattern: @[$/name/| /string/ |]@ | PBangPat l (Pat l) -- ^ strict (bang) pattern: @f !x = ...@ deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An XML attribute in a pattern. data PXAttr l = PXAttr l (XName l) (Pat l) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A regular pattern operator. data RPatOp l = RPStar l -- ^ @*@ = 0 or more | RPStarG l -- ^ @*!@ = 0 or more, greedy | RPPlus l -- ^ @+@ = 1 or more | RPPlusG l -- ^ @+!@ = 1 or more, greedy | RPOpt l -- ^ @?@ = 0 or 1 | RPOptG l -- ^ @?!@ = 0 or 1, greedy deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An entity in a regular pattern. data RPat l = RPOp l (RPat l) (RPatOp l) -- ^ operator pattern, e.g. pat* | RPEither l (RPat l) (RPat l) -- ^ choice pattern, e.g. (1 | 2) | RPSeq l [RPat l] -- ^ sequence pattern, e.g. (| 1, 2, 3 |) | RPGuard l (Pat l) [Stmt l] -- ^ guarded pattern, e.g. (| p | p < 3 |) | RPCAs l (Name l) (RPat l) -- ^ non-linear variable binding, e.g. (foo\@:(1 | 2))* | RPAs l (Name l) (RPat l) -- ^ linear variable binding, e.g. foo\@(1 | 2) | RPParen l (RPat l) -- ^ parenthesised pattern, e.g. (2*) | RPPat l (Pat l) -- ^ an ordinary pattern deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An /fpat/ in a labeled record pattern. data PatField l = PFieldPat l (QName l) (Pat l) -- ^ ordinary label-pattern pair | PFieldPun l (QName l) -- ^ record field pun | PFieldWildcard l -- ^ record field wildcard deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A statement, representing both a /stmt/ in a @do@-expression, -- an ordinary /qual/ in a list comprehension, as well as a /stmt/ -- in a pattern guard. data Stmt l = Generator l (Pat l) (Exp l) -- ^ a generator: /pat/ @<-@ /exp/ | Qualifier l (Exp l) -- ^ an /exp/ by itself: in a @do@-expression, -- an action whose result is discarded; -- in a list comprehension and pattern guard, -- a guard expression | LetStmt l (Binds l) -- ^ local bindings | RecStmt l [Stmt l] -- ^ a recursive binding group for arrows deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | A general /transqual/ in a list comprehension, -- which could potentially be a transform of the kind -- enabled by TransformListComp. data QualStmt l = QualStmt l (Stmt l) -- ^ an ordinary statement | ThenTrans l (Exp l) -- ^ @then@ /exp/ | ThenBy l (Exp l) (Exp l) -- ^ @then@ /exp/ @by@ /exp/ | GroupBy l (Exp l) -- ^ @then@ @group@ @by@ /exp/ | GroupUsing l (Exp l) -- ^ @then@ @group@ @using@ /exp/ | GroupByUsing l (Exp l) (Exp l) -- ^ @then@ @group@ @by@ /exp/ @using@ /exp/ deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An /fbind/ in a labeled construction or update expression. data FieldUpdate l = FieldUpdate l (QName l) (Exp l) -- ^ ordinary label-expresion pair | FieldPun l (QName l) -- ^ record field pun | FieldWildcard l -- ^ record field wildcard deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) -- | An /alt/ alternative in a @case@ expression. data Alt l = Alt l (Pat l) (Rhs l) (Maybe (Binds l)) deriving (Eq,Ord,Show,Typeable,Data,Foldable,Traversable,Functor,Generic) ----------------------------------------------------------------------------- -- Builtin names. prelude_mod, main_mod :: l -> ModuleName l prelude_mod l = ModuleName l "Prelude" main_mod l = ModuleName l "Main" main_name :: l -> Name l main_name l = Ident l "main" unit_con_name :: l -> QName l unit_con_name l = Special l (UnitCon l) tuple_con_name :: l -> Boxed -> Int -> QName l tuple_con_name l b i = Special l (TupleCon l b (i+1)) list_cons_name :: l -> QName l list_cons_name l = Special l (Cons l) unboxed_singleton_con_name :: l -> QName l unboxed_singleton_con_name l = Special l (UnboxedSingleCon l) unit_con :: l -> Exp l unit_con l = Con l $ unit_con_name l tuple_con :: l -> Boxed -> Int -> Exp l tuple_con l b i = Con l (tuple_con_name l b i) unboxed_singleton_con :: l -> Exp l unboxed_singleton_con l = Con l (unboxed_singleton_con_name l) as_name, qualified_name, hiding_name, minus_name, bang_name, dot_name, star_name :: l -> Name l as_name l = Ident l "as" qualified_name l = Ident l "qualified" hiding_name l = Ident l "hiding" minus_name l = Symbol l "-" bang_name l = Symbol l "!" dot_name l = Symbol l "." star_name l = Symbol l "*" export_name, safe_name, unsafe_name, interruptible_name, threadsafe_name, stdcall_name, ccall_name, cplusplus_name, dotnet_name, jvm_name, js_name, javascript_name, capi_name, forall_name, family_name, role_name :: l -> Name l export_name l = Ident l "export" safe_name l = Ident l "safe" unsafe_name l = Ident l "unsafe" interruptible_name l = Ident l "interruptible" threadsafe_name l = Ident l "threadsafe" stdcall_name l = Ident l "stdcall" ccall_name l = Ident l "ccall" cplusplus_name l = Ident l "cplusplus" dotnet_name l = Ident l "dotnet" jvm_name l = Ident l "jvm" js_name l = Ident l "js" javascript_name l = Ident l "javascript" capi_name l = Ident l "capi" forall_name l = Ident l "forall" family_name l = Ident l "family" role_name l = Ident l "role" unit_tycon_name, fun_tycon_name, list_tycon_name, unboxed_singleton_tycon_name :: l -> QName l unit_tycon_name l = unit_con_name l fun_tycon_name l = Special l (FunCon l) list_tycon_name l = Special l (ListCon l) unboxed_singleton_tycon_name l = Special l (UnboxedSingleCon l) tuple_tycon_name :: l -> Boxed -> Int -> QName l tuple_tycon_name l b i = tuple_con_name l b i unit_tycon, fun_tycon, list_tycon, unboxed_singleton_tycon :: l -> Type l unit_tycon l = TyCon l $ unit_tycon_name l fun_tycon l = TyCon l $ fun_tycon_name l list_tycon l = TyCon l $ list_tycon_name l unboxed_singleton_tycon l = TyCon l $ unboxed_singleton_tycon_name l tuple_tycon :: l -> Boxed -> Int -> Type l tuple_tycon l b i = TyCon l (tuple_tycon_name l b i) ----------------------------------------------------------------------------- -- AST traversal, boiler-plate style -- | Test if two AST elements are equal modulo annotations. (=~=) :: (Annotated a, Eq (a ())) => a l1 -> a l2 -> Bool a =~= b = fmap (const ()) a == fmap (const ()) b ----------------------------------------------------------------------------- -- Reading annotations -- | AST nodes are annotated, and this class allows manipulation of the annotations. class Functor ast => Annotated ast where -- | Retrieve the annotation of an AST node. ann :: ast l -> l -- | Change the annotation of an AST node. Note that only the annotation of -- the node itself is affected, and not the annotations of any child nodes. -- if all nodes in the AST tree are to be affected, use 'fmap'. amap :: (l -> l) -> ast l -> ast l instance Annotated ModuleName where ann (ModuleName l _) = l amap f (ModuleName l n) = ModuleName (f l) n instance Annotated SpecialCon where ann sc = case sc of UnitCon l -> l ListCon l -> l FunCon l -> l TupleCon l _ _ -> l Cons l -> l UnboxedSingleCon l -> l amap = fmap instance Annotated QName where ann qn = case qn of Qual l _ _ -> l UnQual l _ -> l Special l _ -> l amap f qn = case qn of Qual l mn n -> Qual (f l) mn n UnQual l n -> UnQual (f l) n Special l sc -> Special (f l) sc instance Annotated Name where ann (Ident l _) = l ann (Symbol l _) = l amap = fmap instance Annotated IPName where ann (IPDup l _) = l ann (IPLin l _) = l amap = fmap instance Annotated QOp where ann (QVarOp l _) = l ann (QConOp l _) = l amap f (QVarOp l qn) = QVarOp (f l) qn amap f (QConOp l qn) = QConOp (f l) qn instance Annotated Op where ann (VarOp l _) = l ann (ConOp l _) = l amap f (VarOp l n) = VarOp (f l) n amap f (ConOp l n) = ConOp (f l) n instance Annotated CName where ann (VarName l _) = l ann (ConName l _) = l amap f (VarName l n) = VarName (f l) n amap f (ConName l n) = ConName (f l) n instance Annotated Module where ann (Module l _ _ _ _) = l ann (XmlPage l _ _ _ _ _ _) = l ann (XmlHybrid l _ _ _ _ _ _ _ _) = l amap f (Module l mmh ops iss dcls) = Module (f l) mmh ops iss dcls amap f (XmlPage l mn os xn xas me es) = XmlPage (f l) mn os xn xas me es amap f (XmlHybrid l mmh ops iss dcls xn xas me es) = XmlHybrid (f l) mmh ops iss dcls xn xas me es instance Annotated ModuleHead where ann (ModuleHead l _ _ _) = l amap f (ModuleHead l n mwt mesl) = ModuleHead (f l) n mwt mesl instance Annotated ExportSpecList where ann (ExportSpecList l _) = l amap f (ExportSpecList l ess) = ExportSpecList (f l) ess instance Annotated ExportSpec where ann es = case es of EVar l _ -> l EAbs l _ _ -> l EThingWith l _ _ _ -> l EModuleContents l _ -> l amap f es = case es of EVar l qn -> EVar (f l) qn EAbs l n qn -> EAbs (f l) n qn EThingWith l wc qn cns -> EThingWith (f l) wc qn cns EModuleContents l mn -> EModuleContents (f l) mn instance Annotated EWildcard where ann ewc = case ewc of NoWildcard l -> l EWildcard l _ -> l amap f ewc = case ewc of NoWildcard l -> NoWildcard (f l) EWildcard l n -> EWildcard (f l) n instance Annotated Namespace where ann es = case es of NoNamespace l -> l TypeNamespace l -> l PatternNamespace l -> l amap f es = case es of NoNamespace l -> NoNamespace (f l) TypeNamespace l -> TypeNamespace (f l) PatternNamespace l -> PatternNamespace (f l) instance Annotated ImportDecl where ann (ImportDecl l _ _ _ _ _ _ _) = l amap f (ImportDecl l mn qual src safe pkg mmn mis) = ImportDecl (f l) mn qual src safe pkg mmn mis instance Annotated ImportSpecList where ann (ImportSpecList l _ _) = l amap f (ImportSpecList l b iss) = ImportSpecList (f l) b iss instance Annotated ImportSpec where ann is = case is of IVar l _ -> l IAbs l _ _ -> l IThingAll l _ -> l IThingWith l _ _ -> l amap f is = case is of IVar l n -> IVar (f l) n IAbs l ns n -> IAbs (f l) ns n IThingAll l n -> IThingAll (f l) n IThingWith l n cns -> IThingWith (f l) n cns instance Annotated Assoc where ann (AssocNone l) = l ann (AssocLeft l) = l ann (AssocRight l) = l amap = fmap instance Annotated Deriving where ann (Deriving l _) = l amap f (Deriving l ihs) = Deriving (f l) ihs instance Annotated TypeEqn where ann (TypeEqn l _ _) = l amap f (TypeEqn l a b) = TypeEqn (f l) a b instance Annotated InjectivityInfo where ann (InjectivityInfo l _ _) = l amap f (InjectivityInfo l to from) = InjectivityInfo (f l) to from instance Annotated ResultSig where ann (KindSig l _) = l ann (TyVarSig l _) = l amap f (KindSig l k) = KindSig (f l) k amap f (TyVarSig l tv) = TyVarSig (f l) tv instance Annotated Decl where ann decl = case decl of TypeDecl l _ _ -> l TypeFamDecl l _ _ _ -> l ClosedTypeFamDecl l _ _ _ _ -> l DataDecl l _ _ _ _ _ -> l GDataDecl l _ _ _ _ _ _ -> l DataFamDecl l _ _ _ -> l TypeInsDecl l _ _ -> l DataInsDecl l _ _ _ _ -> l GDataInsDecl l _ _ _ _ _ -> l ClassDecl l _ _ _ _ -> l InstDecl l _ _ _ -> l DerivDecl l _ _ -> l InfixDecl l _ _ _ -> l DefaultDecl l _ -> l SpliceDecl l _ -> l TypeSig l _ _ -> l PatSynSig l _ _ _ _ _ -> l FunBind l _ -> l PatBind l _ _ _ -> l ForImp l _ _ _ _ _ -> l ForExp l _ _ _ _ -> l RulePragmaDecl l _ -> l DeprPragmaDecl l _ -> l WarnPragmaDecl l _ -> l InlineSig l _ _ _ -> l InlineConlikeSig l _ _ -> l SpecSig l _ _ _ -> l SpecInlineSig l _ _ _ _ -> l InstSig l _ -> l AnnPragma l _ -> l MinimalPragma l _ -> l RoleAnnotDecl l _ _ -> l PatSyn l _ _ _ -> l amap f decl = case decl of TypeDecl l dh t -> TypeDecl (f l) dh t TypeFamDecl l dh mk mi -> TypeFamDecl (f l) dh mk mi ClosedTypeFamDecl l dh mk mi eqns -> ClosedTypeFamDecl (f l) dh mk mi eqns DataDecl l dn mcx dh cds ders -> DataDecl (f l) dn mcx dh cds ders GDataDecl l dn mcx dh mk gds ders -> GDataDecl (f l) dn mcx dh mk gds ders DataFamDecl l mcx dh mk -> DataFamDecl (f l) mcx dh mk TypeInsDecl l t1 t2 -> TypeInsDecl (f l) t1 t2 DataInsDecl l dn t cds ders -> DataInsDecl (f l) dn t cds ders GDataInsDecl l dn t mk gds ders -> GDataInsDecl (f l) dn t mk gds ders ClassDecl l mcx dh fds cds -> ClassDecl (f l) mcx dh fds cds InstDecl l mo ih ids -> InstDecl (f l) mo ih ids DerivDecl l mo ih -> DerivDecl (f l) mo ih InfixDecl l a k ops -> InfixDecl (f l) a k ops DefaultDecl l ts -> DefaultDecl (f l) ts SpliceDecl l sp -> SpliceDecl (f l) sp TypeSig l ns t -> TypeSig (f l) ns t PatSynSig l n dh c1 c2 t -> PatSynSig (f l) n dh c1 c2 t FunBind l ms -> FunBind (f l) ms PatBind l p rhs bs -> PatBind (f l) p rhs bs ForImp l cc msf s n t -> ForImp (f l) cc msf s n t ForExp l cc s n t -> ForExp (f l) cc s n t RulePragmaDecl l rs -> RulePragmaDecl (f l) rs DeprPragmaDecl l nss -> DeprPragmaDecl (f l) nss WarnPragmaDecl l nss -> WarnPragmaDecl (f l) nss InlineSig l b act qn -> InlineSig (f l) b act qn InlineConlikeSig l act qn -> InlineConlikeSig (f l) act qn SpecSig l act qn ts -> SpecSig (f l) act qn ts SpecInlineSig l b act qn ts -> SpecInlineSig (f l) b act qn ts InstSig l ih -> InstSig (f l) ih AnnPragma l ann' -> AnnPragma (f l) ann' MinimalPragma l b -> MinimalPragma (f l) b RoleAnnotDecl l t rs -> RoleAnnotDecl (f l) t rs PatSyn l p r d -> PatSyn (f l) p r d instance Annotated Role where ann r = case r of RoleWildcard l -> l Representational l -> l Phantom l -> l Nominal l -> l amap f r = case r of RoleWildcard l -> RoleWildcard (f l) Representational l -> Representational (f l) Phantom l -> Phantom (f l) Nominal l -> Nominal (f l) instance Annotated Annotation where ann (Ann l _ _) = l ann (TypeAnn l _ _) = l ann (ModuleAnn l _) = l amap f (Ann l n e) = Ann (f l) n e amap f (TypeAnn l n e) = TypeAnn (f l) n e amap f (ModuleAnn l e) = ModuleAnn (f l) e instance Annotated BooleanFormula where ann (VarFormula l _) = l ann (AndFormula l _) = l ann (OrFormula l _) = l ann (ParenFormula l _) = l amap f (VarFormula l n) = VarFormula (f l) n amap f (AndFormula l bs) = AndFormula (f l) bs amap f (OrFormula l bs) = OrFormula (f l) bs amap f (ParenFormula l b) = ParenFormula (f l) b instance Annotated DataOrNew where ann (DataType l) = l ann (NewType l) = l amap = fmap instance Annotated DeclHead where ann (DHead l _) = l ann (DHInfix l _ _) = l ann (DHParen l _) = l ann (DHApp l _ _) = l amap f (DHead l n) = DHead (f l) n amap f (DHInfix l tva n) = DHInfix (f l) tva n amap f (DHParen l dh) = DHParen (f l) dh amap f (DHApp l dh t) = DHApp (f l) dh t instance Annotated InstRule where ann (IRule l _ _ _) = l ann (IParen l _) = l amap f (IRule l mtv cxt qn) = IRule (f l) mtv cxt qn amap f (IParen l ih) = IParen (f l) ih instance Annotated InstHead where ann (IHCon l _) = l ann (IHInfix l _ _) = l ann (IHParen l _) = l ann (IHApp l _ _) = l amap f (IHCon l n) = IHCon (f l) n amap f (IHInfix l tva n) = IHInfix (f l) tva n amap f (IHParen l dh) = IHParen (f l) dh amap f (IHApp l dh t) = IHApp (f l) dh t instance Annotated Binds where ann (BDecls l _) = l ann (IPBinds l _) = l amap f (BDecls l decls) = BDecls (f l) decls amap f (IPBinds l ibs) = IPBinds (f l) ibs instance Annotated IPBind where ann (IPBind l _ _) = l amap f (IPBind l ipn e) = IPBind (f l) ipn e instance Annotated Match where ann (Match l _ _ _ _) = l ann (InfixMatch l _ _ _ _ _) = l amap f (Match l n ps rhs bs) = Match (f l) n ps rhs bs amap f (InfixMatch l a n b rhs bs) = InfixMatch (f l) a n b rhs bs instance Annotated QualConDecl where ann (QualConDecl l _ _ _) = l amap f (QualConDecl l tvs cx cd) = QualConDecl (f l) tvs cx cd instance Annotated ConDecl where ann (ConDecl l _ _) = l ann (InfixConDecl l _ _ _) = l ann (RecDecl l _ _) = l amap f (ConDecl l n bts) = ConDecl (f l) n bts amap f (InfixConDecl l ta n tb) = InfixConDecl (f l) ta n tb amap f (RecDecl l n fds) = RecDecl (f l) n fds instance Annotated FieldDecl where ann (FieldDecl l _ _) = l amap f (FieldDecl l ns t) = FieldDecl (f l) ns t instance Annotated GadtDecl where ann (GadtDecl l _ _ _) = l amap f (GadtDecl l n t1 t2) = GadtDecl (f l) n t1 t2 instance Annotated ClassDecl where ann (ClsDecl l _) = l ann (ClsDataFam l _ _ _) = l ann (ClsTyFam l _ _ _) = l ann (ClsTyDef l _) = l ann (ClsDefSig l _ _) = l amap f (ClsDecl l d) = ClsDecl (f l) d amap f (ClsDataFam l mcx dh mk) = ClsDataFam (f l) mcx dh mk amap f (ClsTyFam l dh mk mi) = ClsTyFam (f l) dh mk mi amap f (ClsTyDef l t ) = ClsTyDef (f l) t amap f (ClsDefSig l n t) = ClsDefSig (f l) n t instance Annotated InstDecl where ann id = case id of InsDecl l _ -> l InsType l _ _ -> l InsData l _ _ _ _ -> l InsGData l _ _ _ _ _ -> l -- InsInline l _ _ _ -> l amap f id = case id of InsDecl l d -> InsDecl (f l) d InsType l t1 t2 -> InsType (f l) t1 t2 InsData l dn t cds ders -> InsData (f l) dn t cds ders InsGData l dn t mk gds ders -> InsGData (f l) dn t mk gds ders -- InsInline l b act qn -> InsInline (f l) b act qn instance Annotated BangType where ann (BangedTy l) = l ann (LazyTy l) = l ann (NoStrictAnnot l) = l amap f (BangedTy l) = BangedTy (f l) amap f (LazyTy l) = LazyTy (f l) amap f (NoStrictAnnot l) = NoStrictAnnot (f l) instance Annotated Unpackedness where ann (Unpack l) = l ann (NoUnpack l) = l ann (NoUnpackPragma l) = l amap f (Unpack l) = Unpack (f l) amap f (NoUnpack l) = Unpack (f l) amap f (NoUnpackPragma l) = Unpack (f l) instance Annotated Rhs where ann (UnGuardedRhs l _) = l ann (GuardedRhss l _) = l amap f (UnGuardedRhs l e) = UnGuardedRhs (f l) e amap f (GuardedRhss l grhss) = GuardedRhss (f l) grhss instance Annotated GuardedRhs where ann (GuardedRhs l _ _) = l amap f (GuardedRhs l ss e) = GuardedRhs (f l) ss e instance Annotated Type where ann t = case t of TyForall l _ _ _ -> l TyFun l _ _ -> l TyTuple l _ _ -> l TyList l _ -> l TyParArray l _ -> l TyApp l _ _ -> l TyVar l _ -> l TyCon l _ -> l TyParen l _ -> l TyInfix l _ _ _ -> l TyKind l _ _ -> l TyPromoted l _ -> l TyEquals l _ _ -> l TySplice l _ -> l TyBang l _ _ _ -> l TyWildCard l _ -> l TyQuasiQuote l _ _ -> l amap f t1 = case t1 of TyForall l mtvs mcx t -> TyForall (f l) mtvs mcx t TyFun l t1' t2 -> TyFun (f l) t1' t2 TyTuple l b ts -> TyTuple (f l) b ts TyList l t -> TyList (f l) t TyParArray l t -> TyParArray (f l) t TyApp l t1' t2 -> TyApp (f l) t1' t2 TyVar l n -> TyVar (f l) n TyCon l qn -> TyCon (f l) qn TyParen l t -> TyParen (f l) t TyInfix l ta qn tb -> TyInfix (f l) ta qn tb TyKind l t k -> TyKind (f l) t k TyPromoted l p -> TyPromoted (f l) p TyEquals l a b -> TyEquals (f l) a b TySplice l s -> TySplice (f l) s TyBang l b u t -> TyBang (f l) b u t TyWildCard l n -> TyWildCard (f l) n TyQuasiQuote l n s -> TyQuasiQuote (f l) n s instance Annotated TyVarBind where ann (KindedVar l _ _) = l ann (UnkindedVar l _) = l amap f (KindedVar l n k) = KindedVar (f l) n k amap f (UnkindedVar l n) = UnkindedVar (f l) n instance Annotated Kind where ann (KindStar l) = l ann (KindFn l _ _) = l ann (KindParen l _) = l ann (KindVar l _) = l ann (KindApp l _ _) = l ann (KindTuple l _) = l ann (KindList l _) = l amap f (KindStar l) = KindStar (f l) amap f (KindFn l k1 k2) = KindFn (f l) k1 k2 amap f (KindParen l k) = KindParen (f l) k amap f (KindVar l n) = KindVar (f l) n amap f (KindApp l k1 k2) = KindApp (f l) k1 k2 amap f (KindTuple l ks) = KindTuple (f l) ks amap f (KindList l ks) = KindList (f l) ks instance Annotated FunDep where ann (FunDep l _ _) = l amap f (FunDep l ns1 ns2) = FunDep (f l) ns1 ns2 instance Annotated Context where ann (CxSingle l _) = l ann (CxTuple l _) = l ann (CxEmpty l) = l amap f (CxSingle l asst ) = CxSingle (f l) asst amap f (CxTuple l assts) = CxTuple (f l) assts amap f (CxEmpty l) = CxEmpty (f l) instance Annotated Asst where ann asst = case asst of ClassA l _ _ -> l AppA l _ _ -> l InfixA l _ _ _ -> l IParam l _ _ -> l EqualP l _ _ -> l ParenA l _ -> l WildCardA l _ -> l amap f asst = case asst of ClassA l qn ts -> ClassA (f l) qn ts AppA l n ns -> AppA (f l) n ns InfixA l ta qn tb -> InfixA (f l) ta qn tb IParam l ipn t -> IParam (f l) ipn t EqualP l t1 t2 -> EqualP (f l) t1 t2 ParenA l a -> ParenA (f l) a WildCardA l mn -> WildCardA (f l) mn instance Annotated Literal where ann lit = case lit of Char l _ _ -> l String l _ _ -> l Int l _ _ -> l Frac l _ _ -> l PrimInt l _ _ -> l PrimWord l _ _ -> l PrimFloat l _ _ -> l PrimDouble l _ _ -> l PrimChar l _ _ -> l PrimString l _ _ -> l amap = fmap instance Annotated Sign where ann sg = case sg of Signless l -> l Negative l -> l amap = fmap instance Annotated Exp where ann e = case e of Var l _ -> l OverloadedLabel l _ -> l IPVar l _ -> l Con l _ -> l Lit l _ -> l InfixApp l _ _ _ -> l App l _ _ -> l NegApp l _ -> l Lambda l _ _ -> l Let l _ _ -> l If l _ _ _ -> l MultiIf l _ -> l Case l _ _ -> l Do l _ -> l MDo l _ -> l Tuple l _ _ -> l TupleSection l _ _ -> l List l _ -> l ParArray l _ -> l Paren l _ -> l LeftSection l _ _ -> l RightSection l _ _ -> l RecConstr l _ _ -> l RecUpdate l _ _ -> l EnumFrom l _ -> l EnumFromTo l _ _ -> l EnumFromThen l _ _ -> l EnumFromThenTo l _ _ _ -> l ParArrayFromTo l _ _ -> l ParArrayFromThenTo l _ _ _ -> l ListComp l _ _ -> l ParComp l _ _ -> l ParArrayComp l _ _ -> l ExpTypeSig l _ _ -> l VarQuote l _ -> l TypQuote l _ -> l BracketExp l _ -> l SpliceExp l _ -> l QuasiQuote l _ _ -> l TypeApp l _ -> l XTag l _ _ _ _ -> l XETag l _ _ _ -> l XPcdata l _ -> l XExpTag l _ -> l XChildTag l _ -> l CorePragma l _ _ -> l SCCPragma l _ _ -> l GenPragma l _ _ _ _ -> l Proc l _ _ -> l LeftArrApp l _ _ -> l RightArrApp l _ _ -> l LeftArrHighApp l _ _ -> l RightArrHighApp l _ _ -> l LCase l _ -> l ExprHole l -> l amap f e1 = case e1 of Var l qn -> Var (f l) qn OverloadedLabel l qn -> OverloadedLabel (f l) qn IPVar l ipn -> IPVar (f l) ipn Con l qn -> Con (f l) qn Lit l lit -> Lit (f l) lit InfixApp l e1' qop e2 -> InfixApp (f l) e1' qop e2 App l e1' e2 -> App (f l) e1' e2 NegApp l e -> NegApp (f l) e Lambda l ps e -> Lambda (f l) ps e Let l bs e -> Let (f l) bs e If l ec et ee -> If (f l) ec et ee Case l e alts -> Case (f l) e alts Do l ss -> Do (f l) ss MDo l ss -> MDo (f l) ss Tuple l bx es -> Tuple (f l) bx es TupleSection l bx mes -> TupleSection (f l) bx mes List l es -> List (f l) es ParArray l es -> ParArray (f l) es Paren l e -> Paren (f l) e LeftSection l e qop -> LeftSection (f l) e qop RightSection l qop e -> RightSection (f l) qop e RecConstr l qn fups -> RecConstr (f l) qn fups RecUpdate l e fups -> RecUpdate (f l) e fups EnumFrom l e -> EnumFrom (f l) e EnumFromTo l ef et -> EnumFromTo (f l) ef et EnumFromThen l ef et -> EnumFromThen (f l) ef et EnumFromThenTo l ef eth eto -> EnumFromThenTo (f l) ef eth eto ParArrayFromTo l ef et -> ParArrayFromTo (f l) ef et ParArrayFromThenTo l ef eth eto -> ParArrayFromThenTo (f l) ef eth eto ListComp l e qss -> ListComp (f l) e qss ParComp l e qsss -> ParComp (f l) e qsss ParArrayComp l e qsss -> ParArrayComp (f l) e qsss ExpTypeSig l e t -> ExpTypeSig (f l) e t VarQuote l qn -> VarQuote (f l) qn TypQuote l qn -> TypQuote (f l) qn BracketExp l br -> BracketExp (f l) br SpliceExp l sp -> SpliceExp (f l) sp QuasiQuote l sn se -> QuasiQuote (f l) sn se TypeApp l t -> TypeApp (f l) t XTag l xn xas me es -> XTag (f l) xn xas me es XETag l xn xas me -> XETag (f l) xn xas me XPcdata l s -> XPcdata (f l) s XExpTag l e -> XExpTag (f l) e XChildTag l es -> XChildTag (f l) es CorePragma l s e -> CorePragma (f l) s e SCCPragma l s e -> SCCPragma (f l) s e GenPragma l s n12 n34 e -> GenPragma (f l) s n12 n34 e Proc l p e -> Proc (f l) p e LeftArrApp l e1' e2 -> LeftArrApp (f l) e1' e2 RightArrApp l e1' e2 -> RightArrApp (f l) e1' e2 LeftArrHighApp l e1' e2 -> LeftArrHighApp (f l) e1' e2 RightArrHighApp l e1' e2 -> RightArrHighApp (f l) e1' e2 LCase l alts -> LCase (f l) alts MultiIf l alts -> MultiIf (f l) alts ExprHole l -> ExprHole (f l) instance Annotated XName where ann (XName l _) = l ann (XDomName l _ _) = l amap = fmap instance Annotated XAttr where ann (XAttr l _ _) = l amap f (XAttr l xn e) = XAttr (f l) xn e instance Annotated Bracket where ann (ExpBracket l _) = l ann (PatBracket l _) = l ann (TypeBracket l _) = l ann (DeclBracket l _) = l amap f (ExpBracket l e) = ExpBracket (f l) e amap f (PatBracket l p) = PatBracket (f l) p amap f (TypeBracket l t) = TypeBracket (f l) t amap f (DeclBracket l ds) = DeclBracket (f l) ds instance Annotated Splice where ann (IdSplice l _) = l ann (ParenSplice l _) = l amap f (IdSplice l s) = IdSplice (f l) s amap f (ParenSplice l e) = ParenSplice (f l) e instance Annotated Safety where ann (PlayRisky l) = l ann (PlaySafe l _) = l ann (PlayInterruptible l) = l amap = fmap instance Annotated CallConv where ann (StdCall l) = l ann (CCall l) = l ann (CPlusPlus l) = l ann (DotNet l) = l ann (Jvm l) = l ann (Js l) = l ann (JavaScript l) = l ann (CApi l) = l amap = fmap instance Annotated ModulePragma where ann (LanguagePragma l _) = l ann (OptionsPragma l _ _) = l ann (AnnModulePragma l _) = l amap f (LanguagePragma l ns) = LanguagePragma (f l) ns amap f (AnnModulePragma l a) = AnnModulePragma (f l) a amap f p = fmap f p instance Annotated Overlap where ann (NoOverlap l) = l ann (Overlap l) = l ann (Incoherent l) = l amap = fmap instance Annotated Activation where ann (ActiveFrom l _) = l ann (ActiveUntil l _) = l amap = fmap instance Annotated Rule where ann (Rule l _ _ _ _ _) = l amap f (Rule l s act mrvs e1 e2) = Rule (f l) s act mrvs e1 e2 instance Annotated RuleVar where ann (RuleVar l _) = l ann (TypedRuleVar l _ _) = l amap f (RuleVar l n) = RuleVar (f l) n amap f (TypedRuleVar l n t) = TypedRuleVar (f l) n t instance Annotated WarningText where ann (DeprText l _) = l ann (WarnText l _) = l amap = fmap instance Annotated Pat where ann p = case p of PVar l _ -> l PLit l _ _ -> l PNPlusK l _ _ -> l PInfixApp l _ _ _ -> l PApp l _ _ -> l PTuple l _ _ -> l PList l _ -> l PParen l _ -> l PRec l _ _ -> l PAsPat l _ _ -> l PWildCard l -> l PIrrPat l _ -> l PatTypeSig l _ _ -> l PViewPat l _ _ -> l PRPat l _ -> l PXTag l _ _ _ _ -> l PXETag l _ _ _ -> l PXPcdata l _ -> l PXPatTag l _ -> l PXRPats l _ -> l PQuasiQuote l _ _ -> l PBangPat l _ -> l amap f p1 = case p1 of PVar l n -> PVar (f l) n PLit l sg lit -> PLit (f l) sg lit PNPlusK l n k -> PNPlusK (f l) n k PInfixApp l pa qn pb -> PInfixApp (f l) pa qn pb PApp l qn ps -> PApp (f l) qn ps PTuple l bx ps -> PTuple (f l) bx ps PList l ps -> PList (f l) ps PParen l p -> PParen (f l) p PRec l qn pfs -> PRec (f l) qn pfs PAsPat l n p -> PAsPat (f l) n p PWildCard l -> PWildCard (f l) PIrrPat l p -> PIrrPat (f l) p PatTypeSig l p t -> PatTypeSig (f l) p t PViewPat l e p -> PViewPat (f l) e p PRPat l rps -> PRPat (f l) rps PXTag l xn pxas mp ps -> PXTag (f l) xn pxas mp ps PXETag l xn pxas mp -> PXETag (f l) xn pxas mp PXPcdata l s -> PXPcdata (f l) s PXPatTag l p -> PXPatTag (f l) p PXRPats l rps -> PXRPats (f l) rps PQuasiQuote l sn st -> PQuasiQuote (f l) sn st PBangPat l p -> PBangPat (f l) p instance Annotated PXAttr where ann (PXAttr l _ _) = l amap f (PXAttr l xn p) = PXAttr (f l) xn p instance Annotated RPatOp where ann (RPStar l) = l ann (RPStarG l) = l ann (RPPlus l) = l ann (RPPlusG l) = l ann (RPOpt l) = l ann (RPOptG l) = l amap = fmap instance Annotated RPat where ann rp = case rp of RPOp l _ _ -> l RPEither l _ _ -> l RPSeq l _ -> l RPGuard l _ _ -> l RPCAs l _ _ -> l RPAs l _ _ -> l RPParen l _ -> l RPPat l _ -> l amap f rp1 = case rp1 of RPOp l rp rop -> RPOp (f l) rp rop RPEither l rp1' rp2 -> RPEither (f l) rp1' rp2 RPSeq l rps -> RPSeq (f l) rps RPGuard l p ss -> RPGuard (f l) p ss RPCAs l n rp -> RPCAs (f l) n rp RPAs l n rp -> RPAs (f l) n rp RPParen l rp -> RPParen (f l) rp RPPat l p -> RPPat (f l) p instance Annotated PatField where ann (PFieldPat l _ _) = l ann (PFieldPun l _) = l ann (PFieldWildcard l) = l amap f (PFieldPat l qn p) = PFieldPat (f l) qn p amap f (PFieldPun l n) = PFieldPun (f l) n amap f (PFieldWildcard l) = PFieldWildcard (f l) instance Annotated Stmt where ann (Generator l _ _) = l ann (Qualifier l _) = l ann (LetStmt l _) = l ann (RecStmt l _) = l amap f (Generator l p e) = Generator (f l) p e amap f (Qualifier l e) = Qualifier (f l) e amap f (LetStmt l bs) = LetStmt (f l) bs amap f (RecStmt l ss) = RecStmt (f l) ss instance Annotated QualStmt where ann (QualStmt l _) = l ann (ThenTrans l _) = l ann (ThenBy l _ _) = l ann (GroupBy l _) = l ann (GroupUsing l _) = l ann (GroupByUsing l _ _) = l amap f (QualStmt l s) = QualStmt (f l) s amap f (ThenTrans l e) = ThenTrans (f l) e amap f (ThenBy l e1 e2) = ThenBy (f l) e1 e2 amap f (GroupBy l e) = GroupBy (f l) e amap f (GroupUsing l e) = GroupUsing (f l) e amap f (GroupByUsing l e1 e2) = GroupByUsing (f l) e1 e2 instance Annotated FieldUpdate where ann (FieldUpdate l _ _) = l ann (FieldPun l _) = l ann (FieldWildcard l) = l amap f (FieldUpdate l qn e) = FieldUpdate (f l) qn e amap f (FieldPun l n) = FieldPun (f l) n amap f (FieldWildcard l) = FieldWildcard (f l) instance Annotated Alt where ann (Alt l _ _ _) = l amap f (Alt l p gs bs) = Alt (f l) p gs bs instance Annotated Promoted where ann (PromotedInteger l _ _) = l ann (PromotedString l _ _) = l ann (PromotedCon l _ _) = l ann (PromotedList l _ _) = l ann (PromotedTuple l _) = l ann (PromotedUnit l) = l amap f (PromotedInteger l int raw) = PromotedInteger (f l) int raw amap f (PromotedString l str raw) = PromotedString (f l) str raw amap f (PromotedCon l b qn) = PromotedCon (f l) b qn amap f (PromotedList l b ps) = PromotedList (f l) b ps amap f (PromotedTuple l ps) = PromotedTuple (f l) ps amap f (PromotedUnit l) = PromotedUnit (f l) haskell-src-exts-1.18.2/tests/0000755000000000000000000000000012746233113014326 5ustar0000000000000000haskell-src-exts-1.18.2/tests/Extensions.hs0000644000000000000000000000273212746233113017025 0ustar0000000000000000{-# LANGUAGE FlexibleInstances, MultiParamTypeClasses, StandaloneDeriving #-} {-# OPTIONS_GHC -fno-warn-orphans #-} module Extensions (extensionProperties) where import Test.Tasty import Test.Tasty.SmallCheck import Test.SmallCheck.Series import Language.Haskell.Exts import Data.Function import Data.List instance Monad m => Serial m Language where series = generate (const knownLanguages) instance Monad m => Serial m Extension where series = generate (const knownExtensions) instance Monad m => Serial m KnownExtension where series = generate $ const [ e | EnableExtension e <- knownExtensions ] infix 3 ~~ (~~) :: Monad m => [Extension] -> [Extension] -> Property m xts1 ~~ xts2 = forAll $ \lang -> ((==) `on` sort . toExtensionList lang) xts1 xts2 extensionProperties :: TestTree extensionProperties = localOption (SmallCheckDepth 2) $ testGroup "Properties of LANGUAGE extensions" $ [ testProperty "identity" $ \x -> x ~~ x , testProperty "idempotence" $ \x -> x ++ x ~~ x , testProperty "right bias" $ \x y -> x ++ y ++ x ~~ y ++ x , testProperty "closedness of implication" $ \x -> impliesExts (impliesExts x) == impliesExts x , testProperty "closedness of toExtensionList" $ \l x -> let es = toExtensionList l x in es == impliesExts es , testProperty "opposite extensions 1" $ \x -> [EnableExtension x, DisableExtension x] ~~ [DisableExtension x] , testProperty "opposite extensions 2" $ \x -> [DisableExtension x, EnableExtension x] ~~ [EnableExtension x] ] haskell-src-exts-1.18.2/tests/Runner.hs0000644000000000000000000001373512746233113016144 0ustar0000000000000000{-# LANGUAGE ViewPatterns #-} -- | Use "runhaskell Setup.hs test" or "cabal test" to run these tests. module Main where import Language.Haskell.Exts import Test.Tasty hiding (defaultMain) import Test.Tasty.Golden import Test.Tasty.Golden.Manage import System.FilePath import System.IO import Control.Monad.Trans import Control.Applicative import Extensions import Text.Show.Pretty main :: IO () main = do sources <- getTestFiles examplesDir defaultMain $ testGroup "Tests" $ [ parserTests sources , exactPrinterTests sources , prettyPrinterTests sources , prettyParserTests sources , extensionProperties , commentsTests examplesDir ] -- | Where all the tests are to be found examplesDir :: FilePath examplesDir = "tests/examples" getTestFiles :: MonadIO m => FilePath -> m [FilePath] getTestFiles dir = liftIO $ findByExtension [".hs", ".lhs"] dir parserTests :: [FilePath] -> TestTree -- {{{ parserTests sources = testGroup "Parser tests" $ do -- list monad file <- sources let out = file <.> "parser" <.> "out" golden = file <.> "parser" <.> "golden" run = do ast <- parseUTF8FileWithComments (defaultParseMode { parseFilename = file }) file writeBinaryFile out $ ppShow ast ++ "\n" return $ goldenVsFile (takeBaseName file) golden out run -- }}} exactPrinterTests :: [FilePath] -> TestTree -- {{{ exactPrinterTests sources = testGroup "Exact printer tests" $ do -- list monad file <- sources let out = file <.> "exactprinter" <.> "out" golden = file <.> "exactprinter" <.> "golden" run = do contents <- readUTF8File file let -- parse mbAst = parseFileContentsWithComments (defaultParseMode { parseFilename = file }) contents -- try to pretty-print; summarize the test result result = case mbAst of f@ParseFailed{} -> show f ParseOk ast -> let printed = uncurry exactPrint ast in if printed == contents then "Match" else printed writeBinaryFile out $ result ++ "\n" return $ goldenVsFile (takeBaseName file) golden out run -- }}} prettyPrinterTests :: [FilePath] -> TestTree -- {{{ prettyPrinterTests sources = testGroup "Pretty printer tests" $ do -- list monad file <- sources let out = file <.> "prettyprinter" <.> "out" golden = file <.> "prettyprinter" <.> "golden" run = do contents <- readUTF8File file let -- parse mbAst = parseFileContentsWithMode (defaultParseMode { parseFilename = file }) contents -- try to pretty-print; summarize the test result result = case mbAst of f@ParseFailed{} -> show f ParseOk ast -> prettyPrint ast writeBinaryFile out $ result ++ "\n" return $ goldenVsFile (takeBaseName file) golden out run -- }}} prettyParserTests :: [FilePath] -> TestTree -- {{{ prettyParserTests sources = testGroup "Pretty-parser tests" $ do -- list monad file <- sources let out = file <.> "prettyparser" <.> "out" golden = file <.> "prettyparser" <.> "golden" run = do contents <- readUTF8File file let -- parse parse1Result :: ParseResult (Module SrcSpanInfo) parse1Result = parseFileContentsWithMode (defaultParseMode { parseFilename = file }) contents prettyResult :: ParseResult String prettyResult = prettyPrint <$> parse1Result parse2Result :: ParseResult (ParseResult (Module SrcSpanInfo)) parse2Result = parseFileContents <$> prettyResult -- Even the un-annotated AST contains certain locations. -- Obviously, they may differ, so we have to erase them. eraseLocs :: Module l -> Module () eraseLocs = (() <$) summary = case liftA3 (,,) parse1Result prettyResult parse2Result of f@ParseFailed{} -> show f ParseOk (eraseLocs -> ast1, pretty, mbAst2) -> case mbAst2 of f@ParseFailed{} -> "Failed to parse output of pretty-printer:\n" ++ show f ++ "\n" ++ "The pretty-printer output follows.\n\n" ++ pretty ParseOk (eraseLocs -> ast2) -> if ast1 == ast2 then "Match" else "Roundtrip test failed\n\n" ++ "AST 1:\n\n" ++ show ast1 ++ "\n\n" ++ "AST 2:\n\n" ++ show ast2 ++ "\n" writeBinaryFile out $ summary ++ "\n" return $ goldenVsFile (takeBaseName file) golden out run -- }}} commentsTests :: FilePath -> TestTree -- {{{ commentsTests dir = testGroup "Comments tests" $ do let file = dir "HaddockComments.hs" out = file <.> "comments" <.> "out" golden = file <.> "comments" <.> "golden" run = do contents <- readUTF8File file let -- parse parse1Result :: ParseResult (Module SrcSpanInfo,[Comment]) parse1Result = parseFileContentsWithComments (defaultParseMode { parseFilename = file }) contents withC = case parse1Result of ParseOk res -> ParseOk $ associateHaddock res ParseFailed sloc msg -> ParseFailed sloc msg writeBinaryFile out $ show withC ++ "\n" return $ goldenVsFile (takeBaseName file) golden out run -- UTF8 utils {{{ readUTF8File :: FilePath -> IO String readUTF8File fp = openFile fp ReadMode >>= \h -> do hSetEncoding h utf8 hGetContents h parseUTF8FileWithComments :: ParseMode -> FilePath -> IO (ParseResult (Module SrcSpanInfo, [Comment])) parseUTF8FileWithComments p fp = readUTF8File fp >>= (return . parseFileContentsWithComments p) -- }}} haskell-src-exts-1.18.2/tests/examples/0000755000000000000000000000000012746233113016144 5ustar0000000000000000haskell-src-exts-1.18.2/tests/examples/AmbiguousFixities.hs0000644000000000000000000000003212746233113022133 0ustar0000000000000000f = (+ 1) . head &&& tail haskell-src-exts-1.18.2/tests/examples/AmbiguousFixities.hs.exactprinter.golden0000644000000000000000000000007312746233113026116 0ustar0000000000000000ParseFailed (SrcLoc "" -1 -1) "Ambiguous infix expression" haskell-src-exts-1.18.2/tests/examples/AmbiguousFixities.hs.parser.golden0000644000000000000000000000007712746233113024706 0ustar0000000000000000ParseFailed (SrcLoc "" (-1) (-1)) "Ambiguous infix expression" haskell-src-exts-1.18.2/tests/examples/AmbiguousFixities.hs.prettyparser.golden0000644000000000000000000000007312746233113026152 0ustar0000000000000000ParseFailed (SrcLoc "" -1 -1) "Ambiguous infix expression" haskell-src-exts-1.18.2/tests/examples/AmbiguousFixities.hs.prettyprinter.golden0000644000000000000000000000007312746233113026341 0ustar0000000000000000ParseFailed (SrcLoc "" -1 -1) "Ambiguous infix expression" haskell-src-exts-1.18.2/tests/examples/ArityMismatch.hs0000644000000000000000000000010312746233113021250 0ustar0000000000000000module ArityMismatch where foo a b = 1 foo a = 2 bar = 1 baz = 2 haskell-src-exts-1.18.2/tests/examples/ArityMismatch.hs.exactprinter.golden0000644000000000000000000000012612746233113025233 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ArityMismatch.hs" 3 1) "arity mismatch for 'foo'" haskell-src-exts-1.18.2/tests/examples/ArityMismatch.hs.parser.golden0000644000000000000000000000013212746233113024014 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ArityMismatch.hs" 3 1) "arity mismatch for 'foo'" haskell-src-exts-1.18.2/tests/examples/ArityMismatch.hs.prettyparser.golden0000644000000000000000000000012612746233113025267 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ArityMismatch.hs" 3 1) "arity mismatch for 'foo'" haskell-src-exts-1.18.2/tests/examples/ArityMismatch.hs.prettyprinter.golden0000644000000000000000000000012612746233113025456 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ArityMismatch.hs" 3 1) "arity mismatch for 'foo'" haskell-src-exts-1.18.2/tests/examples/ArrowLayout.hs0000644000000000000000000000020212746233113020762 0ustar0000000000000000{-# LANGUAGE Arrows #-} module ArrowLayout where exp = proc () -> do rec let e = 1 + i i <- integral -< e returnA -< e haskell-src-exts-1.18.2/tests/examples/ArrowLayout.hs.exactprinter.golden0000644000000000000000000000000612746233113024742 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ArrowLayout.hs.parser.golden0000644000000000000000000004167312746233113023545 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 1 1 1 1 , SrcSpan "tests/examples/ArrowLayout.hs" 2 1 2 1 , SrcSpan "tests/examples/ArrowLayout.hs" 2 1 2 1 , SrcSpan "tests/examples/ArrowLayout.hs" 4 1 4 1 , SrcSpan "tests/examples/ArrowLayout.hs" 8 1 8 1 , SrcSpan "tests/examples/ArrowLayout.hs" 8 1 8 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 2 1 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 2 1 2 7 , SrcSpan "tests/examples/ArrowLayout.hs" 2 20 2 25 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 2 8 2 19 , srcInfoPoints = [] } "ArrowLayout") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 1 1 1 24 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 1 1 1 13 , SrcSpan "tests/examples/ArrowLayout.hs" 1 21 1 24 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 1 14 1 20 , srcInfoPoints = [] } "Arrows" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 1 7 15 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 1 4 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 1 4 4 , srcInfoPoints = [] } "exp")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 5 7 15 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 4 5 4 6 ] } (Proc SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 7 7 15 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 4 7 4 11 , SrcSpan "tests/examples/ArrowLayout.hs" 4 15 4 17 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 13 , SrcSpan "tests/examples/ArrowLayout.hs" 4 13 4 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 13 , SrcSpan "tests/examples/ArrowLayout.hs" 4 13 4 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 4 12 4 13 , SrcSpan "tests/examples/ArrowLayout.hs" 4 13 4 14 ] })) []) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 4 18 7 15 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 4 18 4 20 , SrcSpan "tests/examples/ArrowLayout.hs" 5 3 5 3 , SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 3 , SrcSpan "tests/examples/ArrowLayout.hs" 8 1 8 0 ] } [ RecStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 3 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 5 3 5 6 , SrcSpan "tests/examples/ArrowLayout.hs" 5 7 5 7 , SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 7 , SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 0 ] } [ LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 7 5 20 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 5 7 5 10 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 20 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 11 , SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 11 5 12 , srcInfoPoints = [] } "e")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 13 5 20 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 5 13 5 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 15 5 20 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 15 5 16 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 15 5 16 , srcInfoPoints = [] } 1 "1")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 17 5 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 17 5 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 17 5 18 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 19 5 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 19 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 5 19 5 20 , srcInfoPoints = [] } "i"))))) Nothing ]) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 6 9 6 11 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 7 6 8 , srcInfoPoints = [] } "i")) (LeftArrApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 12 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 6 21 6 23 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 12 6 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 12 6 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 12 6 20 , srcInfoPoints = [] } "integral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 24 6 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 24 6 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 6 24 6 25 , srcInfoPoints = [] } "e")))) ] , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 15 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 7 11 7 13 ] } (LeftArrApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 15 , srcInfoPoints = [ SrcSpan "tests/examples/ArrowLayout.hs" 7 11 7 13 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 3 7 10 , srcInfoPoints = [] } "returnA"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 14 7 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 14 7 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ArrowLayout.hs" 7 14 7 15 , srcInfoPoints = [] } "e")))) ]))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ArrowLayout.hs.prettyparser.golden0000644000000000000000000000000612746233113024776 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ArrowLayout.hs.prettyprinter.golden0000644000000000000000000000022512746233113025170 0ustar0000000000000000{-# LANGUAGE Arrows #-} module ArrowLayout where exp = proc () -> do rec let e = 1 + i i <- integral -< e returnA -< e haskell-src-exts-1.18.2/tests/examples/AtOperator.hs0000644000000000000000000000017412746233113020562 0ustar0000000000000000{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeOperators #-} data a :+: b = Proxy foo = id @(Int :+: Int) _ @> m = m haskell-src-exts-1.18.2/tests/examples/AtOperator.hs.exactprinter.golden0000644000000000000000000000000612746233113024532 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/AtOperator.hs.parser.golden0000644000000000000000000002641212746233113023327 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/AtOperator.hs" 1 1 1 1 , SrcSpan "tests/examples/AtOperator.hs" 2 1 2 1 , SrcSpan "tests/examples/AtOperator.hs" 4 1 4 1 , SrcSpan "tests/examples/AtOperator.hs" 4 1 4 1 , SrcSpan "tests/examples/AtOperator.hs" 4 1 4 1 , SrcSpan "tests/examples/AtOperator.hs" 6 1 6 1 , SrcSpan "tests/examples/AtOperator.hs" 8 1 8 1 , SrcSpan "tests/examples/AtOperator.hs" 9 1 9 1 , SrcSpan "tests/examples/AtOperator.hs" 9 1 9 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 1 1 1 34 , srcInfoPoints = [ SrcSpan "tests/examples/AtOperator.hs" 1 1 1 13 , SrcSpan "tests/examples/AtOperator.hs" 1 31 1 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 1 14 1 30 , srcInfoPoints = [] } "TypeApplications" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 2 1 2 31 , srcInfoPoints = [ SrcSpan "tests/examples/AtOperator.hs" 2 1 2 13 , SrcSpan "tests/examples/AtOperator.hs" 2 28 2 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 2 14 2 27 , srcInfoPoints = [] } "TypeOperators" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/AtOperator.hs" 4 14 4 15 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 1 4 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 6 4 13 , srcInfoPoints = [] } (DHInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 6 4 13 , srcInfoPoints = [] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 6 4 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 6 4 7 , srcInfoPoints = [] } "a")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 8 4 11 , srcInfoPoints = [] } ":+:")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 12 4 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 12 4 13 , srcInfoPoints = [] } "b"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 16 4 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 16 4 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 4 16 4 21 , srcInfoPoints = [] } "Proxy") []) ] Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 1 6 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 1 6 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 1 6 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 5 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/AtOperator.hs" 6 5 6 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 7 6 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 7 6 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 7 6 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 7 6 9 , srcInfoPoints = [] } "id"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 10 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/AtOperator.hs" 6 10 6 11 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 11 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/AtOperator.hs" 6 11 6 12 , SrcSpan "tests/examples/AtOperator.hs" 6 23 6 24 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 12 6 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 12 6 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 12 6 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 12 6 15 , srcInfoPoints = [] } "Int"))) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 16 6 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 16 6 19 , srcInfoPoints = [] } ":+:")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 20 6 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 20 6 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 6 20 6 23 , srcInfoPoints = [] } "Int")))))))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 1 8 11 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 1 8 11 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 1 8 2 , srcInfoPoints = [] }) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 3 8 5 , srcInfoPoints = [] } "@>") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 6 8 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 6 8 7 , srcInfoPoints = [] } "m") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 8 8 11 , srcInfoPoints = [ SrcSpan "tests/examples/AtOperator.hs" 8 8 8 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 10 8 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 10 8 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtOperator.hs" 8 10 8 11 , srcInfoPoints = [] } "m")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/AtOperator.hs.prettyparser.golden0000644000000000000000000000000612746233113024566 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/AtOperator.hs.prettyprinter.golden0000644000000000000000000000017212746233113024761 0ustar0000000000000000{-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeOperators #-} data a :+: b = Proxy foo = id @(Int :+: Int) _ @> m = m haskell-src-exts-1.18.2/tests/examples/AtSign.hs0000644000000000000000000000074212746233113017670 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} {-# LANGUAGE TypeApplications #-} {- | Accelerate interface to the native CUDA implementation of the Fourier Transform provided by the CUFFT library. -} module Data.Array.Accelerate.CUFFT.Private where transform hndl@(Handle fallback mode width _) = wrap mode (A.constant width) $ A.foreignAcc (AF.CUDAForeignAcc "transformForeign" $ transformForeign hndl) (unwrap mode (A.constant width) fallback) haskell-src-exts-1.18.2/tests/examples/AtSign.hs.exactprinter.golden0000644000000000000000000000000612746233113023637 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/AtSign.hs.parser.golden0000644000000000000000000007317412746233113022443 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 1 1 18 1 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 1 1 1 1 , SrcSpan "tests/examples/AtSign.hs" 2 1 2 1 , SrcSpan "tests/examples/AtSign.hs" 3 1 3 1 , SrcSpan "tests/examples/AtSign.hs" 8 1 8 1 , SrcSpan "tests/examples/AtSign.hs" 8 1 8 1 , SrcSpan "tests/examples/AtSign.hs" 11 1 11 1 , SrcSpan "tests/examples/AtSign.hs" 18 1 18 1 , SrcSpan "tests/examples/AtSign.hs" 18 1 18 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 8 1 8 49 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 8 1 8 7 , SrcSpan "tests/examples/AtSign.hs" 8 44 8 49 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 8 8 8 43 , srcInfoPoints = [] } "Data.Array.Accelerate.CUFFT.Private") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 1 1 1 13 , SrcSpan "tests/examples/AtSign.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 2 1 2 31 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 2 1 2 13 , SrcSpan "tests/examples/AtSign.hs" 2 28 2 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 2 14 2 27 , srcInfoPoints = [] } "TypeOperators" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 3 1 3 34 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 3 1 3 13 , SrcSpan "tests/examples/AtSign.hs" 3 31 3 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 3 14 3 30 , srcInfoPoints = [] } "TypeApplications" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 1 15 48 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 1 15 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 1 11 10 , srcInfoPoints = [] } "transform") [ PAsPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 11 11 46 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 11 15 11 16 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 11 11 15 , srcInfoPoints = [] } "hndl") (PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 16 11 46 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 11 16 11 17 , SrcSpan "tests/examples/AtSign.hs" 11 45 11 46 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 17 11 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 17 11 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 17 11 23 , srcInfoPoints = [] } "Handle")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 24 11 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 24 11 32 , srcInfoPoints = [] } "fallback") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 33 11 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 33 11 37 , srcInfoPoints = [] } "mode") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 38 11 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 38 11 43 , srcInfoPoints = [] } "width") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 44 11 45 , srcInfoPoints = [] } ])) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 11 47 15 48 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 11 47 11 48 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 4 15 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 4 12 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 4 12 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 4 12 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 4 12 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 4 12 8 , srcInfoPoints = [] } "wrap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 9 12 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 9 12 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 9 12 13 , srcInfoPoints = [] } "mode")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 14 12 32 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 12 14 12 15 , SrcSpan "tests/examples/AtSign.hs" 12 31 12 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 15 12 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 15 12 25 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 15 12 25 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 15 12 25 , srcInfoPoints = [] } "A") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 15 12 25 , srcInfoPoints = [] } "constant"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 26 12 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 26 12 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 26 12 31 , srcInfoPoints = [] } "width")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 33 12 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 33 12 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 12 33 12 34 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 13 4 15 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 13 4 14 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 13 4 13 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 13 4 13 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 13 4 13 16 , srcInfoPoints = [] } "A") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 13 4 13 16 , srcInfoPoints = [] } "foreignAcc"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 7 14 69 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 14 7 14 8 , SrcSpan "tests/examples/AtSign.hs" 14 68 14 69 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 8 14 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 8 14 44 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 8 14 25 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 8 14 25 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 8 14 25 , srcInfoPoints = [] } "AF") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 8 14 25 , srcInfoPoints = [] } "CUDAForeignAcc"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 26 14 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 26 14 44 , srcInfoPoints = [] } "transformForeign" "transformForeign"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 45 14 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 45 14 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 45 14 46 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 47 14 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 47 14 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 47 14 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 47 14 63 , srcInfoPoints = [] } "transformForeign"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 64 14 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 64 14 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 14 64 14 68 , srcInfoPoints = [] } "hndl"))))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 7 15 48 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 15 7 15 8 , SrcSpan "tests/examples/AtSign.hs" 15 47 15 48 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 8 15 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 8 15 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 8 15 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 8 15 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 8 15 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 8 15 14 , srcInfoPoints = [] } "unwrap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 15 15 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 15 15 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 15 15 19 , srcInfoPoints = [] } "mode")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 20 15 38 , srcInfoPoints = [ SrcSpan "tests/examples/AtSign.hs" 15 20 15 21 , SrcSpan "tests/examples/AtSign.hs" 15 37 15 38 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 21 15 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 21 15 31 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 21 15 31 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 21 15 31 , srcInfoPoints = [] } "A") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 21 15 31 , srcInfoPoints = [] } "constant"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 32 15 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 32 15 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 32 15 37 , srcInfoPoints = [] } "width")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 39 15 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 39 15 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/AtSign.hs" 15 39 15 47 , srcInfoPoints = [] } "fallback")))))))) Nothing ] ] , [ Comment True (SrcSpan "tests/examples/AtSign.hs" 4 1 7 3) " |\nAccelerate interface to the native CUDA implementation\nof the Fourier Transform provided by the CUFFT library.\n" ] ) haskell-src-exts-1.18.2/tests/examples/AtSign.hs.prettyparser.golden0000644000000000000000000000000612746233113023673 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/AtSign.hs.prettyprinter.golden0000644000000000000000000000055512746233113024073 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} {-# LANGUAGE TypeApplications #-} module Data.Array.Accelerate.CUFFT.Private where transform hndl@(Handle fallback mode width _) = wrap mode (A.constant width) $ A.foreignAcc (AF.CUDAForeignAcc "transformForeign" $ transformForeign hndl) (unwrap mode (A.constant width) fallback) haskell-src-exts-1.18.2/tests/examples/Attributes.hs0000644000000000000000000026646112746233113020645 0ustar0000000000000000{- | Module : Data.GraphViz.Attributes Description : Definition of the Graphviz attributes. Copyright : (c) Matthew Sackman, Ivan Lazar Miljenovic License : 3-Clause BSD-style Maintainer : Ivan.Miljenovic@gmail.com This module defines the various attributes that different parts of a Graphviz graph can have. These attributes are based on the documentation found at: For more information on usage, etc. please see that document. A summary of known current constraints\/limitations\/differences: * There might still be a few cases where quotes are still not escaped/parsed correctly; if you find such a situation, please let me know; however, you should be able to use 'String' values directly without having to worry about when quotes are required or extra escaping of quote characters as 'PrintDot' and 'ParseDot' instances for 'String' should take care of that for you. * Note that for an edge, in /Dot/ parlance if the edge goes from /A/ to /B/, then /A/ is the tail node and /B/ is the head node (since /A/ is at the tail end of the arrow). * ColorList and PointfList are defined as actual lists (but 'LayerList' is not). Note that for the Color 'Attribute' for node values, only a single Color is valid; edges are allowed multiple colors with one spline/arrow per color in the list (but you must have at least one 'Color' in the list). This might be changed in future. * Style is implemented as a list of 'StyleItem' values; note that empty lists are not allowed. * A lot of values have a possible value of @none@. These now have custom constructors. In fact, most constructors have been expanded upon to give an idea of what they represent rather than using generic terms. * @PointF@ and 'Point' have been combined, and feature support for pure 'Int'-based co-ordinates as well as 'Double' ones (i.e. no floating point-only points for Point). The optional '!' and third value for Point are not available. * 'Rect' uses two 'Point' values to denote the lower-left and top-right corners. * The two 'LabelLoc' attributes have been combined. * The defined 'LayerSep' is not used to parse 'LayerRange' or 'LayerList'; the default (@[' ', ':', '\t']@) is instead used. * @SplineType@ has been replaced with @['Spline']@. * Only polygon-based 'Shape's are available. * 'PortPos' only has the 'CompassPoint' option, not @PortName[:CompassPoint]@ (since record shapes aren't allowed, and parsing HTML-like labels could be problematic). * Not every 'Attribute' is fully documented/described. However, all those which have specific allowed values should be covered. * Deprecated 'Overlap' algorithms are not defined. * The global @Orientation@ attribute is not defined, as it is difficult to distinguish from the node-based 'Orientation' 'Attribute'; also, its behaviour is duplicated by 'Rotate'. -} module Data.GraphViz.Attributes ( -- * The actual /Dot/ attributes. Attribute(..) , Attributes -- ** Validity functions on @Attribute@ values. , usedByGraphs , usedBySubGraphs , usedByClusters , usedByNodes , usedByEdges -- * Value types for @Attribute@s. , EscString , URL(..) , ArrowType(..) , AspectType(..) , Rect(..) , ClusterMode(..) , DirType(..) , DEConstraints(..) , DPoint(..) , ModeType(..) , Model(..) , Label(..) , Point(..) , Overlap(..) , LayerRange(..) , LayerID(..) , LayerList(..) , OutputMode(..) , Pack(..) , PackMode(..) , Pos(..) , EdgeType(..) , PageDir(..) , Spline(..) , QuadType(..) , Root(..) , RankType(..) , RankDir(..) , Shape(..) , SmoothType(..) , StartType(..) , STStyle(..) , StyleItem(..) , StyleName(..) , PortPos(..) , CompassPoint(..) , ViewPort(..) , FocusType(..) , VerticalPlacement(..) , ScaleType(..) , Justification(..) , Ratios(..) , module Data.GraphViz.Attributes.Colors -- * Types representing the Dot grammar for @ArrowType@. , ArrowShape(..) , ArrowModifier(..) , ArrowFill(..) , ArrowSide(..) -- ** Default @ArrowType@ aliases. -- *** The 9 primitive @ArrowShape@s. , box , crow , diamond , dotArrow , inv , noArrow , normal , tee , vee -- *** 5 derived Arrows. , oDot , invDot , invODot , oBox , oDiamond -- *** 5 supported cases for backwards compatibility , eDiamond , openArr , halfOpen , emptyArr , invEmpty -- ** @ArrowModifier@ instances , noMods , openMod -- * Other exported functions\/values , defLayerSep , notLayerSep ) where import Data.GraphViz.Attributes.Colors import Data.GraphViz.Util import Data.GraphViz.Parsing import Data.GraphViz.Printing import Data.Char(toLower) import Data.Maybe(isJust) import Control.Arrow(first) import Control.Monad(liftM, liftM2) -- ----------------------------------------------------------------------------- {- | These attributes have been implemented in a /permissive/ manner: that is, rather than split them up based on which type of value they are allowed, they have all been included in the one data type, with functions to determine if they are indeed valid for what they're being applied to. To interpret the /Valid for/ listings: [@G@] Valid for Graphs. [@C@] Valid for Clusters. [@S@] Valid for Sub-Graphs (and also Clusters). [@N@] Valid for Nodes. [@E@] Valid for Edges. The /Default/ listings are those that the various Graphviz commands use if that 'Attribute' isn't specified (in cases where this is /none/, this is equivalent to a 'Nothing' value; that is, no value is used). The /Parsing Default/ listings represent what value is used (i.e. corresponds to 'True') when the 'Attribute' name is listed on its own in /Dot/ source code. -} data Attribute = Damping Double -- ^ /Valid for/: G; /Default/: @0.99@; /Minimum/: @0.0@; /Notes/: neato only | K Double -- ^ /Valid for/: GC; /Default/: @0.3@; /Minimum/: @0@; /Notes/: sfdp, fdp only | URL URL -- ^ /Valid for/: ENGC; /Default/: none; /Notes/: svg, postscript, map only | ArrowHead ArrowType -- ^ /Valid for/: E; /Default/: @'normal'@ | ArrowSize Double -- ^ /Valid for/: E; /Default/: @1.0@; /Minimum/: @0.0@ | ArrowTail ArrowType -- ^ /Valid for/: E; /Default/: @'normal'@ | Aspect AspectType -- ^ /Valid for/: G; /Notes/: dot only | Bb Rect -- ^ /Valid for/: G; /Notes/: write only | BgColor Color -- ^ /Valid for/: GC; /Default/: X11Color 'Transparent' | Center Bool -- ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True' | Charset String -- ^ /Valid for/: G; /Default/: @\"UTF-8\"@ | ClusterRank ClusterMode -- ^ /Valid for/: G; /Default/: @'Local'@; /Notes/: dot only | ColorScheme ColorScheme -- ^ /Valid for/: ENCG; /Default/: @'X11'@ | Color [Color] -- ^ /Valid for/: ENC; /Default/: @X11Color 'Black'@ | Comment String -- ^ /Valid for/: ENG; /Default/: @\"\"@ | Compound Bool -- ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: dot only | Concentrate Bool -- ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True' | Constraint Bool -- ^ /Valid for/: E; /Default/: @'True'@; /Parsing Default/: 'True'; /Notes/: dot only | Decorate Bool -- ^ /Valid for/: E; /Default/: @'False'@; /Parsing Default/: 'True' | DefaultDist Double -- ^ /Valid for/: G; /Default/: @1+(avg. len)*sqrt(|V|)@; /Minimum/: @epsilon@; /Notes/: neato only | Dimen Int -- ^ /Valid for/: G; /Default/: @2@; /Minimum/: @2@; /Notes/: sfdp, fdp, neato only | Dim Int -- ^ /Valid for/: G; /Default/: @2@; /Minimum/: @2@; /Notes/: sfdp, fdp, neato only | Dir DirType -- ^ /Valid for/: E; /Default/: @'Forward'@ (directed), @'NoDir'@ (undirected) | DirEdgeConstraints DEConstraints -- ^ /Valid for/: G; /Default/: @'NoConstraints'@; /Parsing Default/: 'EdgeConstraints'; /Notes/: neato only | Distortion Double -- ^ /Valid for/: N; /Default/: @0.0@; /Minimum/: @-100.0@ | DPI Double -- ^ /Valid for/: G; /Default/: @96.0@, @0.0@; /Notes/: svg, bitmap output only; \"resolution\" is a synonym | EdgeURL URL -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: svg, map only | EdgeTarget EscString -- ^ /Valid for/: E; /Default/: none; /Notes/: svg, map only | EdgeTooltip EscString -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: svg, cmap only | Epsilon Double -- ^ /Valid for/: G; /Default/: @.0001 * # nodes@ (@mode == 'KK'@), @.0001@ (@mode == 'Major'@); /Notes/: neato only | ESep DPoint -- ^ /Valid for/: G; /Default/: @+3@; /Notes/: not dot | FillColor Color -- ^ /Valid for/: NC; /Default/: @X11Color 'LightGray'@ (nodes), @X11Color 'Black'@ (clusters) | FixedSize Bool -- ^ /Valid for/: N; /Default/: @'False'@; /Parsing Default/: 'True' | FontColor Color -- ^ /Valid for/: ENGC; /Default/: @X11Color 'Black'@ | FontName String -- ^ /Valid for/: ENGC; /Default/: @\"Times-Roman\"@ | FontNames String -- ^ /Valid for/: G; /Default/: @\"\"@; /Notes/: svg only | FontPath String -- ^ /Valid for/: G; /Default/: system-dependent | FontSize Double -- ^ /Valid for/: ENGC; /Default/: @14.0@; /Minimum/: @1.0@ | Group String -- ^ /Valid for/: N; /Default/: @\"\"@; /Notes/: dot only | HeadURL URL -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: svg, map only | HeadClip Bool -- ^ /Valid for/: E; /Default/: @'True'@; /Parsing Default/: 'True' | HeadLabel Label -- ^ /Valid for/: E; /Default/: @\"\"@ | HeadPort PortPos -- ^ /Valid for/: E; /Default/: @'PP' 'CenterPoint'@ | HeadTarget EscString -- ^ /Valid for/: E; /Default/: none; /Notes/: svg, map only | HeadTooltip EscString -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: svg, cmap only | Height Double -- ^ /Valid for/: N; /Default/: @0.5@; /Minimum/: @0.02@ | ID Label -- ^ /Valid for/: GNE; /Default/: @\"\"@; /Notes/: svg, postscript, map only | Image String -- ^ /Valid for/: N; /Default/: @\"\"@ | ImageScale ScaleType -- ^ /Valid for/: N; /Default/: @'NoScale'@; /Parsing Default/: 'UniformScale' | LabelURL URL -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: svg, map only | LabelAngle Double -- ^ /Valid for/: E; /Default/: @-25.0@; /Minimum/: @-180.0@ | LabelDistance Double -- ^ /Valid for/: E; /Default/: @1.0@; /Minimum/: @0.0@ | LabelFloat Bool -- ^ /Valid for/: E; /Default/: @'False'@; /Parsing Default/: 'True' | LabelFontColor Color -- ^ /Valid for/: E; /Default/: @X11Color 'Black'@ | LabelFontName String -- ^ /Valid for/: E; /Default/: @\"Times-Roman\"@ | LabelFontSize Double -- ^ /Valid for/: E; /Default/: @14.0@; /Minimum/: @1.0@ | LabelJust Justification -- ^ /Valid for/: GC; /Default/: @'JCenter'@ | LabelLoc VerticalPlacement -- ^ /Valid for/: GCN; /Default/: @'VTop'@ (clusters), @'VBottom'@ (root graphs), @'VCenter'@ (nodes) | LabelTarget EscString -- ^ /Valid for/: E; /Default/: none; /Notes/: svg, map only | LabelTooltip EscString -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: svg, cmap only | Label Label -- ^ /Valid for/: ENGC; /Default/: @'StrLabel' \"\N\"@ (nodes), @'StrLabel' \"\"@ (otherwise) | Landscape Bool -- ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True' | LayerSep String -- ^ /Valid for/: G; /Default/: @\" :\t\"@ | Layers LayerList -- ^ /Valid for/: G; /Default/: @\"\"@ | Layer LayerRange -- ^ /Valid for/: EN; /Default/: @\"\"@ | Layout String -- ^ /Valid for/: G; /Default/: @\"\"@ | Len Double -- ^ /Valid for/: E; /Default/: @1.0@ (neato), @0.3@ (fdp); /Notes/: fdp, neato only | LevelsGap Double -- ^ /Valid for/: G; /Default/: @0.0@; /Notes/: neato only | Levels Int -- ^ /Valid for/: G; /Default/: @MAXINT@; /Minimum/: @0@; /Notes/: sfdp only | LHead String -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: dot only | LPos Point -- ^ /Valid for/: EGC; /Notes/: write only | LTail String -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: dot only | Margin DPoint -- ^ /Valid for/: NG; /Default/: device-dependent | MaxIter Int -- ^ /Valid for/: G; /Default/: @100 * # nodes@ (@mode == 'KK'@), @200@ (@mode == 'Major'@), @600@ (fdp); /Notes/: fdp, neato only | MCLimit Double -- ^ /Valid for/: G; /Default/: @1.0@; /Notes/: dot only | MinDist Double -- ^ /Valid for/: G; /Default/: @1.0@; /Minimum/: @0.0@; /Notes/: circo only | MinLen Int -- ^ /Valid for/: E; /Default/: @1@; /Minimum/: @0@; /Notes/: dot only | Model Model -- ^ /Valid for/: G; /Default/: @'ShortPath'@; /Notes/: neato only | Mode ModeType -- ^ /Valid for/: G; /Default/: @'Major'@; /Notes/: neato only | Mosek Bool -- ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: neato only; requires the Mosek software | NodeSep Double -- ^ /Valid for/: G; /Default/: @0.25@; /Minimum/: @0.02@; /Notes/: dot only | NoJustify Bool -- ^ /Valid for/: GCNE; /Default/: @'False'@; /Parsing Default/: 'True' | Normalize Bool -- ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: not dot | Nslimit1 Double -- ^ /Valid for/: G; /Notes/: dot only | Nslimit Double -- ^ /Valid for/: G; /Notes/: dot only | Ordering String -- ^ /Valid for/: G; /Default/: @\"\"@; /Notes/: dot only | Orientation Double -- ^ /Valid for/: N; /Default/: @0.0@; /Minimum/: @360.0@ | OutputOrder OutputMode -- ^ /Valid for/: G; /Default/: @'BreadthFirst'@ | OverlapScaling Double -- ^ /Valid for/: G; /Default/: @-4@; /Minimum/: @-1.0e10@; /Notes/: prism only | Overlap Overlap -- ^ /Valid for/: G; /Default/: @'KeepOverlaps'@; /Parsing Default/: 'KeepOverlaps'; /Notes/: not dot | PackMode PackMode -- ^ /Valid for/: G; /Default/: @'PackNode'@; /Notes/: not dot | Pack Pack -- ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'DoPack'; /Notes/: not dot | Pad DPoint -- ^ /Valid for/: G; /Default/: @'DVal' 0.0555@ (4 points) | PageDir PageDir -- ^ /Valid for/: G; /Default/: @'BL'@ | Page Point -- ^ /Valid for/: G | PenColor Color -- ^ /Valid for/: C; /Default/: @X11Color 'Black'@ | PenWidth Double -- ^ /Valid for/: CNE; /Default/: @1.0@; /Minimum/: @0.0@ | Peripheries Int -- ^ /Valid for/: NC; /Default/: shape default (nodes), @1@ (clusters); /Minimum/: 0 | Pin Bool -- ^ /Valid for/: N; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: fdp, neato only | Pos Pos -- ^ /Valid for/: EN | QuadTree QuadType -- ^ /Valid for/: G; /Default/: @'NormalQT'@; /Parsing Default/: 'NormalQT'; /Notes/: sfdp only | Quantum Double -- ^ /Valid for/: G; /Default/: @0.0@; /Minimum/: @0.0@ | RankDir RankDir -- ^ /Valid for/: G; /Default/: @'TB'@; /Notes/: dot only | RankSep Double -- ^ /Valid for/: G; /Default/: @0.5@ (dot), @1.0@ (twopi); /Minimum/: 0.02; /Notes/: twopi, dot only | Rank RankType -- ^ /Valid for/: S; /Notes/: dot only | Ratio Ratios -- ^ /Valid for/: G | Rects Rect -- ^ /Valid for/: N; /Notes/: write only | Regular Bool -- ^ /Valid for/: N; /Default/: @'False'@; /Parsing Default/: 'True' | ReMinCross Bool -- ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: dot only | RepulsiveForce Double -- ^ /Valid for/: G; /Default/: @1.0@; /Minimum/: @0.0@; /Notes/: sfdp only | Root Root -- ^ /Valid for/: GN; /Default/: @'NodeName' \"\"@ (graphs), @'NotCentral'@ (nodes); /Parsing Default/: 'IsCentral'; /Notes/: circo, twopi only | Rotate Int -- ^ /Valid for/: G; /Default/: @0@ | SameHead String -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: dot only | SameTail String -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: dot only | SamplePoints Int -- ^ /Valid for/: N; /Default/: @8@ (output), @20@ (overlap and image maps) | SearchSize Int -- ^ /Valid for/: G; /Default/: @30@; /Notes/: dot only | Sep DPoint -- ^ /Valid for/: G; /Default/: @+4@; /Notes/: not dot | ShapeFile String -- ^ /Valid for/: N; /Default/: @\"\"@ | Shape Shape -- ^ /Valid for/: N; /Default/: @'Ellipse'@ | ShowBoxes Int -- ^ /Valid for/: ENG; /Default/: @0@; /Minimum/: @0@; /Notes/: dot only | Sides Int -- ^ /Valid for/: N; /Default/: @4@; /Minimum/: @0@ | Size Point -- ^ /Valid for/: G | Skew Double -- ^ /Valid for/: N; /Default/: @0.0@; /Minimum/: @-100.0@ | Smoothing SmoothType -- ^ /Valid for/: G; /Default/: @'NoSmooth'@; /Notes/: sfdp only | SortV Int -- ^ /Valid for/: GCN; /Default/: @0@; /Minimum/: @0@ | Splines EdgeType -- ^ /Valid for/: G; /Parsing Default/: 'SplineEdges' | Start StartType -- ^ /Valid for/: G; /Default/: @\"\"@; /Notes/: fdp, neato only | StyleSheet String -- ^ /Valid for/: G; /Default/: @\"\"@; /Notes/: svg only | Style [StyleItem] -- ^ /Valid for/: ENC | TailURL URL -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: svg, map only | TailClip Bool -- ^ /Valid for/: E; /Default/: @'True'@; /Parsing Default/: 'True' | TailLabel Label -- ^ /Valid for/: E; /Default/: @\"\"@ | TailPort PortPos -- ^ /Valid for/: E; /Default/: center | TailTarget EscString -- ^ /Valid for/: E; /Default/: none; /Notes/: svg, map only | TailTooltip EscString -- ^ /Valid for/: E; /Default/: @\"\"@; /Notes/: svg, cmap only | Target EscString -- ^ /Valid for/: ENGC; /Default/: none; /Notes/: svg, map only | Tooltip EscString -- ^ /Valid for/: NEC; /Default/: @\"\"@; /Notes/: svg, cmap only | TrueColor Bool -- ^ /Valid for/: G; /Parsing Default/: 'True'; /Notes/: bitmap output only | Vertices [Point] -- ^ /Valid for/: N; /Notes/: write only | ViewPort ViewPort -- ^ /Valid for/: G; /Default/: none | VoroMargin Double -- ^ /Valid for/: G; /Default/: @0.05@; /Minimum/: @0.0@; /Notes/: not dot | Weight Double -- ^ /Valid for/: E; /Default/: @1.0@; /Minimum/: @0@ (dot), @1@ (neato,fdp,sfdp) | Width Double -- ^ /Valid for/: N; /Default/: @0.75@; /Minimum/: @0.01@ | Z Double -- ^ /Valid for/: N; /Default/: @0.0@; /Minimum/: @-MAXFLOAT@, @-1000@ deriving (Eq, Ord, Show, Read) type Attributes = [Attribute] instance PrintDot Attribute where unqtDot (Damping v) = printField "Damping" v unqtDot (K v) = printField "K" v unqtDot (URL v) = printField "URL" v unqtDot (ArrowHead v) = printField "arrowhead" v unqtDot (ArrowSize v) = printField "arrowsize" v unqtDot (ArrowTail v) = printField "arrowtail" v unqtDot (Aspect v) = printField "aspect" v unqtDot (Bb v) = printField "bb" v unqtDot (BgColor v) = printField "bgcolor" v unqtDot (Center v) = printField "center" v unqtDot (Charset v) = printField "charset" v unqtDot (ClusterRank v) = printField "clusterrank" v unqtDot (ColorScheme v) = printField "colorscheme" v unqtDot (Color v) = printField "color" v unqtDot (Comment v) = printField "comment" v unqtDot (Compound v) = printField "compound" v unqtDot (Concentrate v) = printField "concentrate" v unqtDot (Constraint v) = printField "constraint" v unqtDot (Decorate v) = printField "decorate" v unqtDot (DefaultDist v) = printField "defaultdist" v unqtDot (Dimen v) = printField "dimen" v unqtDot (Dim v) = printField "dim" v unqtDot (Dir v) = printField "dir" v unqtDot (DirEdgeConstraints v) = printField "diredgeconstraints" v unqtDot (Distortion v) = printField "distortion" v unqtDot (DPI v) = printField "dpi" v unqtDot (EdgeURL v) = printField "edgeURL" v unqtDot (EdgeTarget v) = printField "edgetarget" v unqtDot (EdgeTooltip v) = printField "edgetooltip" v unqtDot (Epsilon v) = printField "epsilon" v unqtDot (ESep v) = printField "esep" v unqtDot (FillColor v) = printField "fillcolor" v unqtDot (FixedSize v) = printField "fixedsize" v unqtDot (FontColor v) = printField "fontcolor" v unqtDot (FontName v) = printField "fontname" v unqtDot (FontNames v) = printField "fontnames" v unqtDot (FontPath v) = printField "fontpath" v unqtDot (FontSize v) = printField "fontsize" v unqtDot (Group v) = printField "group" v unqtDot (HeadURL v) = printField "headURL" v unqtDot (HeadClip v) = printField "headclip" v unqtDot (HeadLabel v) = printField "headlabel" v unqtDot (HeadPort v) = printField "headport" v unqtDot (HeadTarget v) = printField "headtarget" v unqtDot (HeadTooltip v) = printField "headtooltip" v unqtDot (Height v) = printField "height" v unqtDot (ID v) = printField "id" v unqtDot (Image v) = printField "image" v unqtDot (ImageScale v) = printField "imagescale" v unqtDot (LabelURL v) = printField "labelURL" v unqtDot (LabelAngle v) = printField "labelangle" v unqtDot (LabelDistance v) = printField "labeldistance" v unqtDot (LabelFloat v) = printField "labelfloat" v unqtDot (LabelFontColor v) = printField "labelfontcolor" v unqtDot (LabelFontName v) = printField "labelfontname" v unqtDot (LabelFontSize v) = printField "labelfontsize" v unqtDot (LabelJust v) = printField "labeljust" v unqtDot (LabelLoc v) = printField "labelloc" v unqtDot (LabelTarget v) = printField "labeltarget" v unqtDot (LabelTooltip v) = printField "labeltooltip" v unqtDot (Label v) = printField "label" v unqtDot (Landscape v) = printField "landscape" v unqtDot (LayerSep v) = printField "layersep" v unqtDot (Layers v) = printField "layers" v unqtDot (Layer v) = printField "layer" v unqtDot (Layout v) = printField "layout" v unqtDot (Len v) = printField "len" v unqtDot (LevelsGap v) = printField "levelsgap" v unqtDot (Levels v) = printField "levels" v unqtDot (LHead v) = printField "lhead" v unqtDot (LPos v) = printField "lp" v unqtDot (LTail v) = printField "ltail" v unqtDot (Margin v) = printField "margin" v unqtDot (MaxIter v) = printField "maxiter" v unqtDot (MCLimit v) = printField "mclimit" v unqtDot (MinDist v) = printField "mindist" v unqtDot (MinLen v) = printField "minlen" v unqtDot (Model v) = printField "model" v unqtDot (Mode v) = printField "mode" v unqtDot (Mosek v) = printField "mosek" v unqtDot (NodeSep v) = printField "nodesep" v unqtDot (NoJustify v) = printField "nojustify" v unqtDot (Normalize v) = printField "normalize" v unqtDot (Nslimit1 v) = printField "nslimit1" v unqtDot (Nslimit v) = printField "nslimit" v unqtDot (Ordering v) = printField "ordering" v unqtDot (Orientation v) = printField "orientation" v unqtDot (OutputOrder v) = printField "outputorder" v unqtDot (OverlapScaling v) = printField "overlap_scaling" v unqtDot (Overlap v) = printField "overlap" v unqtDot (PackMode v) = printField "packmode" v unqtDot (Pack v) = printField "pack" v unqtDot (Pad v) = printField "pad" v unqtDot (PageDir v) = printField "pagedir" v unqtDot (Page v) = printField "page" v unqtDot (PenColor v) = printField "pencolor" v unqtDot (PenWidth v) = printField "penwidth" v unqtDot (Peripheries v) = printField "peripheries" v unqtDot (Pin v) = printField "pin" v unqtDot (Pos v) = printField "pos" v unqtDot (QuadTree v) = printField "quadtree" v unqtDot (Quantum v) = printField "quantum" v unqtDot (RankDir v) = printField "rankdir" v unqtDot (RankSep v) = printField "ranksep" v unqtDot (Rank v) = printField "rank" v unqtDot (Ratio v) = printField "ratio" v unqtDot (Rects v) = printField "rects" v unqtDot (Regular v) = printField "regular" v unqtDot (ReMinCross v) = printField "remincross" v unqtDot (RepulsiveForce v) = printField "repulsiveforce" v unqtDot (Root v) = printField "root" v unqtDot (Rotate v) = printField "rotate" v unqtDot (SameHead v) = printField "samehead" v unqtDot (SameTail v) = printField "sametail" v unqtDot (SamplePoints v) = printField "samplepoints" v unqtDot (SearchSize v) = printField "searchsize" v unqtDot (Sep v) = printField "sep" v unqtDot (ShapeFile v) = printField "shapefile" v unqtDot (Shape v) = printField "shape" v unqtDot (ShowBoxes v) = printField "showboxes" v unqtDot (Sides v) = printField "sides" v unqtDot (Size v) = printField "size" v unqtDot (Skew v) = printField "skew" v unqtDot (Smoothing v) = printField "smoothing" v unqtDot (SortV v) = printField "sortv" v unqtDot (Splines v) = printField "splines" v unqtDot (Start v) = printField "start" v unqtDot (StyleSheet v) = printField "stylesheet" v unqtDot (Style v) = printField "style" v unqtDot (TailURL v) = printField "tailURL" v unqtDot (TailClip v) = printField "tailclip" v unqtDot (TailLabel v) = printField "taillabel" v unqtDot (TailPort v) = printField "tailport" v unqtDot (TailTarget v) = printField "tailtarget" v unqtDot (TailTooltip v) = printField "tailtooltip" v unqtDot (Target v) = printField "target" v unqtDot (Tooltip v) = printField "tooltip" v unqtDot (TrueColor v) = printField "truecolor" v unqtDot (Vertices v) = printField "vertices" v unqtDot (ViewPort v) = printField "viewport" v unqtDot (VoroMargin v) = printField "voro_margin" v unqtDot (Weight v) = printField "weight" v unqtDot (Width v) = printField "width" v unqtDot (Z v) = printField "z" v listToDot = unqtListToDot instance ParseDot Attribute where parseUnqt = oneOf [ liftM Damping $ parseField "Damping" , liftM K $ parseField "K" , liftM URL $ parseFields ["URL", "href"] , liftM ArrowHead $ parseField "arrowhead" , liftM ArrowSize $ parseField "arrowsize" , liftM ArrowTail $ parseField "arrowtail" , liftM Aspect $ parseField "aspect" , liftM Bb $ parseField "bb" , liftM BgColor $ parseField "bgcolor" , liftM Center $ parseFieldBool "center" , liftM Charset $ parseField "charset" , liftM ClusterRank $ parseField "clusterrank" , liftM ColorScheme $ parseField "colorscheme" , liftM Color $ parseField "color" , liftM Comment $ parseField "comment" , liftM Compound $ parseFieldBool "compound" , liftM Concentrate $ parseFieldBool "concentrate" , liftM Constraint $ parseFieldBool "constraint" , liftM Decorate $ parseFieldBool "decorate" , liftM DefaultDist $ parseField "defaultdist" , liftM Dimen $ parseField "dimen" , liftM Dim $ parseField "dim" , liftM Dir $ parseField "dir" , liftM DirEdgeConstraints $ parseFieldDef EdgeConstraints "diredgeconstraints" , liftM Distortion $ parseField "distortion" , liftM DPI $ parseFields ["dpi", "resolution"] , liftM EdgeURL $ parseFields ["edgeURL", "edgehref"] , liftM EdgeTarget $ parseField "edgetarget" , liftM EdgeTooltip $ parseField "edgetooltip" , liftM Epsilon $ parseField "epsilon" , liftM ESep $ parseField "esep" , liftM FillColor $ parseField "fillcolor" , liftM FixedSize $ parseFieldBool "fixedsize" , liftM FontColor $ parseField "fontcolor" , liftM FontName $ parseField "fontname" , liftM FontNames $ parseField "fontnames" , liftM FontPath $ parseField "fontpath" , liftM FontSize $ parseField "fontsize" , liftM Group $ parseField "group" , liftM HeadURL $ parseFields ["headURL", "headhref"] , liftM HeadClip $ parseFieldBool "headclip" , liftM HeadLabel $ parseField "headlabel" , liftM HeadPort $ parseField "headport" , liftM HeadTarget $ parseField "headtarget" , liftM HeadTooltip $ parseField "headtooltip" , liftM Height $ parseField "height" , liftM ID $ parseField "id" , liftM Image $ parseField "image" , liftM ImageScale $ parseFieldDef UniformScale "imagescale" , liftM LabelURL $ parseFields ["labelURL", "labelhref"] , liftM LabelAngle $ parseField "labelangle" , liftM LabelDistance $ parseField "labeldistance" , liftM LabelFloat $ parseFieldBool "labelfloat" , liftM LabelFontColor $ parseField "labelfontcolor" , liftM LabelFontName $ parseField "labelfontname" , liftM LabelFontSize $ parseField "labelfontsize" , liftM LabelJust $ parseField "labeljust" , liftM LabelLoc $ parseField "labelloc" , liftM LabelTarget $ parseField "labeltarget" , liftM LabelTooltip $ parseField "labeltooltip" , liftM Label $ parseField "label" , liftM Landscape $ parseFieldBool "landscape" , liftM LayerSep $ parseField "layersep" , liftM Layers $ parseField "layers" , liftM Layer $ parseField "layer" , liftM Layout $ parseField "layout" , liftM Len $ parseField "len" , liftM LevelsGap $ parseField "levelsgap" , liftM Levels $ parseField "levels" , liftM LHead $ parseField "lhead" , liftM LPos $ parseField "lp" , liftM LTail $ parseField "ltail" , liftM Margin $ parseField "margin" , liftM MaxIter $ parseField "maxiter" , liftM MCLimit $ parseField "mclimit" , liftM MinDist $ parseField "mindist" , liftM MinLen $ parseField "minlen" , liftM Model $ parseField "model" , liftM Mode $ parseField "mode" , liftM Mosek $ parseFieldBool "mosek" , liftM NodeSep $ parseField "nodesep" , liftM NoJustify $ parseFieldBool "nojustify" , liftM Normalize $ parseFieldBool "normalize" , liftM Nslimit1 $ parseField "nslimit1" , liftM Nslimit $ parseField "nslimit" , liftM Ordering $ parseField "ordering" , liftM Orientation $ parseField "orientation" , liftM OutputOrder $ parseField "outputorder" , liftM OverlapScaling $ parseField "overlap_scaling" , liftM Overlap $ parseFieldDef KeepOverlaps "overlap" , liftM PackMode $ parseField "packmode" , liftM Pack $ parseFieldDef DoPack "pack" , liftM Pad $ parseField "pad" , liftM PageDir $ parseField "pagedir" , liftM Page $ parseField "page" , liftM PenColor $ parseField "pencolor" , liftM PenWidth $ parseField "penwidth" , liftM Peripheries $ parseField "peripheries" , liftM Pin $ parseFieldBool "pin" , liftM Pos $ parseField "pos" , liftM QuadTree $ parseFieldDef NormalQT "quadtree" , liftM Quantum $ parseField "quantum" , liftM RankDir $ parseField "rankdir" , liftM RankSep $ parseField "ranksep" , liftM Rank $ parseField "rank" , liftM Ratio $ parseField "ratio" , liftM Rects $ parseField "rects" , liftM Regular $ parseFieldBool "regular" , liftM ReMinCross $ parseFieldBool "remincross" , liftM RepulsiveForce $ parseField "repulsiveforce" , liftM Root $ parseFieldDef IsCentral "root" , liftM Rotate $ parseField "rotate" , liftM SameHead $ parseField "samehead" , liftM SameTail $ parseField "sametail" , liftM SamplePoints $ parseField "samplepoints" , liftM SearchSize $ parseField "searchsize" , liftM Sep $ parseField "sep" , liftM ShapeFile $ parseField "shapefile" , liftM Shape $ parseField "shape" , liftM ShowBoxes $ parseField "showboxes" , liftM Sides $ parseField "sides" , liftM Size $ parseField "size" , liftM Skew $ parseField "skew" , liftM Smoothing $ parseField "smoothing" , liftM SortV $ parseField "sortv" , liftM Splines $ parseFieldDef SplineEdges "splines" , liftM Start $ parseField "start" , liftM StyleSheet $ parseField "stylesheet" , liftM Style $ parseField "style" , liftM TailURL $ parseFields ["tailURL", "tailhref"] , liftM TailClip $ parseFieldBool "tailclip" , liftM TailLabel $ parseField "taillabel" , liftM TailPort $ parseField "tailport" , liftM TailTarget $ parseField "tailtarget" , liftM TailTooltip $ parseField "tailtooltip" , liftM Target $ parseField "target" , liftM Tooltip $ parseField "tooltip" , liftM TrueColor $ parseFieldBool "truecolor" , liftM Vertices $ parseField "vertices" , liftM ViewPort $ parseField "viewport" , liftM VoroMargin $ parseField "voro_margin" , liftM Weight $ parseField "weight" , liftM Width $ parseField "width" , liftM Z $ parseField "z" ] parse = parseUnqt parseList = parseUnqtList -- | Determine if this Attribute is valid for use with Graphs. usedByGraphs :: Attribute -> Bool usedByGraphs Damping{} = True usedByGraphs K{} = True usedByGraphs URL{} = True usedByGraphs Aspect{} = True usedByGraphs Bb{} = True usedByGraphs BgColor{} = True usedByGraphs Center{} = True usedByGraphs Charset{} = True usedByGraphs ClusterRank{} = True usedByGraphs ColorScheme{} = True usedByGraphs Comment{} = True usedByGraphs Compound{} = True usedByGraphs Concentrate{} = True usedByGraphs DefaultDist{} = True usedByGraphs Dimen{} = True usedByGraphs Dim{} = True usedByGraphs DirEdgeConstraints{} = True usedByGraphs DPI{} = True usedByGraphs Epsilon{} = True usedByGraphs ESep{} = True usedByGraphs FontColor{} = True usedByGraphs FontName{} = True usedByGraphs FontNames{} = True usedByGraphs FontPath{} = True usedByGraphs FontSize{} = True usedByGraphs ID{} = True usedByGraphs LabelJust{} = True usedByGraphs LabelLoc{} = True usedByGraphs Label{} = True usedByGraphs Landscape{} = True usedByGraphs LayerSep{} = True usedByGraphs Layers{} = True usedByGraphs Layout{} = True usedByGraphs LevelsGap{} = True usedByGraphs Levels{} = True usedByGraphs LPos{} = True usedByGraphs Margin{} = True usedByGraphs MaxIter{} = True usedByGraphs MCLimit{} = True usedByGraphs MinDist{} = True usedByGraphs Model{} = True usedByGraphs Mode{} = True usedByGraphs Mosek{} = True usedByGraphs NodeSep{} = True usedByGraphs NoJustify{} = True usedByGraphs Normalize{} = True usedByGraphs Nslimit1{} = True usedByGraphs Nslimit{} = True usedByGraphs Ordering{} = True usedByGraphs OutputOrder{} = True usedByGraphs OverlapScaling{} = True usedByGraphs Overlap{} = True usedByGraphs PackMode{} = True usedByGraphs Pack{} = True usedByGraphs Pad{} = True usedByGraphs PageDir{} = True usedByGraphs Page{} = True usedByGraphs QuadTree{} = True usedByGraphs Quantum{} = True usedByGraphs RankDir{} = True usedByGraphs RankSep{} = True usedByGraphs Ratio{} = True usedByGraphs ReMinCross{} = True usedByGraphs RepulsiveForce{} = True usedByGraphs Root{} = True usedByGraphs Rotate{} = True usedByGraphs SearchSize{} = True usedByGraphs Sep{} = True usedByGraphs ShowBoxes{} = True usedByGraphs Size{} = True usedByGraphs Smoothing{} = True usedByGraphs SortV{} = True usedByGraphs Splines{} = True usedByGraphs Start{} = True usedByGraphs StyleSheet{} = True usedByGraphs Target{} = True usedByGraphs TrueColor{} = True usedByGraphs ViewPort{} = True usedByGraphs VoroMargin{} = True usedByGraphs _ = False -- | Determine if this Attribute is valid for use with Clusters. usedByClusters :: Attribute -> Bool usedByClusters K{} = True usedByClusters URL{} = True usedByClusters BgColor{} = True usedByClusters ColorScheme{} = True usedByClusters Color{} = True usedByClusters FillColor{} = True usedByClusters FontColor{} = True usedByClusters FontName{} = True usedByClusters FontSize{} = True usedByClusters LabelJust{} = True usedByClusters LabelLoc{} = True usedByClusters Label{} = True usedByClusters LPos{} = True usedByClusters NoJustify{} = True usedByClusters PenColor{} = True usedByClusters PenWidth{} = True usedByClusters Peripheries{} = True usedByClusters Rank{} = True usedByClusters SortV{} = True usedByClusters Style{} = True usedByClusters Target{} = True usedByClusters Tooltip{} = True usedByClusters _ = False -- | Determine if this Attribute is valid for use with SubGraphs. usedBySubGraphs :: Attribute -> Bool usedBySubGraphs Rank{} = True usedBySubGraphs _ = False -- | Determine if this Attribute is valid for use with Nodes. usedByNodes :: Attribute -> Bool usedByNodes URL{} = True usedByNodes ColorScheme{} = True usedByNodes Color{} = True usedByNodes Comment{} = True usedByNodes Distortion{} = True usedByNodes FillColor{} = True usedByNodes FixedSize{} = True usedByNodes FontColor{} = True usedByNodes FontName{} = True usedByNodes FontSize{} = True usedByNodes Group{} = True usedByNodes Height{} = True usedByNodes ID{} = True usedByNodes Image{} = True usedByNodes ImageScale{} = True usedByNodes LabelLoc{} = True usedByNodes Label{} = True usedByNodes Layer{} = True usedByNodes Margin{} = True usedByNodes NoJustify{} = True usedByNodes Orientation{} = True usedByNodes PenWidth{} = True usedByNodes Peripheries{} = True usedByNodes Pin{} = True usedByNodes Pos{} = True usedByNodes Rects{} = True usedByNodes Regular{} = True usedByNodes Root{} = True usedByNodes SamplePoints{} = True usedByNodes ShapeFile{} = True usedByNodes Shape{} = True usedByNodes ShowBoxes{} = True usedByNodes Sides{} = True usedByNodes Skew{} = True usedByNodes SortV{} = True usedByNodes Style{} = True usedByNodes Target{} = True usedByNodes Tooltip{} = True usedByNodes Vertices{} = True usedByNodes Width{} = True usedByNodes Z{} = True usedByNodes _ = False -- | Determine if this Attribute is valid for use with Edges. usedByEdges :: Attribute -> Bool usedByEdges URL{} = True usedByEdges ArrowHead{} = True usedByEdges ArrowSize{} = True usedByEdges ArrowTail{} = True usedByEdges ColorScheme{} = True usedByEdges Color{} = True usedByEdges Comment{} = True usedByEdges Constraint{} = True usedByEdges Decorate{} = True usedByEdges Dir{} = True usedByEdges EdgeURL{} = True usedByEdges EdgeTarget{} = True usedByEdges EdgeTooltip{} = True usedByEdges FontColor{} = True usedByEdges FontName{} = True usedByEdges FontSize{} = True usedByEdges HeadURL{} = True usedByEdges HeadClip{} = True usedByEdges HeadLabel{} = True usedByEdges HeadPort{} = True usedByEdges HeadTarget{} = True usedByEdges HeadTooltip{} = True usedByEdges ID{} = True usedByEdges LabelURL{} = True usedByEdges LabelAngle{} = True usedByEdges LabelDistance{} = True usedByEdges LabelFloat{} = True usedByEdges LabelFontColor{} = True usedByEdges LabelFontName{} = True usedByEdges LabelFontSize{} = True usedByEdges LabelTarget{} = True usedByEdges LabelTooltip{} = True usedByEdges Label{} = True usedByEdges Layer{} = True usedByEdges Len{} = True usedByEdges LHead{} = True usedByEdges LPos{} = True usedByEdges LTail{} = True usedByEdges MinLen{} = True usedByEdges NoJustify{} = True usedByEdges PenWidth{} = True usedByEdges Pos{} = True usedByEdges SameHead{} = True usedByEdges SameTail{} = True usedByEdges ShowBoxes{} = True usedByEdges Style{} = True usedByEdges TailURL{} = True usedByEdges TailClip{} = True usedByEdges TailLabel{} = True usedByEdges TailPort{} = True usedByEdges TailTarget{} = True usedByEdges TailTooltip{} = True usedByEdges Target{} = True usedByEdges Tooltip{} = True usedByEdges Weight{} = True usedByEdges _ = False {- Delete to here -} -- ----------------------------------------------------------------------------- {- | Some 'Attribute's (mainly label-like ones) take a 'String' argument that allows for extra escape codes. This library doesn't do any extra checks or special parsing for these escape codes, but usage of 'EscString' rather than 'String' indicates that the Graphviz tools will recognise these extra escape codes for these 'Attribute's. The extra escape codes include (note that these are all 'String's): [@\\N@] Replace with the name of the node (for Node 'Attribute's). [@\\G@] Replace with the name of the graph (for Node 'Attribute's) or the name of the graph or cluster, whichever is applicable (for Graph, Cluster and Edge 'Attribute's). [@\\E@] Replace with the name of the edge, formed by the two adjoining nodes and the edge type (for Edge 'Attribute's). [@\\T@] Replace with the name of the tail node (for Edge 'Attribute's). [@\\H@] Replace with the name of the head node (for Edge 'Attribute's). [@\\L@] Replace with the object's label (for all 'Attribute's). Also, if the 'Attribute' in question is 'Label', 'HeadLabel' or 'TailLabel', then @\\n@, @\\l@ and @\\r@ split the label into lines centered, left-justified and right-justified respectively. -} type EscString = String -- ----------------------------------------------------------------------------- -- | No checks are placed on the content of a 'URL' value; however, -- you should ensure that it does not contain any \'@>@\' or \'@<@\' -- characters; Graphviz might care about escaping other characters -- properly, but for the purposes of this library the presence of -- these characters will make it harder to parse URLs. newtype URL = UStr { urlString :: EscString } deriving (Eq, Ord, Show, Read) instance PrintDot URL where unqtDot = wrap (char '<') (char '>') -- Explicitly use text here... no quotes! . text . urlString instance ParseDot URL where parseUnqt = liftM UStr $ bracket (character open) (character close) (many1 $ satisfy ((/=) close)) where open = '<' close = '>' -- No quotes parse = parseUnqt -- ----------------------------------------------------------------------------- -- | /Dot/ has a basic grammar of arrow shapes which allows usage of -- up to 1,544,761 different shapes from 9 different basic -- 'ArrowShape's. Note that whilst an explicit list is used in the -- definition of 'ArrowType', there must be at least one tuple and a -- maximum of 4 (since that is what is required by Dot). For more -- information, see: -- -- The 19 basic arrows shown on the overall attributes page have -- been defined below as a convenience. Parsing of the 5 -- backward-compatible special cases is also supported. newtype ArrowType = AType [(ArrowModifier, ArrowShape)] deriving (Eq, Ord, Show, Read) box, crow, diamond, dotArrow, inv, noArrow, normal, tee, vee :: ArrowType oDot, invDot, invODot, oBox, oDiamond :: ArrowType eDiamond, openArr, halfOpen, emptyArr, invEmpty :: ArrowType normal = AType [(noMods, Normal)] inv = AType [(noMods, Inv)] dotArrow = AType [(noMods, DotArrow)] invDot = AType [ (noMods, Inv) , (noMods, DotArrow)] oDot = AType [(ArrMod OpenArrow BothSides, DotArrow)] invODot = AType [ (noMods, Inv) , (openMod, DotArrow)] noArrow = AType [(noMods, NoArrow)] tee = AType [(noMods, Tee)] emptyArr = AType [(openMod, Normal)] invEmpty = AType [ (noMods, Inv) , (openMod, Normal)] diamond = AType [(noMods, Diamond)] oDiamond = AType [(openMod, Diamond)] eDiamond = oDiamond crow = AType [(noMods, Crow)] box = AType [(noMods, Box)] oBox = AType [(openMod, Box)] openArr = vee halfOpen = AType [(ArrMod FilledArrow LeftSide, Vee)] vee = AType [(noMods, Vee)] instance PrintDot ArrowType where unqtDot (AType mas) = hcat $ map appMod mas where appMod (m, a) = unqtDot m <> unqtDot a instance ParseDot ArrowType where parseUnqt = do mas <- many1 $ do m <- parseUnqt a <- parseUnqt return (m,a) return $ AType mas `onFail` specialArrowParse specialArrowParse :: Parse ArrowType specialArrowParse = oneOf [ stringRep eDiamond "ediamond" , stringRep openArr "open" , stringRep halfOpen "halfopen" , stringRep emptyArr "empty" , stringRep invEmpty "invempty" ] data ArrowShape = Box | Crow | Diamond | DotArrow | Inv | NoArrow | Normal | Tee | Vee deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ArrowShape where unqtDot Box = unqtDot "box" unqtDot Crow = unqtDot "crow" unqtDot Diamond = unqtDot "diamond" unqtDot DotArrow = unqtDot "dot" unqtDot Inv = unqtDot "inv" unqtDot NoArrow = unqtDot "none" unqtDot Normal = unqtDot "normal" unqtDot Tee = unqtDot "tee" unqtDot Vee = unqtDot "vee" instance ParseDot ArrowShape where parseUnqt = oneOf [ stringRep Box "box" , stringRep Crow "crow" , stringRep Diamond "diamond" , stringRep DotArrow "dot" , stringRep Inv "inv" , stringRep NoArrow "none" , stringRep Normal "normal" , stringRep Tee "tee" , stringRep Vee "vee" ] -- | What modifications to apply to an 'ArrowShape'. data ArrowModifier = ArrMod { arrowFill :: ArrowFill , arrowSide :: ArrowSide } deriving (Eq, Ord, Show, Read) -- | Apply no modifications to an 'ArrowShape'. noMods :: ArrowModifier noMods = ArrMod FilledArrow BothSides -- | 'OpenArrow' and 'BothSides' openMod :: ArrowModifier openMod = ArrMod OpenArrow BothSides instance PrintDot ArrowModifier where unqtDot (ArrMod f s) = unqtDot f <> unqtDot s instance ParseDot ArrowModifier where parseUnqt = do f <- parseUnqt s <- parseUnqt return $ ArrMod f s data ArrowFill = OpenArrow | FilledArrow deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ArrowFill where unqtDot OpenArrow = char 'o' unqtDot FilledArrow = empty instance ParseDot ArrowFill where parseUnqt = liftM (bool FilledArrow OpenArrow . isJust) $ optional (character 'o') -- Not used individually parse = parseUnqt -- | Represents which side (when looking towards the node the arrow is -- pointing to) is drawn. data ArrowSide = LeftSide | RightSide | BothSides deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ArrowSide where unqtDot LeftSide = char 'l' unqtDot RightSide = char 'r' unqtDot BothSides = empty instance ParseDot ArrowSide where parseUnqt = liftM getSideType $ optional (oneOf $ map character ['l', 'r']) where getSideType = maybe BothSides (bool RightSide LeftSide . (==) 'l') -- Not used individually parse = parseUnqt -- ----------------------------------------------------------------------------- data AspectType = RatioOnly Double | RatioPassCount Double Int deriving (Eq, Ord, Show, Read) instance PrintDot AspectType where unqtDot (RatioOnly r) = unqtDot r unqtDot (RatioPassCount r p) = commaDel r p toDot at@RatioOnly{} = unqtDot at toDot at@RatioPassCount{} = doubleQuotes $ unqtDot at instance ParseDot AspectType where parseUnqt = liftM (uncurry RatioPassCount) commaSepUnqt `onFail` liftM RatioOnly parseUnqt parse = quotedParse (liftM (uncurry RatioPassCount) commaSepUnqt) `onFail` liftM RatioOnly parse -- ----------------------------------------------------------------------------- data Rect = Rect Point Point deriving (Eq, Ord, Show, Read) instance PrintDot Rect where unqtDot (Rect p1 p2) = commaDel p1 p2 toDot = doubleQuotes . unqtDot instance ParseDot Rect where parseUnqt = liftM (uncurry Rect) commaSepUnqt parse = quotedParse parseUnqt -- ----------------------------------------------------------------------------- data ClusterMode = Local | Global | NoCluster deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ClusterMode where unqtDot Local = unqtDot "local" unqtDot Global = unqtDot "global" unqtDot NoCluster = unqtDot "none" instance ParseDot ClusterMode where parseUnqt = oneOf [ stringRep Local "local" , stringRep Global "global" , stringRep NoCluster "none" ] -- ----------------------------------------------------------------------------- data DirType = Forward | Back | Both | NoDir deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot DirType where unqtDot Forward = unqtDot "forward" unqtDot Back = unqtDot "back" unqtDot Both = unqtDot "both" unqtDot NoDir = unqtDot "none" instance ParseDot DirType where parseUnqt = oneOf [ stringRep Forward "forward" , stringRep Back "back" , stringRep Both "both" , stringRep NoDir "none" ] -- ----------------------------------------------------------------------------- -- | Only when @mode == 'IpSep'@. data DEConstraints = EdgeConstraints | NoConstraints | HierConstraints deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot DEConstraints where unqtDot EdgeConstraints = unqtDot True unqtDot NoConstraints = unqtDot False unqtDot HierConstraints = text "hier" instance ParseDot DEConstraints where parseUnqt = liftM (bool NoConstraints EdgeConstraints) parse `onFail` stringRep HierConstraints "hier" -- ----------------------------------------------------------------------------- -- | Either a 'Double' or a 'Point'. data DPoint = DVal Double | PVal Point deriving (Eq, Ord, Show, Read) instance PrintDot DPoint where unqtDot (DVal d) = unqtDot d unqtDot (PVal p) = unqtDot p toDot (DVal d) = toDot d toDot (PVal p) = toDot p instance ParseDot DPoint where parseUnqt = liftM PVal parseUnqt `onFail` liftM DVal parseUnqt parse = liftM PVal parse `onFail` liftM DVal parse -- ----------------------------------------------------------------------------- data ModeType = Major | KK | Hier | IpSep deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ModeType where unqtDot Major = text "major" unqtDot KK = text "KK" unqtDot Hier = text "hier" unqtDot IpSep = text "ipsep" instance ParseDot ModeType where parseUnqt = oneOf [ stringRep Major "major" , stringRep KK "KK" , stringRep Hier "hier" , stringRep IpSep "ipsep" ] -- ----------------------------------------------------------------------------- data Model = ShortPath | SubSet | Circuit deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot Model where unqtDot ShortPath = text "shortpath" unqtDot SubSet = text "subset" unqtDot Circuit = text "circuit" instance ParseDot Model where parseUnqt = oneOf [ stringRep ShortPath "shortpath" , stringRep SubSet "subset" , stringRep Circuit "circuit" ] -- ----------------------------------------------------------------------------- data Label = StrLabel EscString | URLLabel URL deriving (Eq, Ord, Show, Read) instance PrintDot Label where unqtDot (StrLabel s) = unqtDot s unqtDot (URLLabel u) = unqtDot u toDot (StrLabel s) = toDot s toDot (URLLabel u) = toDot u instance ParseDot Label where parseUnqt = liftM StrLabel parseUnqt `onFail` liftM URLLabel parseUnqt parse = liftM StrLabel parse `onFail` liftM URLLabel parse -- ----------------------------------------------------------------------------- data Point = Point Int Int | PointD Double Double deriving (Eq, Ord, Show, Read) instance PrintDot Point where unqtDot (Point x y) = commaDel x y unqtDot (PointD x y) = commaDel x y toDot = doubleQuotes . unqtDot unqtListToDot = hsep . map unqtDot listToDot = doubleQuotes . unqtListToDot instance ParseDot Point where -- Need to take into account the situation where first value is an -- integer, second a double: if Point parsing first, then it won't -- parse the second number properly; but if PointD first then it -- will treat Int/Int as Double/Double. parseUnqt = intDblPoint `onFail` liftM (uncurry Point) commaSepUnqt `onFail` liftM (uncurry PointD) commaSepUnqt where intDblPoint = liftM (uncurry PointD . first fI) $ commaSep' parseUnqt parseStrictFloat fI :: Int -> Double fI = fromIntegral parse = quotedParse parseUnqt parseUnqtList = sepBy1 parseUnqt whitespace -- ----------------------------------------------------------------------------- data Overlap = KeepOverlaps | RemoveOverlaps | ScaleOverlaps | ScaleXYOverlaps | PrismOverlap (Maybe Int) -- ^ Only when sfdp is available, 'Int' is non-negative | CompressOverlap | VpscOverlap | IpsepOverlap -- ^ Only when @mode == 'IpSep'@ deriving (Eq, Ord, Show, Read) instance PrintDot Overlap where unqtDot KeepOverlaps = unqtDot True unqtDot RemoveOverlaps = unqtDot False unqtDot ScaleOverlaps = text "scale" unqtDot ScaleXYOverlaps = text "scalexy" unqtDot (PrismOverlap i) = maybe id (flip (<>) . unqtDot) i $ text "prism" unqtDot CompressOverlap = text "compress" unqtDot VpscOverlap = text "vpsc" unqtDot IpsepOverlap = text "ipsep" instance ParseDot Overlap where parseUnqt = oneOf [ stringRep KeepOverlaps "true" , stringRep RemoveOverlaps "false" , stringRep ScaleXYOverlaps "scalexy" , stringRep ScaleOverlaps "scale" , string "prism" >> liftM PrismOverlap (optional parse) , stringRep CompressOverlap "compress" , stringRep VpscOverlap "vpsc" , stringRep IpsepOverlap "ipsep" ] -- ----------------------------------------------------------------------------- data LayerRange = LRID LayerID | LRS LayerID String LayerID deriving (Eq, Ord, Show, Read) instance PrintDot LayerRange where unqtDot (LRID lid) = unqtDot lid unqtDot (LRS id1 s id2) = unqtDot id1 <> unqtDot s <> unqtDot id2 toDot (LRID lid) = toDot lid toDot lrs = doubleQuotes $ unqtDot lrs instance ParseDot LayerRange where parseUnqt = do id1 <- parseUnqt s <- parseLayerSep id2 <- parseUnqt return $ LRS id1 s id2 `onFail` liftM LRID parseUnqt parse = quotedParse ( do id1 <- parseUnqt s <- parseLayerSep id2 <- parseUnqt return $ LRS id1 s id2 ) `onFail` liftM LRID parse parseLayerSep :: Parse String parseLayerSep = many1 . oneOf $ map character defLayerSep defLayerSep :: [Char] defLayerSep = [' ', ':', '\t'] parseLayerName :: Parse String parseLayerName = many1 . orQuote $ satisfy (liftM2 (&&) notLayerSep ((/=) quoteChar)) parseLayerName' :: Parse String parseLayerName' = stringBlock `onFail` quotedParse parseLayerName notLayerSep :: Char -> Bool notLayerSep = flip notElem defLayerSep -- | You should not have any quote characters for the 'LRName' option, -- as it won't be parseable. data LayerID = AllLayers | LRInt Int | LRName String deriving (Eq, Ord, Show, Read) instance PrintDot LayerID where unqtDot AllLayers = text "all" unqtDot (LRInt n) = unqtDot n unqtDot (LRName nm) = unqtDot nm toDot (LRName nm) = toDot nm -- Other two don't need quotes toDot li = unqtDot li instance ParseDot LayerID where parseUnqt = liftM checkLayerName parseLayerName -- tests for Int and All parse = oneOf [ liftM checkLayerName parseLayerName' , liftM LRInt parse -- Mainly for unquoted case. ] checkLayerName :: String -> LayerID checkLayerName str = maybe checkAll LRInt $ stringToInt str where checkAll = if map toLower str == "all" then AllLayers else LRName str -- | The list represent (Separator, Name). You should not have any -- quote characters for any of the 'String's, since there are -- parsing problems with them. data LayerList = LL String [(String, String)] deriving (Eq, Ord, Show, Read) instance PrintDot LayerList where unqtDot (LL l1 ols) = unqtDot l1 <> hcat (map subLL ols) where subLL (s, l) = unqtDot s <> unqtDot l toDot (LL l1 []) = toDot l1 -- Might not need quotes, but probably will. toDot ll = doubleQuotes $ unqtDot ll instance ParseDot LayerList where parseUnqt = do l1 <- parseLayerName ols <- many $ do s <- parseLayerSep lnm <- parseLayerName return (s, lnm) return $ LL l1 ols parse = quotedParse parseUnqt `onFail` liftM (flip LL []) (parseLayerName' `onFail` numString) -- ----------------------------------------------------------------------------- data OutputMode = BreadthFirst | NodesFirst | EdgesFirst deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot OutputMode where unqtDot BreadthFirst = text "breadthfirst" unqtDot NodesFirst = text "nodesfirst" unqtDot EdgesFirst = text "edgesfirst" instance ParseDot OutputMode where parseUnqt = oneOf [ stringRep BreadthFirst "breadthfirst" , stringRep NodesFirst "nodesfirst" , stringRep EdgesFirst "edgesfirst" ] -- ----------------------------------------------------------------------------- data Pack = DoPack | DontPack | PackMargin Int -- ^ If non-negative, then packs; otherwise doesn't. deriving (Eq, Ord, Show, Read) instance PrintDot Pack where unqtDot DoPack = unqtDot True unqtDot DontPack = unqtDot False unqtDot (PackMargin m) = unqtDot m instance ParseDot Pack where -- What happens if it parses 0? It's non-negative, but parses as False parseUnqt = oneOf [ liftM PackMargin parseUnqt , liftM (bool DontPack DoPack) onlyBool ] -- ----------------------------------------------------------------------------- data PackMode = PackNode | PackClust | PackGraph | PackArray Bool Bool (Maybe Int) -- ^ Sort by cols, sort -- by user, number of -- rows/cols deriving (Eq, Ord, Show, Read) instance PrintDot PackMode where unqtDot PackNode = text "node" unqtDot PackClust = text "clust" unqtDot PackGraph = text "graph" unqtDot (PackArray c u mi) = addNum . isU . isC . isUnder $ text "array" where addNum = maybe id (flip (<>) . unqtDot) mi isUnder = if c || u then flip (<>) $ char '_' else id isC = if c then flip (<>) $ char 'c' else id isU = if u then flip (<>) $ char 'u' else id instance ParseDot PackMode where parseUnqt = oneOf [ stringRep PackNode "node" , stringRep PackClust "clust" , stringRep PackGraph "graph" , do string "array" mcu <- optional $ do character '_' many1 $ satisfy isCU let c = hasCharacter mcu 'c' u = hasCharacter mcu 'u' mi <- optional parseUnqt return $ PackArray c u mi ] where hasCharacter ms c = maybe False (elem c) ms -- Also checks and removes quote characters isCU = flip elem ['c', 'u'] -- ----------------------------------------------------------------------------- data Pos = PointPos Point | SplinePos [Spline] deriving (Eq, Ord, Show, Read) instance PrintDot Pos where unqtDot (PointPos p) = unqtDot p unqtDot (SplinePos ss) = unqtDot ss toDot (PointPos p) = toDot p toDot (SplinePos ss) = toDot ss instance ParseDot Pos where -- Have to be careful with this: if we try to parse points first, -- then a spline with no start and end points will erroneously get -- parsed as a point and then the parser will crash as it expects -- a closing quote character... parseUnqt = do splns <- parseUnqt case splns of [Spline Nothing Nothing [p]] -> return $ PointPos p _ -> return $ SplinePos splns parse = quotedParse parseUnqt -- ----------------------------------------------------------------------------- -- | Controls how (and if) edges are represented. data EdgeType = SplineEdges | LineEdges | NoEdges | PolyLine | CompoundEdge -- ^ fdp only deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot EdgeType where unqtDot SplineEdges = toDot True unqtDot LineEdges = toDot False unqtDot NoEdges = empty unqtDot PolyLine = text "polyline" unqtDot CompoundEdge = text "compound" toDot NoEdges = doubleQuotes empty toDot et = unqtDot et instance ParseDot EdgeType where -- Can't parse NoEdges without quotes. parseUnqt = oneOf [ liftM (bool LineEdges SplineEdges) parse , stringRep SplineEdges "spline" , stringRep LineEdges "line" , stringRep PolyLine "polyline" , stringRep CompoundEdge "compound" ] parse = stringRep NoEdges "\"\"" `onFail` optionalQuoted parseUnqt -- ----------------------------------------------------------------------------- -- | Upper-case first character is major order; -- lower-case second character is minor order. data PageDir = Bl | Br | Tl | Tr | Rb | Rt | Lb | Lt deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot PageDir where unqtDot Bl = text "BL" unqtDot Br = text "BR" unqtDot Tl = text "TL" unqtDot Tr = text "TR" unqtDot Rb = text "RB" unqtDot Rt = text "RT" unqtDot Lb = text "LB" unqtDot Lt = text "LT" instance ParseDot PageDir where parseUnqt = oneOf [ stringRep Bl "BL" , stringRep Br "BR" , stringRep Tl "TL" , stringRep Tr "TR" , stringRep Rb "RB" , stringRep Rt "RT" , stringRep Lb "LB" , stringRep Lt "LT" ] -- ----------------------------------------------------------------------------- -- | The number of points in the list must be equivalent to 1 mod 3; -- note that this is not checked. data Spline = Spline (Maybe Point) (Maybe Point) [Point] deriving (Eq, Ord, Show, Read) instance PrintDot Spline where unqtDot (Spline ms me ps) = addS . addE . hsep $ map unqtDot ps where addP t = maybe id ((<+>) . commaDel t) addS = addP 's' ms addE = addP 'e' me toDot = doubleQuotes . unqtDot unqtListToDot = hcat . punctuate semi . map unqtDot listToDot = doubleQuotes . unqtListToDot instance ParseDot Spline where parseUnqt = do ms <- parseP 's' me <- parseP 'e' ps <- sepBy1 parseUnqt whitespace return $ Spline ms me ps where parseP t = optional $ do character t parseComma parseUnqt `discard` whitespace parse = quotedParse parseUnqt parseUnqtList = sepBy1 parseUnqt (character ';') -- ----------------------------------------------------------------------------- data QuadType = NormalQT | FastQT | NoQT deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot QuadType where unqtDot NormalQT = text "normal" unqtDot FastQT = text "fast" unqtDot NoQT = text "none" instance ParseDot QuadType where -- Have to take into account the slightly different interpretation -- of Bool used as an option for parsing QuadType parseUnqt = oneOf [ stringRep NormalQT "normal" , stringRep FastQT "fast" , stringRep NoQT "none" , character '2' >> return FastQT -- weird bool , liftM (bool NoQT NormalQT) parse ] -- ----------------------------------------------------------------------------- -- | Specify the root node either as a Node attribute or a Graph attribute. data Root = IsCentral -- ^ For Nodes only | NotCentral -- ^ For Nodes only | NodeName String -- ^ For Graphs only deriving (Eq, Ord, Show, Read) instance PrintDot Root where unqtDot IsCentral = unqtDot True unqtDot NotCentral = unqtDot False unqtDot (NodeName n) = unqtDot n toDot (NodeName n) = toDot n toDot r = unqtDot r instance ParseDot Root where parseUnqt = liftM (bool NotCentral IsCentral) onlyBool `onFail` liftM NodeName parseUnqt parse = optionalQuoted (liftM (bool NotCentral IsCentral) onlyBool) `onFail` liftM NodeName parse -- ----------------------------------------------------------------------------- data RankType = SameRank | MinRank | SourceRank | MaxRank | SinkRank deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot RankType where unqtDot SameRank = text "same" unqtDot MinRank = text "min" unqtDot SourceRank = text "source" unqtDot MaxRank = text "max" unqtDot SinkRank = text "sink" instance ParseDot RankType where parseUnqt = oneOf [ stringRep SameRank "same" , stringRep MinRank "min" , stringRep SourceRank "source" , stringRep MaxRank "max" , stringRep SinkRank "sink" ] -- ----------------------------------------------------------------------------- data RankDir = FromTop | FromLeft | FromBottom | FromRight deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot RankDir where unqtDot FromTop = text "TB" unqtDot FromLeft = text "LR" unqtDot FromBottom = text "BT" unqtDot FromRight = text "RL" instance ParseDot RankDir where parseUnqt = oneOf [ stringRep FromTop "TB" , stringRep FromLeft "LR" , stringRep FromBottom "BT" , stringRep FromRight "RL" ] -- ----------------------------------------------------------------------------- data Shape = BoxShape -- ^ Has synonyms of /rect/ and /rectangle/. | Polygon | Ellipse | Circle | PointShape | Egg | Triangle | PlainText -- ^ Has synonym of /none/. | DiamondShape | Trapezium | Parallelogram | House | Pentagon | Hexagon | Septagon | Octagon | DoubleCircle | DoubleOctagon | TripleOctagon | InvTriangle | InvTrapezium | InvHouse | MDiamond | MSquare | MCircle | Note | Tab | Folder | Box3D | Component deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot Shape where unqtDot BoxShape = text "box" unqtDot Polygon = text "polygon" unqtDot Ellipse = text "ellipse" unqtDot Circle = text "circle" unqtDot PointShape = text "point" unqtDot Egg = text "egg" unqtDot Triangle = text "triangle" unqtDot PlainText = text "plaintext" unqtDot DiamondShape = text "diamond" unqtDot Trapezium = text "trapezium" unqtDot Parallelogram = text "parallelogram" unqtDot House = text "house" unqtDot Pentagon = text "pentagon" unqtDot Hexagon = text "hexagon" unqtDot Septagon = text "septagon" unqtDot Octagon = text "octagon" unqtDot DoubleCircle = text "doublecircle" unqtDot DoubleOctagon = text "doubleoctagon" unqtDot TripleOctagon = text "tripleoctagon" unqtDot InvTriangle = text "invtriangle" unqtDot InvTrapezium = text "invtrapezium" unqtDot InvHouse = text "invhouse" unqtDot MDiamond = text "Mdiamond" unqtDot MSquare = text "Msquare" unqtDot MCircle = text "Mcircle" unqtDot Note = text "note" unqtDot Tab = text "tab" unqtDot Folder = text "folder" unqtDot Box3D = text "box3d" unqtDot Component = text "component" instance ParseDot Shape where parseUnqt = oneOf [ stringRep Box3D "box3d" -- Parse this before "box" , stringReps BoxShape ["box","rectangle","rect"] , stringRep Polygon "polygon" , stringRep Ellipse "ellipse" , stringRep Circle "circle" , stringRep PointShape "point" , stringRep Egg "egg" , stringRep Triangle "triangle" , stringReps PlainText ["plaintext","none"] , stringRep DiamondShape "diamond" , stringRep Trapezium "trapezium" , stringRep Parallelogram "parallelogram" , stringRep House "house" , stringRep Pentagon "pentagon" , stringRep Hexagon "hexagon" , stringRep Septagon "septagon" , stringRep Octagon "octagon" , stringRep DoubleCircle "doublecircle" , stringRep DoubleOctagon "doubleoctagon" , stringRep TripleOctagon "tripleoctagon" , stringRep InvTriangle "invtriangle" , stringRep InvTrapezium "invtrapezium" , stringRep InvHouse "invhouse" , stringRep MDiamond "Mdiamond" , stringRep MSquare "Msquare" , stringRep MCircle "Mcircle" , stringRep Note "note" , stringRep Tab "tab" , stringRep Folder "folder" , stringRep Component "component" ] -- ----------------------------------------------------------------------------- data SmoothType = NoSmooth | AvgDist | GraphDist | PowerDist | RNG | Spring | TriangleSmooth deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot SmoothType where unqtDot NoSmooth = text "none" unqtDot AvgDist = text "avg_dist" unqtDot GraphDist = text "graph_dist" unqtDot PowerDist = text "power_dist" unqtDot RNG = text "rng" unqtDot Spring = text "spring" unqtDot TriangleSmooth = text "triangle" instance ParseDot SmoothType where parseUnqt = oneOf [ stringRep NoSmooth "none" , stringRep AvgDist "avg_dist" , stringRep GraphDist "graph_dist" , stringRep PowerDist "power_dist" , stringRep RNG "rng" , stringRep Spring "spring" , stringRep TriangleSmooth "triangle" ] -- ----------------------------------------------------------------------------- data StartType = StartStyle STStyle | StartSeed Int | StartStyleSeed STStyle Int deriving (Eq, Ord, Show, Read) instance PrintDot StartType where unqtDot (StartStyle ss) = unqtDot ss unqtDot (StartSeed s) = unqtDot s unqtDot (StartStyleSeed ss s) = unqtDot ss <> unqtDot s instance ParseDot StartType where parseUnqt = oneOf [ do ss <- parseUnqt s <- parseUnqt return $ StartStyleSeed ss s , liftM StartStyle parseUnqt , liftM StartSeed parseUnqt ] data STStyle = RegularStyle | SelfStyle | RandomStyle deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot STStyle where unqtDot RegularStyle = text "regular" unqtDot SelfStyle = text "self" unqtDot RandomStyle = text "random" instance ParseDot STStyle where parseUnqt = oneOf [ stringRep RegularStyle "regular" , stringRep SelfStyle "self" , stringRep RandomStyle "random" ] -- ----------------------------------------------------------------------------- data StyleItem = SItem StyleName [String] deriving (Eq, Ord, Show, Read) instance PrintDot StyleItem where unqtDot (SItem nm args) | null args = dnm | otherwise = dnm <> parens args' where dnm = unqtDot nm args' = hcat . punctuate comma $ map unqtDot args toDot si@(SItem nm args) | null args = toDot nm | otherwise = doubleQuotes $ unqtDot si unqtListToDot = hcat . punctuate comma . map unqtDot listToDot [SItem nm []] = toDot nm listToDot sis = doubleQuotes $ unqtListToDot sis instance ParseDot StyleItem where parseUnqt = do nm <- parseUnqt args <- tryParseList' parseArgs return $ SItem nm args parse = quotedParse (liftM2 SItem parseUnqt parseArgs) `onFail` liftM (flip SItem []) parse parseUnqtList = sepBy1 parseUnqt parseComma parseList = quotedParse parseUnqtList `onFail` -- Might not necessarily need to be quoted if a singleton... liftM return parse parseArgs :: Parse [String] parseArgs = bracketSep (character '(') parseComma (character ')') parseStyleName data StyleName = Dashed -- ^ Nodes and Edges | Dotted -- ^ Nodes and Edges | Solid -- ^ Nodes and Edges | Bold -- ^ Nodes and Edges | Invisible -- ^ Nodes and Edges | Filled -- ^ Nodes and Clusters | Diagonals -- ^ Nodes only | Rounded -- ^ Nodes and Clusters | DD String -- ^ Device Dependent deriving (Eq, Ord, Show, Read) instance PrintDot StyleName where unqtDot Dashed = text "dashed" unqtDot Dotted = text "dotted" unqtDot Solid = text "solid" unqtDot Bold = text "bold" unqtDot Invisible = text "invis" unqtDot Filled = text "filled" unqtDot Diagonals = text "diagonals" unqtDot Rounded = text "rounded" unqtDot (DD nm) = unqtDot nm toDot (DD nm) = toDot nm toDot sn = unqtDot sn instance ParseDot StyleName where parseUnqt = liftM checkDD parseStyleName parse = liftM checkDD $ quotedParse parseStyleName `onFail` -- In case a singleton DD is at the end of an attribute list. do f <- orQuote $ noneOf [quoteChar, '(', ')', ',', ' ', ']'] r <- many (orQuote $ noneOf [quoteChar, '(', ')', ',', ']']) return $ f:r checkDD :: String -> StyleName checkDD str = case map toLower str of "dashed" -> Dashed "dotted" -> Dotted "solid" -> Solid "bold" -> Bold "invis" -> Invisible "filled" -> Filled "diagonals" -> Diagonals "rounded" -> Rounded _ -> DD str parseStyleName :: Parse String parseStyleName = do f <- orQuote $ noneOf [quoteChar, '(', ')', ',', ' '] r <- many (orQuote $ noneOf [quoteChar, '(', ')', ',']) return $ f:r -- ----------------------------------------------------------------------------- newtype PortPos = PP CompassPoint deriving (Eq, Ord, Show, Read) instance PrintDot PortPos where unqtDot (PP cp) = unqtDot cp toDot (PP cp) = toDot cp instance ParseDot PortPos where parseUnqt = liftM PP parseUnqt data CompassPoint = North | NorthEast | East | SouthEast | South | SouthWest | West | NorthWest | CenterPoint | NoCP deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot CompassPoint where unqtDot NorthEast = text "ne" unqtDot NorthWest = text "nw" unqtDot North = text "n" unqtDot East = text "e" unqtDot SouthEast = text "se" unqtDot SouthWest = text "sw" unqtDot South = text "s" unqtDot West = text "w" unqtDot CenterPoint = text "c" unqtDot NoCP = text "_" instance ParseDot CompassPoint where -- Have to take care of longer parsing values first. parseUnqt = oneOf [ stringRep NorthEast "ne" , stringRep NorthWest "nw" , stringRep North "n" , stringRep SouthEast "se" , stringRep SouthWest "sw" , stringRep South "s" , stringRep East "e" , stringRep West "w" , stringRep CenterPoint "c" , stringRep NoCP "_" ] -- ----------------------------------------------------------------------------- data ViewPort = VP { wVal :: Double , hVal :: Double , zVal :: Double , focus :: Maybe FocusType } deriving (Eq, Ord, Show, Read) instance PrintDot ViewPort where unqtDot vp = maybe vs ((<>) (vs <> comma) . unqtDot) $ focus vp where vs = hcat . punctuate comma $ map (unqtDot . flip ($) vp) [wVal, hVal, zVal] toDot = doubleQuotes . unqtDot instance ParseDot ViewPort where parseUnqt = do wv <- parseUnqt parseComma hv <- parseUnqt parseComma zv <- parseUnqt mf <- optional $ parseComma >> parseUnqt return $ VP wv hv zv mf parse = quotedParse parseUnqt data FocusType = XY Point | NodeFocus String deriving (Eq, Ord, Show, Read) instance PrintDot FocusType where unqtDot (XY p) = unqtDot p unqtDot (NodeFocus nm) = unqtDot nm toDot (XY p) = toDot p toDot (NodeFocus nm) = toDot nm instance ParseDot FocusType where parseUnqt = liftM XY parseUnqt `onFail` liftM NodeFocus parseUnqt parse = liftM XY parse `onFail` liftM NodeFocus parse -- ----------------------------------------------------------------------------- data VerticalPlacement = VTop | VCenter -- ^ Only valid for Nodes. | VBottom deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot VerticalPlacement where unqtDot VTop = char 't' unqtDot VCenter = char 'c' unqtDot VBottom = char 'b' instance ParseDot VerticalPlacement where parseUnqt = oneOf [ stringRep VTop "t" , stringRep VCenter "c" , stringRep VBottom "b" ] -- ----------------------------------------------------------------------------- data ScaleType = UniformScale | NoScale | FillWidth | FillHeight | FillBoth deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ScaleType where unqtDot UniformScale = unqtDot True unqtDot NoScale = unqtDot False unqtDot FillWidth = text "width" unqtDot FillHeight = text "height" unqtDot FillBoth = text "both" instance ParseDot ScaleType where parseUnqt = oneOf [ stringRep UniformScale "true" , stringRep NoScale "false" , stringRep FillWidth "width" , stringRep FillHeight "height" , stringRep FillBoth "both" ] -- ----------------------------------------------------------------------------- data Justification = JLeft | JRight | JCenter deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot Justification where unqtDot JLeft = char 'l' unqtDot JRight = char 'r' unqtDot JCenter = char 'c' instance ParseDot Justification where parseUnqt = oneOf [ stringRep JLeft "l" , stringRep JRight "r" , stringRep JCenter "c" ] -- ----------------------------------------------------------------------------- data Ratios = AspectRatio Double | FillRatio | CompressRatio | ExpandRatio | AutoRatio deriving (Eq, Ord, Show, Read) instance PrintDot Ratios where unqtDot (AspectRatio r) = unqtDot r unqtDot FillRatio = text "fill" unqtDot CompressRatio = text "compress" unqtDot ExpandRatio = text "expand" unqtDot AutoRatio = text "auto" instance ParseDot Ratios where parseUnqt = oneOf [ liftM AspectRatio parseUnqt , stringRep FillRatio "fill" , stringRep CompressRatio "compress" , stringRep ExpandRatio "expand" , stringRep AutoRatio "auto" ] haskell-src-exts-1.18.2/tests/examples/Attributes.hs.exactprinter.golden0000644000000000000000000000000612746233113024600 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Attributes.hs.parser.golden0000644000000000000000003255213412746233113023407 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 75 1 2182 1 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 75 1 75 1 , SrcSpan "tests/examples/Attributes.hs" 75 1 75 1 , SrcSpan "tests/examples/Attributes.hs" 165 1 165 1 , SrcSpan "tests/examples/Attributes.hs" 166 1 166 1 , SrcSpan "tests/examples/Attributes.hs" 167 1 167 1 , SrcSpan "tests/examples/Attributes.hs" 168 1 168 1 , SrcSpan "tests/examples/Attributes.hs" 170 1 170 1 , SrcSpan "tests/examples/Attributes.hs" 171 1 171 1 , SrcSpan "tests/examples/Attributes.hs" 172 1 172 1 , SrcSpan "tests/examples/Attributes.hs" 173 1 173 1 , SrcSpan "tests/examples/Attributes.hs" 204 1 204 1 , SrcSpan "tests/examples/Attributes.hs" 351 1 351 1 , SrcSpan "tests/examples/Attributes.hs" 353 1 353 1 , SrcSpan "tests/examples/Attributes.hs" 501 1 501 1 , SrcSpan "tests/examples/Attributes.hs" 653 1 653 1 , SrcSpan "tests/examples/Attributes.hs" 654 1 654 1 , SrcSpan "tests/examples/Attributes.hs" 655 1 655 1 , SrcSpan "tests/examples/Attributes.hs" 656 1 656 1 , SrcSpan "tests/examples/Attributes.hs" 657 1 657 1 , SrcSpan "tests/examples/Attributes.hs" 658 1 658 1 , SrcSpan "tests/examples/Attributes.hs" 659 1 659 1 , SrcSpan "tests/examples/Attributes.hs" 660 1 660 1 , SrcSpan "tests/examples/Attributes.hs" 661 1 661 1 , SrcSpan "tests/examples/Attributes.hs" 662 1 662 1 , SrcSpan "tests/examples/Attributes.hs" 663 1 663 1 , SrcSpan "tests/examples/Attributes.hs" 664 1 664 1 , SrcSpan "tests/examples/Attributes.hs" 665 1 665 1 , SrcSpan "tests/examples/Attributes.hs" 666 1 666 1 , SrcSpan "tests/examples/Attributes.hs" 667 1 667 1 , SrcSpan "tests/examples/Attributes.hs" 668 1 668 1 , SrcSpan "tests/examples/Attributes.hs" 669 1 669 1 , SrcSpan "tests/examples/Attributes.hs" 670 1 670 1 , SrcSpan "tests/examples/Attributes.hs" 671 1 671 1 , SrcSpan "tests/examples/Attributes.hs" 672 1 672 1 , SrcSpan "tests/examples/Attributes.hs" 673 1 673 1 , SrcSpan "tests/examples/Attributes.hs" 674 1 674 1 , SrcSpan "tests/examples/Attributes.hs" 675 1 675 1 , SrcSpan "tests/examples/Attributes.hs" 676 1 676 1 , SrcSpan "tests/examples/Attributes.hs" 677 1 677 1 , SrcSpan "tests/examples/Attributes.hs" 678 1 678 1 , SrcSpan "tests/examples/Attributes.hs" 679 1 679 1 , SrcSpan "tests/examples/Attributes.hs" 680 1 680 1 , SrcSpan "tests/examples/Attributes.hs" 681 1 681 1 , SrcSpan "tests/examples/Attributes.hs" 682 1 682 1 , SrcSpan "tests/examples/Attributes.hs" 683 1 683 1 , SrcSpan "tests/examples/Attributes.hs" 684 1 684 1 , SrcSpan "tests/examples/Attributes.hs" 685 1 685 1 , SrcSpan "tests/examples/Attributes.hs" 686 1 686 1 , SrcSpan "tests/examples/Attributes.hs" 687 1 687 1 , SrcSpan "tests/examples/Attributes.hs" 688 1 688 1 , SrcSpan "tests/examples/Attributes.hs" 689 1 689 1 , SrcSpan "tests/examples/Attributes.hs" 690 1 690 1 , SrcSpan "tests/examples/Attributes.hs" 691 1 691 1 , SrcSpan "tests/examples/Attributes.hs" 692 1 692 1 , SrcSpan "tests/examples/Attributes.hs" 693 1 693 1 , SrcSpan "tests/examples/Attributes.hs" 694 1 694 1 , SrcSpan "tests/examples/Attributes.hs" 695 1 695 1 , SrcSpan "tests/examples/Attributes.hs" 696 1 696 1 , SrcSpan "tests/examples/Attributes.hs" 697 1 697 1 , SrcSpan "tests/examples/Attributes.hs" 698 1 698 1 , SrcSpan "tests/examples/Attributes.hs" 699 1 699 1 , SrcSpan "tests/examples/Attributes.hs" 700 1 700 1 , SrcSpan "tests/examples/Attributes.hs" 701 1 701 1 , SrcSpan "tests/examples/Attributes.hs" 702 1 702 1 , SrcSpan "tests/examples/Attributes.hs" 703 1 703 1 , SrcSpan "tests/examples/Attributes.hs" 704 1 704 1 , SrcSpan "tests/examples/Attributes.hs" 705 1 705 1 , SrcSpan "tests/examples/Attributes.hs" 706 1 706 1 , SrcSpan "tests/examples/Attributes.hs" 707 1 707 1 , SrcSpan "tests/examples/Attributes.hs" 708 1 708 1 , SrcSpan "tests/examples/Attributes.hs" 709 1 709 1 , SrcSpan "tests/examples/Attributes.hs" 710 1 710 1 , SrcSpan "tests/examples/Attributes.hs" 711 1 711 1 , SrcSpan "tests/examples/Attributes.hs" 712 1 712 1 , SrcSpan "tests/examples/Attributes.hs" 713 1 713 1 , SrcSpan "tests/examples/Attributes.hs" 714 1 714 1 , SrcSpan "tests/examples/Attributes.hs" 715 1 715 1 , SrcSpan "tests/examples/Attributes.hs" 716 1 716 1 , SrcSpan "tests/examples/Attributes.hs" 717 1 717 1 , SrcSpan "tests/examples/Attributes.hs" 718 1 718 1 , SrcSpan "tests/examples/Attributes.hs" 719 1 719 1 , SrcSpan "tests/examples/Attributes.hs" 720 1 720 1 , SrcSpan "tests/examples/Attributes.hs" 721 1 721 1 , SrcSpan "tests/examples/Attributes.hs" 722 1 722 1 , SrcSpan "tests/examples/Attributes.hs" 723 1 723 1 , SrcSpan "tests/examples/Attributes.hs" 724 1 724 1 , SrcSpan "tests/examples/Attributes.hs" 725 1 725 1 , SrcSpan "tests/examples/Attributes.hs" 726 1 726 1 , SrcSpan "tests/examples/Attributes.hs" 727 1 727 1 , SrcSpan "tests/examples/Attributes.hs" 728 1 728 1 , SrcSpan "tests/examples/Attributes.hs" 729 1 729 1 , SrcSpan "tests/examples/Attributes.hs" 730 1 730 1 , SrcSpan "tests/examples/Attributes.hs" 731 1 731 1 , SrcSpan "tests/examples/Attributes.hs" 732 1 732 1 , SrcSpan "tests/examples/Attributes.hs" 733 1 733 1 , SrcSpan "tests/examples/Attributes.hs" 736 1 736 1 , SrcSpan "tests/examples/Attributes.hs" 737 1 737 1 , SrcSpan "tests/examples/Attributes.hs" 738 1 738 1 , SrcSpan "tests/examples/Attributes.hs" 739 1 739 1 , SrcSpan "tests/examples/Attributes.hs" 740 1 740 1 , SrcSpan "tests/examples/Attributes.hs" 741 1 741 1 , SrcSpan "tests/examples/Attributes.hs" 742 1 742 1 , SrcSpan "tests/examples/Attributes.hs" 743 1 743 1 , SrcSpan "tests/examples/Attributes.hs" 744 1 744 1 , SrcSpan "tests/examples/Attributes.hs" 745 1 745 1 , SrcSpan "tests/examples/Attributes.hs" 746 1 746 1 , SrcSpan "tests/examples/Attributes.hs" 747 1 747 1 , SrcSpan "tests/examples/Attributes.hs" 748 1 748 1 , SrcSpan "tests/examples/Attributes.hs" 749 1 749 1 , SrcSpan "tests/examples/Attributes.hs" 750 1 750 1 , SrcSpan "tests/examples/Attributes.hs" 751 1 751 1 , SrcSpan "tests/examples/Attributes.hs" 752 1 752 1 , SrcSpan "tests/examples/Attributes.hs" 753 1 753 1 , SrcSpan "tests/examples/Attributes.hs" 754 1 754 1 , SrcSpan "tests/examples/Attributes.hs" 755 1 755 1 , SrcSpan "tests/examples/Attributes.hs" 756 1 756 1 , SrcSpan "tests/examples/Attributes.hs" 757 1 757 1 , SrcSpan "tests/examples/Attributes.hs" 758 1 758 1 , SrcSpan "tests/examples/Attributes.hs" 759 1 759 1 , SrcSpan "tests/examples/Attributes.hs" 762 1 762 1 , SrcSpan "tests/examples/Attributes.hs" 763 1 763 1 , SrcSpan "tests/examples/Attributes.hs" 764 1 764 1 , SrcSpan "tests/examples/Attributes.hs" 767 1 767 1 , SrcSpan "tests/examples/Attributes.hs" 768 1 768 1 , SrcSpan "tests/examples/Attributes.hs" 769 1 769 1 , SrcSpan "tests/examples/Attributes.hs" 770 1 770 1 , SrcSpan "tests/examples/Attributes.hs" 771 1 771 1 , SrcSpan "tests/examples/Attributes.hs" 772 1 772 1 , SrcSpan "tests/examples/Attributes.hs" 773 1 773 1 , SrcSpan "tests/examples/Attributes.hs" 774 1 774 1 , SrcSpan "tests/examples/Attributes.hs" 775 1 775 1 , SrcSpan "tests/examples/Attributes.hs" 776 1 776 1 , SrcSpan "tests/examples/Attributes.hs" 777 1 777 1 , SrcSpan "tests/examples/Attributes.hs" 778 1 778 1 , SrcSpan "tests/examples/Attributes.hs" 779 1 779 1 , SrcSpan "tests/examples/Attributes.hs" 780 1 780 1 , SrcSpan "tests/examples/Attributes.hs" 781 1 781 1 , SrcSpan "tests/examples/Attributes.hs" 782 1 782 1 , SrcSpan "tests/examples/Attributes.hs" 783 1 783 1 , SrcSpan "tests/examples/Attributes.hs" 784 1 784 1 , SrcSpan "tests/examples/Attributes.hs" 785 1 785 1 , SrcSpan "tests/examples/Attributes.hs" 786 1 786 1 , SrcSpan "tests/examples/Attributes.hs" 787 1 787 1 , SrcSpan "tests/examples/Attributes.hs" 788 1 788 1 , SrcSpan "tests/examples/Attributes.hs" 789 1 789 1 , SrcSpan "tests/examples/Attributes.hs" 790 1 790 1 , SrcSpan "tests/examples/Attributes.hs" 791 1 791 1 , SrcSpan "tests/examples/Attributes.hs" 792 1 792 1 , SrcSpan "tests/examples/Attributes.hs" 793 1 793 1 , SrcSpan "tests/examples/Attributes.hs" 794 1 794 1 , SrcSpan "tests/examples/Attributes.hs" 795 1 795 1 , SrcSpan "tests/examples/Attributes.hs" 796 1 796 1 , SrcSpan "tests/examples/Attributes.hs" 797 1 797 1 , SrcSpan "tests/examples/Attributes.hs" 798 1 798 1 , SrcSpan "tests/examples/Attributes.hs" 799 1 799 1 , SrcSpan "tests/examples/Attributes.hs" 800 1 800 1 , SrcSpan "tests/examples/Attributes.hs" 801 1 801 1 , SrcSpan "tests/examples/Attributes.hs" 802 1 802 1 , SrcSpan "tests/examples/Attributes.hs" 803 1 803 1 , SrcSpan "tests/examples/Attributes.hs" 804 1 804 1 , SrcSpan "tests/examples/Attributes.hs" 805 1 805 1 , SrcSpan "tests/examples/Attributes.hs" 806 1 806 1 , SrcSpan "tests/examples/Attributes.hs" 807 1 807 1 , SrcSpan "tests/examples/Attributes.hs" 808 1 808 1 , SrcSpan "tests/examples/Attributes.hs" 809 1 809 1 , SrcSpan "tests/examples/Attributes.hs" 812 1 812 1 , SrcSpan "tests/examples/Attributes.hs" 813 1 813 1 , SrcSpan "tests/examples/Attributes.hs" 814 1 814 1 , SrcSpan "tests/examples/Attributes.hs" 815 1 815 1 , SrcSpan "tests/examples/Attributes.hs" 816 1 816 1 , SrcSpan "tests/examples/Attributes.hs" 817 1 817 1 , SrcSpan "tests/examples/Attributes.hs" 818 1 818 1 , SrcSpan "tests/examples/Attributes.hs" 819 1 819 1 , SrcSpan "tests/examples/Attributes.hs" 820 1 820 1 , SrcSpan "tests/examples/Attributes.hs" 821 1 821 1 , SrcSpan "tests/examples/Attributes.hs" 822 1 822 1 , SrcSpan "tests/examples/Attributes.hs" 823 1 823 1 , SrcSpan "tests/examples/Attributes.hs" 824 1 824 1 , SrcSpan "tests/examples/Attributes.hs" 825 1 825 1 , SrcSpan "tests/examples/Attributes.hs" 826 1 826 1 , SrcSpan "tests/examples/Attributes.hs" 827 1 827 1 , SrcSpan "tests/examples/Attributes.hs" 828 1 828 1 , SrcSpan "tests/examples/Attributes.hs" 829 1 829 1 , SrcSpan "tests/examples/Attributes.hs" 830 1 830 1 , SrcSpan "tests/examples/Attributes.hs" 831 1 831 1 , SrcSpan "tests/examples/Attributes.hs" 832 1 832 1 , SrcSpan "tests/examples/Attributes.hs" 833 1 833 1 , SrcSpan "tests/examples/Attributes.hs" 834 1 834 1 , SrcSpan "tests/examples/Attributes.hs" 835 1 835 1 , SrcSpan "tests/examples/Attributes.hs" 836 1 836 1 , SrcSpan "tests/examples/Attributes.hs" 837 1 837 1 , SrcSpan "tests/examples/Attributes.hs" 838 1 838 1 , SrcSpan "tests/examples/Attributes.hs" 839 1 839 1 , SrcSpan "tests/examples/Attributes.hs" 840 1 840 1 , SrcSpan "tests/examples/Attributes.hs" 841 1 841 1 , SrcSpan "tests/examples/Attributes.hs" 842 1 842 1 , SrcSpan "tests/examples/Attributes.hs" 843 1 843 1 , SrcSpan "tests/examples/Attributes.hs" 844 1 844 1 , SrcSpan "tests/examples/Attributes.hs" 845 1 845 1 , SrcSpan "tests/examples/Attributes.hs" 846 1 846 1 , SrcSpan "tests/examples/Attributes.hs" 847 1 847 1 , SrcSpan "tests/examples/Attributes.hs" 848 1 848 1 , SrcSpan "tests/examples/Attributes.hs" 849 1 849 1 , SrcSpan "tests/examples/Attributes.hs" 850 1 850 1 , SrcSpan "tests/examples/Attributes.hs" 851 1 851 1 , SrcSpan "tests/examples/Attributes.hs" 852 1 852 1 , SrcSpan "tests/examples/Attributes.hs" 853 1 853 1 , SrcSpan "tests/examples/Attributes.hs" 854 1 854 1 , SrcSpan "tests/examples/Attributes.hs" 855 1 855 1 , SrcSpan "tests/examples/Attributes.hs" 856 1 856 1 , SrcSpan "tests/examples/Attributes.hs" 857 1 857 1 , SrcSpan "tests/examples/Attributes.hs" 858 1 858 1 , SrcSpan "tests/examples/Attributes.hs" 859 1 859 1 , SrcSpan "tests/examples/Attributes.hs" 860 1 860 1 , SrcSpan "tests/examples/Attributes.hs" 861 1 861 1 , SrcSpan "tests/examples/Attributes.hs" 862 1 862 1 , SrcSpan "tests/examples/Attributes.hs" 863 1 863 1 , SrcSpan "tests/examples/Attributes.hs" 864 1 864 1 , SrcSpan "tests/examples/Attributes.hs" 865 1 865 1 , SrcSpan "tests/examples/Attributes.hs" 866 1 866 1 , SrcSpan "tests/examples/Attributes.hs" 867 1 867 1 , SrcSpan "tests/examples/Attributes.hs" 868 1 868 1 , SrcSpan "tests/examples/Attributes.hs" 906 1 906 1 , SrcSpan "tests/examples/Attributes.hs" 915 1 915 1 , SrcSpan "tests/examples/Attributes.hs" 918 1 918 1 , SrcSpan "tests/examples/Attributes.hs" 923 1 923 1 , SrcSpan "tests/examples/Attributes.hs" 947 1 947 1 , SrcSpan "tests/examples/Attributes.hs" 950 1 950 1 , SrcSpan "tests/examples/Attributes.hs" 951 1 951 1 , SrcSpan "tests/examples/Attributes.hs" 952 1 952 1 , SrcSpan "tests/examples/Attributes.hs" 954 1 954 1 , SrcSpan "tests/examples/Attributes.hs" 955 1 955 1 , SrcSpan "tests/examples/Attributes.hs" 956 1 956 1 , SrcSpan "tests/examples/Attributes.hs" 957 1 957 1 , SrcSpan "tests/examples/Attributes.hs" 959 1 959 1 , SrcSpan "tests/examples/Attributes.hs" 960 1 960 1 , SrcSpan "tests/examples/Attributes.hs" 962 1 962 1 , SrcSpan "tests/examples/Attributes.hs" 963 1 963 1 , SrcSpan "tests/examples/Attributes.hs" 964 1 964 1 , SrcSpan "tests/examples/Attributes.hs" 965 1 965 1 , SrcSpan "tests/examples/Attributes.hs" 967 1 967 1 , SrcSpan "tests/examples/Attributes.hs" 968 1 968 1 , SrcSpan "tests/examples/Attributes.hs" 969 1 969 1 , SrcSpan "tests/examples/Attributes.hs" 970 1 970 1 , SrcSpan "tests/examples/Attributes.hs" 971 1 971 1 , SrcSpan "tests/examples/Attributes.hs" 972 1 972 1 , SrcSpan "tests/examples/Attributes.hs" 973 1 973 1 , SrcSpan "tests/examples/Attributes.hs" 974 1 974 1 , SrcSpan "tests/examples/Attributes.hs" 975 1 975 1 , SrcSpan "tests/examples/Attributes.hs" 977 1 977 1 , SrcSpan "tests/examples/Attributes.hs" 982 1 982 1 , SrcSpan "tests/examples/Attributes.hs" 990 1 990 1 , SrcSpan "tests/examples/Attributes.hs" 991 1 991 1 , SrcSpan "tests/examples/Attributes.hs" 998 1 998 1 , SrcSpan "tests/examples/Attributes.hs" 1009 1 1009 1 , SrcSpan "tests/examples/Attributes.hs" 1020 1 1020 1 , SrcSpan "tests/examples/Attributes.hs" 1033 1 1033 1 , SrcSpan "tests/examples/Attributes.hs" 1039 1 1039 1 , SrcSpan "tests/examples/Attributes.hs" 1040 1 1040 1 , SrcSpan "tests/examples/Attributes.hs" 1043 1 1043 1 , SrcSpan "tests/examples/Attributes.hs" 1044 1 1044 1 , SrcSpan "tests/examples/Attributes.hs" 1046 1 1046 1 , SrcSpan "tests/examples/Attributes.hs" 1049 1 1049 1 , SrcSpan "tests/examples/Attributes.hs" 1054 1 1054 1 , SrcSpan "tests/examples/Attributes.hs" 1058 1 1058 1 , SrcSpan "tests/examples/Attributes.hs" 1062 1 1062 1 , SrcSpan "tests/examples/Attributes.hs" 1071 1 1071 1 , SrcSpan "tests/examples/Attributes.hs" 1076 1 1076 1 , SrcSpan "tests/examples/Attributes.hs" 1081 1 1081 1 , SrcSpan "tests/examples/Attributes.hs" 1093 1 1093 1 , SrcSpan "tests/examples/Attributes.hs" 1097 1 1097 1 , SrcSpan "tests/examples/Attributes.hs" 1104 1 1104 1 , SrcSpan "tests/examples/Attributes.hs" 1116 1 1116 1 , SrcSpan "tests/examples/Attributes.hs" 1119 1 1119 1 , SrcSpan "tests/examples/Attributes.hs" 1124 1 1124 1 , SrcSpan "tests/examples/Attributes.hs" 1131 1 1131 1 , SrcSpan "tests/examples/Attributes.hs" 1136 1 1136 1 , SrcSpan "tests/examples/Attributes.hs" 1143 1 1143 1 , SrcSpan "tests/examples/Attributes.hs" 1151 1 1151 1 , SrcSpan "tests/examples/Attributes.hs" 1154 1 1154 1 , SrcSpan "tests/examples/Attributes.hs" 1160 1 1160 1 , SrcSpan "tests/examples/Attributes.hs" 1170 1 1170 1 , SrcSpan "tests/examples/Attributes.hs" 1175 1 1175 1 , SrcSpan "tests/examples/Attributes.hs" 1180 1 1180 1 , SrcSpan "tests/examples/Attributes.hs" 1188 1 1188 1 , SrcSpan "tests/examples/Attributes.hs" 1192 1 1192 1 , SrcSpan "tests/examples/Attributes.hs" 1199 1 1199 1 , SrcSpan "tests/examples/Attributes.hs" 1210 1 1210 1 , SrcSpan "tests/examples/Attributes.hs" 1216 1 1216 1 , SrcSpan "tests/examples/Attributes.hs" 1222 1 1222 1 , SrcSpan "tests/examples/Attributes.hs" 1231 1 1231 1 , SrcSpan "tests/examples/Attributes.hs" 1236 1 1236 1 , SrcSpan "tests/examples/Attributes.hs" 1241 1 1241 1 , SrcSpan "tests/examples/Attributes.hs" 1249 1 1249 1 , SrcSpan "tests/examples/Attributes.hs" 1253 1 1253 1 , SrcSpan "tests/examples/Attributes.hs" 1260 1 1260 1 , SrcSpan "tests/examples/Attributes.hs" 1271 1 1271 1 , SrcSpan "tests/examples/Attributes.hs" 1275 1 1275 1 , SrcSpan "tests/examples/Attributes.hs" 1285 1 1285 1 , SrcSpan "tests/examples/Attributes.hs" 1307 1 1307 1 , SrcSpan "tests/examples/Attributes.hs" 1317 1 1317 1 , SrcSpan "tests/examples/Attributes.hs" 1327 1 1327 1 , SrcSpan "tests/examples/Attributes.hs" 1340 1 1340 1 , SrcSpan "tests/examples/Attributes.hs" 1344 1 1344 1 , SrcSpan "tests/examples/Attributes.hs" 1351 1 1351 1 , SrcSpan "tests/examples/Attributes.hs" 1368 1 1368 1 , SrcSpan "tests/examples/Attributes.hs" 1369 1 1369 1 , SrcSpan "tests/examples/Attributes.hs" 1372 1 1372 1 , SrcSpan "tests/examples/Attributes.hs" 1373 1 1373 1 , SrcSpan "tests/examples/Attributes.hs" 1375 1 1375 1 , SrcSpan "tests/examples/Attributes.hs" 1376 1 1376 1 , SrcSpan "tests/examples/Attributes.hs" 1379 1 1379 1 , SrcSpan "tests/examples/Attributes.hs" 1380 1 1380 1 , SrcSpan "tests/examples/Attributes.hs" 1384 1 1384 1 , SrcSpan "tests/examples/Attributes.hs" 1385 1 1385 1 , SrcSpan "tests/examples/Attributes.hs" 1389 1 1389 1 , SrcSpan "tests/examples/Attributes.hs" 1394 1 1394 1 , SrcSpan "tests/examples/Attributes.hs" 1403 1 1403 1 , SrcSpan "tests/examples/Attributes.hs" 1410 1 1410 1 , SrcSpan "tests/examples/Attributes.hs" 1411 1 1411 1 , SrcSpan "tests/examples/Attributes.hs" 1420 1 1420 1 , SrcSpan "tests/examples/Attributes.hs" 1423 1 1423 1 , SrcSpan "tests/examples/Attributes.hs" 1432 1 1432 1 , SrcSpan "tests/examples/Attributes.hs" 1445 1 1445 1 , SrcSpan "tests/examples/Attributes.hs" 1448 1 1448 1 , SrcSpan "tests/examples/Attributes.hs" 1453 1 1453 1 , SrcSpan "tests/examples/Attributes.hs" 1461 1 1461 1 , SrcSpan "tests/examples/Attributes.hs" 1466 1 1466 1 , SrcSpan "tests/examples/Attributes.hs" 1471 1 1471 1 , SrcSpan "tests/examples/Attributes.hs" 1479 1 1479 1 , SrcSpan "tests/examples/Attributes.hs" 1487 1 1487 1 , SrcSpan "tests/examples/Attributes.hs" 1505 1 1505 1 , SrcSpan "tests/examples/Attributes.hs" 1524 1 1524 1 , SrcSpan "tests/examples/Attributes.hs" 1528 1 1528 1 , SrcSpan "tests/examples/Attributes.hs" 1535 1 1535 1 , SrcSpan "tests/examples/Attributes.hs" 1550 1 1550 1 , SrcSpan "tests/examples/Attributes.hs" 1557 1 1557 1 , SrcSpan "tests/examples/Attributes.hs" 1567 1 1567 1 , SrcSpan "tests/examples/Attributes.hs" 1584 1 1584 1 , SrcSpan "tests/examples/Attributes.hs" 1587 1 1587 1 , SrcSpan "tests/examples/Attributes.hs" 1597 1 1597 1 , SrcSpan "tests/examples/Attributes.hs" 1612 1 1612 1 , SrcSpan "tests/examples/Attributes.hs" 1615 1 1615 1 , SrcSpan "tests/examples/Attributes.hs" 1630 1 1630 1 , SrcSpan "tests/examples/Attributes.hs" 1646 1 1646 1 , SrcSpan "tests/examples/Attributes.hs" 1651 1 1651 1 , SrcSpan "tests/examples/Attributes.hs" 1656 1 1656 1 , SrcSpan "tests/examples/Attributes.hs" 1669 1 1669 1 , SrcSpan "tests/examples/Attributes.hs" 1674 1 1674 1 , SrcSpan "tests/examples/Attributes.hs" 1682 1 1682 1 , SrcSpan "tests/examples/Attributes.hs" 1693 1 1693 1 , SrcSpan "tests/examples/Attributes.hs" 1700 1 1700 1 , SrcSpan "tests/examples/Attributes.hs" 1707 1 1707 1 , SrcSpan "tests/examples/Attributes.hs" 1717 1 1717 1 , SrcSpan "tests/examples/Attributes.hs" 1723 1 1723 1 , SrcSpan "tests/examples/Attributes.hs" 1729 1 1729 1 , SrcSpan "tests/examples/Attributes.hs" 1738 1 1738 1 , SrcSpan "tests/examples/Attributes.hs" 1771 1 1771 1 , SrcSpan "tests/examples/Attributes.hs" 1803 1 1803 1 , SrcSpan "tests/examples/Attributes.hs" 1838 1 1838 1 , SrcSpan "tests/examples/Attributes.hs" 1847 1 1847 1 , SrcSpan "tests/examples/Attributes.hs" 1856 1 1856 1 , SrcSpan "tests/examples/Attributes.hs" 1868 1 1868 1 , SrcSpan "tests/examples/Attributes.hs" 1873 1 1873 1 , SrcSpan "tests/examples/Attributes.hs" 1878 1 1878 1 , SrcSpan "tests/examples/Attributes.hs" 1886 1 1886 1 , SrcSpan "tests/examples/Attributes.hs" 1891 1 1891 1 , SrcSpan "tests/examples/Attributes.hs" 1896 1 1896 1 , SrcSpan "tests/examples/Attributes.hs" 1904 1 1904 1 , SrcSpan "tests/examples/Attributes.hs" 1907 1 1907 1 , SrcSpan "tests/examples/Attributes.hs" 1924 1 1924 1 , SrcSpan "tests/examples/Attributes.hs" 1940 1 1940 1 , SrcSpan "tests/examples/Attributes.hs" 1941 1 1941 1 , SrcSpan "tests/examples/Attributes.hs" 1946 1 1946 1 , SrcSpan "tests/examples/Attributes.hs" 1957 1 1957 1 , SrcSpan "tests/examples/Attributes.hs" 1971 1 1971 1 , SrcSpan "tests/examples/Attributes.hs" 1982 1 1982 1 , SrcSpan "tests/examples/Attributes.hs" 1983 1 1983 1 , SrcSpan "tests/examples/Attributes.hs" 1994 1 1994 1 , SrcSpan "tests/examples/Attributes.hs" 1995 1 1995 1 , SrcSpan "tests/examples/Attributes.hs" 2001 1 2001 1 , SrcSpan "tests/examples/Attributes.hs" 2004 1 2004 1 , SrcSpan "tests/examples/Attributes.hs" 2009 1 2009 1 , SrcSpan "tests/examples/Attributes.hs" 2012 1 2012 1 , SrcSpan "tests/examples/Attributes.hs" 2024 1 2024 1 , SrcSpan "tests/examples/Attributes.hs" 2036 1 2036 1 , SrcSpan "tests/examples/Attributes.hs" 2052 1 2052 1 , SrcSpan "tests/examples/Attributes.hs" 2059 1 2059 1 , SrcSpan "tests/examples/Attributes.hs" 2068 1 2068 1 , SrcSpan "tests/examples/Attributes.hs" 2079 1 2079 1 , SrcSpan "tests/examples/Attributes.hs" 2083 1 2083 1 , SrcSpan "tests/examples/Attributes.hs" 2090 1 2090 1 , SrcSpan "tests/examples/Attributes.hs" 2101 1 2101 1 , SrcSpan "tests/examples/Attributes.hs" 2106 1 2106 1 , SrcSpan "tests/examples/Attributes.hs" 2111 1 2111 1 , SrcSpan "tests/examples/Attributes.hs" 2119 1 2119 1 , SrcSpan "tests/examples/Attributes.hs" 2126 1 2126 1 , SrcSpan "tests/examples/Attributes.hs" 2133 1 2133 1 , SrcSpan "tests/examples/Attributes.hs" 2143 1 2143 1 , SrcSpan "tests/examples/Attributes.hs" 2148 1 2148 1 , SrcSpan "tests/examples/Attributes.hs" 2153 1 2153 1 , SrcSpan "tests/examples/Attributes.hs" 2161 1 2161 1 , SrcSpan "tests/examples/Attributes.hs" 2168 1 2168 1 , SrcSpan "tests/examples/Attributes.hs" 2175 1 2175 1 , SrcSpan "tests/examples/Attributes.hs" 2182 1 2182 1 , SrcSpan "tests/examples/Attributes.hs" 2182 1 2182 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 75 1 163 12 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 75 1 75 7 , SrcSpan "tests/examples/Attributes.hs" 163 7 163 12 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 75 8 75 32 , srcInfoPoints = [] } "Data.GraphViz.Attributes") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 76 5 163 6 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 76 5 76 6 , SrcSpan "tests/examples/Attributes.hs" 78 5 78 6 , SrcSpan "tests/examples/Attributes.hs" 80 5 80 6 , SrcSpan "tests/examples/Attributes.hs" 81 5 81 6 , SrcSpan "tests/examples/Attributes.hs" 82 5 82 6 , SrcSpan "tests/examples/Attributes.hs" 83 5 83 6 , SrcSpan "tests/examples/Attributes.hs" 84 5 84 6 , SrcSpan "tests/examples/Attributes.hs" 86 5 86 6 , SrcSpan "tests/examples/Attributes.hs" 87 5 87 6 , SrcSpan "tests/examples/Attributes.hs" 88 5 88 6 , SrcSpan "tests/examples/Attributes.hs" 89 5 89 6 , SrcSpan "tests/examples/Attributes.hs" 90 5 90 6 , SrcSpan "tests/examples/Attributes.hs" 91 5 91 6 , SrcSpan "tests/examples/Attributes.hs" 92 5 92 6 , SrcSpan "tests/examples/Attributes.hs" 93 5 93 6 , SrcSpan "tests/examples/Attributes.hs" 94 5 94 6 , SrcSpan "tests/examples/Attributes.hs" 95 5 95 6 , SrcSpan "tests/examples/Attributes.hs" 96 5 96 6 , SrcSpan "tests/examples/Attributes.hs" 97 5 97 6 , SrcSpan "tests/examples/Attributes.hs" 98 5 98 6 , SrcSpan "tests/examples/Attributes.hs" 99 5 99 6 , SrcSpan "tests/examples/Attributes.hs" 100 5 100 6 , SrcSpan "tests/examples/Attributes.hs" 101 5 101 6 , SrcSpan "tests/examples/Attributes.hs" 102 5 102 6 , SrcSpan "tests/examples/Attributes.hs" 103 5 103 6 , SrcSpan "tests/examples/Attributes.hs" 104 5 104 6 , SrcSpan "tests/examples/Attributes.hs" 105 5 105 6 , SrcSpan "tests/examples/Attributes.hs" 106 5 106 6 , SrcSpan "tests/examples/Attributes.hs" 107 5 107 6 , SrcSpan "tests/examples/Attributes.hs" 108 5 108 6 , SrcSpan "tests/examples/Attributes.hs" 109 5 109 6 , SrcSpan "tests/examples/Attributes.hs" 110 5 110 6 , SrcSpan "tests/examples/Attributes.hs" 111 5 111 6 , SrcSpan "tests/examples/Attributes.hs" 112 5 112 6 , SrcSpan "tests/examples/Attributes.hs" 113 5 113 6 , SrcSpan "tests/examples/Attributes.hs" 114 5 114 6 , SrcSpan "tests/examples/Attributes.hs" 115 5 115 6 , SrcSpan "tests/examples/Attributes.hs" 116 5 116 6 , SrcSpan "tests/examples/Attributes.hs" 117 5 117 6 , SrcSpan "tests/examples/Attributes.hs" 118 5 118 6 , SrcSpan "tests/examples/Attributes.hs" 119 5 119 6 , SrcSpan "tests/examples/Attributes.hs" 120 5 120 6 , SrcSpan "tests/examples/Attributes.hs" 121 5 121 6 , SrcSpan "tests/examples/Attributes.hs" 122 5 122 6 , SrcSpan "tests/examples/Attributes.hs" 123 5 123 6 , SrcSpan "tests/examples/Attributes.hs" 124 5 124 6 , SrcSpan "tests/examples/Attributes.hs" 125 5 125 6 , SrcSpan "tests/examples/Attributes.hs" 126 5 126 6 , SrcSpan "tests/examples/Attributes.hs" 127 5 127 6 , SrcSpan "tests/examples/Attributes.hs" 128 5 128 6 , SrcSpan "tests/examples/Attributes.hs" 130 5 130 6 , SrcSpan "tests/examples/Attributes.hs" 131 5 131 6 , SrcSpan "tests/examples/Attributes.hs" 132 5 132 6 , SrcSpan "tests/examples/Attributes.hs" 133 5 133 6 , SrcSpan "tests/examples/Attributes.hs" 136 5 136 6 , SrcSpan "tests/examples/Attributes.hs" 137 5 137 6 , SrcSpan "tests/examples/Attributes.hs" 138 5 138 6 , SrcSpan "tests/examples/Attributes.hs" 139 5 139 6 , SrcSpan "tests/examples/Attributes.hs" 140 5 140 6 , SrcSpan "tests/examples/Attributes.hs" 141 5 141 6 , SrcSpan "tests/examples/Attributes.hs" 142 5 142 6 , SrcSpan "tests/examples/Attributes.hs" 143 5 143 6 , SrcSpan "tests/examples/Attributes.hs" 144 5 144 6 , SrcSpan "tests/examples/Attributes.hs" 146 5 146 6 , SrcSpan "tests/examples/Attributes.hs" 147 5 147 6 , SrcSpan "tests/examples/Attributes.hs" 148 5 148 6 , SrcSpan "tests/examples/Attributes.hs" 149 5 149 6 , SrcSpan "tests/examples/Attributes.hs" 150 5 150 6 , SrcSpan "tests/examples/Attributes.hs" 152 5 152 6 , SrcSpan "tests/examples/Attributes.hs" 153 5 153 6 , SrcSpan "tests/examples/Attributes.hs" 154 5 154 6 , SrcSpan "tests/examples/Attributes.hs" 155 5 155 6 , SrcSpan "tests/examples/Attributes.hs" 156 5 156 6 , SrcSpan "tests/examples/Attributes.hs" 158 5 158 6 , SrcSpan "tests/examples/Attributes.hs" 159 5 159 6 , SrcSpan "tests/examples/Attributes.hs" 161 5 161 6 , SrcSpan "tests/examples/Attributes.hs" 162 5 162 6 , SrcSpan "tests/examples/Attributes.hs" 163 5 163 6 ] } [ EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 77 7 77 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 77 16 77 17 , SrcSpan "tests/examples/Attributes.hs" 77 19 77 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 77 17 77 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 77 7 77 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 77 7 77 16 , srcInfoPoints = [] } "Attribute")) [] , EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 78 7 78 17 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 78 7 78 17 , srcInfoPoints = [] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 78 7 78 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 78 7 78 17 , srcInfoPoints = [] } "Attributes")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 80 7 80 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 80 7 80 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 80 7 80 19 , srcInfoPoints = [] } "usedByGraphs")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 81 7 81 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 81 7 81 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 81 7 81 22 , srcInfoPoints = [] } "usedBySubGraphs")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 82 7 82 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 82 7 82 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 82 7 82 21 , srcInfoPoints = [] } "usedByClusters")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 83 7 83 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 83 7 83 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 83 7 83 18 , srcInfoPoints = [] } "usedByNodes")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 84 7 84 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 84 7 84 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 84 7 84 18 , srcInfoPoints = [] } "usedByEdges")) , EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 86 7 86 16 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 86 7 86 16 , srcInfoPoints = [] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 86 7 86 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 86 7 86 16 , srcInfoPoints = [] } "EscString")) , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 87 7 87 14 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 87 10 87 11 , SrcSpan "tests/examples/Attributes.hs" 87 13 87 14 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 87 11 87 13 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 87 7 87 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 87 7 87 10 , srcInfoPoints = [] } "URL")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 88 7 88 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 88 16 88 17 , SrcSpan "tests/examples/Attributes.hs" 88 19 88 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 88 17 88 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 88 7 88 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 88 7 88 16 , srcInfoPoints = [] } "ArrowType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 89 7 89 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 89 17 89 18 , SrcSpan "tests/examples/Attributes.hs" 89 20 89 21 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 89 18 89 20 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 89 7 89 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 89 7 89 17 , srcInfoPoints = [] } "AspectType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 90 7 90 15 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 90 11 90 12 , SrcSpan "tests/examples/Attributes.hs" 90 14 90 15 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 90 12 90 14 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 90 7 90 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 90 7 90 11 , srcInfoPoints = [] } "Rect")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 91 7 91 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 91 18 91 19 , SrcSpan "tests/examples/Attributes.hs" 91 21 91 22 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 91 19 91 21 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 91 7 91 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 91 7 91 18 , srcInfoPoints = [] } "ClusterMode")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 92 7 92 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 92 14 92 15 , SrcSpan "tests/examples/Attributes.hs" 92 17 92 18 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 92 15 92 17 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 92 7 92 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 92 7 92 14 , srcInfoPoints = [] } "DirType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 93 7 93 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 93 20 93 21 , SrcSpan "tests/examples/Attributes.hs" 93 23 93 24 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 93 21 93 23 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 93 7 93 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 93 7 93 20 , srcInfoPoints = [] } "DEConstraints")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 94 7 94 17 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 94 13 94 14 , SrcSpan "tests/examples/Attributes.hs" 94 16 94 17 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 94 14 94 16 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 94 7 94 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 94 7 94 13 , srcInfoPoints = [] } "DPoint")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 95 7 95 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 95 15 95 16 , SrcSpan "tests/examples/Attributes.hs" 95 18 95 19 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 95 16 95 18 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 95 7 95 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 95 7 95 15 , srcInfoPoints = [] } "ModeType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 96 7 96 16 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 96 12 96 13 , SrcSpan "tests/examples/Attributes.hs" 96 15 96 16 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 96 13 96 15 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 96 7 96 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 96 7 96 12 , srcInfoPoints = [] } "Model")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 97 7 97 16 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 97 12 97 13 , SrcSpan "tests/examples/Attributes.hs" 97 15 97 16 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 97 13 97 15 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 97 7 97 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 97 7 97 12 , srcInfoPoints = [] } "Label")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 98 7 98 16 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 98 12 98 13 , SrcSpan "tests/examples/Attributes.hs" 98 15 98 16 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 98 13 98 15 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 98 7 98 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 98 7 98 12 , srcInfoPoints = [] } "Point")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 99 7 99 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 99 14 99 15 , SrcSpan "tests/examples/Attributes.hs" 99 17 99 18 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 99 15 99 17 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 99 7 99 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 99 7 99 14 , srcInfoPoints = [] } "Overlap")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 100 7 100 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 100 17 100 18 , SrcSpan "tests/examples/Attributes.hs" 100 20 100 21 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 100 18 100 20 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 100 7 100 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 100 7 100 17 , srcInfoPoints = [] } "LayerRange")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 101 7 101 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 101 14 101 15 , SrcSpan "tests/examples/Attributes.hs" 101 17 101 18 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 101 15 101 17 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 101 7 101 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 101 7 101 14 , srcInfoPoints = [] } "LayerID")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 102 7 102 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 102 16 102 17 , SrcSpan "tests/examples/Attributes.hs" 102 19 102 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 102 17 102 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 102 7 102 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 102 7 102 16 , srcInfoPoints = [] } "LayerList")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 103 7 103 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 103 17 103 18 , SrcSpan "tests/examples/Attributes.hs" 103 20 103 21 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 103 18 103 20 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 103 7 103 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 103 7 103 17 , srcInfoPoints = [] } "OutputMode")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 104 7 104 15 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 104 11 104 12 , SrcSpan "tests/examples/Attributes.hs" 104 14 104 15 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 104 12 104 14 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 104 7 104 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 104 7 104 11 , srcInfoPoints = [] } "Pack")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 105 7 105 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 105 15 105 16 , SrcSpan "tests/examples/Attributes.hs" 105 18 105 19 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 105 16 105 18 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 105 7 105 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 105 7 105 15 , srcInfoPoints = [] } "PackMode")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 106 7 106 14 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 106 10 106 11 , SrcSpan "tests/examples/Attributes.hs" 106 13 106 14 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 106 11 106 13 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 106 7 106 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 106 7 106 10 , srcInfoPoints = [] } "Pos")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 107 7 107 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 107 15 107 16 , SrcSpan "tests/examples/Attributes.hs" 107 18 107 19 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 107 16 107 18 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 107 7 107 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 107 7 107 15 , srcInfoPoints = [] } "EdgeType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 108 7 108 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 108 14 108 15 , SrcSpan "tests/examples/Attributes.hs" 108 17 108 18 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 108 15 108 17 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 108 7 108 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 108 7 108 14 , srcInfoPoints = [] } "PageDir")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 109 7 109 17 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 109 13 109 14 , SrcSpan "tests/examples/Attributes.hs" 109 16 109 17 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 109 14 109 16 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 109 7 109 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 109 7 109 13 , srcInfoPoints = [] } "Spline")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 110 7 110 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 110 15 110 16 , SrcSpan "tests/examples/Attributes.hs" 110 18 110 19 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 110 16 110 18 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 110 7 110 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 110 7 110 15 , srcInfoPoints = [] } "QuadType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 111 7 111 15 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 111 11 111 12 , SrcSpan "tests/examples/Attributes.hs" 111 14 111 15 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 111 12 111 14 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 111 7 111 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 111 7 111 11 , srcInfoPoints = [] } "Root")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 112 7 112 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 112 15 112 16 , SrcSpan "tests/examples/Attributes.hs" 112 18 112 19 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 112 16 112 18 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 112 7 112 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 112 7 112 15 , srcInfoPoints = [] } "RankType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 113 7 113 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 113 14 113 15 , SrcSpan "tests/examples/Attributes.hs" 113 17 113 18 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 113 15 113 17 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 113 7 113 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 113 7 113 14 , srcInfoPoints = [] } "RankDir")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 114 7 114 16 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 114 12 114 13 , SrcSpan "tests/examples/Attributes.hs" 114 15 114 16 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 114 13 114 15 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 114 7 114 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 114 7 114 12 , srcInfoPoints = [] } "Shape")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 115 7 115 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 115 17 115 18 , SrcSpan "tests/examples/Attributes.hs" 115 20 115 21 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 115 18 115 20 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 115 7 115 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 115 7 115 17 , srcInfoPoints = [] } "SmoothType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 116 7 116 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 116 16 116 17 , SrcSpan "tests/examples/Attributes.hs" 116 19 116 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 116 17 116 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 116 7 116 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 116 7 116 16 , srcInfoPoints = [] } "StartType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 117 7 117 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 117 14 117 15 , SrcSpan "tests/examples/Attributes.hs" 117 17 117 18 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 117 15 117 17 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 117 7 117 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 117 7 117 14 , srcInfoPoints = [] } "STStyle")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 118 7 118 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 118 16 118 17 , SrcSpan "tests/examples/Attributes.hs" 118 19 118 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 118 17 118 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 118 7 118 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 118 7 118 16 , srcInfoPoints = [] } "StyleItem")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 119 7 119 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 119 16 119 17 , SrcSpan "tests/examples/Attributes.hs" 119 19 119 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 119 17 119 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 119 7 119 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 119 7 119 16 , srcInfoPoints = [] } "StyleName")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 120 7 120 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 120 14 120 15 , SrcSpan "tests/examples/Attributes.hs" 120 17 120 18 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 120 15 120 17 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 120 7 120 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 120 7 120 14 , srcInfoPoints = [] } "PortPos")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 121 7 121 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 121 19 121 20 , SrcSpan "tests/examples/Attributes.hs" 121 22 121 23 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 121 20 121 22 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 121 7 121 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 121 7 121 19 , srcInfoPoints = [] } "CompassPoint")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 122 7 122 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 122 15 122 16 , SrcSpan "tests/examples/Attributes.hs" 122 18 122 19 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 122 16 122 18 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 122 7 122 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 122 7 122 15 , srcInfoPoints = [] } "ViewPort")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 123 7 123 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 123 16 123 17 , SrcSpan "tests/examples/Attributes.hs" 123 19 123 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 123 17 123 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 123 7 123 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 123 7 123 16 , srcInfoPoints = [] } "FocusType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 124 7 124 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 124 24 124 25 , SrcSpan "tests/examples/Attributes.hs" 124 27 124 28 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 124 25 124 27 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 124 7 124 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 124 7 124 24 , srcInfoPoints = [] } "VerticalPlacement")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 125 7 125 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 125 16 125 17 , SrcSpan "tests/examples/Attributes.hs" 125 19 125 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 125 17 125 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 125 7 125 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 125 7 125 16 , srcInfoPoints = [] } "ScaleType")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 126 7 126 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 126 20 126 21 , SrcSpan "tests/examples/Attributes.hs" 126 23 126 24 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 126 21 126 23 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 126 7 126 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 126 7 126 20 , srcInfoPoints = [] } "Justification")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 127 7 127 17 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 127 13 127 14 , SrcSpan "tests/examples/Attributes.hs" 127 16 127 17 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 127 14 127 16 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 127 7 127 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 127 7 127 13 , srcInfoPoints = [] } "Ratios")) [] , EModuleContents SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 128 7 128 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 128 7 128 13 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 128 14 128 45 , srcInfoPoints = [] } "Data.GraphViz.Attributes.Colors") , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 130 7 130 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 130 17 130 18 , SrcSpan "tests/examples/Attributes.hs" 130 20 130 21 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 130 18 130 20 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 130 7 130 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 130 7 130 17 , srcInfoPoints = [] } "ArrowShape")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 131 7 131 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 131 20 131 21 , SrcSpan "tests/examples/Attributes.hs" 131 23 131 24 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 131 21 131 23 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 131 7 131 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 131 7 131 20 , srcInfoPoints = [] } "ArrowModifier")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 132 7 132 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 132 16 132 17 , SrcSpan "tests/examples/Attributes.hs" 132 19 132 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 132 17 132 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 132 7 132 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 132 7 132 16 , srcInfoPoints = [] } "ArrowFill")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 133 7 133 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 133 16 133 17 , SrcSpan "tests/examples/Attributes.hs" 133 19 133 20 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 133 17 133 19 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 133 7 133 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 133 7 133 16 , srcInfoPoints = [] } "ArrowSide")) [] , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 136 7 136 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 136 7 136 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 136 7 136 10 , srcInfoPoints = [] } "box")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 137 7 137 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 137 7 137 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 137 7 137 11 , srcInfoPoints = [] } "crow")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 138 7 138 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 138 7 138 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 138 7 138 14 , srcInfoPoints = [] } "diamond")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 139 7 139 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 139 7 139 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 139 7 139 15 , srcInfoPoints = [] } "dotArrow")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 140 7 140 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 140 7 140 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 140 7 140 10 , srcInfoPoints = [] } "inv")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 141 7 141 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 141 7 141 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 141 7 141 14 , srcInfoPoints = [] } "noArrow")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 142 7 142 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 142 7 142 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 142 7 142 13 , srcInfoPoints = [] } "normal")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 143 7 143 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 143 7 143 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 143 7 143 10 , srcInfoPoints = [] } "tee")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 144 7 144 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 144 7 144 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 144 7 144 10 , srcInfoPoints = [] } "vee")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 146 7 146 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 146 7 146 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 146 7 146 11 , srcInfoPoints = [] } "oDot")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 147 7 147 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 147 7 147 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 147 7 147 13 , srcInfoPoints = [] } "invDot")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 148 7 148 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 148 7 148 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 148 7 148 14 , srcInfoPoints = [] } "invODot")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 149 7 149 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 149 7 149 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 149 7 149 11 , srcInfoPoints = [] } "oBox")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 150 7 150 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 150 7 150 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 150 7 150 15 , srcInfoPoints = [] } "oDiamond")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 152 7 152 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 152 7 152 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 152 7 152 15 , srcInfoPoints = [] } "eDiamond")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 153 7 153 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 153 7 153 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 153 7 153 14 , srcInfoPoints = [] } "openArr")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 154 7 154 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 154 7 154 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 154 7 154 15 , srcInfoPoints = [] } "halfOpen")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 155 7 155 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 155 7 155 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 155 7 155 15 , srcInfoPoints = [] } "emptyArr")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 156 7 156 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 156 7 156 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 156 7 156 15 , srcInfoPoints = [] } "invEmpty")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 158 7 158 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 158 7 158 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 158 7 158 13 , srcInfoPoints = [] } "noMods")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 159 7 159 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 159 7 159 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 159 7 159 14 , srcInfoPoints = [] } "openMod")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 161 7 161 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 161 7 161 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 161 7 161 18 , srcInfoPoints = [] } "defLayerSep")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 162 7 162 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 162 7 162 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 162 7 162 18 , srcInfoPoints = [] } "notLayerSep")) ])))) [] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 165 1 165 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 165 1 165 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 165 8 165 39 , srcInfoPoints = [] } "Data.GraphViz.Attributes.Colors" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 166 1 166 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 166 1 166 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 166 8 166 26 , srcInfoPoints = [] } "Data.GraphViz.Util" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 167 1 167 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 167 1 167 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 167 8 167 29 , srcInfoPoints = [] } "Data.GraphViz.Parsing" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 168 1 168 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 168 1 168 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 168 8 168 30 , srcInfoPoints = [] } "Data.GraphViz.Printing" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 170 1 170 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 170 1 170 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 170 8 170 17 , srcInfoPoints = [] } "Data.Char" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 170 17 170 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 170 17 170 18 , SrcSpan "tests/examples/Attributes.hs" 170 25 170 26 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 170 18 170 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 170 18 170 25 , srcInfoPoints = [] } "toLower") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 171 1 171 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 171 1 171 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 171 8 171 18 , srcInfoPoints = [] } "Data.Maybe" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 171 18 171 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 171 18 171 19 , SrcSpan "tests/examples/Attributes.hs" 171 25 171 26 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 171 19 171 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 171 19 171 25 , srcInfoPoints = [] } "isJust") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 172 1 172 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 172 1 172 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 172 8 172 21 , srcInfoPoints = [] } "Control.Arrow" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 172 21 172 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 172 21 172 22 , SrcSpan "tests/examples/Attributes.hs" 172 27 172 28 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 172 22 172 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 172 22 172 27 , srcInfoPoints = [] } "first") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 173 1 173 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 173 1 173 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 173 8 173 21 , srcInfoPoints = [] } "Control.Monad" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 173 21 173 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 173 21 173 22 , SrcSpan "tests/examples/Attributes.hs" 173 27 173 28 , SrcSpan "tests/examples/Attributes.hs" 173 35 173 36 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 173 22 173 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 173 22 173 27 , srcInfoPoints = [] } "liftM") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 173 29 173 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 173 29 173 35 , srcInfoPoints = [] } "liftM2") ]) } ] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 204 1 349 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 205 5 205 6 , SrcSpan "tests/examples/Attributes.hs" 206 5 206 6 , SrcSpan "tests/examples/Attributes.hs" 207 5 207 6 , SrcSpan "tests/examples/Attributes.hs" 208 5 208 6 , SrcSpan "tests/examples/Attributes.hs" 209 5 209 6 , SrcSpan "tests/examples/Attributes.hs" 210 5 210 6 , SrcSpan "tests/examples/Attributes.hs" 211 5 211 6 , SrcSpan "tests/examples/Attributes.hs" 212 5 212 6 , SrcSpan "tests/examples/Attributes.hs" 213 5 213 6 , SrcSpan "tests/examples/Attributes.hs" 214 5 214 6 , SrcSpan "tests/examples/Attributes.hs" 215 5 215 6 , SrcSpan "tests/examples/Attributes.hs" 216 5 216 6 , SrcSpan "tests/examples/Attributes.hs" 217 5 217 6 , SrcSpan "tests/examples/Attributes.hs" 218 5 218 6 , SrcSpan "tests/examples/Attributes.hs" 219 5 219 6 , SrcSpan "tests/examples/Attributes.hs" 220 5 220 6 , SrcSpan "tests/examples/Attributes.hs" 221 5 221 6 , SrcSpan "tests/examples/Attributes.hs" 222 5 222 6 , SrcSpan "tests/examples/Attributes.hs" 223 5 223 6 , SrcSpan "tests/examples/Attributes.hs" 224 5 224 6 , SrcSpan "tests/examples/Attributes.hs" 225 5 225 6 , SrcSpan "tests/examples/Attributes.hs" 226 5 226 6 , SrcSpan "tests/examples/Attributes.hs" 227 5 227 6 , SrcSpan "tests/examples/Attributes.hs" 228 5 228 6 , SrcSpan "tests/examples/Attributes.hs" 229 5 229 6 , SrcSpan "tests/examples/Attributes.hs" 230 5 230 6 , SrcSpan "tests/examples/Attributes.hs" 231 5 231 6 , SrcSpan "tests/examples/Attributes.hs" 232 5 232 6 , SrcSpan "tests/examples/Attributes.hs" 233 5 233 6 , SrcSpan "tests/examples/Attributes.hs" 234 5 234 6 , SrcSpan "tests/examples/Attributes.hs" 235 5 235 6 , SrcSpan "tests/examples/Attributes.hs" 236 5 236 6 , SrcSpan "tests/examples/Attributes.hs" 237 5 237 6 , SrcSpan "tests/examples/Attributes.hs" 238 5 238 6 , SrcSpan "tests/examples/Attributes.hs" 239 5 239 6 , SrcSpan "tests/examples/Attributes.hs" 240 5 240 6 , SrcSpan "tests/examples/Attributes.hs" 241 5 241 6 , SrcSpan "tests/examples/Attributes.hs" 242 5 242 6 , SrcSpan "tests/examples/Attributes.hs" 243 5 243 6 , SrcSpan "tests/examples/Attributes.hs" 244 5 244 6 , SrcSpan "tests/examples/Attributes.hs" 245 5 245 6 , SrcSpan "tests/examples/Attributes.hs" 246 5 246 6 , SrcSpan "tests/examples/Attributes.hs" 247 5 247 6 , SrcSpan "tests/examples/Attributes.hs" 248 5 248 6 , SrcSpan "tests/examples/Attributes.hs" 249 5 249 6 , SrcSpan "tests/examples/Attributes.hs" 250 5 250 6 , SrcSpan "tests/examples/Attributes.hs" 251 5 251 6 , SrcSpan "tests/examples/Attributes.hs" 252 5 252 6 , SrcSpan "tests/examples/Attributes.hs" 253 5 253 6 , SrcSpan "tests/examples/Attributes.hs" 254 5 254 6 , SrcSpan "tests/examples/Attributes.hs" 255 5 255 6 , SrcSpan "tests/examples/Attributes.hs" 256 5 256 6 , SrcSpan "tests/examples/Attributes.hs" 257 5 257 6 , SrcSpan "tests/examples/Attributes.hs" 258 5 258 6 , SrcSpan "tests/examples/Attributes.hs" 259 5 259 6 , SrcSpan "tests/examples/Attributes.hs" 260 5 260 6 , SrcSpan "tests/examples/Attributes.hs" 261 5 261 6 , SrcSpan "tests/examples/Attributes.hs" 262 5 262 6 , SrcSpan "tests/examples/Attributes.hs" 263 5 263 6 , SrcSpan "tests/examples/Attributes.hs" 264 5 264 6 , SrcSpan "tests/examples/Attributes.hs" 265 5 265 6 , SrcSpan "tests/examples/Attributes.hs" 266 5 266 6 , SrcSpan "tests/examples/Attributes.hs" 267 5 267 6 , SrcSpan "tests/examples/Attributes.hs" 268 5 268 6 , SrcSpan "tests/examples/Attributes.hs" 269 5 269 6 , SrcSpan "tests/examples/Attributes.hs" 270 5 270 6 , SrcSpan "tests/examples/Attributes.hs" 271 5 271 6 , SrcSpan "tests/examples/Attributes.hs" 272 5 272 6 , SrcSpan "tests/examples/Attributes.hs" 273 5 273 6 , SrcSpan "tests/examples/Attributes.hs" 274 5 274 6 , SrcSpan "tests/examples/Attributes.hs" 275 5 275 6 , SrcSpan "tests/examples/Attributes.hs" 276 5 276 6 , SrcSpan "tests/examples/Attributes.hs" 277 5 277 6 , SrcSpan "tests/examples/Attributes.hs" 278 5 278 6 , SrcSpan "tests/examples/Attributes.hs" 279 5 279 6 , SrcSpan "tests/examples/Attributes.hs" 280 5 280 6 , SrcSpan "tests/examples/Attributes.hs" 281 5 281 6 , SrcSpan "tests/examples/Attributes.hs" 282 5 282 6 , SrcSpan "tests/examples/Attributes.hs" 283 5 283 6 , SrcSpan "tests/examples/Attributes.hs" 284 5 284 6 , SrcSpan "tests/examples/Attributes.hs" 285 5 285 6 , SrcSpan "tests/examples/Attributes.hs" 286 5 286 6 , SrcSpan "tests/examples/Attributes.hs" 287 5 287 6 , SrcSpan "tests/examples/Attributes.hs" 288 5 288 6 , SrcSpan "tests/examples/Attributes.hs" 289 5 289 6 , SrcSpan "tests/examples/Attributes.hs" 290 5 290 6 , SrcSpan "tests/examples/Attributes.hs" 291 5 291 6 , SrcSpan "tests/examples/Attributes.hs" 292 5 292 6 , SrcSpan "tests/examples/Attributes.hs" 293 5 293 6 , SrcSpan "tests/examples/Attributes.hs" 294 5 294 6 , SrcSpan "tests/examples/Attributes.hs" 295 5 295 6 , SrcSpan "tests/examples/Attributes.hs" 296 5 296 6 , SrcSpan "tests/examples/Attributes.hs" 297 5 297 6 , SrcSpan "tests/examples/Attributes.hs" 298 5 298 6 , SrcSpan "tests/examples/Attributes.hs" 299 5 299 6 , SrcSpan "tests/examples/Attributes.hs" 300 5 300 6 , SrcSpan "tests/examples/Attributes.hs" 301 5 301 6 , SrcSpan "tests/examples/Attributes.hs" 302 5 302 6 , SrcSpan "tests/examples/Attributes.hs" 303 5 303 6 , SrcSpan "tests/examples/Attributes.hs" 304 5 304 6 , SrcSpan "tests/examples/Attributes.hs" 305 5 305 6 , SrcSpan "tests/examples/Attributes.hs" 306 5 306 6 , SrcSpan "tests/examples/Attributes.hs" 307 5 307 6 , SrcSpan "tests/examples/Attributes.hs" 308 5 308 6 , SrcSpan "tests/examples/Attributes.hs" 309 5 309 6 , SrcSpan "tests/examples/Attributes.hs" 310 5 310 6 , SrcSpan "tests/examples/Attributes.hs" 311 5 311 6 , SrcSpan "tests/examples/Attributes.hs" 312 5 312 6 , SrcSpan "tests/examples/Attributes.hs" 313 5 313 6 , SrcSpan "tests/examples/Attributes.hs" 314 5 314 6 , SrcSpan "tests/examples/Attributes.hs" 315 5 315 6 , SrcSpan "tests/examples/Attributes.hs" 316 5 316 6 , SrcSpan "tests/examples/Attributes.hs" 317 5 317 6 , SrcSpan "tests/examples/Attributes.hs" 318 5 318 6 , SrcSpan "tests/examples/Attributes.hs" 319 5 319 6 , SrcSpan "tests/examples/Attributes.hs" 320 5 320 6 , SrcSpan "tests/examples/Attributes.hs" 321 5 321 6 , SrcSpan "tests/examples/Attributes.hs" 322 5 322 6 , SrcSpan "tests/examples/Attributes.hs" 323 5 323 6 , SrcSpan "tests/examples/Attributes.hs" 324 5 324 6 , SrcSpan "tests/examples/Attributes.hs" 325 5 325 6 , SrcSpan "tests/examples/Attributes.hs" 326 5 326 6 , SrcSpan "tests/examples/Attributes.hs" 327 5 327 6 , SrcSpan "tests/examples/Attributes.hs" 328 5 328 6 , SrcSpan "tests/examples/Attributes.hs" 329 5 329 6 , SrcSpan "tests/examples/Attributes.hs" 330 5 330 6 , SrcSpan "tests/examples/Attributes.hs" 331 5 331 6 , SrcSpan "tests/examples/Attributes.hs" 332 5 332 6 , SrcSpan "tests/examples/Attributes.hs" 333 5 333 6 , SrcSpan "tests/examples/Attributes.hs" 334 5 334 6 , SrcSpan "tests/examples/Attributes.hs" 335 5 335 6 , SrcSpan "tests/examples/Attributes.hs" 336 5 336 6 , SrcSpan "tests/examples/Attributes.hs" 337 5 337 6 , SrcSpan "tests/examples/Attributes.hs" 338 5 338 6 , SrcSpan "tests/examples/Attributes.hs" 339 5 339 6 , SrcSpan "tests/examples/Attributes.hs" 340 5 340 6 , SrcSpan "tests/examples/Attributes.hs" 341 5 341 6 , SrcSpan "tests/examples/Attributes.hs" 342 5 342 6 , SrcSpan "tests/examples/Attributes.hs" 343 5 343 6 , SrcSpan "tests/examples/Attributes.hs" 344 5 344 6 , SrcSpan "tests/examples/Attributes.hs" 345 5 345 6 , SrcSpan "tests/examples/Attributes.hs" 346 5 346 6 , SrcSpan "tests/examples/Attributes.hs" 347 5 347 6 , SrcSpan "tests/examples/Attributes.hs" 348 5 348 6 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 204 1 204 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 204 6 204 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 204 6 204 15 , srcInfoPoints = [] } "Attribute")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 205 7 205 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 205 7 205 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 205 7 205 14 , srcInfoPoints = [] } "Damping") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 205 15 205 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 205 15 205 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 205 15 205 21 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 206 7 206 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 206 7 206 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 206 7 206 8 , srcInfoPoints = [] } "K") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 206 9 206 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 206 9 206 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 206 9 206 15 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 207 7 207 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 207 7 207 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 207 7 207 10 , srcInfoPoints = [] } "URL") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 207 11 207 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 207 11 207 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 207 11 207 14 , srcInfoPoints = [] } "URL")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 208 7 208 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 208 7 208 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 208 7 208 16 , srcInfoPoints = [] } "ArrowHead") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 208 17 208 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 208 17 208 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 208 17 208 26 , srcInfoPoints = [] } "ArrowType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 209 7 209 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 209 7 209 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 209 7 209 16 , srcInfoPoints = [] } "ArrowSize") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 209 17 209 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 209 17 209 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 209 17 209 23 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 210 7 210 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 210 7 210 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 210 7 210 16 , srcInfoPoints = [] } "ArrowTail") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 210 17 210 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 210 17 210 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 210 17 210 26 , srcInfoPoints = [] } "ArrowType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 211 7 211 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 211 7 211 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 211 7 211 13 , srcInfoPoints = [] } "Aspect") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 211 14 211 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 211 14 211 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 211 14 211 24 , srcInfoPoints = [] } "AspectType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 212 7 212 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 212 7 212 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 212 7 212 9 , srcInfoPoints = [] } "Bb") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 212 10 212 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 212 10 212 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 212 10 212 14 , srcInfoPoints = [] } "Rect")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 213 7 213 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 213 7 213 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 213 7 213 14 , srcInfoPoints = [] } "BgColor") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 213 15 213 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 213 15 213 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 213 15 213 20 , srcInfoPoints = [] } "Color")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 214 7 214 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 214 7 214 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 214 7 214 13 , srcInfoPoints = [] } "Center") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 214 14 214 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 214 14 214 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 214 14 214 18 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 215 7 215 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 215 7 215 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 215 7 215 14 , srcInfoPoints = [] } "Charset") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 215 15 215 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 215 15 215 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 215 15 215 21 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 216 7 216 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 216 7 216 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 216 7 216 18 , srcInfoPoints = [] } "ClusterRank") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 216 19 216 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 216 19 216 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 216 19 216 30 , srcInfoPoints = [] } "ClusterMode")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 217 7 217 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 217 7 217 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 217 7 217 18 , srcInfoPoints = [] } "ColorScheme") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 217 19 217 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 217 19 217 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 217 19 217 30 , srcInfoPoints = [] } "ColorScheme")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 218 7 218 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 218 7 218 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 218 7 218 12 , srcInfoPoints = [] } "Color") [ TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 218 13 218 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 218 13 218 14 , SrcSpan "tests/examples/Attributes.hs" 218 19 218 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 218 14 218 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 218 14 218 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 218 14 218 19 , srcInfoPoints = [] } "Color"))) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 219 7 219 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 219 7 219 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 219 7 219 14 , srcInfoPoints = [] } "Comment") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 219 15 219 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 219 15 219 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 219 15 219 21 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 220 7 220 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 220 7 220 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 220 7 220 15 , srcInfoPoints = [] } "Compound") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 220 16 220 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 220 16 220 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 220 16 220 20 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 221 7 221 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 221 7 221 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 221 7 221 18 , srcInfoPoints = [] } "Concentrate") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 221 19 221 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 221 19 221 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 221 19 221 23 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 222 7 222 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 222 7 222 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 222 7 222 17 , srcInfoPoints = [] } "Constraint") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 222 18 222 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 222 18 222 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 222 18 222 22 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 223 7 223 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 223 7 223 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 223 7 223 15 , srcInfoPoints = [] } "Decorate") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 223 16 223 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 223 16 223 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 223 16 223 20 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 224 7 224 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 224 7 224 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 224 7 224 18 , srcInfoPoints = [] } "DefaultDist") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 224 19 224 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 224 19 224 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 224 19 224 25 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 225 7 225 16 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 225 7 225 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 225 7 225 12 , srcInfoPoints = [] } "Dimen") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 225 13 225 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 225 13 225 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 225 13 225 16 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 226 7 226 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 226 7 226 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 226 7 226 10 , srcInfoPoints = [] } "Dim") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 226 11 226 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 226 11 226 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 226 11 226 14 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 227 7 227 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 227 7 227 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 227 7 227 10 , srcInfoPoints = [] } "Dir") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 227 11 227 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 227 11 227 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 227 11 227 18 , srcInfoPoints = [] } "DirType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 228 7 228 39 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 228 7 228 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 228 7 228 25 , srcInfoPoints = [] } "DirEdgeConstraints") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 228 26 228 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 228 26 228 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 228 26 228 39 , srcInfoPoints = [] } "DEConstraints")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 229 7 229 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 229 7 229 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 229 7 229 17 , srcInfoPoints = [] } "Distortion") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 229 18 229 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 229 18 229 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 229 18 229 24 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 230 7 230 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 230 7 230 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 230 7 230 10 , srcInfoPoints = [] } "DPI") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 230 11 230 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 230 11 230 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 230 11 230 17 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 231 7 231 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 231 7 231 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 231 7 231 14 , srcInfoPoints = [] } "EdgeURL") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 231 15 231 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 231 15 231 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 231 15 231 18 , srcInfoPoints = [] } "URL")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 232 7 232 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 232 7 232 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 232 7 232 17 , srcInfoPoints = [] } "EdgeTarget") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 232 18 232 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 232 18 232 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 232 18 232 27 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 233 7 233 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 233 7 233 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 233 7 233 18 , srcInfoPoints = [] } "EdgeTooltip") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 233 19 233 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 233 19 233 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 233 19 233 28 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 234 7 234 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 234 7 234 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 234 7 234 14 , srcInfoPoints = [] } "Epsilon") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 234 15 234 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 234 15 234 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 234 15 234 21 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 235 7 235 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 235 7 235 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 235 7 235 11 , srcInfoPoints = [] } "ESep") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 235 12 235 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 235 12 235 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 235 12 235 18 , srcInfoPoints = [] } "DPoint")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 236 7 236 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 236 7 236 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 236 7 236 16 , srcInfoPoints = [] } "FillColor") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 236 17 236 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 236 17 236 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 236 17 236 22 , srcInfoPoints = [] } "Color")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 237 7 237 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 237 7 237 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 237 7 237 16 , srcInfoPoints = [] } "FixedSize") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 237 17 237 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 237 17 237 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 237 17 237 21 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 238 7 238 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 238 7 238 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 238 7 238 16 , srcInfoPoints = [] } "FontColor") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 238 17 238 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 238 17 238 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 238 17 238 22 , srcInfoPoints = [] } "Color")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 239 7 239 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 239 7 239 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 239 7 239 15 , srcInfoPoints = [] } "FontName") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 239 16 239 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 239 16 239 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 239 16 239 22 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 240 7 240 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 240 7 240 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 240 7 240 16 , srcInfoPoints = [] } "FontNames") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 240 17 240 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 240 17 240 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 240 17 240 23 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 241 7 241 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 241 7 241 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 241 7 241 15 , srcInfoPoints = [] } "FontPath") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 241 16 241 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 241 16 241 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 241 16 241 22 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 242 7 242 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 242 7 242 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 242 7 242 15 , srcInfoPoints = [] } "FontSize") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 242 16 242 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 242 16 242 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 242 16 242 22 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 243 7 243 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 243 7 243 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 243 7 243 12 , srcInfoPoints = [] } "Group") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 243 13 243 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 243 13 243 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 243 13 243 19 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 244 7 244 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 244 7 244 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 244 7 244 14 , srcInfoPoints = [] } "HeadURL") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 244 15 244 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 244 15 244 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 244 15 244 18 , srcInfoPoints = [] } "URL")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 245 7 245 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 245 7 245 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 245 7 245 15 , srcInfoPoints = [] } "HeadClip") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 245 16 245 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 245 16 245 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 245 16 245 20 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 246 7 246 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 246 7 246 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 246 7 246 16 , srcInfoPoints = [] } "HeadLabel") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 246 17 246 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 246 17 246 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 246 17 246 22 , srcInfoPoints = [] } "Label")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 247 7 247 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 247 7 247 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 247 7 247 15 , srcInfoPoints = [] } "HeadPort") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 247 16 247 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 247 16 247 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 247 16 247 23 , srcInfoPoints = [] } "PortPos")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 248 7 248 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 248 7 248 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 248 7 248 17 , srcInfoPoints = [] } "HeadTarget") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 248 18 248 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 248 18 248 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 248 18 248 27 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 249 7 249 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 249 7 249 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 249 7 249 18 , srcInfoPoints = [] } "HeadTooltip") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 249 19 249 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 249 19 249 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 249 19 249 28 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 250 7 250 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 250 7 250 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 250 7 250 13 , srcInfoPoints = [] } "Height") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 250 14 250 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 250 14 250 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 250 14 250 20 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 251 7 251 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 251 7 251 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 251 7 251 9 , srcInfoPoints = [] } "ID") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 251 10 251 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 251 10 251 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 251 10 251 15 , srcInfoPoints = [] } "Label")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 252 7 252 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 252 7 252 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 252 7 252 12 , srcInfoPoints = [] } "Image") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 252 13 252 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 252 13 252 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 252 13 252 19 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 253 7 253 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 253 7 253 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 253 7 253 17 , srcInfoPoints = [] } "ImageScale") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 253 18 253 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 253 18 253 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 253 18 253 27 , srcInfoPoints = [] } "ScaleType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 254 7 254 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 254 7 254 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 254 7 254 15 , srcInfoPoints = [] } "LabelURL") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 254 16 254 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 254 16 254 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 254 16 254 19 , srcInfoPoints = [] } "URL")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 255 7 255 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 255 7 255 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 255 7 255 17 , srcInfoPoints = [] } "LabelAngle") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 255 18 255 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 255 18 255 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 255 18 255 24 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 256 7 256 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 256 7 256 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 256 7 256 20 , srcInfoPoints = [] } "LabelDistance") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 256 21 256 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 256 21 256 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 256 21 256 27 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 257 7 257 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 257 7 257 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 257 7 257 17 , srcInfoPoints = [] } "LabelFloat") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 257 18 257 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 257 18 257 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 257 18 257 22 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 258 7 258 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 258 7 258 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 258 7 258 21 , srcInfoPoints = [] } "LabelFontColor") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 258 22 258 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 258 22 258 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 258 22 258 27 , srcInfoPoints = [] } "Color")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 259 7 259 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 259 7 259 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 259 7 259 20 , srcInfoPoints = [] } "LabelFontName") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 259 21 259 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 259 21 259 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 259 21 259 27 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 260 7 260 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 260 7 260 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 260 7 260 20 , srcInfoPoints = [] } "LabelFontSize") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 260 21 260 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 260 21 260 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 260 21 260 27 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 261 7 261 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 261 7 261 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 261 7 261 16 , srcInfoPoints = [] } "LabelJust") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 261 17 261 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 261 17 261 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 261 17 261 30 , srcInfoPoints = [] } "Justification")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 262 7 262 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 262 7 262 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 262 7 262 15 , srcInfoPoints = [] } "LabelLoc") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 262 16 262 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 262 16 262 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 262 16 262 33 , srcInfoPoints = [] } "VerticalPlacement")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 263 7 263 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 263 7 263 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 263 7 263 18 , srcInfoPoints = [] } "LabelTarget") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 263 19 263 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 263 19 263 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 263 19 263 28 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 264 7 264 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 264 7 264 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 264 7 264 19 , srcInfoPoints = [] } "LabelTooltip") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 264 20 264 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 264 20 264 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 264 20 264 29 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 265 7 265 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 265 7 265 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 265 7 265 12 , srcInfoPoints = [] } "Label") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 265 13 265 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 265 13 265 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 265 13 265 18 , srcInfoPoints = [] } "Label")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 266 7 266 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 266 7 266 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 266 7 266 16 , srcInfoPoints = [] } "Landscape") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 266 17 266 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 266 17 266 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 266 17 266 21 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 267 7 267 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 267 7 267 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 267 7 267 15 , srcInfoPoints = [] } "LayerSep") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 267 16 267 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 267 16 267 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 267 16 267 22 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 268 7 268 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 268 7 268 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 268 7 268 13 , srcInfoPoints = [] } "Layers") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 268 14 268 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 268 14 268 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 268 14 268 23 , srcInfoPoints = [] } "LayerList")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 269 7 269 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 269 7 269 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 269 7 269 12 , srcInfoPoints = [] } "Layer") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 269 13 269 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 269 13 269 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 269 13 269 23 , srcInfoPoints = [] } "LayerRange")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 270 7 270 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 270 7 270 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 270 7 270 13 , srcInfoPoints = [] } "Layout") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 270 14 270 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 270 14 270 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 270 14 270 20 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 271 7 271 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 271 7 271 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 271 7 271 10 , srcInfoPoints = [] } "Len") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 271 11 271 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 271 11 271 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 271 11 271 17 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 272 7 272 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 272 7 272 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 272 7 272 16 , srcInfoPoints = [] } "LevelsGap") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 272 17 272 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 272 17 272 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 272 17 272 23 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 273 7 273 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 273 7 273 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 273 7 273 13 , srcInfoPoints = [] } "Levels") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 273 14 273 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 273 14 273 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 273 14 273 17 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 274 7 274 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 274 7 274 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 274 7 274 12 , srcInfoPoints = [] } "LHead") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 274 13 274 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 274 13 274 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 274 13 274 19 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 275 7 275 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 275 7 275 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 275 7 275 11 , srcInfoPoints = [] } "LPos") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 275 12 275 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 275 12 275 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 275 12 275 17 , srcInfoPoints = [] } "Point")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 276 7 276 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 276 7 276 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 276 7 276 12 , srcInfoPoints = [] } "LTail") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 276 13 276 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 276 13 276 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 276 13 276 19 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 277 7 277 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 277 7 277 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 277 7 277 13 , srcInfoPoints = [] } "Margin") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 277 14 277 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 277 14 277 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 277 14 277 20 , srcInfoPoints = [] } "DPoint")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 278 7 278 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 278 7 278 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 278 7 278 14 , srcInfoPoints = [] } "MaxIter") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 278 15 278 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 278 15 278 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 278 15 278 18 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 279 7 279 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 279 7 279 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 279 7 279 14 , srcInfoPoints = [] } "MCLimit") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 279 15 279 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 279 15 279 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 279 15 279 21 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 280 7 280 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 280 7 280 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 280 7 280 14 , srcInfoPoints = [] } "MinDist") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 280 15 280 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 280 15 280 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 280 15 280 21 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 281 7 281 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 281 7 281 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 281 7 281 13 , srcInfoPoints = [] } "MinLen") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 281 14 281 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 281 14 281 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 281 14 281 17 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 282 7 282 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 282 7 282 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 282 7 282 12 , srcInfoPoints = [] } "Model") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 282 13 282 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 282 13 282 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 282 13 282 18 , srcInfoPoints = [] } "Model")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 283 7 283 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 283 7 283 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 283 7 283 11 , srcInfoPoints = [] } "Mode") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 283 12 283 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 283 12 283 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 283 12 283 20 , srcInfoPoints = [] } "ModeType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 284 7 284 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 284 7 284 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 284 7 284 12 , srcInfoPoints = [] } "Mosek") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 284 13 284 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 284 13 284 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 284 13 284 17 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 285 7 285 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 285 7 285 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 285 7 285 14 , srcInfoPoints = [] } "NodeSep") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 285 15 285 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 285 15 285 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 285 15 285 21 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 286 7 286 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 286 7 286 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 286 7 286 16 , srcInfoPoints = [] } "NoJustify") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 286 17 286 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 286 17 286 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 286 17 286 21 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 287 7 287 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 287 7 287 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 287 7 287 16 , srcInfoPoints = [] } "Normalize") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 287 17 287 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 287 17 287 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 287 17 287 21 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 288 7 288 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 288 7 288 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 288 7 288 15 , srcInfoPoints = [] } "Nslimit1") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 288 16 288 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 288 16 288 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 288 16 288 22 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 289 7 289 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 289 7 289 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 289 7 289 14 , srcInfoPoints = [] } "Nslimit") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 289 15 289 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 289 15 289 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 289 15 289 21 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 290 7 290 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 290 7 290 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 290 7 290 15 , srcInfoPoints = [] } "Ordering") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 290 16 290 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 290 16 290 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 290 16 290 22 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 291 7 291 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 291 7 291 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 291 7 291 18 , srcInfoPoints = [] } "Orientation") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 291 19 291 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 291 19 291 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 291 19 291 25 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 292 7 292 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 292 7 292 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 292 7 292 18 , srcInfoPoints = [] } "OutputOrder") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 292 19 292 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 292 19 292 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 292 19 292 29 , srcInfoPoints = [] } "OutputMode")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 293 7 293 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 293 7 293 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 293 7 293 21 , srcInfoPoints = [] } "OverlapScaling") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 293 22 293 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 293 22 293 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 293 22 293 28 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 294 7 294 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 294 7 294 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 294 7 294 14 , srcInfoPoints = [] } "Overlap") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 294 15 294 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 294 15 294 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 294 15 294 22 , srcInfoPoints = [] } "Overlap")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 295 7 295 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 295 7 295 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 295 7 295 15 , srcInfoPoints = [] } "PackMode") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 295 16 295 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 295 16 295 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 295 16 295 24 , srcInfoPoints = [] } "PackMode")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 296 7 296 16 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 296 7 296 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 296 7 296 11 , srcInfoPoints = [] } "Pack") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 296 12 296 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 296 12 296 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 296 12 296 16 , srcInfoPoints = [] } "Pack")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 297 7 297 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 297 7 297 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 297 7 297 10 , srcInfoPoints = [] } "Pad") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 297 11 297 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 297 11 297 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 297 11 297 17 , srcInfoPoints = [] } "DPoint")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 298 7 298 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 298 7 298 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 298 7 298 14 , srcInfoPoints = [] } "PageDir") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 298 15 298 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 298 15 298 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 298 15 298 22 , srcInfoPoints = [] } "PageDir")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 299 7 299 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 299 7 299 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 299 7 299 11 , srcInfoPoints = [] } "Page") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 299 12 299 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 299 12 299 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 299 12 299 17 , srcInfoPoints = [] } "Point")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 300 7 300 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 300 7 300 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 300 7 300 15 , srcInfoPoints = [] } "PenColor") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 300 16 300 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 300 16 300 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 300 16 300 21 , srcInfoPoints = [] } "Color")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 301 7 301 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 301 7 301 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 301 7 301 15 , srcInfoPoints = [] } "PenWidth") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 301 16 301 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 301 16 301 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 301 16 301 22 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 302 7 302 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 302 7 302 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 302 7 302 18 , srcInfoPoints = [] } "Peripheries") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 302 19 302 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 302 19 302 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 302 19 302 22 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 303 7 303 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 303 7 303 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 303 7 303 10 , srcInfoPoints = [] } "Pin") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 303 11 303 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 303 11 303 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 303 11 303 15 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 304 7 304 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 304 7 304 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 304 7 304 10 , srcInfoPoints = [] } "Pos") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 304 11 304 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 304 11 304 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 304 11 304 14 , srcInfoPoints = [] } "Pos")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 305 7 305 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 305 7 305 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 305 7 305 15 , srcInfoPoints = [] } "QuadTree") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 305 16 305 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 305 16 305 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 305 16 305 24 , srcInfoPoints = [] } "QuadType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 306 7 306 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 306 7 306 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 306 7 306 14 , srcInfoPoints = [] } "Quantum") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 306 15 306 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 306 15 306 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 306 15 306 21 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 307 7 307 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 307 7 307 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 307 7 307 14 , srcInfoPoints = [] } "RankDir") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 307 15 307 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 307 15 307 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 307 15 307 22 , srcInfoPoints = [] } "RankDir")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 308 7 308 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 308 7 308 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 308 7 308 14 , srcInfoPoints = [] } "RankSep") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 308 15 308 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 308 15 308 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 308 15 308 21 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 309 7 309 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 309 7 309 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 309 7 309 11 , srcInfoPoints = [] } "Rank") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 309 12 309 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 309 12 309 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 309 12 309 20 , srcInfoPoints = [] } "RankType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 310 7 310 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 310 7 310 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 310 7 310 12 , srcInfoPoints = [] } "Ratio") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 310 13 310 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 310 13 310 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 310 13 310 19 , srcInfoPoints = [] } "Ratios")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 311 7 311 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 311 7 311 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 311 7 311 12 , srcInfoPoints = [] } "Rects") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 311 13 311 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 311 13 311 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 311 13 311 17 , srcInfoPoints = [] } "Rect")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 312 7 312 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 312 7 312 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 312 7 312 14 , srcInfoPoints = [] } "Regular") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 312 15 312 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 312 15 312 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 312 15 312 19 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 313 7 313 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 313 7 313 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 313 7 313 17 , srcInfoPoints = [] } "ReMinCross") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 313 18 313 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 313 18 313 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 313 18 313 22 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 314 7 314 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 314 7 314 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 314 7 314 21 , srcInfoPoints = [] } "RepulsiveForce") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 314 22 314 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 314 22 314 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 314 22 314 28 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 315 7 315 16 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 315 7 315 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 315 7 315 11 , srcInfoPoints = [] } "Root") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 315 12 315 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 315 12 315 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 315 12 315 16 , srcInfoPoints = [] } "Root")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 316 7 316 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 316 7 316 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 316 7 316 13 , srcInfoPoints = [] } "Rotate") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 316 14 316 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 316 14 316 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 316 14 316 17 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 317 7 317 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 317 7 317 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 317 7 317 15 , srcInfoPoints = [] } "SameHead") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 317 16 317 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 317 16 317 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 317 16 317 22 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 318 7 318 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 318 7 318 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 318 7 318 15 , srcInfoPoints = [] } "SameTail") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 318 16 318 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 318 16 318 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 318 16 318 22 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 319 7 319 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 319 7 319 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 319 7 319 19 , srcInfoPoints = [] } "SamplePoints") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 319 20 319 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 319 20 319 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 319 20 319 23 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 320 7 320 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 320 7 320 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 320 7 320 17 , srcInfoPoints = [] } "SearchSize") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 320 18 320 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 320 18 320 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 320 18 320 21 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 321 7 321 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 321 7 321 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 321 7 321 10 , srcInfoPoints = [] } "Sep") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 321 11 321 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 321 11 321 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 321 11 321 17 , srcInfoPoints = [] } "DPoint")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 322 7 322 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 322 7 322 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 322 7 322 16 , srcInfoPoints = [] } "ShapeFile") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 322 17 322 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 322 17 322 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 322 17 322 23 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 323 7 323 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 323 7 323 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 323 7 323 12 , srcInfoPoints = [] } "Shape") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 323 13 323 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 323 13 323 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 323 13 323 18 , srcInfoPoints = [] } "Shape")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 324 7 324 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 324 7 324 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 324 7 324 16 , srcInfoPoints = [] } "ShowBoxes") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 324 17 324 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 324 17 324 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 324 17 324 20 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 325 7 325 16 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 325 7 325 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 325 7 325 12 , srcInfoPoints = [] } "Sides") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 325 13 325 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 325 13 325 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 325 13 325 16 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 326 7 326 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 326 7 326 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 326 7 326 11 , srcInfoPoints = [] } "Size") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 326 12 326 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 326 12 326 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 326 12 326 17 , srcInfoPoints = [] } "Point")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 327 7 327 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 327 7 327 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 327 7 327 11 , srcInfoPoints = [] } "Skew") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 327 12 327 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 327 12 327 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 327 12 327 18 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 328 7 328 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 328 7 328 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 328 7 328 16 , srcInfoPoints = [] } "Smoothing") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 328 17 328 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 328 17 328 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 328 17 328 27 , srcInfoPoints = [] } "SmoothType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 329 7 329 16 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 329 7 329 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 329 7 329 12 , srcInfoPoints = [] } "SortV") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 329 13 329 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 329 13 329 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 329 13 329 16 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 330 7 330 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 330 7 330 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 330 7 330 14 , srcInfoPoints = [] } "Splines") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 330 15 330 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 330 15 330 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 330 15 330 23 , srcInfoPoints = [] } "EdgeType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 331 7 331 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 331 7 331 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 331 7 331 12 , srcInfoPoints = [] } "Start") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 331 13 331 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 331 13 331 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 331 13 331 22 , srcInfoPoints = [] } "StartType")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 332 7 332 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 332 7 332 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 332 7 332 17 , srcInfoPoints = [] } "StyleSheet") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 332 18 332 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 332 18 332 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 332 18 332 24 , srcInfoPoints = [] } "String")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 333 7 333 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 333 7 333 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 333 7 333 12 , srcInfoPoints = [] } "Style") [ TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 333 13 333 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 333 13 333 14 , SrcSpan "tests/examples/Attributes.hs" 333 23 333 24 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 333 14 333 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 333 14 333 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 333 14 333 23 , srcInfoPoints = [] } "StyleItem"))) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 334 7 334 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 334 7 334 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 334 7 334 14 , srcInfoPoints = [] } "TailURL") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 334 15 334 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 334 15 334 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 334 15 334 18 , srcInfoPoints = [] } "URL")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 335 7 335 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 335 7 335 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 335 7 335 15 , srcInfoPoints = [] } "TailClip") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 335 16 335 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 335 16 335 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 335 16 335 20 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 336 7 336 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 336 7 336 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 336 7 336 16 , srcInfoPoints = [] } "TailLabel") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 336 17 336 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 336 17 336 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 336 17 336 22 , srcInfoPoints = [] } "Label")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 337 7 337 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 337 7 337 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 337 7 337 15 , srcInfoPoints = [] } "TailPort") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 337 16 337 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 337 16 337 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 337 16 337 23 , srcInfoPoints = [] } "PortPos")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 338 7 338 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 338 7 338 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 338 7 338 17 , srcInfoPoints = [] } "TailTarget") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 338 18 338 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 338 18 338 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 338 18 338 27 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 339 7 339 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 339 7 339 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 339 7 339 18 , srcInfoPoints = [] } "TailTooltip") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 339 19 339 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 339 19 339 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 339 19 339 28 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 340 7 340 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 340 7 340 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 340 7 340 13 , srcInfoPoints = [] } "Target") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 340 14 340 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 340 14 340 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 340 14 340 23 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 341 7 341 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 341 7 341 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 341 7 341 14 , srcInfoPoints = [] } "Tooltip") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 341 15 341 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 341 15 341 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 341 15 341 24 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 342 7 342 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 342 7 342 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 342 7 342 16 , srcInfoPoints = [] } "TrueColor") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 342 17 342 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 342 17 342 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 342 17 342 21 , srcInfoPoints = [] } "Bool")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 343 7 343 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 343 7 343 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 343 7 343 15 , srcInfoPoints = [] } "Vertices") [ TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 343 16 343 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 343 16 343 17 , SrcSpan "tests/examples/Attributes.hs" 343 22 343 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 343 17 343 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 343 17 343 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 343 17 343 22 , srcInfoPoints = [] } "Point"))) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 344 7 344 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 344 7 344 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 344 7 344 15 , srcInfoPoints = [] } "ViewPort") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 344 16 344 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 344 16 344 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 344 16 344 24 , srcInfoPoints = [] } "ViewPort")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 345 7 345 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 345 7 345 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 345 7 345 17 , srcInfoPoints = [] } "VoroMargin") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 345 18 345 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 345 18 345 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 345 18 345 24 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 346 7 346 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 346 7 346 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 346 7 346 13 , srcInfoPoints = [] } "Weight") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 346 14 346 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 346 14 346 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 346 14 346 20 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 347 7 347 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 347 7 347 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 347 7 347 12 , srcInfoPoints = [] } "Width") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 347 13 347 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 347 13 347 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 347 13 347 19 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 348 7 348 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 348 7 348 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 348 7 348 8 , srcInfoPoints = [] } "Z") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 348 9 348 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 348 9 348 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 348 9 348 15 , srcInfoPoints = [] } "Double")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 7 349 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 349 7 349 15 , SrcSpan "tests/examples/Attributes.hs" 349 16 349 17 , SrcSpan "tests/examples/Attributes.hs" 349 19 349 20 , SrcSpan "tests/examples/Attributes.hs" 349 24 349 25 , SrcSpan "tests/examples/Attributes.hs" 349 30 349 31 , SrcSpan "tests/examples/Attributes.hs" 349 36 349 37 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 17 349 19 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 17 349 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 17 349 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 17 349 19 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 21 349 24 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 21 349 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 21 349 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 21 349 24 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 26 349 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 26 349 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 26 349 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 26 349 30 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 32 349 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 32 349 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 32 349 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 349 32 349 36 , srcInfoPoints = [] } "Read"))) ])) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 351 1 351 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 351 1 351 5 , SrcSpan "tests/examples/Attributes.hs" 351 17 351 18 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 351 6 351 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 351 6 351 16 , srcInfoPoints = [] } "Attributes")) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 351 19 351 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 351 19 351 20 , SrcSpan "tests/examples/Attributes.hs" 351 29 351 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 351 20 351 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 351 20 351 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 351 20 351 29 , srcInfoPoints = [] } "Attribute")))) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 1 501 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 353 1 353 9 , SrcSpan "tests/examples/Attributes.hs" 353 29 353 34 , SrcSpan "tests/examples/Attributes.hs" 354 5 354 5 , SrcSpan "tests/examples/Attributes.hs" 355 5 355 5 , SrcSpan "tests/examples/Attributes.hs" 356 5 356 5 , SrcSpan "tests/examples/Attributes.hs" 357 5 357 5 , SrcSpan "tests/examples/Attributes.hs" 358 5 358 5 , SrcSpan "tests/examples/Attributes.hs" 359 5 359 5 , SrcSpan "tests/examples/Attributes.hs" 360 5 360 5 , SrcSpan "tests/examples/Attributes.hs" 361 5 361 5 , SrcSpan "tests/examples/Attributes.hs" 362 5 362 5 , SrcSpan "tests/examples/Attributes.hs" 363 5 363 5 , SrcSpan "tests/examples/Attributes.hs" 364 5 364 5 , SrcSpan "tests/examples/Attributes.hs" 365 5 365 5 , SrcSpan "tests/examples/Attributes.hs" 366 5 366 5 , SrcSpan "tests/examples/Attributes.hs" 367 5 367 5 , SrcSpan "tests/examples/Attributes.hs" 368 5 368 5 , SrcSpan "tests/examples/Attributes.hs" 369 5 369 5 , SrcSpan "tests/examples/Attributes.hs" 370 5 370 5 , SrcSpan "tests/examples/Attributes.hs" 371 5 371 5 , SrcSpan "tests/examples/Attributes.hs" 372 5 372 5 , SrcSpan "tests/examples/Attributes.hs" 373 5 373 5 , SrcSpan "tests/examples/Attributes.hs" 374 5 374 5 , SrcSpan "tests/examples/Attributes.hs" 375 5 375 5 , SrcSpan "tests/examples/Attributes.hs" 376 5 376 5 , SrcSpan "tests/examples/Attributes.hs" 377 5 377 5 , SrcSpan "tests/examples/Attributes.hs" 378 5 378 5 , SrcSpan "tests/examples/Attributes.hs" 379 5 379 5 , SrcSpan "tests/examples/Attributes.hs" 380 5 380 5 , SrcSpan "tests/examples/Attributes.hs" 381 5 381 5 , SrcSpan "tests/examples/Attributes.hs" 382 5 382 5 , SrcSpan "tests/examples/Attributes.hs" 383 5 383 5 , SrcSpan "tests/examples/Attributes.hs" 384 5 384 5 , SrcSpan "tests/examples/Attributes.hs" 385 5 385 5 , SrcSpan "tests/examples/Attributes.hs" 386 5 386 5 , SrcSpan "tests/examples/Attributes.hs" 387 5 387 5 , SrcSpan "tests/examples/Attributes.hs" 388 5 388 5 , SrcSpan "tests/examples/Attributes.hs" 389 5 389 5 , SrcSpan "tests/examples/Attributes.hs" 390 5 390 5 , SrcSpan "tests/examples/Attributes.hs" 391 5 391 5 , SrcSpan "tests/examples/Attributes.hs" 392 5 392 5 , SrcSpan "tests/examples/Attributes.hs" 393 5 393 5 , SrcSpan "tests/examples/Attributes.hs" 394 5 394 5 , SrcSpan "tests/examples/Attributes.hs" 395 5 395 5 , SrcSpan "tests/examples/Attributes.hs" 396 5 396 5 , SrcSpan "tests/examples/Attributes.hs" 397 5 397 5 , SrcSpan "tests/examples/Attributes.hs" 398 5 398 5 , SrcSpan "tests/examples/Attributes.hs" 399 5 399 5 , SrcSpan "tests/examples/Attributes.hs" 400 5 400 5 , SrcSpan "tests/examples/Attributes.hs" 401 5 401 5 , SrcSpan "tests/examples/Attributes.hs" 402 5 402 5 , SrcSpan "tests/examples/Attributes.hs" 403 5 403 5 , SrcSpan "tests/examples/Attributes.hs" 404 5 404 5 , SrcSpan "tests/examples/Attributes.hs" 405 5 405 5 , SrcSpan "tests/examples/Attributes.hs" 406 5 406 5 , SrcSpan "tests/examples/Attributes.hs" 407 5 407 5 , SrcSpan "tests/examples/Attributes.hs" 408 5 408 5 , SrcSpan "tests/examples/Attributes.hs" 409 5 409 5 , SrcSpan "tests/examples/Attributes.hs" 410 5 410 5 , SrcSpan "tests/examples/Attributes.hs" 411 5 411 5 , SrcSpan "tests/examples/Attributes.hs" 412 5 412 5 , SrcSpan "tests/examples/Attributes.hs" 413 5 413 5 , SrcSpan "tests/examples/Attributes.hs" 414 5 414 5 , SrcSpan "tests/examples/Attributes.hs" 415 5 415 5 , SrcSpan "tests/examples/Attributes.hs" 416 5 416 5 , SrcSpan "tests/examples/Attributes.hs" 417 5 417 5 , SrcSpan "tests/examples/Attributes.hs" 418 5 418 5 , SrcSpan "tests/examples/Attributes.hs" 419 5 419 5 , SrcSpan "tests/examples/Attributes.hs" 420 5 420 5 , SrcSpan "tests/examples/Attributes.hs" 421 5 421 5 , SrcSpan "tests/examples/Attributes.hs" 422 5 422 5 , SrcSpan "tests/examples/Attributes.hs" 423 5 423 5 , SrcSpan "tests/examples/Attributes.hs" 424 5 424 5 , SrcSpan "tests/examples/Attributes.hs" 425 5 425 5 , SrcSpan "tests/examples/Attributes.hs" 426 5 426 5 , SrcSpan "tests/examples/Attributes.hs" 427 5 427 5 , SrcSpan "tests/examples/Attributes.hs" 428 5 428 5 , SrcSpan "tests/examples/Attributes.hs" 429 5 429 5 , SrcSpan "tests/examples/Attributes.hs" 430 5 430 5 , SrcSpan "tests/examples/Attributes.hs" 431 5 431 5 , SrcSpan "tests/examples/Attributes.hs" 432 5 432 5 , SrcSpan "tests/examples/Attributes.hs" 433 5 433 5 , SrcSpan "tests/examples/Attributes.hs" 434 5 434 5 , SrcSpan "tests/examples/Attributes.hs" 435 5 435 5 , SrcSpan "tests/examples/Attributes.hs" 436 5 436 5 , SrcSpan "tests/examples/Attributes.hs" 437 5 437 5 , SrcSpan "tests/examples/Attributes.hs" 438 5 438 5 , SrcSpan "tests/examples/Attributes.hs" 439 5 439 5 , SrcSpan "tests/examples/Attributes.hs" 440 5 440 5 , SrcSpan "tests/examples/Attributes.hs" 441 5 441 5 , SrcSpan "tests/examples/Attributes.hs" 442 5 442 5 , SrcSpan "tests/examples/Attributes.hs" 443 5 443 5 , SrcSpan "tests/examples/Attributes.hs" 444 5 444 5 , SrcSpan "tests/examples/Attributes.hs" 445 5 445 5 , SrcSpan "tests/examples/Attributes.hs" 446 5 446 5 , SrcSpan "tests/examples/Attributes.hs" 447 5 447 5 , SrcSpan "tests/examples/Attributes.hs" 448 5 448 5 , SrcSpan "tests/examples/Attributes.hs" 449 5 449 5 , SrcSpan "tests/examples/Attributes.hs" 450 5 450 5 , SrcSpan "tests/examples/Attributes.hs" 451 5 451 5 , SrcSpan "tests/examples/Attributes.hs" 452 5 452 5 , SrcSpan "tests/examples/Attributes.hs" 453 5 453 5 , SrcSpan "tests/examples/Attributes.hs" 454 5 454 5 , SrcSpan "tests/examples/Attributes.hs" 455 5 455 5 , SrcSpan "tests/examples/Attributes.hs" 456 5 456 5 , SrcSpan "tests/examples/Attributes.hs" 457 5 457 5 , SrcSpan "tests/examples/Attributes.hs" 458 5 458 5 , SrcSpan "tests/examples/Attributes.hs" 459 5 459 5 , SrcSpan "tests/examples/Attributes.hs" 460 5 460 5 , SrcSpan "tests/examples/Attributes.hs" 461 5 461 5 , SrcSpan "tests/examples/Attributes.hs" 462 5 462 5 , SrcSpan "tests/examples/Attributes.hs" 463 5 463 5 , SrcSpan "tests/examples/Attributes.hs" 464 5 464 5 , SrcSpan "tests/examples/Attributes.hs" 465 5 465 5 , SrcSpan "tests/examples/Attributes.hs" 466 5 466 5 , SrcSpan "tests/examples/Attributes.hs" 467 5 467 5 , SrcSpan "tests/examples/Attributes.hs" 468 5 468 5 , SrcSpan "tests/examples/Attributes.hs" 469 5 469 5 , SrcSpan "tests/examples/Attributes.hs" 470 5 470 5 , SrcSpan "tests/examples/Attributes.hs" 471 5 471 5 , SrcSpan "tests/examples/Attributes.hs" 472 5 472 5 , SrcSpan "tests/examples/Attributes.hs" 473 5 473 5 , SrcSpan "tests/examples/Attributes.hs" 474 5 474 5 , SrcSpan "tests/examples/Attributes.hs" 475 5 475 5 , SrcSpan "tests/examples/Attributes.hs" 476 5 476 5 , SrcSpan "tests/examples/Attributes.hs" 477 5 477 5 , SrcSpan "tests/examples/Attributes.hs" 478 5 478 5 , SrcSpan "tests/examples/Attributes.hs" 479 5 479 5 , SrcSpan "tests/examples/Attributes.hs" 480 5 480 5 , SrcSpan "tests/examples/Attributes.hs" 481 5 481 5 , SrcSpan "tests/examples/Attributes.hs" 482 5 482 5 , SrcSpan "tests/examples/Attributes.hs" 483 5 483 5 , SrcSpan "tests/examples/Attributes.hs" 484 5 484 5 , SrcSpan "tests/examples/Attributes.hs" 485 5 485 5 , SrcSpan "tests/examples/Attributes.hs" 486 5 486 5 , SrcSpan "tests/examples/Attributes.hs" 487 5 487 5 , SrcSpan "tests/examples/Attributes.hs" 488 5 488 5 , SrcSpan "tests/examples/Attributes.hs" 489 5 489 5 , SrcSpan "tests/examples/Attributes.hs" 490 5 490 5 , SrcSpan "tests/examples/Attributes.hs" 491 5 491 5 , SrcSpan "tests/examples/Attributes.hs" 492 5 492 5 , SrcSpan "tests/examples/Attributes.hs" 493 5 493 5 , SrcSpan "tests/examples/Attributes.hs" 494 5 494 5 , SrcSpan "tests/examples/Attributes.hs" 495 5 495 5 , SrcSpan "tests/examples/Attributes.hs" 496 5 496 5 , SrcSpan "tests/examples/Attributes.hs" 497 5 497 5 , SrcSpan "tests/examples/Attributes.hs" 499 5 499 5 , SrcSpan "tests/examples/Attributes.hs" 501 1 501 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 10 353 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 10 353 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 10 353 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 10 353 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 10 353 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 19 353 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 19 353 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 353 19 353 28 , srcInfoPoints = [] } "Attribute"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 5 497 54 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 5 497 54 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 5 354 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 5 354 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 13 354 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 354 13 354 14 , SrcSpan "tests/examples/Attributes.hs" 354 23 354 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 14 354 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 14 354 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 14 354 21 , srcInfoPoints = [] } "Damping")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 22 354 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 22 354 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 36 354 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 354 36 354 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 38 354 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 38 354 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 38 354 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 38 354 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 38 354 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 49 354 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 49 354 58 , srcInfoPoints = [] } "Damping" "Damping"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 59 354 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 59 354 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 354 59 354 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 5 355 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 5 355 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 13 355 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 355 13 355 14 , SrcSpan "tests/examples/Attributes.hs" 355 17 355 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 14 355 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 14 355 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 14 355 15 , srcInfoPoints = [] } "K")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 16 355 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 16 355 17 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 36 355 54 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 355 36 355 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 38 355 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 38 355 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 38 355 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 38 355 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 38 355 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 49 355 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 49 355 52 , srcInfoPoints = [] } "K" "K"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 53 355 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 53 355 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 355 53 355 54 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 5 356 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 5 356 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 13 356 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 356 13 356 14 , SrcSpan "tests/examples/Attributes.hs" 356 19 356 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 14 356 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 14 356 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 14 356 17 , srcInfoPoints = [] } "URL")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 18 356 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 18 356 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 36 356 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 356 36 356 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 38 356 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 38 356 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 38 356 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 38 356 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 38 356 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 49 356 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 49 356 54 , srcInfoPoints = [] } "URL" "URL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 55 356 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 55 356 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 356 55 356 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 5 357 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 5 357 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 13 357 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 357 13 357 14 , SrcSpan "tests/examples/Attributes.hs" 357 25 357 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 14 357 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 14 357 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 14 357 23 , srcInfoPoints = [] } "ArrowHead")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 24 357 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 24 357 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 36 357 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 357 36 357 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 38 357 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 38 357 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 38 357 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 38 357 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 38 357 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 49 357 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 49 357 60 , srcInfoPoints = [] } "arrowhead" "arrowhead"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 61 357 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 61 357 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 357 61 357 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 5 358 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 5 358 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 13 358 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 358 13 358 14 , SrcSpan "tests/examples/Attributes.hs" 358 25 358 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 14 358 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 14 358 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 14 358 23 , srcInfoPoints = [] } "ArrowSize")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 24 358 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 24 358 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 36 358 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 358 36 358 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 38 358 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 38 358 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 38 358 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 38 358 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 38 358 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 49 358 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 49 358 60 , srcInfoPoints = [] } "arrowsize" "arrowsize"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 61 358 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 61 358 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 358 61 358 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 5 359 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 5 359 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 13 359 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 359 13 359 14 , SrcSpan "tests/examples/Attributes.hs" 359 25 359 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 14 359 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 14 359 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 14 359 23 , srcInfoPoints = [] } "ArrowTail")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 24 359 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 24 359 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 36 359 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 359 36 359 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 38 359 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 38 359 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 38 359 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 38 359 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 38 359 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 49 359 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 49 359 60 , srcInfoPoints = [] } "arrowtail" "arrowtail"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 61 359 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 61 359 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 359 61 359 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 5 360 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 5 360 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 13 360 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 360 13 360 14 , SrcSpan "tests/examples/Attributes.hs" 360 22 360 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 14 360 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 14 360 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 14 360 20 , srcInfoPoints = [] } "Aspect")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 21 360 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 21 360 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 36 360 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 360 36 360 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 38 360 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 38 360 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 38 360 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 38 360 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 38 360 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 49 360 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 49 360 57 , srcInfoPoints = [] } "aspect" "aspect"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 58 360 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 58 360 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 360 58 360 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 5 361 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 5 361 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 13 361 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 361 13 361 14 , SrcSpan "tests/examples/Attributes.hs" 361 18 361 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 14 361 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 14 361 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 14 361 16 , srcInfoPoints = [] } "Bb")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 17 361 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 17 361 18 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 36 361 55 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 361 36 361 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 38 361 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 38 361 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 38 361 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 38 361 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 38 361 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 49 361 53 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 49 361 53 , srcInfoPoints = [] } "bb" "bb"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 54 361 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 54 361 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 361 54 361 55 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 5 362 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 5 362 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 13 362 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 362 13 362 14 , SrcSpan "tests/examples/Attributes.hs" 362 23 362 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 14 362 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 14 362 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 14 362 21 , srcInfoPoints = [] } "BgColor")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 22 362 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 22 362 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 36 362 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 362 36 362 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 38 362 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 38 362 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 38 362 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 38 362 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 38 362 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 49 362 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 49 362 58 , srcInfoPoints = [] } "bgcolor" "bgcolor"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 59 362 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 59 362 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 362 59 362 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 5 363 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 5 363 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 13 363 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 363 13 363 14 , SrcSpan "tests/examples/Attributes.hs" 363 22 363 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 14 363 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 14 363 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 14 363 20 , srcInfoPoints = [] } "Center")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 21 363 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 21 363 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 36 363 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 363 36 363 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 38 363 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 38 363 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 38 363 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 38 363 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 38 363 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 49 363 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 49 363 57 , srcInfoPoints = [] } "center" "center"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 58 363 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 58 363 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 363 58 363 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 5 364 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 5 364 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 13 364 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 364 13 364 14 , SrcSpan "tests/examples/Attributes.hs" 364 23 364 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 14 364 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 14 364 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 14 364 21 , srcInfoPoints = [] } "Charset")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 22 364 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 22 364 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 36 364 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 364 36 364 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 38 364 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 38 364 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 38 364 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 38 364 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 38 364 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 49 364 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 49 364 58 , srcInfoPoints = [] } "charset" "charset"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 59 364 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 59 364 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 364 59 364 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 5 365 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 5 365 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 13 365 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 365 13 365 14 , SrcSpan "tests/examples/Attributes.hs" 365 27 365 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 14 365 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 14 365 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 14 365 25 , srcInfoPoints = [] } "ClusterRank")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 26 365 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 26 365 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 36 365 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 365 36 365 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 38 365 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 38 365 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 38 365 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 38 365 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 38 365 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 49 365 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 49 365 62 , srcInfoPoints = [] } "clusterrank" "clusterrank"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 63 365 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 63 365 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 365 63 365 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 5 366 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 5 366 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 13 366 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 366 13 366 14 , SrcSpan "tests/examples/Attributes.hs" 366 27 366 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 14 366 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 14 366 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 14 366 25 , srcInfoPoints = [] } "ColorScheme")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 26 366 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 26 366 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 36 366 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 366 36 366 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 38 366 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 38 366 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 38 366 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 38 366 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 38 366 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 49 366 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 49 366 62 , srcInfoPoints = [] } "colorscheme" "colorscheme"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 63 366 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 63 366 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 366 63 366 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 5 367 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 5 367 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 13 367 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 367 13 367 14 , SrcSpan "tests/examples/Attributes.hs" 367 21 367 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 14 367 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 14 367 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 14 367 19 , srcInfoPoints = [] } "Color")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 20 367 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 20 367 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 36 367 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 367 36 367 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 38 367 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 38 367 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 38 367 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 38 367 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 38 367 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 49 367 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 49 367 56 , srcInfoPoints = [] } "color" "color"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 57 367 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 57 367 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 367 57 367 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 5 368 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 5 368 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 13 368 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 368 13 368 14 , SrcSpan "tests/examples/Attributes.hs" 368 23 368 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 14 368 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 14 368 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 14 368 21 , srcInfoPoints = [] } "Comment")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 22 368 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 22 368 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 36 368 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 368 36 368 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 38 368 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 38 368 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 38 368 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 38 368 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 38 368 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 49 368 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 49 368 58 , srcInfoPoints = [] } "comment" "comment"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 59 368 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 59 368 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 368 59 368 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 5 369 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 5 369 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 13 369 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 369 13 369 14 , SrcSpan "tests/examples/Attributes.hs" 369 24 369 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 14 369 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 14 369 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 14 369 22 , srcInfoPoints = [] } "Compound")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 23 369 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 23 369 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 36 369 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 369 36 369 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 38 369 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 38 369 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 38 369 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 38 369 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 38 369 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 49 369 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 49 369 59 , srcInfoPoints = [] } "compound" "compound"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 60 369 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 60 369 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 369 60 369 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 5 370 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 5 370 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 13 370 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 370 13 370 14 , SrcSpan "tests/examples/Attributes.hs" 370 27 370 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 14 370 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 14 370 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 14 370 25 , srcInfoPoints = [] } "Concentrate")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 26 370 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 26 370 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 36 370 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 370 36 370 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 38 370 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 38 370 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 38 370 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 38 370 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 38 370 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 49 370 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 49 370 62 , srcInfoPoints = [] } "concentrate" "concentrate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 63 370 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 63 370 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 370 63 370 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 5 371 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 5 371 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 13 371 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 371 13 371 14 , SrcSpan "tests/examples/Attributes.hs" 371 26 371 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 14 371 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 14 371 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 14 371 24 , srcInfoPoints = [] } "Constraint")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 25 371 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 25 371 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 36 371 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 371 36 371 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 38 371 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 38 371 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 38 371 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 38 371 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 38 371 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 49 371 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 49 371 61 , srcInfoPoints = [] } "constraint" "constraint"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 62 371 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 62 371 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 371 62 371 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 5 372 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 5 372 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 13 372 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 372 13 372 14 , SrcSpan "tests/examples/Attributes.hs" 372 24 372 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 14 372 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 14 372 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 14 372 22 , srcInfoPoints = [] } "Decorate")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 23 372 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 23 372 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 36 372 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 372 36 372 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 38 372 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 38 372 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 38 372 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 38 372 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 38 372 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 49 372 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 49 372 59 , srcInfoPoints = [] } "decorate" "decorate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 60 372 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 60 372 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 372 60 372 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 5 373 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 5 373 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 13 373 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 373 13 373 14 , SrcSpan "tests/examples/Attributes.hs" 373 27 373 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 14 373 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 14 373 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 14 373 25 , srcInfoPoints = [] } "DefaultDist")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 26 373 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 26 373 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 36 373 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 373 36 373 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 38 373 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 38 373 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 38 373 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 38 373 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 38 373 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 49 373 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 49 373 62 , srcInfoPoints = [] } "defaultdist" "defaultdist"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 63 373 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 63 373 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 373 63 373 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 5 374 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 5 374 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 13 374 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 374 13 374 14 , SrcSpan "tests/examples/Attributes.hs" 374 21 374 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 14 374 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 14 374 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 14 374 19 , srcInfoPoints = [] } "Dimen")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 20 374 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 20 374 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 36 374 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 374 36 374 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 38 374 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 38 374 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 38 374 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 38 374 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 38 374 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 49 374 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 49 374 56 , srcInfoPoints = [] } "dimen" "dimen"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 57 374 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 57 374 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 374 57 374 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 5 375 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 5 375 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 13 375 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 375 13 375 14 , SrcSpan "tests/examples/Attributes.hs" 375 19 375 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 14 375 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 14 375 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 14 375 17 , srcInfoPoints = [] } "Dim")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 18 375 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 18 375 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 36 375 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 375 36 375 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 38 375 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 38 375 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 38 375 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 38 375 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 38 375 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 49 375 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 49 375 54 , srcInfoPoints = [] } "dim" "dim"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 55 375 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 55 375 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 375 55 375 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 5 376 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 5 376 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 13 376 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 376 13 376 14 , SrcSpan "tests/examples/Attributes.hs" 376 19 376 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 14 376 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 14 376 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 14 376 17 , srcInfoPoints = [] } "Dir")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 18 376 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 18 376 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 36 376 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 376 36 376 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 38 376 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 38 376 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 38 376 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 38 376 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 38 376 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 49 376 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 49 376 54 , srcInfoPoints = [] } "dir" "dir"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 55 376 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 55 376 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 376 55 376 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 5 377 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 5 377 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 13 377 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 377 13 377 14 , SrcSpan "tests/examples/Attributes.hs" 377 34 377 35 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 14 377 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 14 377 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 14 377 32 , srcInfoPoints = [] } "DirEdgeConstraints")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 33 377 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 33 377 34 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 36 377 71 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 377 36 377 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 38 377 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 38 377 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 38 377 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 38 377 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 38 377 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 49 377 69 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 49 377 69 , srcInfoPoints = [] } "diredgeconstraints" "diredgeconstraints"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 70 377 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 70 377 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 377 70 377 71 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 5 378 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 5 378 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 13 378 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 378 13 378 14 , SrcSpan "tests/examples/Attributes.hs" 378 26 378 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 14 378 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 14 378 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 14 378 24 , srcInfoPoints = [] } "Distortion")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 25 378 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 25 378 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 36 378 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 378 36 378 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 38 378 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 38 378 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 38 378 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 38 378 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 38 378 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 49 378 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 49 378 61 , srcInfoPoints = [] } "distortion" "distortion"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 62 378 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 62 378 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 378 62 378 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 5 379 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 5 379 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 13 379 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 379 13 379 14 , SrcSpan "tests/examples/Attributes.hs" 379 19 379 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 14 379 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 14 379 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 14 379 17 , srcInfoPoints = [] } "DPI")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 18 379 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 18 379 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 36 379 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 379 36 379 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 38 379 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 38 379 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 38 379 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 38 379 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 38 379 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 49 379 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 49 379 54 , srcInfoPoints = [] } "dpi" "dpi"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 55 379 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 55 379 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 379 55 379 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 5 380 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 5 380 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 13 380 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 380 13 380 14 , SrcSpan "tests/examples/Attributes.hs" 380 23 380 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 14 380 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 14 380 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 14 380 21 , srcInfoPoints = [] } "EdgeURL")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 22 380 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 22 380 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 36 380 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 380 36 380 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 38 380 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 38 380 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 38 380 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 38 380 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 38 380 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 49 380 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 49 380 58 , srcInfoPoints = [] } "edgeURL" "edgeURL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 59 380 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 59 380 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 380 59 380 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 5 381 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 5 381 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 13 381 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 381 13 381 14 , SrcSpan "tests/examples/Attributes.hs" 381 26 381 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 14 381 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 14 381 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 14 381 24 , srcInfoPoints = [] } "EdgeTarget")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 25 381 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 25 381 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 36 381 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 381 36 381 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 38 381 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 38 381 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 38 381 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 38 381 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 38 381 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 49 381 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 49 381 61 , srcInfoPoints = [] } "edgetarget" "edgetarget"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 62 381 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 62 381 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 381 62 381 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 5 382 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 5 382 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 13 382 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 382 13 382 14 , SrcSpan "tests/examples/Attributes.hs" 382 27 382 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 14 382 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 14 382 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 14 382 25 , srcInfoPoints = [] } "EdgeTooltip")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 26 382 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 26 382 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 36 382 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 382 36 382 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 38 382 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 38 382 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 38 382 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 38 382 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 38 382 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 49 382 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 49 382 62 , srcInfoPoints = [] } "edgetooltip" "edgetooltip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 63 382 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 63 382 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 382 63 382 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 5 383 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 5 383 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 13 383 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 383 13 383 14 , SrcSpan "tests/examples/Attributes.hs" 383 23 383 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 14 383 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 14 383 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 14 383 21 , srcInfoPoints = [] } "Epsilon")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 22 383 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 22 383 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 36 383 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 383 36 383 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 38 383 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 38 383 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 38 383 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 38 383 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 38 383 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 49 383 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 49 383 58 , srcInfoPoints = [] } "epsilon" "epsilon"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 59 383 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 59 383 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 383 59 383 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 5 384 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 5 384 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 13 384 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 384 13 384 14 , SrcSpan "tests/examples/Attributes.hs" 384 20 384 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 14 384 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 14 384 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 14 384 18 , srcInfoPoints = [] } "ESep")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 19 384 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 19 384 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 36 384 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 384 36 384 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 38 384 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 38 384 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 38 384 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 38 384 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 38 384 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 49 384 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 49 384 55 , srcInfoPoints = [] } "esep" "esep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 56 384 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 56 384 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 384 56 384 57 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 5 385 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 5 385 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 13 385 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 385 13 385 14 , SrcSpan "tests/examples/Attributes.hs" 385 25 385 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 14 385 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 14 385 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 14 385 23 , srcInfoPoints = [] } "FillColor")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 24 385 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 24 385 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 36 385 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 385 36 385 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 38 385 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 38 385 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 38 385 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 38 385 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 38 385 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 49 385 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 49 385 60 , srcInfoPoints = [] } "fillcolor" "fillcolor"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 61 385 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 61 385 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 385 61 385 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 5 386 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 5 386 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 13 386 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 386 13 386 14 , SrcSpan "tests/examples/Attributes.hs" 386 25 386 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 14 386 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 14 386 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 14 386 23 , srcInfoPoints = [] } "FixedSize")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 24 386 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 24 386 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 36 386 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 386 36 386 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 38 386 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 38 386 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 38 386 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 38 386 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 38 386 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 49 386 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 49 386 60 , srcInfoPoints = [] } "fixedsize" "fixedsize"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 61 386 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 61 386 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 386 61 386 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 5 387 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 5 387 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 13 387 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 387 13 387 14 , SrcSpan "tests/examples/Attributes.hs" 387 25 387 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 14 387 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 14 387 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 14 387 23 , srcInfoPoints = [] } "FontColor")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 24 387 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 24 387 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 36 387 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 387 36 387 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 38 387 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 38 387 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 38 387 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 38 387 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 38 387 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 49 387 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 49 387 60 , srcInfoPoints = [] } "fontcolor" "fontcolor"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 61 387 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 61 387 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 387 61 387 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 5 388 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 5 388 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 13 388 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 388 13 388 14 , SrcSpan "tests/examples/Attributes.hs" 388 24 388 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 14 388 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 14 388 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 14 388 22 , srcInfoPoints = [] } "FontName")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 23 388 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 23 388 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 36 388 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 388 36 388 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 38 388 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 38 388 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 38 388 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 38 388 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 38 388 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 49 388 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 49 388 59 , srcInfoPoints = [] } "fontname" "fontname"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 60 388 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 60 388 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 388 60 388 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 5 389 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 5 389 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 13 389 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 389 13 389 14 , SrcSpan "tests/examples/Attributes.hs" 389 25 389 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 14 389 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 14 389 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 14 389 23 , srcInfoPoints = [] } "FontNames")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 24 389 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 24 389 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 36 389 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 389 36 389 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 38 389 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 38 389 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 38 389 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 38 389 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 38 389 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 49 389 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 49 389 60 , srcInfoPoints = [] } "fontnames" "fontnames"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 61 389 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 61 389 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 389 61 389 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 5 390 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 5 390 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 13 390 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 390 13 390 14 , SrcSpan "tests/examples/Attributes.hs" 390 24 390 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 14 390 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 14 390 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 14 390 22 , srcInfoPoints = [] } "FontPath")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 23 390 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 23 390 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 36 390 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 390 36 390 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 38 390 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 38 390 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 38 390 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 38 390 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 38 390 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 49 390 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 49 390 59 , srcInfoPoints = [] } "fontpath" "fontpath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 60 390 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 60 390 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 390 60 390 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 5 391 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 5 391 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 13 391 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 391 13 391 14 , SrcSpan "tests/examples/Attributes.hs" 391 24 391 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 14 391 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 14 391 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 14 391 22 , srcInfoPoints = [] } "FontSize")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 23 391 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 23 391 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 36 391 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 391 36 391 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 38 391 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 38 391 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 38 391 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 38 391 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 38 391 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 49 391 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 49 391 59 , srcInfoPoints = [] } "fontsize" "fontsize"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 60 391 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 60 391 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 391 60 391 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 5 392 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 5 392 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 13 392 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 392 13 392 14 , SrcSpan "tests/examples/Attributes.hs" 392 21 392 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 14 392 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 14 392 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 14 392 19 , srcInfoPoints = [] } "Group")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 20 392 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 20 392 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 36 392 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 392 36 392 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 38 392 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 38 392 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 38 392 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 38 392 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 38 392 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 49 392 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 49 392 56 , srcInfoPoints = [] } "group" "group"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 57 392 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 57 392 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 392 57 392 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 5 393 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 5 393 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 13 393 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 393 13 393 14 , SrcSpan "tests/examples/Attributes.hs" 393 23 393 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 14 393 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 14 393 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 14 393 21 , srcInfoPoints = [] } "HeadURL")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 22 393 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 22 393 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 36 393 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 393 36 393 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 38 393 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 38 393 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 38 393 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 38 393 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 38 393 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 49 393 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 49 393 58 , srcInfoPoints = [] } "headURL" "headURL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 59 393 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 59 393 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 393 59 393 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 5 394 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 5 394 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 13 394 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 394 13 394 14 , SrcSpan "tests/examples/Attributes.hs" 394 24 394 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 14 394 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 14 394 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 14 394 22 , srcInfoPoints = [] } "HeadClip")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 23 394 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 23 394 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 36 394 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 394 36 394 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 38 394 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 38 394 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 38 394 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 38 394 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 38 394 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 49 394 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 49 394 59 , srcInfoPoints = [] } "headclip" "headclip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 60 394 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 60 394 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 394 60 394 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 5 395 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 5 395 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 13 395 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 395 13 395 14 , SrcSpan "tests/examples/Attributes.hs" 395 25 395 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 14 395 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 14 395 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 14 395 23 , srcInfoPoints = [] } "HeadLabel")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 24 395 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 24 395 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 36 395 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 395 36 395 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 38 395 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 38 395 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 38 395 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 38 395 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 38 395 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 49 395 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 49 395 60 , srcInfoPoints = [] } "headlabel" "headlabel"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 61 395 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 61 395 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 395 61 395 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 5 396 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 5 396 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 13 396 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 396 13 396 14 , SrcSpan "tests/examples/Attributes.hs" 396 24 396 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 14 396 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 14 396 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 14 396 22 , srcInfoPoints = [] } "HeadPort")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 23 396 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 23 396 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 36 396 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 396 36 396 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 38 396 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 38 396 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 38 396 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 38 396 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 38 396 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 49 396 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 49 396 59 , srcInfoPoints = [] } "headport" "headport"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 60 396 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 60 396 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 396 60 396 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 5 397 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 5 397 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 13 397 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 397 13 397 14 , SrcSpan "tests/examples/Attributes.hs" 397 26 397 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 14 397 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 14 397 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 14 397 24 , srcInfoPoints = [] } "HeadTarget")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 25 397 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 25 397 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 36 397 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 397 36 397 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 38 397 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 38 397 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 38 397 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 38 397 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 38 397 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 49 397 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 49 397 61 , srcInfoPoints = [] } "headtarget" "headtarget"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 62 397 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 62 397 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 397 62 397 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 5 398 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 5 398 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 13 398 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 398 13 398 14 , SrcSpan "tests/examples/Attributes.hs" 398 27 398 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 14 398 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 14 398 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 14 398 25 , srcInfoPoints = [] } "HeadTooltip")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 26 398 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 26 398 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 36 398 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 398 36 398 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 38 398 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 38 398 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 38 398 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 38 398 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 38 398 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 49 398 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 49 398 62 , srcInfoPoints = [] } "headtooltip" "headtooltip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 63 398 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 63 398 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 398 63 398 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 5 399 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 5 399 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 13 399 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 399 13 399 14 , SrcSpan "tests/examples/Attributes.hs" 399 22 399 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 14 399 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 14 399 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 14 399 20 , srcInfoPoints = [] } "Height")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 21 399 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 21 399 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 36 399 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 399 36 399 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 38 399 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 38 399 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 38 399 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 38 399 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 38 399 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 49 399 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 49 399 57 , srcInfoPoints = [] } "height" "height"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 58 399 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 58 399 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 399 58 399 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 5 400 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 5 400 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 13 400 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 400 13 400 14 , SrcSpan "tests/examples/Attributes.hs" 400 18 400 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 14 400 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 14 400 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 14 400 16 , srcInfoPoints = [] } "ID")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 17 400 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 17 400 18 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 36 400 55 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 400 36 400 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 38 400 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 38 400 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 38 400 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 38 400 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 38 400 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 49 400 53 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 49 400 53 , srcInfoPoints = [] } "id" "id"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 54 400 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 54 400 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 400 54 400 55 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 5 401 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 5 401 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 13 401 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 401 13 401 14 , SrcSpan "tests/examples/Attributes.hs" 401 21 401 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 14 401 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 14 401 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 14 401 19 , srcInfoPoints = [] } "Image")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 20 401 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 20 401 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 36 401 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 401 36 401 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 38 401 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 38 401 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 38 401 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 38 401 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 38 401 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 49 401 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 49 401 56 , srcInfoPoints = [] } "image" "image"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 57 401 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 57 401 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 401 57 401 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 5 402 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 5 402 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 13 402 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 402 13 402 14 , SrcSpan "tests/examples/Attributes.hs" 402 26 402 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 14 402 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 14 402 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 14 402 24 , srcInfoPoints = [] } "ImageScale")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 25 402 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 25 402 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 36 402 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 402 36 402 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 38 402 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 38 402 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 38 402 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 38 402 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 38 402 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 49 402 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 49 402 61 , srcInfoPoints = [] } "imagescale" "imagescale"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 62 402 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 62 402 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 402 62 402 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 5 403 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 5 403 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 13 403 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 403 13 403 14 , SrcSpan "tests/examples/Attributes.hs" 403 24 403 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 14 403 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 14 403 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 14 403 22 , srcInfoPoints = [] } "LabelURL")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 23 403 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 23 403 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 36 403 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 403 36 403 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 38 403 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 38 403 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 38 403 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 38 403 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 38 403 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 49 403 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 49 403 59 , srcInfoPoints = [] } "labelURL" "labelURL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 60 403 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 60 403 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 403 60 403 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 5 404 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 5 404 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 13 404 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 404 13 404 14 , SrcSpan "tests/examples/Attributes.hs" 404 26 404 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 14 404 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 14 404 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 14 404 24 , srcInfoPoints = [] } "LabelAngle")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 25 404 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 25 404 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 36 404 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 404 36 404 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 38 404 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 38 404 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 38 404 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 38 404 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 38 404 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 49 404 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 49 404 61 , srcInfoPoints = [] } "labelangle" "labelangle"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 62 404 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 62 404 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 404 62 404 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 5 405 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 5 405 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 13 405 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 405 13 405 14 , SrcSpan "tests/examples/Attributes.hs" 405 29 405 30 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 14 405 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 14 405 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 14 405 27 , srcInfoPoints = [] } "LabelDistance")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 28 405 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 28 405 29 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 36 405 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 405 36 405 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 38 405 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 38 405 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 38 405 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 38 405 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 38 405 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 49 405 64 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 49 405 64 , srcInfoPoints = [] } "labeldistance" "labeldistance"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 65 405 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 65 405 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 405 65 405 66 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 5 406 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 5 406 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 13 406 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 406 13 406 14 , SrcSpan "tests/examples/Attributes.hs" 406 26 406 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 14 406 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 14 406 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 14 406 24 , srcInfoPoints = [] } "LabelFloat")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 25 406 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 25 406 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 36 406 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 406 36 406 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 38 406 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 38 406 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 38 406 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 38 406 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 38 406 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 49 406 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 49 406 61 , srcInfoPoints = [] } "labelfloat" "labelfloat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 62 406 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 62 406 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 406 62 406 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 5 407 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 5 407 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 13 407 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 407 13 407 14 , SrcSpan "tests/examples/Attributes.hs" 407 30 407 31 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 14 407 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 14 407 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 14 407 28 , srcInfoPoints = [] } "LabelFontColor")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 29 407 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 29 407 30 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 36 407 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 407 36 407 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 38 407 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 38 407 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 38 407 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 38 407 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 38 407 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 49 407 65 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 49 407 65 , srcInfoPoints = [] } "labelfontcolor" "labelfontcolor"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 66 407 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 66 407 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 407 66 407 67 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 5 408 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 5 408 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 13 408 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 408 13 408 14 , SrcSpan "tests/examples/Attributes.hs" 408 29 408 30 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 14 408 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 14 408 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 14 408 27 , srcInfoPoints = [] } "LabelFontName")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 28 408 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 28 408 29 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 36 408 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 408 36 408 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 38 408 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 38 408 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 38 408 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 38 408 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 38 408 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 49 408 64 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 49 408 64 , srcInfoPoints = [] } "labelfontname" "labelfontname"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 65 408 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 65 408 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 408 65 408 66 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 5 409 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 5 409 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 13 409 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 409 13 409 14 , SrcSpan "tests/examples/Attributes.hs" 409 29 409 30 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 14 409 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 14 409 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 14 409 27 , srcInfoPoints = [] } "LabelFontSize")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 28 409 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 28 409 29 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 36 409 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 409 36 409 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 38 409 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 38 409 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 38 409 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 38 409 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 38 409 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 49 409 64 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 49 409 64 , srcInfoPoints = [] } "labelfontsize" "labelfontsize"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 65 409 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 65 409 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 409 65 409 66 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 5 410 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 5 410 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 13 410 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 410 13 410 14 , SrcSpan "tests/examples/Attributes.hs" 410 25 410 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 14 410 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 14 410 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 14 410 23 , srcInfoPoints = [] } "LabelJust")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 24 410 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 24 410 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 36 410 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 410 36 410 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 38 410 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 38 410 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 38 410 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 38 410 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 38 410 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 49 410 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 49 410 60 , srcInfoPoints = [] } "labeljust" "labeljust"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 61 410 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 61 410 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 410 61 410 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 5 411 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 5 411 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 13 411 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 411 13 411 14 , SrcSpan "tests/examples/Attributes.hs" 411 24 411 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 14 411 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 14 411 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 14 411 22 , srcInfoPoints = [] } "LabelLoc")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 23 411 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 23 411 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 36 411 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 411 36 411 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 38 411 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 38 411 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 38 411 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 38 411 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 38 411 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 49 411 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 49 411 59 , srcInfoPoints = [] } "labelloc" "labelloc"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 60 411 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 60 411 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 411 60 411 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 5 412 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 5 412 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 13 412 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 412 13 412 14 , SrcSpan "tests/examples/Attributes.hs" 412 27 412 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 14 412 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 14 412 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 14 412 25 , srcInfoPoints = [] } "LabelTarget")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 26 412 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 26 412 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 36 412 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 412 36 412 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 38 412 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 38 412 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 38 412 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 38 412 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 38 412 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 49 412 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 49 412 62 , srcInfoPoints = [] } "labeltarget" "labeltarget"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 63 412 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 63 412 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 412 63 412 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 5 413 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 5 413 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 13 413 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 413 13 413 14 , SrcSpan "tests/examples/Attributes.hs" 413 28 413 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 14 413 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 14 413 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 14 413 26 , srcInfoPoints = [] } "LabelTooltip")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 27 413 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 27 413 28 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 36 413 65 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 413 36 413 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 38 413 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 38 413 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 38 413 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 38 413 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 38 413 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 49 413 63 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 49 413 63 , srcInfoPoints = [] } "labeltooltip" "labeltooltip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 64 413 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 64 413 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 413 64 413 65 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 5 414 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 5 414 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 13 414 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 414 13 414 14 , SrcSpan "tests/examples/Attributes.hs" 414 21 414 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 14 414 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 14 414 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 14 414 19 , srcInfoPoints = [] } "Label")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 20 414 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 20 414 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 36 414 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 414 36 414 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 38 414 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 38 414 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 38 414 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 38 414 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 38 414 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 49 414 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 49 414 56 , srcInfoPoints = [] } "label" "label"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 57 414 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 57 414 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 414 57 414 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 5 415 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 5 415 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 13 415 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 415 13 415 14 , SrcSpan "tests/examples/Attributes.hs" 415 25 415 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 14 415 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 14 415 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 14 415 23 , srcInfoPoints = [] } "Landscape")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 24 415 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 24 415 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 36 415 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 415 36 415 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 38 415 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 38 415 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 38 415 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 38 415 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 38 415 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 49 415 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 49 415 60 , srcInfoPoints = [] } "landscape" "landscape"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 61 415 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 61 415 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 415 61 415 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 5 416 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 5 416 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 13 416 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 416 13 416 14 , SrcSpan "tests/examples/Attributes.hs" 416 24 416 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 14 416 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 14 416 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 14 416 22 , srcInfoPoints = [] } "LayerSep")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 23 416 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 23 416 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 36 416 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 416 36 416 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 38 416 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 38 416 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 38 416 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 38 416 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 38 416 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 49 416 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 49 416 59 , srcInfoPoints = [] } "layersep" "layersep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 60 416 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 60 416 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 416 60 416 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 5 417 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 5 417 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 13 417 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 417 13 417 14 , SrcSpan "tests/examples/Attributes.hs" 417 22 417 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 14 417 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 14 417 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 14 417 20 , srcInfoPoints = [] } "Layers")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 21 417 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 21 417 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 36 417 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 417 36 417 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 38 417 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 38 417 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 38 417 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 38 417 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 38 417 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 49 417 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 49 417 57 , srcInfoPoints = [] } "layers" "layers"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 58 417 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 58 417 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 417 58 417 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 5 418 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 5 418 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 13 418 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 418 13 418 14 , SrcSpan "tests/examples/Attributes.hs" 418 21 418 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 14 418 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 14 418 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 14 418 19 , srcInfoPoints = [] } "Layer")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 20 418 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 20 418 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 36 418 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 418 36 418 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 38 418 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 38 418 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 38 418 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 38 418 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 38 418 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 49 418 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 49 418 56 , srcInfoPoints = [] } "layer" "layer"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 57 418 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 57 418 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 418 57 418 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 5 419 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 5 419 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 13 419 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 419 13 419 14 , SrcSpan "tests/examples/Attributes.hs" 419 22 419 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 14 419 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 14 419 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 14 419 20 , srcInfoPoints = [] } "Layout")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 21 419 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 21 419 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 36 419 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 419 36 419 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 38 419 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 38 419 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 38 419 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 38 419 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 38 419 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 49 419 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 49 419 57 , srcInfoPoints = [] } "layout" "layout"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 58 419 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 58 419 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 419 58 419 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 5 420 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 5 420 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 13 420 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 420 13 420 14 , SrcSpan "tests/examples/Attributes.hs" 420 19 420 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 14 420 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 14 420 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 14 420 17 , srcInfoPoints = [] } "Len")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 18 420 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 18 420 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 36 420 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 420 36 420 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 38 420 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 38 420 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 38 420 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 38 420 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 38 420 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 49 420 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 49 420 54 , srcInfoPoints = [] } "len" "len"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 55 420 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 55 420 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 420 55 420 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 5 421 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 5 421 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 13 421 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 421 13 421 14 , SrcSpan "tests/examples/Attributes.hs" 421 25 421 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 14 421 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 14 421 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 14 421 23 , srcInfoPoints = [] } "LevelsGap")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 24 421 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 24 421 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 36 421 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 421 36 421 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 38 421 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 38 421 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 38 421 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 38 421 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 38 421 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 49 421 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 49 421 60 , srcInfoPoints = [] } "levelsgap" "levelsgap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 61 421 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 61 421 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 421 61 421 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 5 422 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 5 422 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 13 422 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 422 13 422 14 , SrcSpan "tests/examples/Attributes.hs" 422 22 422 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 14 422 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 14 422 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 14 422 20 , srcInfoPoints = [] } "Levels")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 21 422 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 21 422 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 36 422 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 422 36 422 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 38 422 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 38 422 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 38 422 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 38 422 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 38 422 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 49 422 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 49 422 57 , srcInfoPoints = [] } "levels" "levels"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 58 422 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 58 422 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 422 58 422 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 5 423 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 5 423 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 13 423 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 423 13 423 14 , SrcSpan "tests/examples/Attributes.hs" 423 21 423 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 14 423 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 14 423 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 14 423 19 , srcInfoPoints = [] } "LHead")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 20 423 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 20 423 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 36 423 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 423 36 423 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 38 423 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 38 423 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 38 423 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 38 423 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 38 423 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 49 423 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 49 423 56 , srcInfoPoints = [] } "lhead" "lhead"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 57 423 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 57 423 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 423 57 423 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 5 424 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 5 424 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 13 424 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 424 13 424 14 , SrcSpan "tests/examples/Attributes.hs" 424 20 424 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 14 424 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 14 424 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 14 424 18 , srcInfoPoints = [] } "LPos")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 19 424 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 19 424 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 36 424 55 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 424 36 424 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 38 424 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 38 424 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 38 424 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 38 424 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 38 424 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 49 424 53 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 49 424 53 , srcInfoPoints = [] } "lp" "lp"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 54 424 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 54 424 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 424 54 424 55 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 5 425 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 5 425 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 13 425 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 425 13 425 14 , SrcSpan "tests/examples/Attributes.hs" 425 21 425 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 14 425 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 14 425 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 14 425 19 , srcInfoPoints = [] } "LTail")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 20 425 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 20 425 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 36 425 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 425 36 425 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 38 425 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 38 425 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 38 425 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 38 425 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 38 425 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 49 425 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 49 425 56 , srcInfoPoints = [] } "ltail" "ltail"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 57 425 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 57 425 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 425 57 425 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 5 426 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 5 426 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 13 426 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 426 13 426 14 , SrcSpan "tests/examples/Attributes.hs" 426 22 426 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 14 426 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 14 426 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 14 426 20 , srcInfoPoints = [] } "Margin")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 21 426 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 21 426 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 36 426 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 426 36 426 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 38 426 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 38 426 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 38 426 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 38 426 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 38 426 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 49 426 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 49 426 57 , srcInfoPoints = [] } "margin" "margin"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 58 426 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 58 426 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 426 58 426 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 5 427 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 5 427 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 13 427 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 427 13 427 14 , SrcSpan "tests/examples/Attributes.hs" 427 23 427 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 14 427 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 14 427 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 14 427 21 , srcInfoPoints = [] } "MaxIter")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 22 427 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 22 427 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 36 427 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 427 36 427 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 38 427 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 38 427 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 38 427 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 38 427 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 38 427 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 49 427 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 49 427 58 , srcInfoPoints = [] } "maxiter" "maxiter"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 59 427 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 59 427 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 427 59 427 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 5 428 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 5 428 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 13 428 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 428 13 428 14 , SrcSpan "tests/examples/Attributes.hs" 428 23 428 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 14 428 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 14 428 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 14 428 21 , srcInfoPoints = [] } "MCLimit")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 22 428 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 22 428 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 36 428 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 428 36 428 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 38 428 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 38 428 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 38 428 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 38 428 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 38 428 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 49 428 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 49 428 58 , srcInfoPoints = [] } "mclimit" "mclimit"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 59 428 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 59 428 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 428 59 428 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 5 429 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 5 429 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 13 429 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 429 13 429 14 , SrcSpan "tests/examples/Attributes.hs" 429 23 429 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 14 429 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 14 429 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 14 429 21 , srcInfoPoints = [] } "MinDist")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 22 429 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 22 429 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 36 429 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 429 36 429 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 38 429 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 38 429 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 38 429 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 38 429 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 38 429 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 49 429 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 49 429 58 , srcInfoPoints = [] } "mindist" "mindist"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 59 429 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 59 429 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 429 59 429 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 5 430 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 5 430 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 13 430 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 430 13 430 14 , SrcSpan "tests/examples/Attributes.hs" 430 22 430 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 14 430 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 14 430 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 14 430 20 , srcInfoPoints = [] } "MinLen")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 21 430 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 21 430 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 36 430 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 430 36 430 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 38 430 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 38 430 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 38 430 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 38 430 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 38 430 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 49 430 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 49 430 57 , srcInfoPoints = [] } "minlen" "minlen"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 58 430 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 58 430 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 430 58 430 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 5 431 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 5 431 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 13 431 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 431 13 431 14 , SrcSpan "tests/examples/Attributes.hs" 431 21 431 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 14 431 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 14 431 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 14 431 19 , srcInfoPoints = [] } "Model")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 20 431 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 20 431 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 36 431 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 431 36 431 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 38 431 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 38 431 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 38 431 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 38 431 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 38 431 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 49 431 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 49 431 56 , srcInfoPoints = [] } "model" "model"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 57 431 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 57 431 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 431 57 431 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 5 432 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 5 432 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 13 432 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 432 13 432 14 , SrcSpan "tests/examples/Attributes.hs" 432 20 432 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 14 432 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 14 432 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 14 432 18 , srcInfoPoints = [] } "Mode")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 19 432 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 19 432 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 36 432 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 432 36 432 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 38 432 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 38 432 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 38 432 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 38 432 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 38 432 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 49 432 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 49 432 55 , srcInfoPoints = [] } "mode" "mode"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 56 432 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 56 432 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 432 56 432 57 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 5 433 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 5 433 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 13 433 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 433 13 433 14 , SrcSpan "tests/examples/Attributes.hs" 433 21 433 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 14 433 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 14 433 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 14 433 19 , srcInfoPoints = [] } "Mosek")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 20 433 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 20 433 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 36 433 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 433 36 433 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 38 433 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 38 433 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 38 433 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 38 433 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 38 433 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 49 433 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 49 433 56 , srcInfoPoints = [] } "mosek" "mosek"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 57 433 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 57 433 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 433 57 433 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 5 434 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 5 434 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 13 434 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 434 13 434 14 , SrcSpan "tests/examples/Attributes.hs" 434 23 434 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 14 434 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 14 434 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 14 434 21 , srcInfoPoints = [] } "NodeSep")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 22 434 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 22 434 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 36 434 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 434 36 434 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 38 434 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 38 434 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 38 434 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 38 434 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 38 434 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 49 434 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 49 434 58 , srcInfoPoints = [] } "nodesep" "nodesep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 59 434 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 59 434 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 434 59 434 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 5 435 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 5 435 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 13 435 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 435 13 435 14 , SrcSpan "tests/examples/Attributes.hs" 435 25 435 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 14 435 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 14 435 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 14 435 23 , srcInfoPoints = [] } "NoJustify")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 24 435 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 24 435 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 36 435 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 435 36 435 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 38 435 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 38 435 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 38 435 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 38 435 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 38 435 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 49 435 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 49 435 60 , srcInfoPoints = [] } "nojustify" "nojustify"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 61 435 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 61 435 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 435 61 435 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 5 436 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 5 436 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 13 436 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 436 13 436 14 , SrcSpan "tests/examples/Attributes.hs" 436 25 436 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 14 436 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 14 436 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 14 436 23 , srcInfoPoints = [] } "Normalize")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 24 436 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 24 436 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 36 436 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 436 36 436 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 38 436 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 38 436 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 38 436 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 38 436 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 38 436 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 49 436 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 49 436 60 , srcInfoPoints = [] } "normalize" "normalize"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 61 436 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 61 436 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 436 61 436 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 5 437 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 5 437 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 13 437 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 437 13 437 14 , SrcSpan "tests/examples/Attributes.hs" 437 24 437 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 14 437 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 14 437 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 14 437 22 , srcInfoPoints = [] } "Nslimit1")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 23 437 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 23 437 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 36 437 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 437 36 437 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 38 437 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 38 437 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 38 437 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 38 437 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 38 437 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 49 437 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 49 437 59 , srcInfoPoints = [] } "nslimit1" "nslimit1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 60 437 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 60 437 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 437 60 437 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 5 438 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 5 438 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 13 438 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 438 13 438 14 , SrcSpan "tests/examples/Attributes.hs" 438 23 438 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 14 438 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 14 438 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 14 438 21 , srcInfoPoints = [] } "Nslimit")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 22 438 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 22 438 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 36 438 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 438 36 438 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 38 438 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 38 438 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 38 438 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 38 438 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 38 438 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 49 438 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 49 438 58 , srcInfoPoints = [] } "nslimit" "nslimit"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 59 438 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 59 438 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 438 59 438 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 5 439 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 5 439 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 13 439 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 439 13 439 14 , SrcSpan "tests/examples/Attributes.hs" 439 24 439 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 14 439 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 14 439 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 14 439 22 , srcInfoPoints = [] } "Ordering")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 23 439 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 23 439 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 36 439 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 439 36 439 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 38 439 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 38 439 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 38 439 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 38 439 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 38 439 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 49 439 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 49 439 59 , srcInfoPoints = [] } "ordering" "ordering"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 60 439 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 60 439 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 439 60 439 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 5 440 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 5 440 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 13 440 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 440 13 440 14 , SrcSpan "tests/examples/Attributes.hs" 440 27 440 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 14 440 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 14 440 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 14 440 25 , srcInfoPoints = [] } "Orientation")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 26 440 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 26 440 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 36 440 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 440 36 440 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 38 440 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 38 440 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 38 440 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 38 440 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 38 440 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 49 440 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 49 440 62 , srcInfoPoints = [] } "orientation" "orientation"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 63 440 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 63 440 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 440 63 440 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 5 441 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 5 441 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 13 441 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 441 13 441 14 , SrcSpan "tests/examples/Attributes.hs" 441 27 441 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 14 441 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 14 441 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 14 441 25 , srcInfoPoints = [] } "OutputOrder")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 26 441 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 26 441 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 36 441 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 441 36 441 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 38 441 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 38 441 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 38 441 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 38 441 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 38 441 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 49 441 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 49 441 62 , srcInfoPoints = [] } "outputorder" "outputorder"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 63 441 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 63 441 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 441 63 441 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 5 442 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 5 442 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 13 442 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 442 13 442 14 , SrcSpan "tests/examples/Attributes.hs" 442 30 442 31 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 14 442 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 14 442 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 14 442 28 , srcInfoPoints = [] } "OverlapScaling")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 29 442 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 29 442 30 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 36 442 68 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 442 36 442 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 38 442 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 38 442 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 38 442 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 38 442 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 38 442 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 49 442 66 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 49 442 66 , srcInfoPoints = [] } "overlap_scaling" "overlap_scaling"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 67 442 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 67 442 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 442 67 442 68 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 5 443 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 5 443 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 13 443 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 443 13 443 14 , SrcSpan "tests/examples/Attributes.hs" 443 23 443 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 14 443 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 14 443 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 14 443 21 , srcInfoPoints = [] } "Overlap")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 22 443 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 22 443 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 36 443 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 443 36 443 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 38 443 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 38 443 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 38 443 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 38 443 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 38 443 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 49 443 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 49 443 58 , srcInfoPoints = [] } "overlap" "overlap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 59 443 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 59 443 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 443 59 443 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 5 444 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 5 444 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 13 444 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 444 13 444 14 , SrcSpan "tests/examples/Attributes.hs" 444 24 444 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 14 444 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 14 444 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 14 444 22 , srcInfoPoints = [] } "PackMode")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 23 444 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 23 444 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 36 444 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 444 36 444 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 38 444 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 38 444 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 38 444 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 38 444 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 38 444 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 49 444 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 49 444 59 , srcInfoPoints = [] } "packmode" "packmode"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 60 444 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 60 444 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 444 60 444 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 5 445 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 5 445 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 13 445 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 445 13 445 14 , SrcSpan "tests/examples/Attributes.hs" 445 20 445 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 14 445 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 14 445 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 14 445 18 , srcInfoPoints = [] } "Pack")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 19 445 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 19 445 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 36 445 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 445 36 445 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 38 445 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 38 445 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 38 445 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 38 445 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 38 445 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 49 445 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 49 445 55 , srcInfoPoints = [] } "pack" "pack"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 56 445 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 56 445 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 445 56 445 57 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 5 446 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 5 446 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 13 446 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 446 13 446 14 , SrcSpan "tests/examples/Attributes.hs" 446 19 446 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 14 446 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 14 446 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 14 446 17 , srcInfoPoints = [] } "Pad")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 18 446 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 18 446 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 36 446 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 446 36 446 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 38 446 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 38 446 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 38 446 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 38 446 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 38 446 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 49 446 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 49 446 54 , srcInfoPoints = [] } "pad" "pad"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 55 446 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 55 446 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 446 55 446 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 5 447 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 5 447 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 13 447 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 447 13 447 14 , SrcSpan "tests/examples/Attributes.hs" 447 23 447 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 14 447 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 14 447 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 14 447 21 , srcInfoPoints = [] } "PageDir")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 22 447 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 22 447 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 36 447 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 447 36 447 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 38 447 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 38 447 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 38 447 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 38 447 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 38 447 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 49 447 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 49 447 58 , srcInfoPoints = [] } "pagedir" "pagedir"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 59 447 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 59 447 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 447 59 447 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 5 448 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 5 448 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 13 448 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 448 13 448 14 , SrcSpan "tests/examples/Attributes.hs" 448 20 448 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 14 448 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 14 448 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 14 448 18 , srcInfoPoints = [] } "Page")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 19 448 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 19 448 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 36 448 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 448 36 448 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 38 448 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 38 448 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 38 448 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 38 448 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 38 448 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 49 448 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 49 448 55 , srcInfoPoints = [] } "page" "page"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 56 448 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 56 448 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 448 56 448 57 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 5 449 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 5 449 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 13 449 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 449 13 449 14 , SrcSpan "tests/examples/Attributes.hs" 449 24 449 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 14 449 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 14 449 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 14 449 22 , srcInfoPoints = [] } "PenColor")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 23 449 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 23 449 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 36 449 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 449 36 449 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 38 449 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 38 449 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 38 449 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 38 449 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 38 449 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 49 449 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 49 449 59 , srcInfoPoints = [] } "pencolor" "pencolor"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 60 449 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 60 449 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 449 60 449 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 5 450 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 5 450 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 13 450 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 450 13 450 14 , SrcSpan "tests/examples/Attributes.hs" 450 24 450 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 14 450 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 14 450 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 14 450 22 , srcInfoPoints = [] } "PenWidth")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 23 450 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 23 450 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 36 450 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 450 36 450 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 38 450 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 38 450 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 38 450 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 38 450 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 38 450 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 49 450 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 49 450 59 , srcInfoPoints = [] } "penwidth" "penwidth"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 60 450 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 60 450 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 450 60 450 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 5 451 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 5 451 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 13 451 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 451 13 451 14 , SrcSpan "tests/examples/Attributes.hs" 451 27 451 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 14 451 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 14 451 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 14 451 25 , srcInfoPoints = [] } "Peripheries")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 26 451 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 26 451 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 36 451 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 451 36 451 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 38 451 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 38 451 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 38 451 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 38 451 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 38 451 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 49 451 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 49 451 62 , srcInfoPoints = [] } "peripheries" "peripheries"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 63 451 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 63 451 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 451 63 451 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 5 452 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 5 452 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 13 452 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 452 13 452 14 , SrcSpan "tests/examples/Attributes.hs" 452 19 452 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 14 452 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 14 452 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 14 452 17 , srcInfoPoints = [] } "Pin")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 18 452 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 18 452 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 36 452 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 452 36 452 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 38 452 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 38 452 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 38 452 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 38 452 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 38 452 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 49 452 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 49 452 54 , srcInfoPoints = [] } "pin" "pin"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 55 452 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 55 452 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 452 55 452 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 5 453 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 5 453 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 13 453 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 453 13 453 14 , SrcSpan "tests/examples/Attributes.hs" 453 19 453 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 14 453 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 14 453 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 14 453 17 , srcInfoPoints = [] } "Pos")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 18 453 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 18 453 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 36 453 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 453 36 453 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 38 453 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 38 453 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 38 453 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 38 453 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 38 453 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 49 453 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 49 453 54 , srcInfoPoints = [] } "pos" "pos"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 55 453 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 55 453 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 453 55 453 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 5 454 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 5 454 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 13 454 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 454 13 454 14 , SrcSpan "tests/examples/Attributes.hs" 454 24 454 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 14 454 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 14 454 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 14 454 22 , srcInfoPoints = [] } "QuadTree")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 23 454 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 23 454 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 36 454 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 454 36 454 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 38 454 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 38 454 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 38 454 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 38 454 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 38 454 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 49 454 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 49 454 59 , srcInfoPoints = [] } "quadtree" "quadtree"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 60 454 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 60 454 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 454 60 454 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 5 455 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 5 455 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 13 455 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 455 13 455 14 , SrcSpan "tests/examples/Attributes.hs" 455 23 455 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 14 455 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 14 455 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 14 455 21 , srcInfoPoints = [] } "Quantum")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 22 455 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 22 455 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 36 455 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 455 36 455 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 38 455 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 38 455 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 38 455 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 38 455 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 38 455 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 49 455 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 49 455 58 , srcInfoPoints = [] } "quantum" "quantum"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 59 455 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 59 455 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 455 59 455 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 5 456 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 5 456 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 13 456 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 456 13 456 14 , SrcSpan "tests/examples/Attributes.hs" 456 23 456 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 14 456 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 14 456 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 14 456 21 , srcInfoPoints = [] } "RankDir")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 22 456 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 22 456 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 36 456 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 456 36 456 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 38 456 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 38 456 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 38 456 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 38 456 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 38 456 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 49 456 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 49 456 58 , srcInfoPoints = [] } "rankdir" "rankdir"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 59 456 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 59 456 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 456 59 456 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 5 457 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 5 457 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 13 457 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 457 13 457 14 , SrcSpan "tests/examples/Attributes.hs" 457 23 457 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 14 457 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 14 457 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 14 457 21 , srcInfoPoints = [] } "RankSep")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 22 457 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 22 457 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 36 457 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 457 36 457 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 38 457 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 38 457 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 38 457 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 38 457 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 38 457 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 49 457 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 49 457 58 , srcInfoPoints = [] } "ranksep" "ranksep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 59 457 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 59 457 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 457 59 457 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 5 458 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 5 458 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 13 458 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 458 13 458 14 , SrcSpan "tests/examples/Attributes.hs" 458 20 458 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 14 458 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 14 458 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 14 458 18 , srcInfoPoints = [] } "Rank")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 19 458 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 19 458 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 36 458 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 458 36 458 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 38 458 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 38 458 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 38 458 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 38 458 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 38 458 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 49 458 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 49 458 55 , srcInfoPoints = [] } "rank" "rank"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 56 458 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 56 458 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 458 56 458 57 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 5 459 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 5 459 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 13 459 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 459 13 459 14 , SrcSpan "tests/examples/Attributes.hs" 459 21 459 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 14 459 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 14 459 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 14 459 19 , srcInfoPoints = [] } "Ratio")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 20 459 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 20 459 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 36 459 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 459 36 459 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 38 459 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 38 459 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 38 459 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 38 459 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 38 459 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 49 459 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 49 459 56 , srcInfoPoints = [] } "ratio" "ratio"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 57 459 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 57 459 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 459 57 459 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 5 460 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 5 460 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 13 460 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 460 13 460 14 , SrcSpan "tests/examples/Attributes.hs" 460 21 460 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 14 460 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 14 460 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 14 460 19 , srcInfoPoints = [] } "Rects")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 20 460 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 20 460 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 36 460 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 460 36 460 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 38 460 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 38 460 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 38 460 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 38 460 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 38 460 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 49 460 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 49 460 56 , srcInfoPoints = [] } "rects" "rects"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 57 460 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 57 460 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 460 57 460 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 5 461 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 5 461 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 13 461 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 461 13 461 14 , SrcSpan "tests/examples/Attributes.hs" 461 23 461 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 14 461 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 14 461 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 14 461 21 , srcInfoPoints = [] } "Regular")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 22 461 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 22 461 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 36 461 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 461 36 461 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 38 461 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 38 461 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 38 461 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 38 461 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 38 461 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 49 461 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 49 461 58 , srcInfoPoints = [] } "regular" "regular"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 59 461 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 59 461 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 461 59 461 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 5 462 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 5 462 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 13 462 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 462 13 462 14 , SrcSpan "tests/examples/Attributes.hs" 462 26 462 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 14 462 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 14 462 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 14 462 24 , srcInfoPoints = [] } "ReMinCross")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 25 462 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 25 462 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 36 462 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 462 36 462 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 38 462 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 38 462 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 38 462 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 38 462 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 38 462 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 49 462 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 49 462 61 , srcInfoPoints = [] } "remincross" "remincross"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 62 462 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 62 462 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 462 62 462 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 5 463 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 5 463 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 13 463 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 463 13 463 14 , SrcSpan "tests/examples/Attributes.hs" 463 30 463 31 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 14 463 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 14 463 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 14 463 28 , srcInfoPoints = [] } "RepulsiveForce")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 29 463 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 29 463 30 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 36 463 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 463 36 463 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 38 463 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 38 463 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 38 463 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 38 463 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 38 463 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 49 463 65 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 49 463 65 , srcInfoPoints = [] } "repulsiveforce" "repulsiveforce"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 66 463 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 66 463 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 463 66 463 67 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 5 464 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 5 464 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 13 464 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 464 13 464 14 , SrcSpan "tests/examples/Attributes.hs" 464 20 464 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 14 464 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 14 464 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 14 464 18 , srcInfoPoints = [] } "Root")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 19 464 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 19 464 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 36 464 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 464 36 464 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 38 464 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 38 464 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 38 464 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 38 464 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 38 464 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 49 464 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 49 464 55 , srcInfoPoints = [] } "root" "root"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 56 464 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 56 464 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 464 56 464 57 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 5 465 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 5 465 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 13 465 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 465 13 465 14 , SrcSpan "tests/examples/Attributes.hs" 465 22 465 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 14 465 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 14 465 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 14 465 20 , srcInfoPoints = [] } "Rotate")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 21 465 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 21 465 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 36 465 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 465 36 465 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 38 465 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 38 465 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 38 465 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 38 465 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 38 465 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 49 465 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 49 465 57 , srcInfoPoints = [] } "rotate" "rotate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 58 465 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 58 465 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 465 58 465 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 5 466 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 5 466 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 13 466 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 466 13 466 14 , SrcSpan "tests/examples/Attributes.hs" 466 24 466 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 14 466 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 14 466 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 14 466 22 , srcInfoPoints = [] } "SameHead")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 23 466 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 23 466 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 36 466 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 466 36 466 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 38 466 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 38 466 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 38 466 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 38 466 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 38 466 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 49 466 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 49 466 59 , srcInfoPoints = [] } "samehead" "samehead"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 60 466 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 60 466 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 466 60 466 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 5 467 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 5 467 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 13 467 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 467 13 467 14 , SrcSpan "tests/examples/Attributes.hs" 467 24 467 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 14 467 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 14 467 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 14 467 22 , srcInfoPoints = [] } "SameTail")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 23 467 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 23 467 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 36 467 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 467 36 467 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 38 467 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 38 467 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 38 467 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 38 467 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 38 467 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 49 467 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 49 467 59 , srcInfoPoints = [] } "sametail" "sametail"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 60 467 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 60 467 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 467 60 467 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 5 468 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 5 468 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 13 468 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 468 13 468 14 , SrcSpan "tests/examples/Attributes.hs" 468 28 468 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 14 468 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 14 468 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 14 468 26 , srcInfoPoints = [] } "SamplePoints")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 27 468 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 27 468 28 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 36 468 65 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 468 36 468 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 38 468 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 38 468 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 38 468 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 38 468 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 38 468 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 49 468 63 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 49 468 63 , srcInfoPoints = [] } "samplepoints" "samplepoints"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 64 468 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 64 468 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 468 64 468 65 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 5 469 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 5 469 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 13 469 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 469 13 469 14 , SrcSpan "tests/examples/Attributes.hs" 469 26 469 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 14 469 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 14 469 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 14 469 24 , srcInfoPoints = [] } "SearchSize")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 25 469 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 25 469 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 36 469 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 469 36 469 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 38 469 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 38 469 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 38 469 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 38 469 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 38 469 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 49 469 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 49 469 61 , srcInfoPoints = [] } "searchsize" "searchsize"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 62 469 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 62 469 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 469 62 469 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 5 470 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 5 470 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 13 470 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 470 13 470 14 , SrcSpan "tests/examples/Attributes.hs" 470 19 470 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 14 470 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 14 470 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 14 470 17 , srcInfoPoints = [] } "Sep")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 18 470 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 18 470 19 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 36 470 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 470 36 470 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 38 470 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 38 470 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 38 470 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 38 470 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 38 470 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 49 470 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 49 470 54 , srcInfoPoints = [] } "sep" "sep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 55 470 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 55 470 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 470 55 470 56 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 5 471 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 5 471 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 13 471 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 471 13 471 14 , SrcSpan "tests/examples/Attributes.hs" 471 25 471 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 14 471 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 14 471 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 14 471 23 , srcInfoPoints = [] } "ShapeFile")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 24 471 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 24 471 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 36 471 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 471 36 471 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 38 471 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 38 471 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 38 471 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 38 471 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 38 471 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 49 471 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 49 471 60 , srcInfoPoints = [] } "shapefile" "shapefile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 61 471 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 61 471 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 471 61 471 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 5 472 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 5 472 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 13 472 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 472 13 472 14 , SrcSpan "tests/examples/Attributes.hs" 472 21 472 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 14 472 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 14 472 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 14 472 19 , srcInfoPoints = [] } "Shape")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 20 472 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 20 472 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 36 472 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 472 36 472 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 38 472 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 38 472 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 38 472 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 38 472 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 38 472 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 49 472 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 49 472 56 , srcInfoPoints = [] } "shape" "shape"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 57 472 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 57 472 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 472 57 472 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 5 473 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 5 473 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 13 473 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 473 13 473 14 , SrcSpan "tests/examples/Attributes.hs" 473 25 473 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 14 473 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 14 473 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 14 473 23 , srcInfoPoints = [] } "ShowBoxes")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 24 473 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 24 473 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 36 473 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 473 36 473 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 38 473 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 38 473 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 38 473 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 38 473 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 38 473 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 49 473 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 49 473 60 , srcInfoPoints = [] } "showboxes" "showboxes"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 61 473 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 61 473 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 473 61 473 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 5 474 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 5 474 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 13 474 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 474 13 474 14 , SrcSpan "tests/examples/Attributes.hs" 474 21 474 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 14 474 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 14 474 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 14 474 19 , srcInfoPoints = [] } "Sides")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 20 474 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 20 474 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 36 474 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 474 36 474 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 38 474 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 38 474 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 38 474 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 38 474 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 38 474 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 49 474 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 49 474 56 , srcInfoPoints = [] } "sides" "sides"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 57 474 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 57 474 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 474 57 474 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 5 475 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 5 475 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 13 475 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 475 13 475 14 , SrcSpan "tests/examples/Attributes.hs" 475 20 475 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 14 475 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 14 475 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 14 475 18 , srcInfoPoints = [] } "Size")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 19 475 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 19 475 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 36 475 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 475 36 475 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 38 475 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 38 475 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 38 475 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 38 475 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 38 475 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 49 475 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 49 475 55 , srcInfoPoints = [] } "size" "size"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 56 475 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 56 475 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 475 56 475 57 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 5 476 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 5 476 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 13 476 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 476 13 476 14 , SrcSpan "tests/examples/Attributes.hs" 476 20 476 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 14 476 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 14 476 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 14 476 18 , srcInfoPoints = [] } "Skew")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 19 476 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 19 476 20 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 36 476 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 476 36 476 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 38 476 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 38 476 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 38 476 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 38 476 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 38 476 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 49 476 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 49 476 55 , srcInfoPoints = [] } "skew" "skew"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 56 476 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 56 476 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 476 56 476 57 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 5 477 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 5 477 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 13 477 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 477 13 477 14 , SrcSpan "tests/examples/Attributes.hs" 477 25 477 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 14 477 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 14 477 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 14 477 23 , srcInfoPoints = [] } "Smoothing")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 24 477 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 24 477 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 36 477 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 477 36 477 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 38 477 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 38 477 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 38 477 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 38 477 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 38 477 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 49 477 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 49 477 60 , srcInfoPoints = [] } "smoothing" "smoothing"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 61 477 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 61 477 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 477 61 477 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 5 478 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 5 478 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 13 478 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 478 13 478 14 , SrcSpan "tests/examples/Attributes.hs" 478 21 478 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 14 478 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 14 478 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 14 478 19 , srcInfoPoints = [] } "SortV")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 20 478 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 20 478 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 36 478 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 478 36 478 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 38 478 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 38 478 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 38 478 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 38 478 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 38 478 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 49 478 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 49 478 56 , srcInfoPoints = [] } "sortv" "sortv"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 57 478 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 57 478 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 478 57 478 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 5 479 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 5 479 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 13 479 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 479 13 479 14 , SrcSpan "tests/examples/Attributes.hs" 479 23 479 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 14 479 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 14 479 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 14 479 21 , srcInfoPoints = [] } "Splines")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 22 479 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 22 479 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 36 479 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 479 36 479 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 38 479 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 38 479 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 38 479 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 38 479 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 38 479 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 49 479 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 49 479 58 , srcInfoPoints = [] } "splines" "splines"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 59 479 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 59 479 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 479 59 479 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 5 480 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 5 480 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 13 480 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 480 13 480 14 , SrcSpan "tests/examples/Attributes.hs" 480 21 480 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 14 480 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 14 480 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 14 480 19 , srcInfoPoints = [] } "Start")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 20 480 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 20 480 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 36 480 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 480 36 480 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 38 480 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 38 480 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 38 480 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 38 480 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 38 480 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 49 480 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 49 480 56 , srcInfoPoints = [] } "start" "start"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 57 480 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 57 480 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 480 57 480 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 5 481 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 5 481 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 13 481 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 481 13 481 14 , SrcSpan "tests/examples/Attributes.hs" 481 26 481 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 14 481 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 14 481 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 14 481 24 , srcInfoPoints = [] } "StyleSheet")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 25 481 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 25 481 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 36 481 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 481 36 481 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 38 481 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 38 481 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 38 481 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 38 481 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 38 481 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 49 481 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 49 481 61 , srcInfoPoints = [] } "stylesheet" "stylesheet"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 62 481 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 62 481 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 481 62 481 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 5 482 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 5 482 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 13 482 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 482 13 482 14 , SrcSpan "tests/examples/Attributes.hs" 482 21 482 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 14 482 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 14 482 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 14 482 19 , srcInfoPoints = [] } "Style")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 20 482 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 20 482 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 36 482 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 482 36 482 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 38 482 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 38 482 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 38 482 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 38 482 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 38 482 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 49 482 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 49 482 56 , srcInfoPoints = [] } "style" "style"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 57 482 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 57 482 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 482 57 482 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 5 483 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 5 483 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 13 483 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 483 13 483 14 , SrcSpan "tests/examples/Attributes.hs" 483 23 483 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 14 483 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 14 483 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 14 483 21 , srcInfoPoints = [] } "TailURL")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 22 483 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 22 483 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 36 483 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 483 36 483 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 38 483 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 38 483 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 38 483 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 38 483 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 38 483 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 49 483 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 49 483 58 , srcInfoPoints = [] } "tailURL" "tailURL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 59 483 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 59 483 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 483 59 483 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 5 484 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 5 484 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 13 484 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 484 13 484 14 , SrcSpan "tests/examples/Attributes.hs" 484 24 484 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 14 484 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 14 484 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 14 484 22 , srcInfoPoints = [] } "TailClip")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 23 484 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 23 484 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 36 484 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 484 36 484 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 38 484 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 38 484 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 38 484 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 38 484 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 38 484 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 49 484 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 49 484 59 , srcInfoPoints = [] } "tailclip" "tailclip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 60 484 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 60 484 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 484 60 484 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 5 485 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 5 485 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 13 485 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 485 13 485 14 , SrcSpan "tests/examples/Attributes.hs" 485 25 485 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 14 485 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 14 485 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 14 485 23 , srcInfoPoints = [] } "TailLabel")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 24 485 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 24 485 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 36 485 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 485 36 485 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 38 485 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 38 485 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 38 485 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 38 485 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 38 485 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 49 485 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 49 485 60 , srcInfoPoints = [] } "taillabel" "taillabel"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 61 485 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 61 485 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 485 61 485 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 5 486 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 5 486 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 13 486 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 486 13 486 14 , SrcSpan "tests/examples/Attributes.hs" 486 24 486 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 14 486 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 14 486 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 14 486 22 , srcInfoPoints = [] } "TailPort")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 23 486 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 23 486 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 36 486 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 486 36 486 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 38 486 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 38 486 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 38 486 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 38 486 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 38 486 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 49 486 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 49 486 59 , srcInfoPoints = [] } "tailport" "tailport"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 60 486 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 60 486 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 486 60 486 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 5 487 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 5 487 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 13 487 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 487 13 487 14 , SrcSpan "tests/examples/Attributes.hs" 487 26 487 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 14 487 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 14 487 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 14 487 24 , srcInfoPoints = [] } "TailTarget")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 25 487 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 25 487 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 36 487 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 487 36 487 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 38 487 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 38 487 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 38 487 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 38 487 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 38 487 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 49 487 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 49 487 61 , srcInfoPoints = [] } "tailtarget" "tailtarget"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 62 487 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 62 487 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 487 62 487 63 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 5 488 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 5 488 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 13 488 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 488 13 488 14 , SrcSpan "tests/examples/Attributes.hs" 488 27 488 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 14 488 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 14 488 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 14 488 25 , srcInfoPoints = [] } "TailTooltip")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 26 488 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 26 488 27 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 36 488 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 488 36 488 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 38 488 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 38 488 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 38 488 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 38 488 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 38 488 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 49 488 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 49 488 62 , srcInfoPoints = [] } "tailtooltip" "tailtooltip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 63 488 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 63 488 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 488 63 488 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 5 489 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 5 489 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 13 489 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 489 13 489 14 , SrcSpan "tests/examples/Attributes.hs" 489 22 489 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 14 489 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 14 489 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 14 489 20 , srcInfoPoints = [] } "Target")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 21 489 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 21 489 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 36 489 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 489 36 489 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 38 489 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 38 489 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 38 489 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 38 489 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 38 489 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 49 489 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 49 489 57 , srcInfoPoints = [] } "target" "target"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 58 489 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 58 489 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 489 58 489 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 5 490 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 5 490 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 13 490 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 490 13 490 14 , SrcSpan "tests/examples/Attributes.hs" 490 23 490 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 14 490 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 14 490 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 14 490 21 , srcInfoPoints = [] } "Tooltip")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 22 490 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 22 490 23 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 36 490 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 490 36 490 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 38 490 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 38 490 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 38 490 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 38 490 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 38 490 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 49 490 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 49 490 58 , srcInfoPoints = [] } "tooltip" "tooltip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 59 490 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 59 490 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 490 59 490 60 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 5 491 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 5 491 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 13 491 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 491 13 491 14 , SrcSpan "tests/examples/Attributes.hs" 491 25 491 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 14 491 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 14 491 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 14 491 23 , srcInfoPoints = [] } "TrueColor")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 24 491 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 24 491 25 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 36 491 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 491 36 491 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 38 491 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 38 491 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 38 491 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 38 491 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 38 491 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 49 491 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 49 491 60 , srcInfoPoints = [] } "truecolor" "truecolor"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 61 491 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 61 491 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 491 61 491 62 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 5 492 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 5 492 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 13 492 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 492 13 492 14 , SrcSpan "tests/examples/Attributes.hs" 492 24 492 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 14 492 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 14 492 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 14 492 22 , srcInfoPoints = [] } "Vertices")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 23 492 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 23 492 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 36 492 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 492 36 492 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 38 492 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 38 492 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 38 492 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 38 492 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 38 492 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 49 492 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 49 492 59 , srcInfoPoints = [] } "vertices" "vertices"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 60 492 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 60 492 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 492 60 492 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 5 493 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 5 493 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 13 493 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 493 13 493 14 , SrcSpan "tests/examples/Attributes.hs" 493 24 493 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 14 493 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 14 493 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 14 493 22 , srcInfoPoints = [] } "ViewPort")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 23 493 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 23 493 24 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 36 493 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 493 36 493 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 38 493 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 38 493 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 38 493 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 38 493 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 38 493 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 49 493 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 49 493 59 , srcInfoPoints = [] } "viewport" "viewport"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 60 493 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 60 493 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 493 60 493 61 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 5 494 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 5 494 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 13 494 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 494 13 494 14 , SrcSpan "tests/examples/Attributes.hs" 494 26 494 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 14 494 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 14 494 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 14 494 24 , srcInfoPoints = [] } "VoroMargin")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 25 494 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 25 494 26 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 36 494 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 494 36 494 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 38 494 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 38 494 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 38 494 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 38 494 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 38 494 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 49 494 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 49 494 62 , srcInfoPoints = [] } "voro_margin" "voro_margin"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 63 494 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 63 494 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 494 63 494 64 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 5 495 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 5 495 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 13 495 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 495 13 495 14 , SrcSpan "tests/examples/Attributes.hs" 495 22 495 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 14 495 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 14 495 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 14 495 20 , srcInfoPoints = [] } "Weight")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 21 495 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 21 495 22 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 36 495 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 495 36 495 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 38 495 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 38 495 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 38 495 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 38 495 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 38 495 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 49 495 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 49 495 57 , srcInfoPoints = [] } "weight" "weight"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 58 495 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 58 495 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 495 58 495 59 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 5 496 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 5 496 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 13 496 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 496 13 496 14 , SrcSpan "tests/examples/Attributes.hs" 496 21 496 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 14 496 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 14 496 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 14 496 19 , srcInfoPoints = [] } "Width")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 20 496 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 20 496 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 36 496 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 496 36 496 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 38 496 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 38 496 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 38 496 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 38 496 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 38 496 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 49 496 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 49 496 56 , srcInfoPoints = [] } "width" "width"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 57 496 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 57 496 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 496 57 496 58 , srcInfoPoints = [] } "v"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 5 497 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 5 497 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 13 497 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 497 13 497 14 , SrcSpan "tests/examples/Attributes.hs" 497 17 497 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 14 497 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 14 497 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 14 497 15 , srcInfoPoints = [] } "Z")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 16 497 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 16 497 17 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 36 497 54 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 497 36 497 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 38 497 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 38 497 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 38 497 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 38 497 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 38 497 48 , srcInfoPoints = [] } "printField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 49 497 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 49 497 52 , srcInfoPoints = [] } "z" "z"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 53 497 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 53 497 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 497 53 497 54 , srcInfoPoints = [] } "v"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 499 5 499 30 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 499 5 499 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 499 5 499 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 499 5 499 14 , srcInfoPoints = [] } "listToDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 499 15 499 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 499 15 499 16 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 499 17 499 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 499 17 499 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 499 17 499 30 , srcInfoPoints = [] } "unqtListToDot")))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 1 653 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 501 1 501 9 , SrcSpan "tests/examples/Attributes.hs" 501 29 501 34 , SrcSpan "tests/examples/Attributes.hs" 502 5 502 5 , SrcSpan "tests/examples/Attributes.hs" 648 5 648 5 , SrcSpan "tests/examples/Attributes.hs" 650 5 650 5 , SrcSpan "tests/examples/Attributes.hs" 653 1 653 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 10 501 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 10 501 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 10 501 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 10 501 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 10 501 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 19 501 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 19 501 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 501 19 501 28 , srcInfoPoints = [] } "Attribute"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 5 646 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 5 646 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 5 502 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 5 502 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 15 646 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 502 15 502 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 17 646 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 17 502 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 17 502 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 17 502 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 23 646 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 502 23 502 24 , SrcSpan "tests/examples/Attributes.hs" 503 23 503 24 , SrcSpan "tests/examples/Attributes.hs" 504 23 504 24 , SrcSpan "tests/examples/Attributes.hs" 505 23 505 24 , SrcSpan "tests/examples/Attributes.hs" 506 23 506 24 , SrcSpan "tests/examples/Attributes.hs" 507 23 507 24 , SrcSpan "tests/examples/Attributes.hs" 508 23 508 24 , SrcSpan "tests/examples/Attributes.hs" 509 23 509 24 , SrcSpan "tests/examples/Attributes.hs" 510 23 510 24 , SrcSpan "tests/examples/Attributes.hs" 511 23 511 24 , SrcSpan "tests/examples/Attributes.hs" 512 23 512 24 , SrcSpan "tests/examples/Attributes.hs" 513 23 513 24 , SrcSpan "tests/examples/Attributes.hs" 514 23 514 24 , SrcSpan "tests/examples/Attributes.hs" 515 23 515 24 , SrcSpan "tests/examples/Attributes.hs" 516 23 516 24 , SrcSpan "tests/examples/Attributes.hs" 517 23 517 24 , SrcSpan "tests/examples/Attributes.hs" 518 23 518 24 , SrcSpan "tests/examples/Attributes.hs" 519 23 519 24 , SrcSpan "tests/examples/Attributes.hs" 520 23 520 24 , SrcSpan "tests/examples/Attributes.hs" 521 23 521 24 , SrcSpan "tests/examples/Attributes.hs" 522 23 522 24 , SrcSpan "tests/examples/Attributes.hs" 523 23 523 24 , SrcSpan "tests/examples/Attributes.hs" 524 23 524 24 , SrcSpan "tests/examples/Attributes.hs" 525 23 525 24 , SrcSpan "tests/examples/Attributes.hs" 526 23 526 24 , SrcSpan "tests/examples/Attributes.hs" 527 23 527 24 , SrcSpan "tests/examples/Attributes.hs" 528 23 528 24 , SrcSpan "tests/examples/Attributes.hs" 529 23 529 24 , SrcSpan "tests/examples/Attributes.hs" 530 23 530 24 , SrcSpan "tests/examples/Attributes.hs" 531 23 531 24 , SrcSpan "tests/examples/Attributes.hs" 532 23 532 24 , SrcSpan "tests/examples/Attributes.hs" 533 23 533 24 , SrcSpan "tests/examples/Attributes.hs" 534 23 534 24 , SrcSpan "tests/examples/Attributes.hs" 535 23 535 24 , SrcSpan "tests/examples/Attributes.hs" 536 23 536 24 , SrcSpan "tests/examples/Attributes.hs" 537 23 537 24 , SrcSpan "tests/examples/Attributes.hs" 538 23 538 24 , SrcSpan "tests/examples/Attributes.hs" 539 23 539 24 , SrcSpan "tests/examples/Attributes.hs" 540 23 540 24 , SrcSpan "tests/examples/Attributes.hs" 541 23 541 24 , SrcSpan "tests/examples/Attributes.hs" 542 23 542 24 , SrcSpan "tests/examples/Attributes.hs" 543 23 543 24 , SrcSpan "tests/examples/Attributes.hs" 544 23 544 24 , SrcSpan "tests/examples/Attributes.hs" 545 23 545 24 , SrcSpan "tests/examples/Attributes.hs" 546 23 546 24 , SrcSpan "tests/examples/Attributes.hs" 547 23 547 24 , SrcSpan "tests/examples/Attributes.hs" 548 23 548 24 , SrcSpan "tests/examples/Attributes.hs" 549 23 549 24 , SrcSpan "tests/examples/Attributes.hs" 550 23 550 24 , SrcSpan "tests/examples/Attributes.hs" 551 23 551 24 , SrcSpan "tests/examples/Attributes.hs" 552 23 552 24 , SrcSpan "tests/examples/Attributes.hs" 553 23 553 24 , SrcSpan "tests/examples/Attributes.hs" 554 23 554 24 , SrcSpan "tests/examples/Attributes.hs" 555 23 555 24 , SrcSpan "tests/examples/Attributes.hs" 556 23 556 24 , SrcSpan "tests/examples/Attributes.hs" 557 23 557 24 , SrcSpan "tests/examples/Attributes.hs" 558 23 558 24 , SrcSpan "tests/examples/Attributes.hs" 559 23 559 24 , SrcSpan "tests/examples/Attributes.hs" 560 23 560 24 , SrcSpan "tests/examples/Attributes.hs" 561 23 561 24 , SrcSpan "tests/examples/Attributes.hs" 562 23 562 24 , SrcSpan "tests/examples/Attributes.hs" 563 23 563 24 , SrcSpan "tests/examples/Attributes.hs" 564 23 564 24 , SrcSpan "tests/examples/Attributes.hs" 565 23 565 24 , SrcSpan "tests/examples/Attributes.hs" 566 23 566 24 , SrcSpan "tests/examples/Attributes.hs" 567 23 567 24 , SrcSpan "tests/examples/Attributes.hs" 568 23 568 24 , SrcSpan "tests/examples/Attributes.hs" 569 23 569 24 , SrcSpan "tests/examples/Attributes.hs" 570 23 570 24 , SrcSpan "tests/examples/Attributes.hs" 571 23 571 24 , SrcSpan "tests/examples/Attributes.hs" 572 23 572 24 , SrcSpan "tests/examples/Attributes.hs" 573 23 573 24 , SrcSpan "tests/examples/Attributes.hs" 574 23 574 24 , SrcSpan "tests/examples/Attributes.hs" 575 23 575 24 , SrcSpan "tests/examples/Attributes.hs" 576 23 576 24 , SrcSpan "tests/examples/Attributes.hs" 577 23 577 24 , SrcSpan "tests/examples/Attributes.hs" 578 23 578 24 , SrcSpan "tests/examples/Attributes.hs" 579 23 579 24 , SrcSpan "tests/examples/Attributes.hs" 580 23 580 24 , SrcSpan "tests/examples/Attributes.hs" 581 23 581 24 , SrcSpan "tests/examples/Attributes.hs" 582 23 582 24 , SrcSpan "tests/examples/Attributes.hs" 583 23 583 24 , SrcSpan "tests/examples/Attributes.hs" 584 23 584 24 , SrcSpan "tests/examples/Attributes.hs" 585 23 585 24 , SrcSpan "tests/examples/Attributes.hs" 586 23 586 24 , SrcSpan "tests/examples/Attributes.hs" 587 23 587 24 , SrcSpan "tests/examples/Attributes.hs" 588 23 588 24 , SrcSpan "tests/examples/Attributes.hs" 589 23 589 24 , SrcSpan "tests/examples/Attributes.hs" 590 23 590 24 , SrcSpan "tests/examples/Attributes.hs" 591 23 591 24 , SrcSpan "tests/examples/Attributes.hs" 592 23 592 24 , SrcSpan "tests/examples/Attributes.hs" 593 23 593 24 , SrcSpan "tests/examples/Attributes.hs" 594 23 594 24 , SrcSpan "tests/examples/Attributes.hs" 595 23 595 24 , SrcSpan "tests/examples/Attributes.hs" 596 23 596 24 , SrcSpan "tests/examples/Attributes.hs" 597 23 597 24 , SrcSpan "tests/examples/Attributes.hs" 598 23 598 24 , SrcSpan "tests/examples/Attributes.hs" 599 23 599 24 , SrcSpan "tests/examples/Attributes.hs" 600 23 600 24 , SrcSpan "tests/examples/Attributes.hs" 601 23 601 24 , SrcSpan "tests/examples/Attributes.hs" 602 23 602 24 , SrcSpan "tests/examples/Attributes.hs" 603 23 603 24 , SrcSpan "tests/examples/Attributes.hs" 604 23 604 24 , SrcSpan "tests/examples/Attributes.hs" 605 23 605 24 , SrcSpan "tests/examples/Attributes.hs" 606 23 606 24 , SrcSpan "tests/examples/Attributes.hs" 607 23 607 24 , SrcSpan "tests/examples/Attributes.hs" 608 23 608 24 , SrcSpan "tests/examples/Attributes.hs" 609 23 609 24 , SrcSpan "tests/examples/Attributes.hs" 610 23 610 24 , SrcSpan "tests/examples/Attributes.hs" 611 23 611 24 , SrcSpan "tests/examples/Attributes.hs" 612 23 612 24 , SrcSpan "tests/examples/Attributes.hs" 613 23 613 24 , SrcSpan "tests/examples/Attributes.hs" 614 23 614 24 , SrcSpan "tests/examples/Attributes.hs" 615 23 615 24 , SrcSpan "tests/examples/Attributes.hs" 616 23 616 24 , SrcSpan "tests/examples/Attributes.hs" 617 23 617 24 , SrcSpan "tests/examples/Attributes.hs" 618 23 618 24 , SrcSpan "tests/examples/Attributes.hs" 619 23 619 24 , SrcSpan "tests/examples/Attributes.hs" 620 23 620 24 , SrcSpan "tests/examples/Attributes.hs" 621 23 621 24 , SrcSpan "tests/examples/Attributes.hs" 622 23 622 24 , SrcSpan "tests/examples/Attributes.hs" 623 23 623 24 , SrcSpan "tests/examples/Attributes.hs" 624 23 624 24 , SrcSpan "tests/examples/Attributes.hs" 625 23 625 24 , SrcSpan "tests/examples/Attributes.hs" 626 23 626 24 , SrcSpan "tests/examples/Attributes.hs" 627 23 627 24 , SrcSpan "tests/examples/Attributes.hs" 628 23 628 24 , SrcSpan "tests/examples/Attributes.hs" 629 23 629 24 , SrcSpan "tests/examples/Attributes.hs" 630 23 630 24 , SrcSpan "tests/examples/Attributes.hs" 631 23 631 24 , SrcSpan "tests/examples/Attributes.hs" 632 23 632 24 , SrcSpan "tests/examples/Attributes.hs" 633 23 633 24 , SrcSpan "tests/examples/Attributes.hs" 634 23 634 24 , SrcSpan "tests/examples/Attributes.hs" 635 23 635 24 , SrcSpan "tests/examples/Attributes.hs" 636 23 636 24 , SrcSpan "tests/examples/Attributes.hs" 637 23 637 24 , SrcSpan "tests/examples/Attributes.hs" 638 23 638 24 , SrcSpan "tests/examples/Attributes.hs" 639 23 639 24 , SrcSpan "tests/examples/Attributes.hs" 640 23 640 24 , SrcSpan "tests/examples/Attributes.hs" 641 23 641 24 , SrcSpan "tests/examples/Attributes.hs" 642 23 642 24 , SrcSpan "tests/examples/Attributes.hs" 643 23 643 24 , SrcSpan "tests/examples/Attributes.hs" 644 23 644 24 , SrcSpan "tests/examples/Attributes.hs" 645 23 645 24 , SrcSpan "tests/examples/Attributes.hs" 646 23 646 24 ] } [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 25 502 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 25 502 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 25 502 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 25 502 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 25 502 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 31 502 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 31 502 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 31 502 38 , srcInfoPoints = [] } "Damping")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 50 502 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 50 502 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 50 502 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 52 502 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 52 502 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 52 502 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 52 502 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 63 502 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 502 63 502 72 , srcInfoPoints = [] } "Damping" "Damping"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 25 503 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 25 503 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 25 503 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 25 503 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 25 503 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 31 503 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 31 503 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 31 503 32 , srcInfoPoints = [] } "K")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 50 503 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 50 503 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 50 503 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 52 503 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 52 503 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 52 503 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 52 503 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 63 503 66 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 503 63 503 66 , srcInfoPoints = [] } "K" "K"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 25 504 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 25 504 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 25 504 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 25 504 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 25 504 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 31 504 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 31 504 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 31 504 34 , srcInfoPoints = [] } "URL")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 50 504 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 50 504 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 50 504 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 52 504 79 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 52 504 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 52 504 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 52 504 63 , srcInfoPoints = [] } "parseFields"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 64 504 79 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 504 64 504 65 , SrcSpan "tests/examples/Attributes.hs" 504 70 504 71 , SrcSpan "tests/examples/Attributes.hs" 504 78 504 79 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 65 504 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 65 504 70 , srcInfoPoints = [] } "URL" "URL") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 72 504 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 504 72 504 78 , srcInfoPoints = [] } "href" "href") ])) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 25 505 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 25 505 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 25 505 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 25 505 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 25 505 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 31 505 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 31 505 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 31 505 40 , srcInfoPoints = [] } "ArrowHead")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 50 505 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 50 505 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 50 505 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 52 505 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 52 505 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 52 505 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 52 505 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 63 505 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 505 63 505 74 , srcInfoPoints = [] } "arrowhead" "arrowhead"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 25 506 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 25 506 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 25 506 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 25 506 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 25 506 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 31 506 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 31 506 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 31 506 40 , srcInfoPoints = [] } "ArrowSize")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 50 506 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 50 506 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 50 506 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 52 506 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 52 506 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 52 506 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 52 506 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 63 506 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 506 63 506 74 , srcInfoPoints = [] } "arrowsize" "arrowsize"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 25 507 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 25 507 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 25 507 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 25 507 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 25 507 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 31 507 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 31 507 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 31 507 40 , srcInfoPoints = [] } "ArrowTail")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 50 507 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 50 507 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 50 507 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 52 507 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 52 507 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 52 507 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 52 507 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 63 507 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 507 63 507 74 , srcInfoPoints = [] } "arrowtail" "arrowtail"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 25 508 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 25 508 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 25 508 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 25 508 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 25 508 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 31 508 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 31 508 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 31 508 37 , srcInfoPoints = [] } "Aspect")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 50 508 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 50 508 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 50 508 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 52 508 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 52 508 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 52 508 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 52 508 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 63 508 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 508 63 508 71 , srcInfoPoints = [] } "aspect" "aspect"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 25 509 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 25 509 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 25 509 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 25 509 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 25 509 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 31 509 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 31 509 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 31 509 33 , srcInfoPoints = [] } "Bb")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 50 509 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 50 509 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 50 509 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 52 509 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 52 509 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 52 509 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 52 509 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 63 509 67 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 509 63 509 67 , srcInfoPoints = [] } "bb" "bb"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 25 510 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 25 510 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 25 510 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 25 510 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 25 510 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 31 510 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 31 510 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 31 510 38 , srcInfoPoints = [] } "BgColor")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 50 510 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 50 510 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 50 510 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 52 510 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 52 510 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 52 510 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 52 510 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 63 510 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 510 63 510 72 , srcInfoPoints = [] } "bgcolor" "bgcolor"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 25 511 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 25 511 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 25 511 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 25 511 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 25 511 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 31 511 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 31 511 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 31 511 37 , srcInfoPoints = [] } "Center")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 50 511 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 50 511 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 50 511 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 52 511 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 52 511 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 52 511 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 52 511 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 67 511 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 511 67 511 75 , srcInfoPoints = [] } "center" "center"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 25 512 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 25 512 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 25 512 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 25 512 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 25 512 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 31 512 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 31 512 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 31 512 38 , srcInfoPoints = [] } "Charset")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 50 512 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 50 512 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 50 512 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 52 512 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 52 512 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 52 512 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 52 512 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 63 512 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 512 63 512 72 , srcInfoPoints = [] } "charset" "charset"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 25 513 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 25 513 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 25 513 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 25 513 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 25 513 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 31 513 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 31 513 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 31 513 42 , srcInfoPoints = [] } "ClusterRank")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 50 513 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 50 513 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 50 513 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 52 513 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 52 513 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 52 513 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 52 513 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 63 513 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 513 63 513 76 , srcInfoPoints = [] } "clusterrank" "clusterrank"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 25 514 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 25 514 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 25 514 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 25 514 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 25 514 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 31 514 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 31 514 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 31 514 42 , srcInfoPoints = [] } "ColorScheme")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 50 514 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 50 514 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 50 514 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 52 514 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 52 514 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 52 514 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 52 514 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 63 514 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 514 63 514 76 , srcInfoPoints = [] } "colorscheme" "colorscheme"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 25 515 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 25 515 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 25 515 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 25 515 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 25 515 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 31 515 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 31 515 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 31 515 36 , srcInfoPoints = [] } "Color")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 50 515 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 50 515 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 50 515 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 52 515 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 52 515 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 52 515 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 52 515 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 63 515 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 515 63 515 70 , srcInfoPoints = [] } "color" "color"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 25 516 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 25 516 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 25 516 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 25 516 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 25 516 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 31 516 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 31 516 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 31 516 38 , srcInfoPoints = [] } "Comment")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 50 516 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 50 516 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 50 516 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 52 516 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 52 516 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 52 516 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 52 516 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 63 516 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 516 63 516 72 , srcInfoPoints = [] } "comment" "comment"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 25 517 77 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 25 517 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 25 517 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 25 517 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 25 517 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 31 517 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 31 517 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 31 517 39 , srcInfoPoints = [] } "Compound")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 50 517 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 50 517 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 50 517 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 52 517 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 52 517 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 52 517 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 52 517 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 67 517 77 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 517 67 517 77 , srcInfoPoints = [] } "compound" "compound"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 25 518 80 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 25 518 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 25 518 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 25 518 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 25 518 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 31 518 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 31 518 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 31 518 42 , srcInfoPoints = [] } "Concentrate")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 50 518 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 50 518 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 50 518 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 52 518 80 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 52 518 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 52 518 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 52 518 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 67 518 80 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 518 67 518 80 , srcInfoPoints = [] } "concentrate" "concentrate"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 25 519 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 25 519 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 25 519 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 25 519 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 25 519 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 31 519 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 31 519 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 31 519 41 , srcInfoPoints = [] } "Constraint")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 50 519 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 50 519 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 50 519 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 52 519 79 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 52 519 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 52 519 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 52 519 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 67 519 79 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 519 67 519 79 , srcInfoPoints = [] } "constraint" "constraint"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 25 520 77 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 25 520 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 25 520 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 25 520 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 25 520 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 31 520 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 31 520 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 31 520 39 , srcInfoPoints = [] } "Decorate")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 50 520 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 50 520 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 50 520 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 52 520 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 52 520 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 52 520 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 52 520 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 67 520 77 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 520 67 520 77 , srcInfoPoints = [] } "decorate" "decorate"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 25 521 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 25 521 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 25 521 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 25 521 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 25 521 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 31 521 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 31 521 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 31 521 42 , srcInfoPoints = [] } "DefaultDist")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 50 521 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 50 521 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 50 521 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 52 521 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 52 521 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 52 521 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 52 521 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 63 521 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 521 63 521 76 , srcInfoPoints = [] } "defaultdist" "defaultdist"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 25 522 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 25 522 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 25 522 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 25 522 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 25 522 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 31 522 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 31 522 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 31 522 36 , srcInfoPoints = [] } "Dimen")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 50 522 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 50 522 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 50 522 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 52 522 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 52 522 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 52 522 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 52 522 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 63 522 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 522 63 522 70 , srcInfoPoints = [] } "dimen" "dimen"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 25 523 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 25 523 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 25 523 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 25 523 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 25 523 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 31 523 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 31 523 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 31 523 34 , srcInfoPoints = [] } "Dim")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 50 523 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 50 523 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 50 523 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 52 523 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 52 523 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 52 523 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 52 523 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 63 523 68 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 523 63 523 68 , srcInfoPoints = [] } "dim" "dim"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 25 524 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 25 524 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 25 524 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 25 524 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 25 524 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 31 524 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 31 524 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 31 524 34 , srcInfoPoints = [] } "Dir")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 50 524 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 50 524 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 50 524 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 52 524 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 52 524 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 52 524 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 52 524 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 63 524 68 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 524 63 524 68 , srcInfoPoints = [] } "dir" "dir"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 25 525 102 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 25 525 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 25 525 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 25 525 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 25 525 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 31 525 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 31 525 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 31 525 49 , srcInfoPoints = [] } "DirEdgeConstraints")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 50 525 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 50 525 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 50 525 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 52 525 102 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 52 525 81 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 52 525 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 52 525 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 52 525 65 , srcInfoPoints = [] } "parseFieldDef"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 66 525 81 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 66 525 81 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 66 525 81 , srcInfoPoints = [] } "EdgeConstraints")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 82 525 102 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 525 82 525 102 , srcInfoPoints = [] } "diredgeconstraints" "diredgeconstraints"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 25 526 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 25 526 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 25 526 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 25 526 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 25 526 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 31 526 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 31 526 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 31 526 41 , srcInfoPoints = [] } "Distortion")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 50 526 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 50 526 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 50 526 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 52 526 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 52 526 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 52 526 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 52 526 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 63 526 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 526 63 526 75 , srcInfoPoints = [] } "distortion" "distortion"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 25 527 85 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 25 527 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 25 527 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 25 527 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 25 527 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 31 527 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 31 527 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 31 527 34 , srcInfoPoints = [] } "DPI")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 50 527 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 50 527 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 50 527 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 52 527 85 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 52 527 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 52 527 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 52 527 63 , srcInfoPoints = [] } "parseFields"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 64 527 85 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 527 64 527 65 , SrcSpan "tests/examples/Attributes.hs" 527 70 527 71 , SrcSpan "tests/examples/Attributes.hs" 527 84 527 85 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 65 527 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 65 527 70 , srcInfoPoints = [] } "dpi" "dpi") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 72 527 84 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 527 72 527 84 , srcInfoPoints = [] } "resolution" "resolution") ])) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 25 528 87 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 25 528 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 25 528 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 25 528 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 25 528 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 31 528 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 31 528 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 31 528 38 , srcInfoPoints = [] } "EdgeURL")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 50 528 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 50 528 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 50 528 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 52 528 87 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 52 528 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 52 528 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 52 528 63 , srcInfoPoints = [] } "parseFields"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 64 528 87 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 528 64 528 65 , SrcSpan "tests/examples/Attributes.hs" 528 74 528 75 , SrcSpan "tests/examples/Attributes.hs" 528 86 528 87 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 65 528 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 65 528 74 , srcInfoPoints = [] } "edgeURL" "edgeURL") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 76 528 86 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 528 76 528 86 , srcInfoPoints = [] } "edgehref" "edgehref") ])) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 25 529 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 25 529 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 25 529 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 25 529 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 25 529 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 31 529 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 31 529 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 31 529 41 , srcInfoPoints = [] } "EdgeTarget")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 50 529 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 50 529 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 50 529 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 52 529 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 52 529 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 52 529 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 52 529 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 63 529 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 529 63 529 75 , srcInfoPoints = [] } "edgetarget" "edgetarget"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 25 530 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 25 530 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 25 530 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 25 530 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 25 530 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 31 530 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 31 530 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 31 530 42 , srcInfoPoints = [] } "EdgeTooltip")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 50 530 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 50 530 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 50 530 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 52 530 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 52 530 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 52 530 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 52 530 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 63 530 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 530 63 530 76 , srcInfoPoints = [] } "edgetooltip" "edgetooltip"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 25 531 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 25 531 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 25 531 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 25 531 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 25 531 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 31 531 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 31 531 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 31 531 38 , srcInfoPoints = [] } "Epsilon")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 50 531 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 50 531 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 50 531 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 52 531 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 52 531 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 52 531 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 52 531 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 63 531 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 531 63 531 72 , srcInfoPoints = [] } "epsilon" "epsilon"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 25 532 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 25 532 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 25 532 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 25 532 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 25 532 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 31 532 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 31 532 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 31 532 35 , srcInfoPoints = [] } "ESep")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 50 532 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 50 532 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 50 532 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 52 532 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 52 532 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 52 532 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 52 532 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 63 532 69 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 532 63 532 69 , srcInfoPoints = [] } "esep" "esep"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 25 533 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 25 533 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 25 533 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 25 533 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 25 533 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 31 533 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 31 533 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 31 533 40 , srcInfoPoints = [] } "FillColor")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 50 533 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 50 533 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 50 533 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 52 533 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 52 533 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 52 533 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 52 533 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 63 533 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 533 63 533 74 , srcInfoPoints = [] } "fillcolor" "fillcolor"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 25 534 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 25 534 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 25 534 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 25 534 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 25 534 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 31 534 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 31 534 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 31 534 40 , srcInfoPoints = [] } "FixedSize")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 50 534 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 50 534 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 50 534 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 52 534 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 52 534 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 52 534 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 52 534 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 67 534 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 534 67 534 78 , srcInfoPoints = [] } "fixedsize" "fixedsize"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 25 535 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 25 535 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 25 535 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 25 535 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 25 535 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 31 535 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 31 535 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 31 535 40 , srcInfoPoints = [] } "FontColor")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 50 535 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 50 535 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 50 535 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 52 535 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 52 535 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 52 535 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 52 535 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 63 535 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 535 63 535 74 , srcInfoPoints = [] } "fontcolor" "fontcolor"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 25 536 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 25 536 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 25 536 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 25 536 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 25 536 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 31 536 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 31 536 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 31 536 39 , srcInfoPoints = [] } "FontName")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 50 536 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 50 536 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 50 536 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 52 536 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 52 536 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 52 536 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 52 536 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 63 536 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 536 63 536 73 , srcInfoPoints = [] } "fontname" "fontname"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 25 537 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 25 537 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 25 537 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 25 537 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 25 537 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 31 537 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 31 537 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 31 537 40 , srcInfoPoints = [] } "FontNames")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 50 537 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 50 537 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 50 537 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 52 537 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 52 537 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 52 537 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 52 537 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 63 537 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 537 63 537 74 , srcInfoPoints = [] } "fontnames" "fontnames"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 25 538 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 25 538 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 25 538 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 25 538 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 25 538 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 31 538 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 31 538 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 31 538 39 , srcInfoPoints = [] } "FontPath")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 50 538 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 50 538 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 50 538 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 52 538 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 52 538 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 52 538 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 52 538 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 63 538 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 538 63 538 73 , srcInfoPoints = [] } "fontpath" "fontpath"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 25 539 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 25 539 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 25 539 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 25 539 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 25 539 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 31 539 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 31 539 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 31 539 39 , srcInfoPoints = [] } "FontSize")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 50 539 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 50 539 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 50 539 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 52 539 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 52 539 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 52 539 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 52 539 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 63 539 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 539 63 539 73 , srcInfoPoints = [] } "fontsize" "fontsize"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 25 540 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 25 540 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 25 540 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 25 540 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 25 540 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 31 540 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 31 540 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 31 540 36 , srcInfoPoints = [] } "Group")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 50 540 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 50 540 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 50 540 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 52 540 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 52 540 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 52 540 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 52 540 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 63 540 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 540 63 540 70 , srcInfoPoints = [] } "group" "group"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 25 541 87 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 25 541 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 25 541 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 25 541 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 25 541 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 31 541 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 31 541 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 31 541 38 , srcInfoPoints = [] } "HeadURL")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 50 541 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 50 541 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 50 541 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 52 541 87 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 52 541 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 52 541 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 52 541 63 , srcInfoPoints = [] } "parseFields"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 64 541 87 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 541 64 541 65 , SrcSpan "tests/examples/Attributes.hs" 541 74 541 75 , SrcSpan "tests/examples/Attributes.hs" 541 86 541 87 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 65 541 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 65 541 74 , srcInfoPoints = [] } "headURL" "headURL") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 76 541 86 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 541 76 541 86 , srcInfoPoints = [] } "headhref" "headhref") ])) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 25 542 77 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 25 542 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 25 542 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 25 542 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 25 542 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 31 542 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 31 542 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 31 542 39 , srcInfoPoints = [] } "HeadClip")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 50 542 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 50 542 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 50 542 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 52 542 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 52 542 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 52 542 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 52 542 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 67 542 77 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 542 67 542 77 , srcInfoPoints = [] } "headclip" "headclip"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 25 543 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 25 543 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 25 543 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 25 543 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 25 543 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 31 543 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 31 543 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 31 543 40 , srcInfoPoints = [] } "HeadLabel")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 50 543 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 50 543 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 50 543 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 52 543 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 52 543 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 52 543 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 52 543 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 63 543 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 543 63 543 74 , srcInfoPoints = [] } "headlabel" "headlabel"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 25 544 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 25 544 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 25 544 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 25 544 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 25 544 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 31 544 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 31 544 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 31 544 39 , srcInfoPoints = [] } "HeadPort")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 50 544 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 50 544 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 50 544 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 52 544 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 52 544 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 52 544 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 52 544 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 63 544 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 544 63 544 73 , srcInfoPoints = [] } "headport" "headport"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 25 545 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 25 545 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 25 545 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 25 545 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 25 545 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 31 545 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 31 545 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 31 545 41 , srcInfoPoints = [] } "HeadTarget")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 50 545 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 50 545 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 50 545 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 52 545 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 52 545 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 52 545 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 52 545 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 63 545 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 545 63 545 75 , srcInfoPoints = [] } "headtarget" "headtarget"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 25 546 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 25 546 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 25 546 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 25 546 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 25 546 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 31 546 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 31 546 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 31 546 42 , srcInfoPoints = [] } "HeadTooltip")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 50 546 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 50 546 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 50 546 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 52 546 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 52 546 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 52 546 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 52 546 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 63 546 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 546 63 546 76 , srcInfoPoints = [] } "headtooltip" "headtooltip"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 25 547 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 25 547 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 25 547 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 25 547 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 25 547 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 31 547 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 31 547 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 31 547 37 , srcInfoPoints = [] } "Height")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 50 547 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 50 547 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 50 547 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 52 547 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 52 547 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 52 547 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 52 547 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 63 547 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 547 63 547 71 , srcInfoPoints = [] } "height" "height"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 25 548 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 25 548 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 25 548 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 25 548 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 25 548 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 31 548 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 31 548 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 31 548 33 , srcInfoPoints = [] } "ID")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 50 548 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 50 548 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 50 548 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 52 548 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 52 548 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 52 548 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 52 548 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 63 548 67 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 548 63 548 67 , srcInfoPoints = [] } "id" "id"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 25 549 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 25 549 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 25 549 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 25 549 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 25 549 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 31 549 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 31 549 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 31 549 36 , srcInfoPoints = [] } "Image")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 50 549 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 50 549 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 50 549 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 52 549 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 52 549 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 52 549 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 52 549 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 63 549 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 549 63 549 70 , srcInfoPoints = [] } "image" "image"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 25 550 91 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 25 550 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 25 550 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 25 550 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 25 550 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 31 550 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 31 550 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 31 550 41 , srcInfoPoints = [] } "ImageScale")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 50 550 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 50 550 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 50 550 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 52 550 91 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 52 550 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 52 550 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 52 550 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 52 550 65 , srcInfoPoints = [] } "parseFieldDef"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 66 550 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 66 550 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 66 550 78 , srcInfoPoints = [] } "UniformScale")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 79 550 91 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 550 79 550 91 , srcInfoPoints = [] } "imagescale" "imagescale"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 25 551 89 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 25 551 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 25 551 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 25 551 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 25 551 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 31 551 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 31 551 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 31 551 39 , srcInfoPoints = [] } "LabelURL")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 50 551 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 50 551 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 50 551 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 52 551 89 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 52 551 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 52 551 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 52 551 63 , srcInfoPoints = [] } "parseFields"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 64 551 89 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 551 64 551 65 , SrcSpan "tests/examples/Attributes.hs" 551 75 551 76 , SrcSpan "tests/examples/Attributes.hs" 551 88 551 89 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 65 551 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 65 551 75 , srcInfoPoints = [] } "labelURL" "labelURL") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 77 551 88 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 551 77 551 88 , srcInfoPoints = [] } "labelhref" "labelhref") ])) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 25 552 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 25 552 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 25 552 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 25 552 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 25 552 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 31 552 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 31 552 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 31 552 41 , srcInfoPoints = [] } "LabelAngle")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 50 552 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 50 552 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 50 552 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 52 552 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 52 552 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 52 552 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 52 552 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 63 552 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 552 63 552 75 , srcInfoPoints = [] } "labelangle" "labelangle"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 25 553 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 25 553 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 25 553 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 25 553 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 25 553 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 31 553 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 31 553 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 31 553 44 , srcInfoPoints = [] } "LabelDistance")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 50 553 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 50 553 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 50 553 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 52 553 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 52 553 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 52 553 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 52 553 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 63 553 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 553 63 553 78 , srcInfoPoints = [] } "labeldistance" "labeldistance"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 25 554 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 25 554 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 25 554 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 25 554 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 25 554 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 31 554 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 31 554 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 31 554 41 , srcInfoPoints = [] } "LabelFloat")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 50 554 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 50 554 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 50 554 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 52 554 79 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 52 554 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 52 554 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 52 554 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 67 554 79 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 554 67 554 79 , srcInfoPoints = [] } "labelfloat" "labelfloat"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 25 555 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 25 555 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 25 555 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 25 555 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 25 555 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 31 555 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 31 555 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 31 555 45 , srcInfoPoints = [] } "LabelFontColor")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 50 555 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 50 555 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 50 555 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 52 555 79 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 52 555 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 52 555 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 52 555 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 63 555 79 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 555 63 555 79 , srcInfoPoints = [] } "labelfontcolor" "labelfontcolor"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 25 556 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 25 556 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 25 556 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 25 556 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 25 556 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 31 556 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 31 556 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 31 556 44 , srcInfoPoints = [] } "LabelFontName")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 50 556 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 50 556 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 50 556 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 52 556 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 52 556 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 52 556 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 52 556 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 63 556 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 556 63 556 78 , srcInfoPoints = [] } "labelfontname" "labelfontname"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 25 557 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 25 557 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 25 557 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 25 557 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 25 557 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 31 557 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 31 557 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 31 557 44 , srcInfoPoints = [] } "LabelFontSize")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 50 557 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 50 557 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 50 557 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 52 557 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 52 557 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 52 557 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 52 557 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 63 557 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 557 63 557 78 , srcInfoPoints = [] } "labelfontsize" "labelfontsize"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 25 558 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 25 558 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 25 558 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 25 558 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 25 558 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 31 558 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 31 558 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 31 558 40 , srcInfoPoints = [] } "LabelJust")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 50 558 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 50 558 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 50 558 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 52 558 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 52 558 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 52 558 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 52 558 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 63 558 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 558 63 558 74 , srcInfoPoints = [] } "labeljust" "labeljust"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 25 559 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 25 559 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 25 559 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 25 559 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 25 559 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 31 559 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 31 559 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 31 559 39 , srcInfoPoints = [] } "LabelLoc")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 50 559 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 50 559 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 50 559 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 52 559 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 52 559 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 52 559 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 52 559 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 63 559 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 559 63 559 73 , srcInfoPoints = [] } "labelloc" "labelloc"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 25 560 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 25 560 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 25 560 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 25 560 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 25 560 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 31 560 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 31 560 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 31 560 42 , srcInfoPoints = [] } "LabelTarget")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 50 560 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 50 560 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 50 560 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 52 560 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 52 560 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 52 560 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 52 560 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 63 560 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 560 63 560 76 , srcInfoPoints = [] } "labeltarget" "labeltarget"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 25 561 77 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 25 561 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 25 561 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 25 561 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 25 561 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 31 561 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 31 561 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 31 561 43 , srcInfoPoints = [] } "LabelTooltip")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 50 561 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 50 561 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 50 561 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 52 561 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 52 561 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 52 561 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 52 561 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 63 561 77 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 561 63 561 77 , srcInfoPoints = [] } "labeltooltip" "labeltooltip"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 25 562 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 25 562 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 25 562 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 25 562 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 25 562 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 31 562 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 31 562 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 31 562 36 , srcInfoPoints = [] } "Label")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 50 562 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 50 562 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 50 562 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 52 562 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 52 562 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 52 562 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 52 562 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 63 562 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 562 63 562 70 , srcInfoPoints = [] } "label" "label"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 25 563 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 25 563 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 25 563 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 25 563 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 25 563 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 31 563 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 31 563 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 31 563 40 , srcInfoPoints = [] } "Landscape")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 50 563 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 50 563 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 50 563 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 52 563 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 52 563 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 52 563 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 52 563 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 67 563 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 563 67 563 78 , srcInfoPoints = [] } "landscape" "landscape"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 25 564 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 25 564 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 25 564 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 25 564 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 25 564 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 31 564 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 31 564 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 31 564 39 , srcInfoPoints = [] } "LayerSep")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 50 564 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 50 564 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 50 564 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 52 564 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 52 564 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 52 564 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 52 564 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 63 564 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 564 63 564 73 , srcInfoPoints = [] } "layersep" "layersep"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 25 565 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 25 565 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 25 565 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 25 565 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 25 565 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 31 565 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 31 565 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 31 565 37 , srcInfoPoints = [] } "Layers")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 50 565 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 50 565 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 50 565 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 52 565 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 52 565 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 52 565 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 52 565 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 63 565 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 565 63 565 71 , srcInfoPoints = [] } "layers" "layers"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 25 566 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 25 566 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 25 566 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 25 566 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 25 566 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 31 566 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 31 566 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 31 566 36 , srcInfoPoints = [] } "Layer")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 50 566 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 50 566 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 50 566 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 52 566 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 52 566 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 52 566 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 52 566 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 63 566 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 566 63 566 70 , srcInfoPoints = [] } "layer" "layer"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 25 567 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 25 567 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 25 567 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 25 567 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 25 567 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 31 567 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 31 567 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 31 567 37 , srcInfoPoints = [] } "Layout")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 50 567 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 50 567 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 50 567 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 52 567 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 52 567 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 52 567 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 52 567 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 63 567 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 567 63 567 71 , srcInfoPoints = [] } "layout" "layout"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 25 568 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 25 568 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 25 568 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 25 568 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 25 568 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 31 568 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 31 568 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 31 568 34 , srcInfoPoints = [] } "Len")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 50 568 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 50 568 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 50 568 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 52 568 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 52 568 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 52 568 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 52 568 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 63 568 68 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 568 63 568 68 , srcInfoPoints = [] } "len" "len"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 25 569 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 25 569 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 25 569 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 25 569 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 25 569 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 31 569 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 31 569 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 31 569 40 , srcInfoPoints = [] } "LevelsGap")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 50 569 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 50 569 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 50 569 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 52 569 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 52 569 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 52 569 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 52 569 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 63 569 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 569 63 569 74 , srcInfoPoints = [] } "levelsgap" "levelsgap"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 25 570 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 25 570 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 25 570 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 25 570 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 25 570 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 31 570 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 31 570 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 31 570 37 , srcInfoPoints = [] } "Levels")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 50 570 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 50 570 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 50 570 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 52 570 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 52 570 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 52 570 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 52 570 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 63 570 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 570 63 570 71 , srcInfoPoints = [] } "levels" "levels"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 25 571 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 25 571 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 25 571 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 25 571 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 25 571 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 31 571 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 31 571 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 31 571 36 , srcInfoPoints = [] } "LHead")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 50 571 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 50 571 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 50 571 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 52 571 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 52 571 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 52 571 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 52 571 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 63 571 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 571 63 571 70 , srcInfoPoints = [] } "lhead" "lhead"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 25 572 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 25 572 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 25 572 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 25 572 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 25 572 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 31 572 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 31 572 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 31 572 35 , srcInfoPoints = [] } "LPos")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 50 572 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 50 572 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 50 572 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 52 572 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 52 572 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 52 572 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 52 572 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 63 572 67 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 572 63 572 67 , srcInfoPoints = [] } "lp" "lp"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 25 573 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 25 573 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 25 573 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 25 573 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 25 573 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 31 573 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 31 573 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 31 573 36 , srcInfoPoints = [] } "LTail")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 50 573 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 50 573 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 50 573 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 52 573 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 52 573 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 52 573 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 52 573 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 63 573 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 573 63 573 70 , srcInfoPoints = [] } "ltail" "ltail"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 25 574 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 25 574 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 25 574 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 25 574 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 25 574 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 31 574 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 31 574 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 31 574 37 , srcInfoPoints = [] } "Margin")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 50 574 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 50 574 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 50 574 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 52 574 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 52 574 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 52 574 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 52 574 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 63 574 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 574 63 574 71 , srcInfoPoints = [] } "margin" "margin"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 25 575 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 25 575 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 25 575 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 25 575 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 25 575 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 31 575 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 31 575 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 31 575 38 , srcInfoPoints = [] } "MaxIter")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 50 575 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 50 575 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 50 575 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 52 575 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 52 575 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 52 575 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 52 575 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 63 575 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 575 63 575 72 , srcInfoPoints = [] } "maxiter" "maxiter"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 25 576 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 25 576 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 25 576 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 25 576 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 25 576 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 31 576 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 31 576 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 31 576 38 , srcInfoPoints = [] } "MCLimit")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 50 576 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 50 576 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 50 576 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 52 576 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 52 576 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 52 576 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 52 576 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 63 576 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 576 63 576 72 , srcInfoPoints = [] } "mclimit" "mclimit"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 25 577 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 25 577 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 25 577 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 25 577 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 25 577 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 31 577 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 31 577 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 31 577 38 , srcInfoPoints = [] } "MinDist")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 50 577 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 50 577 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 50 577 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 52 577 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 52 577 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 52 577 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 52 577 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 63 577 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 577 63 577 72 , srcInfoPoints = [] } "mindist" "mindist"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 25 578 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 25 578 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 25 578 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 25 578 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 25 578 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 31 578 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 31 578 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 31 578 37 , srcInfoPoints = [] } "MinLen")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 50 578 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 50 578 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 50 578 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 52 578 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 52 578 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 52 578 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 52 578 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 63 578 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 578 63 578 71 , srcInfoPoints = [] } "minlen" "minlen"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 25 579 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 25 579 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 25 579 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 25 579 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 25 579 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 31 579 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 31 579 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 31 579 36 , srcInfoPoints = [] } "Model")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 50 579 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 50 579 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 50 579 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 52 579 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 52 579 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 52 579 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 52 579 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 63 579 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 579 63 579 70 , srcInfoPoints = [] } "model" "model"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 25 580 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 25 580 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 25 580 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 25 580 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 25 580 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 31 580 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 31 580 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 31 580 35 , srcInfoPoints = [] } "Mode")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 50 580 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 50 580 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 50 580 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 52 580 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 52 580 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 52 580 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 52 580 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 63 580 69 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 580 63 580 69 , srcInfoPoints = [] } "mode" "mode"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 25 581 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 25 581 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 25 581 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 25 581 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 25 581 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 31 581 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 31 581 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 31 581 36 , srcInfoPoints = [] } "Mosek")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 50 581 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 50 581 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 50 581 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 52 581 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 52 581 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 52 581 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 52 581 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 67 581 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 581 67 581 74 , srcInfoPoints = [] } "mosek" "mosek"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 25 582 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 25 582 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 25 582 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 25 582 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 25 582 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 31 582 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 31 582 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 31 582 38 , srcInfoPoints = [] } "NodeSep")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 50 582 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 50 582 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 50 582 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 52 582 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 52 582 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 52 582 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 52 582 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 63 582 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 582 63 582 72 , srcInfoPoints = [] } "nodesep" "nodesep"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 25 583 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 25 583 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 25 583 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 25 583 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 25 583 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 31 583 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 31 583 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 31 583 40 , srcInfoPoints = [] } "NoJustify")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 50 583 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 50 583 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 50 583 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 52 583 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 52 583 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 52 583 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 52 583 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 67 583 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 583 67 583 78 , srcInfoPoints = [] } "nojustify" "nojustify"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 25 584 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 25 584 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 25 584 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 25 584 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 25 584 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 31 584 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 31 584 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 31 584 40 , srcInfoPoints = [] } "Normalize")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 50 584 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 50 584 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 50 584 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 52 584 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 52 584 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 52 584 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 52 584 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 67 584 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 584 67 584 78 , srcInfoPoints = [] } "normalize" "normalize"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 25 585 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 25 585 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 25 585 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 25 585 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 25 585 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 31 585 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 31 585 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 31 585 39 , srcInfoPoints = [] } "Nslimit1")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 50 585 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 50 585 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 50 585 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 52 585 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 52 585 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 52 585 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 52 585 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 63 585 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 585 63 585 73 , srcInfoPoints = [] } "nslimit1" "nslimit1"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 25 586 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 25 586 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 25 586 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 25 586 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 25 586 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 31 586 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 31 586 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 31 586 38 , srcInfoPoints = [] } "Nslimit")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 50 586 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 50 586 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 50 586 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 52 586 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 52 586 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 52 586 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 52 586 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 63 586 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 586 63 586 72 , srcInfoPoints = [] } "nslimit" "nslimit"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 25 587 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 25 587 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 25 587 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 25 587 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 25 587 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 31 587 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 31 587 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 31 587 39 , srcInfoPoints = [] } "Ordering")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 50 587 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 50 587 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 50 587 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 52 587 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 52 587 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 52 587 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 52 587 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 63 587 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 587 63 587 73 , srcInfoPoints = [] } "ordering" "ordering"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 25 588 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 25 588 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 25 588 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 25 588 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 25 588 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 31 588 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 31 588 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 31 588 42 , srcInfoPoints = [] } "Orientation")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 50 588 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 50 588 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 50 588 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 52 588 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 52 588 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 52 588 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 52 588 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 63 588 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 588 63 588 76 , srcInfoPoints = [] } "orientation" "orientation"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 25 589 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 25 589 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 25 589 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 25 589 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 25 589 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 31 589 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 31 589 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 31 589 42 , srcInfoPoints = [] } "OutputOrder")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 50 589 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 50 589 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 50 589 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 52 589 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 52 589 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 52 589 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 52 589 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 63 589 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 589 63 589 76 , srcInfoPoints = [] } "outputorder" "outputorder"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 25 590 80 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 25 590 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 25 590 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 25 590 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 25 590 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 31 590 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 31 590 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 31 590 45 , srcInfoPoints = [] } "OverlapScaling")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 50 590 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 50 590 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 50 590 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 52 590 80 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 52 590 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 52 590 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 52 590 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 63 590 80 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 590 63 590 80 , srcInfoPoints = [] } "overlap_scaling" "overlap_scaling"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 25 591 88 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 25 591 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 25 591 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 25 591 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 25 591 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 31 591 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 31 591 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 31 591 38 , srcInfoPoints = [] } "Overlap")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 50 591 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 50 591 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 50 591 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 52 591 88 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 52 591 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 52 591 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 52 591 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 52 591 65 , srcInfoPoints = [] } "parseFieldDef"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 66 591 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 66 591 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 66 591 78 , srcInfoPoints = [] } "KeepOverlaps")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 79 591 88 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 591 79 591 88 , srcInfoPoints = [] } "overlap" "overlap"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 25 592 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 25 592 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 25 592 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 25 592 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 25 592 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 31 592 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 31 592 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 31 592 39 , srcInfoPoints = [] } "PackMode")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 50 592 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 50 592 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 50 592 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 52 592 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 52 592 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 52 592 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 52 592 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 63 592 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 592 63 592 73 , srcInfoPoints = [] } "packmode" "packmode"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 25 593 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 25 593 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 25 593 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 25 593 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 25 593 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 31 593 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 31 593 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 31 593 35 , srcInfoPoints = [] } "Pack")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 50 593 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 50 593 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 50 593 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 52 593 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 52 593 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 52 593 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 52 593 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 52 593 65 , srcInfoPoints = [] } "parseFieldDef"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 66 593 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 66 593 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 66 593 72 , srcInfoPoints = [] } "DoPack")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 73 593 79 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 593 73 593 79 , srcInfoPoints = [] } "pack" "pack"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 25 594 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 25 594 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 25 594 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 25 594 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 25 594 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 31 594 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 31 594 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 31 594 34 , srcInfoPoints = [] } "Pad")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 50 594 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 50 594 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 50 594 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 52 594 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 52 594 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 52 594 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 52 594 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 63 594 68 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 594 63 594 68 , srcInfoPoints = [] } "pad" "pad"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 25 595 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 25 595 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 25 595 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 25 595 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 25 595 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 31 595 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 31 595 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 31 595 38 , srcInfoPoints = [] } "PageDir")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 50 595 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 50 595 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 50 595 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 52 595 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 52 595 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 52 595 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 52 595 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 63 595 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 595 63 595 72 , srcInfoPoints = [] } "pagedir" "pagedir"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 25 596 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 25 596 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 25 596 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 25 596 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 25 596 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 31 596 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 31 596 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 31 596 35 , srcInfoPoints = [] } "Page")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 50 596 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 50 596 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 50 596 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 52 596 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 52 596 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 52 596 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 52 596 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 63 596 69 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 596 63 596 69 , srcInfoPoints = [] } "page" "page"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 25 597 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 25 597 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 25 597 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 25 597 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 25 597 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 31 597 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 31 597 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 31 597 39 , srcInfoPoints = [] } "PenColor")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 50 597 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 50 597 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 50 597 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 52 597 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 52 597 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 52 597 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 52 597 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 63 597 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 597 63 597 73 , srcInfoPoints = [] } "pencolor" "pencolor"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 25 598 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 25 598 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 25 598 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 25 598 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 25 598 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 31 598 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 31 598 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 31 598 39 , srcInfoPoints = [] } "PenWidth")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 50 598 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 50 598 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 50 598 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 52 598 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 52 598 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 52 598 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 52 598 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 63 598 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 598 63 598 73 , srcInfoPoints = [] } "penwidth" "penwidth"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 25 599 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 25 599 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 25 599 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 25 599 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 25 599 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 31 599 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 31 599 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 31 599 42 , srcInfoPoints = [] } "Peripheries")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 50 599 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 50 599 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 50 599 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 52 599 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 52 599 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 52 599 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 52 599 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 63 599 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 599 63 599 76 , srcInfoPoints = [] } "peripheries" "peripheries"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 25 600 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 25 600 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 25 600 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 25 600 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 25 600 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 31 600 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 31 600 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 31 600 34 , srcInfoPoints = [] } "Pin")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 50 600 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 50 600 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 50 600 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 52 600 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 52 600 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 52 600 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 52 600 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 67 600 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 600 67 600 72 , srcInfoPoints = [] } "pin" "pin"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 25 601 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 25 601 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 25 601 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 25 601 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 25 601 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 31 601 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 31 601 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 31 601 34 , srcInfoPoints = [] } "Pos")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 50 601 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 50 601 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 50 601 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 52 601 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 52 601 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 52 601 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 52 601 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 63 601 68 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 601 63 601 68 , srcInfoPoints = [] } "pos" "pos"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 25 602 85 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 25 602 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 25 602 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 25 602 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 25 602 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 31 602 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 31 602 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 31 602 39 , srcInfoPoints = [] } "QuadTree")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 50 602 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 50 602 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 50 602 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 52 602 85 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 52 602 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 52 602 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 52 602 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 52 602 65 , srcInfoPoints = [] } "parseFieldDef"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 66 602 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 66 602 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 66 602 74 , srcInfoPoints = [] } "NormalQT")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 75 602 85 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 602 75 602 85 , srcInfoPoints = [] } "quadtree" "quadtree"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 25 603 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 25 603 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 25 603 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 25 603 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 25 603 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 31 603 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 31 603 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 31 603 38 , srcInfoPoints = [] } "Quantum")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 50 603 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 50 603 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 50 603 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 52 603 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 52 603 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 52 603 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 52 603 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 63 603 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 603 63 603 72 , srcInfoPoints = [] } "quantum" "quantum"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 25 604 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 25 604 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 25 604 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 25 604 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 25 604 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 31 604 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 31 604 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 31 604 38 , srcInfoPoints = [] } "RankDir")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 50 604 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 50 604 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 50 604 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 52 604 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 52 604 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 52 604 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 52 604 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 63 604 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 604 63 604 72 , srcInfoPoints = [] } "rankdir" "rankdir"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 25 605 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 25 605 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 25 605 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 25 605 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 25 605 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 31 605 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 31 605 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 31 605 38 , srcInfoPoints = [] } "RankSep")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 50 605 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 50 605 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 50 605 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 52 605 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 52 605 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 52 605 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 52 605 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 63 605 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 605 63 605 72 , srcInfoPoints = [] } "ranksep" "ranksep"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 25 606 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 25 606 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 25 606 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 25 606 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 25 606 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 31 606 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 31 606 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 31 606 35 , srcInfoPoints = [] } "Rank")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 50 606 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 50 606 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 50 606 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 52 606 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 52 606 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 52 606 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 52 606 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 63 606 69 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 606 63 606 69 , srcInfoPoints = [] } "rank" "rank"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 25 607 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 25 607 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 25 607 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 25 607 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 25 607 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 31 607 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 31 607 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 31 607 36 , srcInfoPoints = [] } "Ratio")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 50 607 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 50 607 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 50 607 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 52 607 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 52 607 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 52 607 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 52 607 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 63 607 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 607 63 607 70 , srcInfoPoints = [] } "ratio" "ratio"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 25 608 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 25 608 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 25 608 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 25 608 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 25 608 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 31 608 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 31 608 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 31 608 36 , srcInfoPoints = [] } "Rects")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 50 608 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 50 608 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 50 608 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 52 608 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 52 608 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 52 608 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 52 608 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 63 608 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 608 63 608 70 , srcInfoPoints = [] } "rects" "rects"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 25 609 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 25 609 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 25 609 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 25 609 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 25 609 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 31 609 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 31 609 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 31 609 38 , srcInfoPoints = [] } "Regular")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 50 609 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 50 609 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 50 609 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 52 609 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 52 609 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 52 609 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 52 609 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 67 609 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 609 67 609 76 , srcInfoPoints = [] } "regular" "regular"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 25 610 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 25 610 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 25 610 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 25 610 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 25 610 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 31 610 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 31 610 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 31 610 41 , srcInfoPoints = [] } "ReMinCross")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 50 610 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 50 610 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 50 610 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 52 610 79 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 52 610 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 52 610 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 52 610 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 67 610 79 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 610 67 610 79 , srcInfoPoints = [] } "remincross" "remincross"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 25 611 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 25 611 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 25 611 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 25 611 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 25 611 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 31 611 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 31 611 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 31 611 45 , srcInfoPoints = [] } "RepulsiveForce")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 50 611 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 50 611 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 50 611 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 52 611 79 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 52 611 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 52 611 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 52 611 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 63 611 79 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 611 63 611 79 , srcInfoPoints = [] } "repulsiveforce" "repulsiveforce"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 25 612 82 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 25 612 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 25 612 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 25 612 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 25 612 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 31 612 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 31 612 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 31 612 35 , srcInfoPoints = [] } "Root")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 50 612 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 50 612 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 50 612 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 52 612 82 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 52 612 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 52 612 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 52 612 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 52 612 65 , srcInfoPoints = [] } "parseFieldDef"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 66 612 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 66 612 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 66 612 75 , srcInfoPoints = [] } "IsCentral")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 76 612 82 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 612 76 612 82 , srcInfoPoints = [] } "root" "root"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 25 613 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 25 613 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 25 613 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 25 613 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 25 613 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 31 613 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 31 613 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 31 613 37 , srcInfoPoints = [] } "Rotate")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 50 613 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 50 613 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 50 613 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 52 613 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 52 613 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 52 613 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 52 613 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 63 613 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 613 63 613 71 , srcInfoPoints = [] } "rotate" "rotate"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 25 614 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 25 614 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 25 614 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 25 614 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 25 614 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 31 614 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 31 614 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 31 614 39 , srcInfoPoints = [] } "SameHead")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 50 614 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 50 614 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 50 614 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 52 614 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 52 614 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 52 614 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 52 614 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 63 614 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 614 63 614 73 , srcInfoPoints = [] } "samehead" "samehead"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 25 615 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 25 615 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 25 615 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 25 615 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 25 615 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 31 615 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 31 615 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 31 615 39 , srcInfoPoints = [] } "SameTail")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 50 615 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 50 615 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 50 615 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 52 615 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 52 615 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 52 615 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 52 615 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 63 615 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 615 63 615 73 , srcInfoPoints = [] } "sametail" "sametail"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 25 616 77 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 25 616 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 25 616 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 25 616 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 25 616 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 31 616 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 31 616 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 31 616 43 , srcInfoPoints = [] } "SamplePoints")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 50 616 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 50 616 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 50 616 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 52 616 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 52 616 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 52 616 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 52 616 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 63 616 77 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 616 63 616 77 , srcInfoPoints = [] } "samplepoints" "samplepoints"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 25 617 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 25 617 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 25 617 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 25 617 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 25 617 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 31 617 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 31 617 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 31 617 41 , srcInfoPoints = [] } "SearchSize")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 50 617 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 50 617 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 50 617 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 52 617 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 52 617 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 52 617 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 52 617 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 63 617 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 617 63 617 75 , srcInfoPoints = [] } "searchsize" "searchsize"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 25 618 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 25 618 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 25 618 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 25 618 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 25 618 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 31 618 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 31 618 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 31 618 34 , srcInfoPoints = [] } "Sep")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 50 618 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 50 618 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 50 618 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 52 618 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 52 618 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 52 618 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 52 618 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 63 618 68 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 618 63 618 68 , srcInfoPoints = [] } "sep" "sep"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 25 619 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 25 619 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 25 619 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 25 619 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 25 619 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 31 619 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 31 619 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 31 619 40 , srcInfoPoints = [] } "ShapeFile")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 50 619 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 50 619 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 50 619 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 52 619 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 52 619 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 52 619 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 52 619 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 63 619 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 619 63 619 74 , srcInfoPoints = [] } "shapefile" "shapefile"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 25 620 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 25 620 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 25 620 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 25 620 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 25 620 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 31 620 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 31 620 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 31 620 36 , srcInfoPoints = [] } "Shape")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 50 620 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 50 620 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 50 620 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 52 620 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 52 620 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 52 620 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 52 620 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 63 620 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 620 63 620 70 , srcInfoPoints = [] } "shape" "shape"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 25 621 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 25 621 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 25 621 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 25 621 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 25 621 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 31 621 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 31 621 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 31 621 40 , srcInfoPoints = [] } "ShowBoxes")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 50 621 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 50 621 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 50 621 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 52 621 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 52 621 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 52 621 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 52 621 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 63 621 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 621 63 621 74 , srcInfoPoints = [] } "showboxes" "showboxes"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 25 622 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 25 622 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 25 622 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 25 622 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 25 622 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 31 622 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 31 622 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 31 622 36 , srcInfoPoints = [] } "Sides")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 50 622 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 50 622 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 50 622 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 52 622 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 52 622 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 52 622 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 52 622 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 63 622 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 622 63 622 70 , srcInfoPoints = [] } "sides" "sides"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 25 623 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 25 623 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 25 623 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 25 623 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 25 623 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 31 623 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 31 623 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 31 623 35 , srcInfoPoints = [] } "Size")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 50 623 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 50 623 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 50 623 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 52 623 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 52 623 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 52 623 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 52 623 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 63 623 69 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 623 63 623 69 , srcInfoPoints = [] } "size" "size"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 25 624 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 25 624 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 25 624 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 25 624 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 25 624 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 31 624 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 31 624 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 31 624 35 , srcInfoPoints = [] } "Skew")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 50 624 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 50 624 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 50 624 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 52 624 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 52 624 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 52 624 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 52 624 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 63 624 69 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 624 63 624 69 , srcInfoPoints = [] } "skew" "skew"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 25 625 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 25 625 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 25 625 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 25 625 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 25 625 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 31 625 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 31 625 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 31 625 40 , srcInfoPoints = [] } "Smoothing")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 50 625 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 50 625 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 50 625 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 52 625 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 52 625 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 52 625 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 52 625 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 63 625 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 625 63 625 74 , srcInfoPoints = [] } "smoothing" "smoothing"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 25 626 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 25 626 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 25 626 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 25 626 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 25 626 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 31 626 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 31 626 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 31 626 36 , srcInfoPoints = [] } "SortV")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 50 626 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 50 626 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 50 626 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 52 626 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 52 626 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 52 626 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 52 626 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 63 626 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 626 63 626 70 , srcInfoPoints = [] } "sortv" "sortv"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 25 627 87 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 25 627 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 25 627 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 25 627 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 25 627 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 31 627 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 31 627 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 31 627 38 , srcInfoPoints = [] } "Splines")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 50 627 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 50 627 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 50 627 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 52 627 87 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 52 627 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 52 627 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 52 627 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 52 627 65 , srcInfoPoints = [] } "parseFieldDef"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 66 627 77 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 66 627 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 66 627 77 , srcInfoPoints = [] } "SplineEdges")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 78 627 87 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 627 78 627 87 , srcInfoPoints = [] } "splines" "splines"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 25 628 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 25 628 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 25 628 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 25 628 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 25 628 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 31 628 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 31 628 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 31 628 36 , srcInfoPoints = [] } "Start")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 50 628 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 50 628 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 50 628 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 52 628 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 52 628 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 52 628 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 52 628 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 63 628 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 628 63 628 70 , srcInfoPoints = [] } "start" "start"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 25 629 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 25 629 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 25 629 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 25 629 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 25 629 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 31 629 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 31 629 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 31 629 41 , srcInfoPoints = [] } "StyleSheet")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 50 629 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 50 629 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 50 629 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 52 629 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 52 629 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 52 629 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 52 629 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 63 629 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 629 63 629 75 , srcInfoPoints = [] } "stylesheet" "stylesheet"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 25 630 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 25 630 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 25 630 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 25 630 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 25 630 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 31 630 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 31 630 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 31 630 36 , srcInfoPoints = [] } "Style")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 50 630 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 50 630 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 50 630 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 52 630 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 52 630 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 52 630 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 52 630 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 63 630 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 630 63 630 70 , srcInfoPoints = [] } "style" "style"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 25 631 87 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 25 631 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 25 631 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 25 631 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 25 631 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 31 631 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 31 631 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 31 631 38 , srcInfoPoints = [] } "TailURL")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 50 631 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 50 631 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 50 631 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 52 631 87 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 52 631 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 52 631 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 52 631 63 , srcInfoPoints = [] } "parseFields"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 64 631 87 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 631 64 631 65 , SrcSpan "tests/examples/Attributes.hs" 631 74 631 75 , SrcSpan "tests/examples/Attributes.hs" 631 86 631 87 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 65 631 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 65 631 74 , srcInfoPoints = [] } "tailURL" "tailURL") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 76 631 86 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 631 76 631 86 , srcInfoPoints = [] } "tailhref" "tailhref") ])) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 25 632 77 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 25 632 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 25 632 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 25 632 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 25 632 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 31 632 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 31 632 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 31 632 39 , srcInfoPoints = [] } "TailClip")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 50 632 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 50 632 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 50 632 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 52 632 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 52 632 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 52 632 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 52 632 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 67 632 77 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 632 67 632 77 , srcInfoPoints = [] } "tailclip" "tailclip"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 25 633 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 25 633 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 25 633 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 25 633 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 25 633 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 31 633 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 31 633 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 31 633 40 , srcInfoPoints = [] } "TailLabel")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 50 633 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 50 633 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 50 633 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 52 633 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 52 633 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 52 633 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 52 633 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 63 633 74 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 633 63 633 74 , srcInfoPoints = [] } "taillabel" "taillabel"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 25 634 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 25 634 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 25 634 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 25 634 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 25 634 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 31 634 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 31 634 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 31 634 39 , srcInfoPoints = [] } "TailPort")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 50 634 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 50 634 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 50 634 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 52 634 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 52 634 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 52 634 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 52 634 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 63 634 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 634 63 634 73 , srcInfoPoints = [] } "tailport" "tailport"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 25 635 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 25 635 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 25 635 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 25 635 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 25 635 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 31 635 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 31 635 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 31 635 41 , srcInfoPoints = [] } "TailTarget")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 50 635 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 50 635 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 50 635 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 52 635 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 52 635 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 52 635 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 52 635 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 63 635 75 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 635 63 635 75 , srcInfoPoints = [] } "tailtarget" "tailtarget"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 25 636 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 25 636 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 25 636 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 25 636 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 25 636 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 31 636 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 31 636 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 31 636 42 , srcInfoPoints = [] } "TailTooltip")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 50 636 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 50 636 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 50 636 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 52 636 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 52 636 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 52 636 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 52 636 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 63 636 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 636 63 636 76 , srcInfoPoints = [] } "tailtooltip" "tailtooltip"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 25 637 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 25 637 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 25 637 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 25 637 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 25 637 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 31 637 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 31 637 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 31 637 37 , srcInfoPoints = [] } "Target")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 50 637 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 50 637 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 50 637 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 52 637 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 52 637 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 52 637 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 52 637 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 63 637 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 637 63 637 71 , srcInfoPoints = [] } "target" "target"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 25 638 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 25 638 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 25 638 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 25 638 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 25 638 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 31 638 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 31 638 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 31 638 38 , srcInfoPoints = [] } "Tooltip")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 50 638 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 50 638 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 50 638 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 52 638 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 52 638 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 52 638 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 52 638 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 63 638 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 638 63 638 72 , srcInfoPoints = [] } "tooltip" "tooltip"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 25 639 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 25 639 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 25 639 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 25 639 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 25 639 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 31 639 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 31 639 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 31 639 40 , srcInfoPoints = [] } "TrueColor")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 50 639 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 50 639 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 50 639 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 52 639 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 52 639 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 52 639 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 52 639 66 , srcInfoPoints = [] } "parseFieldBool"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 67 639 78 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 639 67 639 78 , srcInfoPoints = [] } "truecolor" "truecolor"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 25 640 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 25 640 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 25 640 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 25 640 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 25 640 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 31 640 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 31 640 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 31 640 39 , srcInfoPoints = [] } "Vertices")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 50 640 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 50 640 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 50 640 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 52 640 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 52 640 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 52 640 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 52 640 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 63 640 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 640 63 640 73 , srcInfoPoints = [] } "vertices" "vertices"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 25 641 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 25 641 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 25 641 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 25 641 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 25 641 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 31 641 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 31 641 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 31 641 39 , srcInfoPoints = [] } "ViewPort")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 50 641 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 50 641 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 50 641 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 52 641 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 52 641 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 52 641 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 52 641 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 63 641 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 641 63 641 73 , srcInfoPoints = [] } "viewport" "viewport"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 25 642 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 25 642 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 25 642 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 25 642 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 25 642 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 31 642 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 31 642 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 31 642 41 , srcInfoPoints = [] } "VoroMargin")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 50 642 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 50 642 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 50 642 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 52 642 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 52 642 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 52 642 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 52 642 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 63 642 76 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 642 63 642 76 , srcInfoPoints = [] } "voro_margin" "voro_margin"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 25 643 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 25 643 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 25 643 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 25 643 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 25 643 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 31 643 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 31 643 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 31 643 37 , srcInfoPoints = [] } "Weight")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 50 643 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 50 643 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 50 643 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 52 643 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 52 643 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 52 643 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 52 643 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 63 643 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 643 63 643 71 , srcInfoPoints = [] } "weight" "weight"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 25 644 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 25 644 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 25 644 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 25 644 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 25 644 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 31 644 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 31 644 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 31 644 36 , srcInfoPoints = [] } "Width")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 50 644 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 50 644 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 50 644 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 52 644 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 52 644 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 52 644 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 52 644 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 63 644 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 644 63 644 70 , srcInfoPoints = [] } "width" "width"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 25 645 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 25 645 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 25 645 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 25 645 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 25 645 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 31 645 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 31 645 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 31 645 32 , srcInfoPoints = [] } "Z")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 50 645 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 50 645 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 50 645 51 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 52 645 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 52 645 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 52 645 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 52 645 62 , srcInfoPoints = [] } "parseField"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 63 645 66 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 645 63 645 66 , srcInfoPoints = [] } "z" "z"))) ]))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 648 5 648 22 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 648 5 648 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 648 5 648 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 648 5 648 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 648 11 648 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 648 11 648 12 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 648 13 648 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 648 13 648 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 648 13 648 22 , srcInfoPoints = [] } "parseUnqt")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 650 5 650 30 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 650 5 650 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 650 5 650 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 650 5 650 14 , srcInfoPoints = [] } "parseList")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 650 15 650 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 650 15 650 16 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 650 17 650 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 650 17 650 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 650 17 650 30 , srcInfoPoints = [] } "parseUnqtList")))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 1 653 55 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 653 35 653 37 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 1 653 13 , srcInfoPoints = [] } "usedByGraphs" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 38 653 55 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 653 48 653 50 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 38 653 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 38 653 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 38 653 47 , srcInfoPoints = [] } "Attribute"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 51 653 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 51 653 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 653 51 653 55 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 1 733 42 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 1 654 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 1 654 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 14 654 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 654 21 654 22 , SrcSpan "tests/examples/Attributes.hs" 654 22 654 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 14 654 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 14 654 21 , srcInfoPoints = [] } "Damping")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 35 654 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 654 35 654 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 37 654 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 37 654 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 654 37 654 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 1 655 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 1 655 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 14 655 17 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 655 15 655 16 , SrcSpan "tests/examples/Attributes.hs" 655 16 655 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 14 655 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 14 655 15 , srcInfoPoints = [] } "K")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 35 655 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 655 35 655 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 37 655 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 37 655 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 655 37 655 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 1 656 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 1 656 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 14 656 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 656 17 656 18 , SrcSpan "tests/examples/Attributes.hs" 656 18 656 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 14 656 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 14 656 17 , srcInfoPoints = [] } "URL")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 35 656 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 656 35 656 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 37 656 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 37 656 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 656 37 656 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 1 657 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 1 657 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 14 657 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 657 20 657 21 , SrcSpan "tests/examples/Attributes.hs" 657 21 657 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 14 657 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 14 657 20 , srcInfoPoints = [] } "Aspect")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 35 657 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 657 35 657 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 37 657 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 37 657 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 657 37 657 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 1 658 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 1 658 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 14 658 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 658 16 658 17 , SrcSpan "tests/examples/Attributes.hs" 658 17 658 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 14 658 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 14 658 16 , srcInfoPoints = [] } "Bb")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 35 658 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 658 35 658 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 37 658 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 37 658 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 658 37 658 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 1 659 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 1 659 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 14 659 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 659 21 659 22 , SrcSpan "tests/examples/Attributes.hs" 659 22 659 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 14 659 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 14 659 21 , srcInfoPoints = [] } "BgColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 35 659 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 659 35 659 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 37 659 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 37 659 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 659 37 659 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 1 660 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 1 660 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 14 660 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 660 20 660 21 , SrcSpan "tests/examples/Attributes.hs" 660 21 660 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 14 660 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 14 660 20 , srcInfoPoints = [] } "Center")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 35 660 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 660 35 660 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 37 660 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 37 660 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 660 37 660 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 1 661 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 1 661 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 14 661 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 661 21 661 22 , SrcSpan "tests/examples/Attributes.hs" 661 22 661 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 14 661 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 14 661 21 , srcInfoPoints = [] } "Charset")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 35 661 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 661 35 661 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 37 661 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 37 661 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 661 37 661 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 1 662 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 1 662 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 14 662 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 662 25 662 26 , SrcSpan "tests/examples/Attributes.hs" 662 26 662 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 14 662 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 14 662 25 , srcInfoPoints = [] } "ClusterRank")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 35 662 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 662 35 662 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 37 662 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 37 662 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 662 37 662 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 1 663 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 1 663 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 14 663 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 663 25 663 26 , SrcSpan "tests/examples/Attributes.hs" 663 26 663 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 14 663 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 14 663 25 , srcInfoPoints = [] } "ColorScheme")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 35 663 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 663 35 663 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 37 663 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 37 663 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 663 37 663 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 1 664 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 1 664 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 14 664 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 664 21 664 22 , SrcSpan "tests/examples/Attributes.hs" 664 22 664 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 14 664 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 14 664 21 , srcInfoPoints = [] } "Comment")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 35 664 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 664 35 664 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 37 664 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 37 664 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 664 37 664 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 1 665 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 1 665 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 14 665 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 665 22 665 23 , SrcSpan "tests/examples/Attributes.hs" 665 23 665 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 14 665 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 14 665 22 , srcInfoPoints = [] } "Compound")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 35 665 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 665 35 665 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 37 665 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 37 665 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 665 37 665 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 1 666 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 1 666 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 14 666 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 666 25 666 26 , SrcSpan "tests/examples/Attributes.hs" 666 26 666 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 14 666 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 14 666 25 , srcInfoPoints = [] } "Concentrate")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 35 666 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 666 35 666 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 37 666 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 37 666 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 666 37 666 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 1 667 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 1 667 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 14 667 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 667 25 667 26 , SrcSpan "tests/examples/Attributes.hs" 667 26 667 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 14 667 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 14 667 25 , srcInfoPoints = [] } "DefaultDist")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 35 667 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 667 35 667 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 37 667 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 37 667 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 667 37 667 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 1 668 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 1 668 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 14 668 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 668 19 668 20 , SrcSpan "tests/examples/Attributes.hs" 668 20 668 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 14 668 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 14 668 19 , srcInfoPoints = [] } "Dimen")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 35 668 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 668 35 668 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 37 668 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 37 668 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 668 37 668 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 1 669 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 1 669 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 14 669 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 669 17 669 18 , SrcSpan "tests/examples/Attributes.hs" 669 18 669 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 14 669 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 14 669 17 , srcInfoPoints = [] } "Dim")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 35 669 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 669 35 669 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 37 669 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 37 669 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 669 37 669 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 1 670 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 1 670 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 14 670 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 670 32 670 33 , SrcSpan "tests/examples/Attributes.hs" 670 33 670 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 14 670 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 14 670 32 , srcInfoPoints = [] } "DirEdgeConstraints")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 35 670 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 670 35 670 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 37 670 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 37 670 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 670 37 670 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 1 671 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 1 671 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 14 671 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 671 17 671 18 , SrcSpan "tests/examples/Attributes.hs" 671 18 671 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 14 671 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 14 671 17 , srcInfoPoints = [] } "DPI")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 35 671 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 671 35 671 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 37 671 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 37 671 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 671 37 671 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 1 672 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 1 672 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 14 672 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 672 21 672 22 , SrcSpan "tests/examples/Attributes.hs" 672 22 672 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 14 672 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 14 672 21 , srcInfoPoints = [] } "Epsilon")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 35 672 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 672 35 672 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 37 672 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 37 672 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 672 37 672 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 1 673 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 1 673 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 14 673 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 673 18 673 19 , SrcSpan "tests/examples/Attributes.hs" 673 19 673 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 14 673 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 14 673 18 , srcInfoPoints = [] } "ESep")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 35 673 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 673 35 673 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 37 673 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 37 673 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 673 37 673 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 1 674 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 1 674 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 14 674 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 674 23 674 24 , SrcSpan "tests/examples/Attributes.hs" 674 24 674 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 14 674 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 14 674 23 , srcInfoPoints = [] } "FontColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 35 674 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 674 35 674 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 37 674 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 37 674 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 674 37 674 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 1 675 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 1 675 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 14 675 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 675 22 675 23 , SrcSpan "tests/examples/Attributes.hs" 675 23 675 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 14 675 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 14 675 22 , srcInfoPoints = [] } "FontName")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 35 675 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 675 35 675 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 37 675 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 37 675 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 675 37 675 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 1 676 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 1 676 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 14 676 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 676 23 676 24 , SrcSpan "tests/examples/Attributes.hs" 676 24 676 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 14 676 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 14 676 23 , srcInfoPoints = [] } "FontNames")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 35 676 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 676 35 676 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 37 676 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 37 676 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 676 37 676 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 1 677 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 1 677 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 14 677 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 677 22 677 23 , SrcSpan "tests/examples/Attributes.hs" 677 23 677 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 14 677 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 14 677 22 , srcInfoPoints = [] } "FontPath")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 35 677 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 677 35 677 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 37 677 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 37 677 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 677 37 677 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 1 678 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 1 678 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 14 678 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 678 22 678 23 , SrcSpan "tests/examples/Attributes.hs" 678 23 678 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 14 678 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 14 678 22 , srcInfoPoints = [] } "FontSize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 35 678 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 678 35 678 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 37 678 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 37 678 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 678 37 678 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 1 679 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 1 679 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 14 679 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 679 16 679 17 , SrcSpan "tests/examples/Attributes.hs" 679 17 679 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 14 679 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 14 679 16 , srcInfoPoints = [] } "ID")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 35 679 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 679 35 679 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 37 679 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 37 679 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 679 37 679 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 1 680 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 1 680 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 14 680 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 680 23 680 24 , SrcSpan "tests/examples/Attributes.hs" 680 24 680 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 14 680 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 14 680 23 , srcInfoPoints = [] } "LabelJust")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 35 680 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 680 35 680 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 37 680 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 37 680 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 680 37 680 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 1 681 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 1 681 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 14 681 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 681 22 681 23 , SrcSpan "tests/examples/Attributes.hs" 681 23 681 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 14 681 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 14 681 22 , srcInfoPoints = [] } "LabelLoc")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 35 681 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 681 35 681 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 37 681 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 37 681 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 681 37 681 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 1 682 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 1 682 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 14 682 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 682 19 682 20 , SrcSpan "tests/examples/Attributes.hs" 682 20 682 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 14 682 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 14 682 19 , srcInfoPoints = [] } "Label")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 35 682 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 682 35 682 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 37 682 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 37 682 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 682 37 682 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 1 683 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 1 683 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 14 683 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 683 23 683 24 , SrcSpan "tests/examples/Attributes.hs" 683 24 683 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 14 683 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 14 683 23 , srcInfoPoints = [] } "Landscape")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 35 683 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 683 35 683 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 37 683 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 37 683 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 683 37 683 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 1 684 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 1 684 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 14 684 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 684 22 684 23 , SrcSpan "tests/examples/Attributes.hs" 684 23 684 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 14 684 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 14 684 22 , srcInfoPoints = [] } "LayerSep")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 35 684 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 684 35 684 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 37 684 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 37 684 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 684 37 684 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 1 685 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 1 685 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 14 685 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 685 20 685 21 , SrcSpan "tests/examples/Attributes.hs" 685 21 685 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 14 685 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 14 685 20 , srcInfoPoints = [] } "Layers")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 35 685 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 685 35 685 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 37 685 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 37 685 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 685 37 685 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 1 686 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 1 686 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 14 686 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 686 20 686 21 , SrcSpan "tests/examples/Attributes.hs" 686 21 686 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 14 686 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 14 686 20 , srcInfoPoints = [] } "Layout")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 35 686 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 686 35 686 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 37 686 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 37 686 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 686 37 686 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 1 687 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 1 687 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 14 687 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 687 23 687 24 , SrcSpan "tests/examples/Attributes.hs" 687 24 687 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 14 687 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 14 687 23 , srcInfoPoints = [] } "LevelsGap")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 35 687 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 687 35 687 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 37 687 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 37 687 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 687 37 687 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 1 688 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 1 688 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 14 688 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 688 20 688 21 , SrcSpan "tests/examples/Attributes.hs" 688 21 688 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 14 688 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 14 688 20 , srcInfoPoints = [] } "Levels")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 35 688 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 688 35 688 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 37 688 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 37 688 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 688 37 688 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 1 689 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 1 689 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 14 689 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 689 18 689 19 , SrcSpan "tests/examples/Attributes.hs" 689 19 689 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 14 689 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 14 689 18 , srcInfoPoints = [] } "LPos")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 35 689 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 689 35 689 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 37 689 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 37 689 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 689 37 689 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 1 690 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 1 690 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 14 690 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 690 20 690 21 , SrcSpan "tests/examples/Attributes.hs" 690 21 690 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 14 690 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 14 690 20 , srcInfoPoints = [] } "Margin")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 35 690 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 690 35 690 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 37 690 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 37 690 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 690 37 690 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 1 691 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 1 691 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 14 691 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 691 21 691 22 , SrcSpan "tests/examples/Attributes.hs" 691 22 691 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 14 691 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 14 691 21 , srcInfoPoints = [] } "MaxIter")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 35 691 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 691 35 691 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 37 691 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 37 691 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 691 37 691 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 1 692 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 1 692 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 14 692 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 692 21 692 22 , SrcSpan "tests/examples/Attributes.hs" 692 22 692 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 14 692 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 14 692 21 , srcInfoPoints = [] } "MCLimit")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 35 692 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 692 35 692 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 37 692 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 37 692 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 692 37 692 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 1 693 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 1 693 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 14 693 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 693 21 693 22 , SrcSpan "tests/examples/Attributes.hs" 693 22 693 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 14 693 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 14 693 21 , srcInfoPoints = [] } "MinDist")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 35 693 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 693 35 693 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 37 693 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 37 693 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 693 37 693 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 1 694 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 1 694 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 14 694 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 694 19 694 20 , SrcSpan "tests/examples/Attributes.hs" 694 20 694 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 14 694 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 14 694 19 , srcInfoPoints = [] } "Model")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 35 694 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 694 35 694 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 37 694 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 37 694 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 694 37 694 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 1 695 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 1 695 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 14 695 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 695 18 695 19 , SrcSpan "tests/examples/Attributes.hs" 695 19 695 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 14 695 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 14 695 18 , srcInfoPoints = [] } "Mode")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 35 695 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 695 35 695 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 37 695 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 37 695 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 695 37 695 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 1 696 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 1 696 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 14 696 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 696 19 696 20 , SrcSpan "tests/examples/Attributes.hs" 696 20 696 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 14 696 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 14 696 19 , srcInfoPoints = [] } "Mosek")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 35 696 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 696 35 696 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 37 696 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 37 696 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 696 37 696 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 1 697 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 1 697 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 14 697 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 697 21 697 22 , SrcSpan "tests/examples/Attributes.hs" 697 22 697 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 14 697 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 14 697 21 , srcInfoPoints = [] } "NodeSep")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 35 697 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 697 35 697 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 37 697 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 37 697 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 697 37 697 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 1 698 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 1 698 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 14 698 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 698 23 698 24 , SrcSpan "tests/examples/Attributes.hs" 698 24 698 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 14 698 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 14 698 23 , srcInfoPoints = [] } "NoJustify")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 35 698 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 698 35 698 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 37 698 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 37 698 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 698 37 698 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 1 699 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 1 699 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 14 699 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 699 23 699 24 , SrcSpan "tests/examples/Attributes.hs" 699 24 699 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 14 699 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 14 699 23 , srcInfoPoints = [] } "Normalize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 35 699 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 699 35 699 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 37 699 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 37 699 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 699 37 699 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 1 700 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 1 700 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 14 700 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 700 22 700 23 , SrcSpan "tests/examples/Attributes.hs" 700 23 700 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 14 700 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 14 700 22 , srcInfoPoints = [] } "Nslimit1")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 35 700 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 700 35 700 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 37 700 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 37 700 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 700 37 700 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 1 701 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 1 701 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 14 701 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 701 21 701 22 , SrcSpan "tests/examples/Attributes.hs" 701 22 701 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 14 701 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 14 701 21 , srcInfoPoints = [] } "Nslimit")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 35 701 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 701 35 701 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 37 701 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 37 701 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 701 37 701 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 1 702 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 1 702 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 14 702 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 702 22 702 23 , SrcSpan "tests/examples/Attributes.hs" 702 23 702 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 14 702 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 14 702 22 , srcInfoPoints = [] } "Ordering")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 35 702 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 702 35 702 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 37 702 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 37 702 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 702 37 702 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 1 703 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 1 703 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 14 703 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 703 25 703 26 , SrcSpan "tests/examples/Attributes.hs" 703 26 703 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 14 703 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 14 703 25 , srcInfoPoints = [] } "OutputOrder")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 35 703 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 703 35 703 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 37 703 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 37 703 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 703 37 703 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 1 704 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 1 704 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 14 704 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 704 28 704 29 , SrcSpan "tests/examples/Attributes.hs" 704 29 704 30 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 14 704 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 14 704 28 , srcInfoPoints = [] } "OverlapScaling")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 35 704 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 704 35 704 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 37 704 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 37 704 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 704 37 704 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 1 705 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 1 705 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 14 705 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 705 21 705 22 , SrcSpan "tests/examples/Attributes.hs" 705 22 705 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 14 705 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 14 705 21 , srcInfoPoints = [] } "Overlap")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 35 705 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 705 35 705 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 37 705 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 37 705 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 705 37 705 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 1 706 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 1 706 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 14 706 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 706 22 706 23 , SrcSpan "tests/examples/Attributes.hs" 706 23 706 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 14 706 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 14 706 22 , srcInfoPoints = [] } "PackMode")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 35 706 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 706 35 706 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 37 706 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 37 706 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 706 37 706 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 1 707 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 1 707 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 14 707 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 707 18 707 19 , SrcSpan "tests/examples/Attributes.hs" 707 19 707 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 14 707 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 14 707 18 , srcInfoPoints = [] } "Pack")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 35 707 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 707 35 707 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 37 707 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 37 707 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 707 37 707 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 1 708 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 1 708 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 14 708 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 708 17 708 18 , SrcSpan "tests/examples/Attributes.hs" 708 18 708 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 14 708 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 14 708 17 , srcInfoPoints = [] } "Pad")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 35 708 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 708 35 708 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 37 708 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 37 708 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 708 37 708 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 1 709 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 1 709 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 14 709 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 709 21 709 22 , SrcSpan "tests/examples/Attributes.hs" 709 22 709 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 14 709 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 14 709 21 , srcInfoPoints = [] } "PageDir")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 35 709 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 709 35 709 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 37 709 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 37 709 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 709 37 709 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 1 710 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 1 710 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 14 710 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 710 18 710 19 , SrcSpan "tests/examples/Attributes.hs" 710 19 710 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 14 710 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 14 710 18 , srcInfoPoints = [] } "Page")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 35 710 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 710 35 710 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 37 710 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 37 710 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 710 37 710 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 1 711 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 1 711 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 14 711 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 711 22 711 23 , SrcSpan "tests/examples/Attributes.hs" 711 23 711 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 14 711 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 14 711 22 , srcInfoPoints = [] } "QuadTree")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 35 711 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 711 35 711 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 37 711 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 37 711 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 711 37 711 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 1 712 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 1 712 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 14 712 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 712 21 712 22 , SrcSpan "tests/examples/Attributes.hs" 712 22 712 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 14 712 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 14 712 21 , srcInfoPoints = [] } "Quantum")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 35 712 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 712 35 712 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 37 712 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 37 712 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 712 37 712 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 1 713 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 1 713 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 14 713 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 713 21 713 22 , SrcSpan "tests/examples/Attributes.hs" 713 22 713 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 14 713 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 14 713 21 , srcInfoPoints = [] } "RankDir")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 35 713 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 713 35 713 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 37 713 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 37 713 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 713 37 713 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 1 714 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 1 714 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 14 714 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 714 21 714 22 , SrcSpan "tests/examples/Attributes.hs" 714 22 714 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 14 714 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 14 714 21 , srcInfoPoints = [] } "RankSep")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 35 714 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 714 35 714 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 37 714 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 37 714 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 714 37 714 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 1 715 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 1 715 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 14 715 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 715 19 715 20 , SrcSpan "tests/examples/Attributes.hs" 715 20 715 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 14 715 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 14 715 19 , srcInfoPoints = [] } "Ratio")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 35 715 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 715 35 715 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 37 715 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 37 715 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 715 37 715 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 1 716 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 1 716 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 14 716 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 716 24 716 25 , SrcSpan "tests/examples/Attributes.hs" 716 25 716 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 14 716 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 14 716 24 , srcInfoPoints = [] } "ReMinCross")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 35 716 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 716 35 716 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 37 716 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 37 716 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 716 37 716 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 1 717 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 1 717 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 14 717 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 717 28 717 29 , SrcSpan "tests/examples/Attributes.hs" 717 29 717 30 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 14 717 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 14 717 28 , srcInfoPoints = [] } "RepulsiveForce")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 35 717 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 717 35 717 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 37 717 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 37 717 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 717 37 717 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 1 718 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 1 718 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 14 718 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 718 18 718 19 , SrcSpan "tests/examples/Attributes.hs" 718 19 718 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 14 718 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 14 718 18 , srcInfoPoints = [] } "Root")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 35 718 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 718 35 718 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 37 718 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 37 718 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 718 37 718 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 1 719 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 1 719 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 14 719 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 719 20 719 21 , SrcSpan "tests/examples/Attributes.hs" 719 21 719 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 14 719 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 14 719 20 , srcInfoPoints = [] } "Rotate")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 35 719 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 719 35 719 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 37 719 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 37 719 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 719 37 719 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 1 720 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 1 720 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 14 720 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 720 24 720 25 , SrcSpan "tests/examples/Attributes.hs" 720 25 720 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 14 720 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 14 720 24 , srcInfoPoints = [] } "SearchSize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 35 720 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 720 35 720 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 37 720 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 37 720 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 720 37 720 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 1 721 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 1 721 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 14 721 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 721 17 721 18 , SrcSpan "tests/examples/Attributes.hs" 721 18 721 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 14 721 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 14 721 17 , srcInfoPoints = [] } "Sep")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 35 721 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 721 35 721 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 37 721 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 37 721 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 721 37 721 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 1 722 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 1 722 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 14 722 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 722 23 722 24 , SrcSpan "tests/examples/Attributes.hs" 722 24 722 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 14 722 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 14 722 23 , srcInfoPoints = [] } "ShowBoxes")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 35 722 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 722 35 722 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 37 722 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 37 722 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 722 37 722 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 1 723 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 1 723 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 14 723 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 723 18 723 19 , SrcSpan "tests/examples/Attributes.hs" 723 19 723 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 14 723 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 14 723 18 , srcInfoPoints = [] } "Size")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 35 723 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 723 35 723 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 37 723 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 37 723 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 723 37 723 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 1 724 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 1 724 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 14 724 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 724 23 724 24 , SrcSpan "tests/examples/Attributes.hs" 724 24 724 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 14 724 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 14 724 23 , srcInfoPoints = [] } "Smoothing")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 35 724 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 724 35 724 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 37 724 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 37 724 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 724 37 724 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 1 725 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 1 725 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 14 725 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 725 19 725 20 , SrcSpan "tests/examples/Attributes.hs" 725 20 725 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 14 725 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 14 725 19 , srcInfoPoints = [] } "SortV")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 35 725 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 725 35 725 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 37 725 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 37 725 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 725 37 725 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 1 726 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 1 726 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 14 726 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 726 21 726 22 , SrcSpan "tests/examples/Attributes.hs" 726 22 726 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 14 726 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 14 726 21 , srcInfoPoints = [] } "Splines")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 35 726 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 726 35 726 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 37 726 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 37 726 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 726 37 726 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 1 727 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 1 727 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 14 727 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 727 19 727 20 , SrcSpan "tests/examples/Attributes.hs" 727 20 727 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 14 727 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 14 727 19 , srcInfoPoints = [] } "Start")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 35 727 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 727 35 727 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 37 727 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 37 727 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 727 37 727 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 1 728 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 1 728 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 14 728 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 728 24 728 25 , SrcSpan "tests/examples/Attributes.hs" 728 25 728 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 14 728 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 14 728 24 , srcInfoPoints = [] } "StyleSheet")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 35 728 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 728 35 728 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 37 728 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 37 728 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 728 37 728 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 1 729 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 1 729 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 14 729 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 729 20 729 21 , SrcSpan "tests/examples/Attributes.hs" 729 21 729 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 14 729 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 14 729 20 , srcInfoPoints = [] } "Target")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 35 729 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 729 35 729 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 37 729 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 37 729 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 729 37 729 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 1 730 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 1 730 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 14 730 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 730 23 730 24 , SrcSpan "tests/examples/Attributes.hs" 730 24 730 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 14 730 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 14 730 23 , srcInfoPoints = [] } "TrueColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 35 730 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 730 35 730 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 37 730 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 37 730 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 730 37 730 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 1 731 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 1 731 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 14 731 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 731 22 731 23 , SrcSpan "tests/examples/Attributes.hs" 731 23 731 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 14 731 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 14 731 22 , srcInfoPoints = [] } "ViewPort")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 35 731 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 731 35 731 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 37 731 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 37 731 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 731 37 731 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 1 732 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 1 732 13 , srcInfoPoints = [] } "usedByGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 14 732 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 732 24 732 25 , SrcSpan "tests/examples/Attributes.hs" 732 25 732 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 14 732 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 14 732 24 , srcInfoPoints = [] } "VoroMargin")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 35 732 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 732 35 732 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 37 732 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 37 732 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 732 37 732 41 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 733 1 733 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 733 1 733 13 , srcInfoPoints = [] } "usedByGraphs") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 733 14 733 15 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 733 35 733 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 733 35 733 36 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 733 37 733 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 733 37 733 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 733 37 733 42 , srcInfoPoints = [] } "False")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 1 736 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 736 30 736 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 1 736 15 , srcInfoPoints = [] } "usedByClusters" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 33 736 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 736 43 736 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 33 736 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 33 736 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 33 736 42 , srcInfoPoints = [] } "Attribute"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 46 736 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 46 736 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 736 46 736 50 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 1 759 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 1 737 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 1 737 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 16 737 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 737 17 737 18 , SrcSpan "tests/examples/Attributes.hs" 737 18 737 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 16 737 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 16 737 17 , srcInfoPoints = [] } "K")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 30 737 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 737 30 737 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 32 737 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 32 737 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 737 32 737 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 1 738 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 1 738 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 16 738 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 738 19 738 20 , SrcSpan "tests/examples/Attributes.hs" 738 20 738 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 16 738 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 16 738 19 , srcInfoPoints = [] } "URL")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 30 738 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 738 30 738 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 32 738 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 32 738 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 738 32 738 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 1 739 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 1 739 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 16 739 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 739 23 739 24 , SrcSpan "tests/examples/Attributes.hs" 739 24 739 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 16 739 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 16 739 23 , srcInfoPoints = [] } "BgColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 30 739 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 739 30 739 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 32 739 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 32 739 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 739 32 739 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 1 740 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 1 740 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 16 740 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 740 27 740 28 , SrcSpan "tests/examples/Attributes.hs" 740 28 740 29 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 16 740 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 16 740 27 , srcInfoPoints = [] } "ColorScheme")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 30 740 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 740 30 740 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 32 740 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 32 740 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 740 32 740 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 1 741 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 1 741 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 16 741 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 741 21 741 22 , SrcSpan "tests/examples/Attributes.hs" 741 22 741 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 16 741 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 16 741 21 , srcInfoPoints = [] } "Color")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 30 741 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 741 30 741 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 32 741 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 32 741 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 741 32 741 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 1 742 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 1 742 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 16 742 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 742 25 742 26 , SrcSpan "tests/examples/Attributes.hs" 742 26 742 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 16 742 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 16 742 25 , srcInfoPoints = [] } "FillColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 30 742 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 742 30 742 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 32 742 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 32 742 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 742 32 742 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 1 743 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 1 743 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 16 743 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 743 25 743 26 , SrcSpan "tests/examples/Attributes.hs" 743 26 743 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 16 743 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 16 743 25 , srcInfoPoints = [] } "FontColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 30 743 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 743 30 743 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 32 743 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 32 743 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 743 32 743 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 1 744 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 1 744 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 16 744 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 744 24 744 25 , SrcSpan "tests/examples/Attributes.hs" 744 25 744 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 16 744 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 16 744 24 , srcInfoPoints = [] } "FontName")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 30 744 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 744 30 744 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 32 744 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 32 744 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 744 32 744 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 1 745 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 1 745 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 16 745 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 745 24 745 25 , SrcSpan "tests/examples/Attributes.hs" 745 25 745 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 16 745 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 16 745 24 , srcInfoPoints = [] } "FontSize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 30 745 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 745 30 745 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 32 745 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 32 745 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 745 32 745 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 1 746 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 1 746 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 16 746 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 746 25 746 26 , SrcSpan "tests/examples/Attributes.hs" 746 26 746 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 16 746 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 16 746 25 , srcInfoPoints = [] } "LabelJust")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 30 746 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 746 30 746 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 32 746 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 32 746 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 746 32 746 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 1 747 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 1 747 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 16 747 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 747 24 747 25 , SrcSpan "tests/examples/Attributes.hs" 747 25 747 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 16 747 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 16 747 24 , srcInfoPoints = [] } "LabelLoc")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 30 747 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 747 30 747 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 32 747 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 32 747 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 747 32 747 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 1 748 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 1 748 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 16 748 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 748 21 748 22 , SrcSpan "tests/examples/Attributes.hs" 748 22 748 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 16 748 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 16 748 21 , srcInfoPoints = [] } "Label")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 30 748 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 748 30 748 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 32 748 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 32 748 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 748 32 748 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 1 749 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 1 749 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 16 749 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 749 20 749 21 , SrcSpan "tests/examples/Attributes.hs" 749 21 749 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 16 749 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 16 749 20 , srcInfoPoints = [] } "LPos")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 30 749 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 749 30 749 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 32 749 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 32 749 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 749 32 749 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 1 750 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 1 750 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 16 750 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 750 25 750 26 , SrcSpan "tests/examples/Attributes.hs" 750 26 750 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 16 750 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 16 750 25 , srcInfoPoints = [] } "NoJustify")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 30 750 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 750 30 750 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 32 750 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 32 750 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 750 32 750 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 1 751 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 1 751 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 16 751 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 751 24 751 25 , SrcSpan "tests/examples/Attributes.hs" 751 25 751 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 16 751 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 16 751 24 , srcInfoPoints = [] } "PenColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 30 751 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 751 30 751 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 32 751 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 32 751 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 751 32 751 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 1 752 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 1 752 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 16 752 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 752 24 752 25 , SrcSpan "tests/examples/Attributes.hs" 752 25 752 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 16 752 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 16 752 24 , srcInfoPoints = [] } "PenWidth")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 30 752 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 752 30 752 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 32 752 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 32 752 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 752 32 752 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 1 753 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 1 753 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 16 753 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 753 27 753 28 , SrcSpan "tests/examples/Attributes.hs" 753 28 753 29 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 16 753 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 16 753 27 , srcInfoPoints = [] } "Peripheries")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 30 753 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 753 30 753 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 32 753 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 32 753 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 753 32 753 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 1 754 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 1 754 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 16 754 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 754 20 754 21 , SrcSpan "tests/examples/Attributes.hs" 754 21 754 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 16 754 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 16 754 20 , srcInfoPoints = [] } "Rank")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 30 754 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 754 30 754 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 32 754 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 32 754 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 754 32 754 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 1 755 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 1 755 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 16 755 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 755 21 755 22 , SrcSpan "tests/examples/Attributes.hs" 755 22 755 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 16 755 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 16 755 21 , srcInfoPoints = [] } "SortV")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 30 755 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 755 30 755 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 32 755 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 32 755 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 755 32 755 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 1 756 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 1 756 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 16 756 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 756 21 756 22 , SrcSpan "tests/examples/Attributes.hs" 756 22 756 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 16 756 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 16 756 21 , srcInfoPoints = [] } "Style")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 30 756 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 756 30 756 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 32 756 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 32 756 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 756 32 756 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 1 757 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 1 757 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 16 757 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 757 22 757 23 , SrcSpan "tests/examples/Attributes.hs" 757 23 757 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 16 757 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 16 757 22 , srcInfoPoints = [] } "Target")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 30 757 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 757 30 757 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 32 757 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 32 757 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 757 32 757 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 1 758 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 1 758 15 , srcInfoPoints = [] } "usedByClusters") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 16 758 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 758 23 758 24 , SrcSpan "tests/examples/Attributes.hs" 758 24 758 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 16 758 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 16 758 23 , srcInfoPoints = [] } "Tooltip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 30 758 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 758 30 758 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 32 758 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 32 758 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 758 32 758 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 759 1 759 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 759 1 759 15 , srcInfoPoints = [] } "usedByClusters") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 759 16 759 17 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 759 30 759 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 759 30 759 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 759 32 759 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 759 32 759 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 759 32 759 37 , srcInfoPoints = [] } "False")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 1 762 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 762 24 762 26 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 1 762 16 , srcInfoPoints = [] } "usedBySubGraphs" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 27 762 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 762 37 762 39 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 27 762 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 27 762 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 27 762 36 , srcInfoPoints = [] } "Attribute"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 40 762 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 40 762 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 762 40 762 44 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 1 764 31 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 1 763 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 1 763 16 , srcInfoPoints = [] } "usedBySubGraphs") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 17 763 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 763 21 763 22 , SrcSpan "tests/examples/Attributes.hs" 763 22 763 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 17 763 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 17 763 21 , srcInfoPoints = [] } "Rank")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 24 763 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 763 24 763 25 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 26 763 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 26 763 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 763 26 763 30 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 764 1 764 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 764 1 764 16 , srcInfoPoints = [] } "usedBySubGraphs") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 764 17 764 18 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 764 24 764 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 764 24 764 25 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 764 26 764 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 764 26 764 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 764 26 764 31 , srcInfoPoints = [] } "False")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 1 767 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 767 28 767 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 1 767 12 , srcInfoPoints = [] } "usedByNodes" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 31 767 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 767 41 767 43 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 31 767 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 31 767 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 31 767 40 , srcInfoPoints = [] } "Attribute"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 44 767 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 44 767 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 767 44 767 48 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 1 809 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 1 768 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 1 768 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 13 768 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 768 16 768 17 , SrcSpan "tests/examples/Attributes.hs" 768 17 768 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 13 768 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 13 768 16 , srcInfoPoints = [] } "URL")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 28 768 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 768 28 768 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 30 768 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 30 768 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 768 30 768 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 1 769 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 1 769 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 13 769 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 769 24 769 25 , SrcSpan "tests/examples/Attributes.hs" 769 25 769 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 13 769 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 13 769 24 , srcInfoPoints = [] } "ColorScheme")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 28 769 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 769 28 769 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 30 769 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 30 769 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 769 30 769 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 1 770 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 1 770 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 13 770 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 770 18 770 19 , SrcSpan "tests/examples/Attributes.hs" 770 19 770 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 13 770 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 13 770 18 , srcInfoPoints = [] } "Color")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 28 770 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 770 28 770 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 30 770 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 30 770 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 770 30 770 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 1 771 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 1 771 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 13 771 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 771 20 771 21 , SrcSpan "tests/examples/Attributes.hs" 771 21 771 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 13 771 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 13 771 20 , srcInfoPoints = [] } "Comment")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 28 771 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 771 28 771 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 30 771 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 30 771 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 771 30 771 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 1 772 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 1 772 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 13 772 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 772 23 772 24 , SrcSpan "tests/examples/Attributes.hs" 772 24 772 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 13 772 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 13 772 23 , srcInfoPoints = [] } "Distortion")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 28 772 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 772 28 772 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 30 772 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 30 772 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 772 30 772 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 1 773 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 1 773 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 13 773 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 773 22 773 23 , SrcSpan "tests/examples/Attributes.hs" 773 23 773 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 13 773 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 13 773 22 , srcInfoPoints = [] } "FillColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 28 773 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 773 28 773 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 30 773 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 30 773 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 773 30 773 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 1 774 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 1 774 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 13 774 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 774 22 774 23 , SrcSpan "tests/examples/Attributes.hs" 774 23 774 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 13 774 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 13 774 22 , srcInfoPoints = [] } "FixedSize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 28 774 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 774 28 774 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 30 774 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 30 774 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 774 30 774 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 1 775 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 1 775 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 13 775 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 775 22 775 23 , SrcSpan "tests/examples/Attributes.hs" 775 23 775 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 13 775 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 13 775 22 , srcInfoPoints = [] } "FontColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 28 775 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 775 28 775 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 30 775 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 30 775 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 775 30 775 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 1 776 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 1 776 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 13 776 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 776 21 776 22 , SrcSpan "tests/examples/Attributes.hs" 776 22 776 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 13 776 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 13 776 21 , srcInfoPoints = [] } "FontName")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 28 776 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 776 28 776 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 30 776 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 30 776 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 776 30 776 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 1 777 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 1 777 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 13 777 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 777 21 777 22 , SrcSpan "tests/examples/Attributes.hs" 777 22 777 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 13 777 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 13 777 21 , srcInfoPoints = [] } "FontSize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 28 777 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 777 28 777 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 30 777 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 30 777 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 777 30 777 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 1 778 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 1 778 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 13 778 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 778 18 778 19 , SrcSpan "tests/examples/Attributes.hs" 778 19 778 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 13 778 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 13 778 18 , srcInfoPoints = [] } "Group")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 28 778 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 778 28 778 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 30 778 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 30 778 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 778 30 778 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 1 779 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 1 779 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 13 779 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 779 19 779 20 , SrcSpan "tests/examples/Attributes.hs" 779 20 779 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 13 779 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 13 779 19 , srcInfoPoints = [] } "Height")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 28 779 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 779 28 779 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 30 779 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 30 779 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 779 30 779 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 1 780 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 1 780 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 13 780 17 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 780 15 780 16 , SrcSpan "tests/examples/Attributes.hs" 780 16 780 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 13 780 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 13 780 15 , srcInfoPoints = [] } "ID")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 28 780 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 780 28 780 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 30 780 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 30 780 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 780 30 780 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 1 781 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 1 781 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 13 781 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 781 18 781 19 , SrcSpan "tests/examples/Attributes.hs" 781 19 781 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 13 781 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 13 781 18 , srcInfoPoints = [] } "Image")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 28 781 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 781 28 781 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 30 781 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 30 781 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 781 30 781 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 1 782 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 1 782 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 13 782 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 782 23 782 24 , SrcSpan "tests/examples/Attributes.hs" 782 24 782 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 13 782 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 13 782 23 , srcInfoPoints = [] } "ImageScale")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 28 782 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 782 28 782 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 30 782 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 30 782 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 782 30 782 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 1 783 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 1 783 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 13 783 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 783 21 783 22 , SrcSpan "tests/examples/Attributes.hs" 783 22 783 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 13 783 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 13 783 21 , srcInfoPoints = [] } "LabelLoc")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 28 783 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 783 28 783 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 30 783 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 30 783 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 783 30 783 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 1 784 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 1 784 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 13 784 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 784 18 784 19 , SrcSpan "tests/examples/Attributes.hs" 784 19 784 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 13 784 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 13 784 18 , srcInfoPoints = [] } "Label")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 28 784 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 784 28 784 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 30 784 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 30 784 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 784 30 784 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 1 785 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 1 785 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 13 785 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 785 18 785 19 , SrcSpan "tests/examples/Attributes.hs" 785 19 785 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 13 785 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 13 785 18 , srcInfoPoints = [] } "Layer")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 28 785 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 785 28 785 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 30 785 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 30 785 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 785 30 785 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 1 786 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 1 786 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 13 786 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 786 19 786 20 , SrcSpan "tests/examples/Attributes.hs" 786 20 786 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 13 786 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 13 786 19 , srcInfoPoints = [] } "Margin")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 28 786 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 786 28 786 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 30 786 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 30 786 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 786 30 786 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 1 787 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 1 787 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 13 787 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 787 22 787 23 , SrcSpan "tests/examples/Attributes.hs" 787 23 787 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 13 787 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 13 787 22 , srcInfoPoints = [] } "NoJustify")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 28 787 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 787 28 787 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 30 787 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 30 787 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 787 30 787 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 1 788 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 1 788 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 13 788 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 788 24 788 25 , SrcSpan "tests/examples/Attributes.hs" 788 25 788 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 13 788 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 13 788 24 , srcInfoPoints = [] } "Orientation")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 28 788 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 788 28 788 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 30 788 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 30 788 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 788 30 788 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 1 789 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 1 789 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 13 789 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 789 21 789 22 , SrcSpan "tests/examples/Attributes.hs" 789 22 789 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 13 789 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 13 789 21 , srcInfoPoints = [] } "PenWidth")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 28 789 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 789 28 789 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 30 789 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 30 789 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 789 30 789 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 1 790 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 1 790 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 13 790 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 790 24 790 25 , SrcSpan "tests/examples/Attributes.hs" 790 25 790 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 13 790 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 13 790 24 , srcInfoPoints = [] } "Peripheries")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 28 790 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 790 28 790 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 30 790 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 30 790 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 790 30 790 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 1 791 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 1 791 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 13 791 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 791 16 791 17 , SrcSpan "tests/examples/Attributes.hs" 791 17 791 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 13 791 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 13 791 16 , srcInfoPoints = [] } "Pin")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 28 791 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 791 28 791 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 30 791 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 30 791 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 791 30 791 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 1 792 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 1 792 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 13 792 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 792 16 792 17 , SrcSpan "tests/examples/Attributes.hs" 792 17 792 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 13 792 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 13 792 16 , srcInfoPoints = [] } "Pos")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 28 792 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 792 28 792 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 30 792 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 30 792 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 792 30 792 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 1 793 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 1 793 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 13 793 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 793 18 793 19 , SrcSpan "tests/examples/Attributes.hs" 793 19 793 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 13 793 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 13 793 18 , srcInfoPoints = [] } "Rects")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 28 793 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 793 28 793 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 30 793 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 30 793 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 793 30 793 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 1 794 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 1 794 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 13 794 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 794 20 794 21 , SrcSpan "tests/examples/Attributes.hs" 794 21 794 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 13 794 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 13 794 20 , srcInfoPoints = [] } "Regular")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 28 794 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 794 28 794 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 30 794 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 30 794 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 794 30 794 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 1 795 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 1 795 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 13 795 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 795 17 795 18 , SrcSpan "tests/examples/Attributes.hs" 795 18 795 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 13 795 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 13 795 17 , srcInfoPoints = [] } "Root")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 28 795 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 795 28 795 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 30 795 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 30 795 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 795 30 795 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 1 796 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 1 796 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 13 796 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 796 25 796 26 , SrcSpan "tests/examples/Attributes.hs" 796 26 796 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 13 796 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 13 796 25 , srcInfoPoints = [] } "SamplePoints")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 28 796 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 796 28 796 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 30 796 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 30 796 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 796 30 796 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 1 797 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 1 797 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 13 797 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 797 22 797 23 , SrcSpan "tests/examples/Attributes.hs" 797 23 797 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 13 797 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 13 797 22 , srcInfoPoints = [] } "ShapeFile")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 28 797 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 797 28 797 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 30 797 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 30 797 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 797 30 797 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 1 798 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 1 798 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 13 798 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 798 18 798 19 , SrcSpan "tests/examples/Attributes.hs" 798 19 798 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 13 798 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 13 798 18 , srcInfoPoints = [] } "Shape")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 28 798 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 798 28 798 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 30 798 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 30 798 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 798 30 798 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 1 799 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 1 799 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 13 799 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 799 22 799 23 , SrcSpan "tests/examples/Attributes.hs" 799 23 799 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 13 799 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 13 799 22 , srcInfoPoints = [] } "ShowBoxes")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 28 799 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 799 28 799 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 30 799 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 30 799 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 799 30 799 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 1 800 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 1 800 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 13 800 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 800 18 800 19 , SrcSpan "tests/examples/Attributes.hs" 800 19 800 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 13 800 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 13 800 18 , srcInfoPoints = [] } "Sides")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 28 800 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 800 28 800 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 30 800 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 30 800 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 800 30 800 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 1 801 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 1 801 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 13 801 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 801 17 801 18 , SrcSpan "tests/examples/Attributes.hs" 801 18 801 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 13 801 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 13 801 17 , srcInfoPoints = [] } "Skew")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 28 801 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 801 28 801 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 30 801 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 30 801 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 801 30 801 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 1 802 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 1 802 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 13 802 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 802 18 802 19 , SrcSpan "tests/examples/Attributes.hs" 802 19 802 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 13 802 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 13 802 18 , srcInfoPoints = [] } "SortV")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 28 802 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 802 28 802 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 30 802 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 30 802 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 802 30 802 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 1 803 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 1 803 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 13 803 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 803 18 803 19 , SrcSpan "tests/examples/Attributes.hs" 803 19 803 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 13 803 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 13 803 18 , srcInfoPoints = [] } "Style")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 28 803 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 803 28 803 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 30 803 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 30 803 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 803 30 803 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 1 804 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 1 804 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 13 804 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 804 19 804 20 , SrcSpan "tests/examples/Attributes.hs" 804 20 804 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 13 804 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 13 804 19 , srcInfoPoints = [] } "Target")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 28 804 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 804 28 804 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 30 804 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 30 804 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 804 30 804 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 1 805 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 1 805 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 13 805 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 805 20 805 21 , SrcSpan "tests/examples/Attributes.hs" 805 21 805 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 13 805 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 13 805 20 , srcInfoPoints = [] } "Tooltip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 28 805 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 805 28 805 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 30 805 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 30 805 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 805 30 805 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 1 806 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 1 806 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 13 806 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 806 21 806 22 , SrcSpan "tests/examples/Attributes.hs" 806 22 806 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 13 806 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 13 806 21 , srcInfoPoints = [] } "Vertices")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 28 806 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 806 28 806 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 30 806 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 30 806 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 806 30 806 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 1 807 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 1 807 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 13 807 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 807 18 807 19 , SrcSpan "tests/examples/Attributes.hs" 807 19 807 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 13 807 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 13 807 18 , srcInfoPoints = [] } "Width")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 28 807 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 807 28 807 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 30 807 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 30 807 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 807 30 807 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 1 808 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 1 808 12 , srcInfoPoints = [] } "usedByNodes") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 13 808 16 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 808 14 808 15 , SrcSpan "tests/examples/Attributes.hs" 808 15 808 16 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 13 808 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 13 808 14 , srcInfoPoints = [] } "Z")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 28 808 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 808 28 808 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 30 808 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 30 808 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 808 30 808 34 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 809 1 809 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 809 1 809 12 , srcInfoPoints = [] } "usedByNodes") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 809 13 809 14 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 809 28 809 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 809 28 809 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 809 30 809 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 809 30 809 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 809 30 809 35 , srcInfoPoints = [] } "False")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 1 812 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 812 30 812 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 1 812 12 , srcInfoPoints = [] } "usedByEdges" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 33 812 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 812 43 812 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 33 812 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 33 812 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 33 812 42 , srcInfoPoints = [] } "Attribute"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 46 812 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 46 812 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 812 46 812 50 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 1 868 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 1 813 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 1 813 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 13 813 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 813 16 813 17 , SrcSpan "tests/examples/Attributes.hs" 813 17 813 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 13 813 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 13 813 16 , srcInfoPoints = [] } "URL")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 30 813 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 813 30 813 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 32 813 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 32 813 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 813 32 813 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 1 814 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 1 814 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 13 814 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 814 22 814 23 , SrcSpan "tests/examples/Attributes.hs" 814 23 814 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 13 814 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 13 814 22 , srcInfoPoints = [] } "ArrowHead")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 30 814 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 814 30 814 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 32 814 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 32 814 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 814 32 814 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 1 815 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 1 815 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 13 815 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 815 22 815 23 , SrcSpan "tests/examples/Attributes.hs" 815 23 815 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 13 815 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 13 815 22 , srcInfoPoints = [] } "ArrowSize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 30 815 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 815 30 815 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 32 815 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 32 815 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 815 32 815 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 1 816 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 1 816 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 13 816 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 816 22 816 23 , SrcSpan "tests/examples/Attributes.hs" 816 23 816 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 13 816 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 13 816 22 , srcInfoPoints = [] } "ArrowTail")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 30 816 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 816 30 816 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 32 816 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 32 816 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 816 32 816 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 1 817 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 1 817 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 13 817 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 817 24 817 25 , SrcSpan "tests/examples/Attributes.hs" 817 25 817 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 13 817 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 13 817 24 , srcInfoPoints = [] } "ColorScheme")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 30 817 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 817 30 817 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 32 817 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 32 817 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 817 32 817 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 1 818 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 1 818 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 13 818 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 818 18 818 19 , SrcSpan "tests/examples/Attributes.hs" 818 19 818 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 13 818 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 13 818 18 , srcInfoPoints = [] } "Color")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 30 818 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 818 30 818 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 32 818 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 32 818 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 818 32 818 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 1 819 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 1 819 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 13 819 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 819 20 819 21 , SrcSpan "tests/examples/Attributes.hs" 819 21 819 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 13 819 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 13 819 20 , srcInfoPoints = [] } "Comment")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 30 819 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 819 30 819 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 32 819 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 32 819 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 819 32 819 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 1 820 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 1 820 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 13 820 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 820 23 820 24 , SrcSpan "tests/examples/Attributes.hs" 820 24 820 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 13 820 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 13 820 23 , srcInfoPoints = [] } "Constraint")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 30 820 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 820 30 820 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 32 820 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 32 820 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 820 32 820 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 1 821 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 1 821 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 13 821 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 821 21 821 22 , SrcSpan "tests/examples/Attributes.hs" 821 22 821 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 13 821 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 13 821 21 , srcInfoPoints = [] } "Decorate")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 30 821 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 821 30 821 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 32 821 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 32 821 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 821 32 821 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 1 822 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 1 822 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 13 822 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 822 16 822 17 , SrcSpan "tests/examples/Attributes.hs" 822 17 822 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 13 822 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 13 822 16 , srcInfoPoints = [] } "Dir")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 30 822 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 822 30 822 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 32 822 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 32 822 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 822 32 822 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 1 823 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 1 823 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 13 823 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 823 20 823 21 , SrcSpan "tests/examples/Attributes.hs" 823 21 823 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 13 823 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 13 823 20 , srcInfoPoints = [] } "EdgeURL")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 30 823 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 823 30 823 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 32 823 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 32 823 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 823 32 823 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 1 824 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 1 824 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 13 824 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 824 23 824 24 , SrcSpan "tests/examples/Attributes.hs" 824 24 824 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 13 824 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 13 824 23 , srcInfoPoints = [] } "EdgeTarget")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 30 824 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 824 30 824 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 32 824 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 32 824 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 824 32 824 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 1 825 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 1 825 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 13 825 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 825 24 825 25 , SrcSpan "tests/examples/Attributes.hs" 825 25 825 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 13 825 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 13 825 24 , srcInfoPoints = [] } "EdgeTooltip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 30 825 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 825 30 825 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 32 825 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 32 825 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 825 32 825 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 1 826 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 1 826 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 13 826 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 826 22 826 23 , SrcSpan "tests/examples/Attributes.hs" 826 23 826 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 13 826 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 13 826 22 , srcInfoPoints = [] } "FontColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 30 826 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 826 30 826 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 32 826 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 32 826 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 826 32 826 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 1 827 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 1 827 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 13 827 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 827 21 827 22 , SrcSpan "tests/examples/Attributes.hs" 827 22 827 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 13 827 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 13 827 21 , srcInfoPoints = [] } "FontName")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 30 827 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 827 30 827 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 32 827 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 32 827 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 827 32 827 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 1 828 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 1 828 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 13 828 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 828 21 828 22 , SrcSpan "tests/examples/Attributes.hs" 828 22 828 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 13 828 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 13 828 21 , srcInfoPoints = [] } "FontSize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 30 828 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 828 30 828 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 32 828 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 32 828 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 828 32 828 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 1 829 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 1 829 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 13 829 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 829 20 829 21 , SrcSpan "tests/examples/Attributes.hs" 829 21 829 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 13 829 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 13 829 20 , srcInfoPoints = [] } "HeadURL")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 30 829 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 829 30 829 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 32 829 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 32 829 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 829 32 829 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 1 830 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 1 830 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 13 830 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 830 21 830 22 , SrcSpan "tests/examples/Attributes.hs" 830 22 830 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 13 830 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 13 830 21 , srcInfoPoints = [] } "HeadClip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 30 830 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 830 30 830 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 32 830 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 32 830 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 830 32 830 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 1 831 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 1 831 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 13 831 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 831 22 831 23 , SrcSpan "tests/examples/Attributes.hs" 831 23 831 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 13 831 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 13 831 22 , srcInfoPoints = [] } "HeadLabel")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 30 831 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 831 30 831 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 32 831 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 32 831 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 831 32 831 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 1 832 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 1 832 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 13 832 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 832 21 832 22 , SrcSpan "tests/examples/Attributes.hs" 832 22 832 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 13 832 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 13 832 21 , srcInfoPoints = [] } "HeadPort")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 30 832 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 832 30 832 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 32 832 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 32 832 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 832 32 832 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 1 833 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 1 833 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 13 833 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 833 23 833 24 , SrcSpan "tests/examples/Attributes.hs" 833 24 833 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 13 833 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 13 833 23 , srcInfoPoints = [] } "HeadTarget")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 30 833 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 833 30 833 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 32 833 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 32 833 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 833 32 833 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 1 834 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 1 834 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 13 834 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 834 24 834 25 , SrcSpan "tests/examples/Attributes.hs" 834 25 834 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 13 834 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 13 834 24 , srcInfoPoints = [] } "HeadTooltip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 30 834 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 834 30 834 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 32 834 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 32 834 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 834 32 834 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 1 835 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 1 835 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 13 835 17 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 835 15 835 16 , SrcSpan "tests/examples/Attributes.hs" 835 16 835 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 13 835 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 13 835 15 , srcInfoPoints = [] } "ID")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 30 835 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 835 30 835 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 32 835 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 32 835 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 835 32 835 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 1 836 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 1 836 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 13 836 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 836 21 836 22 , SrcSpan "tests/examples/Attributes.hs" 836 22 836 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 13 836 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 13 836 21 , srcInfoPoints = [] } "LabelURL")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 30 836 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 836 30 836 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 32 836 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 32 836 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 836 32 836 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 1 837 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 1 837 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 13 837 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 837 23 837 24 , SrcSpan "tests/examples/Attributes.hs" 837 24 837 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 13 837 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 13 837 23 , srcInfoPoints = [] } "LabelAngle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 30 837 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 837 30 837 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 32 837 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 32 837 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 837 32 837 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 1 838 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 1 838 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 13 838 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 838 26 838 27 , SrcSpan "tests/examples/Attributes.hs" 838 27 838 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 13 838 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 13 838 26 , srcInfoPoints = [] } "LabelDistance")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 30 838 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 838 30 838 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 32 838 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 32 838 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 838 32 838 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 1 839 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 1 839 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 13 839 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 839 23 839 24 , SrcSpan "tests/examples/Attributes.hs" 839 24 839 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 13 839 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 13 839 23 , srcInfoPoints = [] } "LabelFloat")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 30 839 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 839 30 839 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 32 839 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 32 839 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 839 32 839 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 1 840 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 1 840 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 13 840 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 840 27 840 28 , SrcSpan "tests/examples/Attributes.hs" 840 28 840 29 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 13 840 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 13 840 27 , srcInfoPoints = [] } "LabelFontColor")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 30 840 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 840 30 840 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 32 840 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 32 840 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 840 32 840 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 1 841 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 1 841 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 13 841 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 841 26 841 27 , SrcSpan "tests/examples/Attributes.hs" 841 27 841 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 13 841 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 13 841 26 , srcInfoPoints = [] } "LabelFontName")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 30 841 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 841 30 841 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 32 841 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 32 841 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 841 32 841 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 1 842 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 1 842 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 13 842 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 842 26 842 27 , SrcSpan "tests/examples/Attributes.hs" 842 27 842 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 13 842 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 13 842 26 , srcInfoPoints = [] } "LabelFontSize")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 30 842 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 842 30 842 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 32 842 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 32 842 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 842 32 842 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 1 843 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 1 843 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 13 843 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 843 24 843 25 , SrcSpan "tests/examples/Attributes.hs" 843 25 843 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 13 843 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 13 843 24 , srcInfoPoints = [] } "LabelTarget")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 30 843 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 843 30 843 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 32 843 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 32 843 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 843 32 843 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 1 844 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 1 844 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 13 844 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 844 25 844 26 , SrcSpan "tests/examples/Attributes.hs" 844 26 844 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 13 844 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 13 844 25 , srcInfoPoints = [] } "LabelTooltip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 30 844 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 844 30 844 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 32 844 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 32 844 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 844 32 844 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 1 845 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 1 845 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 13 845 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 845 18 845 19 , SrcSpan "tests/examples/Attributes.hs" 845 19 845 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 13 845 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 13 845 18 , srcInfoPoints = [] } "Label")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 30 845 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 845 30 845 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 32 845 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 32 845 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 845 32 845 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 1 846 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 1 846 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 13 846 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 846 18 846 19 , SrcSpan "tests/examples/Attributes.hs" 846 19 846 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 13 846 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 13 846 18 , srcInfoPoints = [] } "Layer")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 30 846 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 846 30 846 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 32 846 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 32 846 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 846 32 846 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 1 847 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 1 847 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 13 847 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 847 16 847 17 , SrcSpan "tests/examples/Attributes.hs" 847 17 847 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 13 847 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 13 847 16 , srcInfoPoints = [] } "Len")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 30 847 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 847 30 847 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 32 847 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 32 847 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 847 32 847 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 1 848 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 1 848 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 13 848 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 848 18 848 19 , SrcSpan "tests/examples/Attributes.hs" 848 19 848 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 13 848 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 13 848 18 , srcInfoPoints = [] } "LHead")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 30 848 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 848 30 848 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 32 848 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 32 848 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 848 32 848 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 1 849 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 1 849 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 13 849 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 849 17 849 18 , SrcSpan "tests/examples/Attributes.hs" 849 18 849 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 13 849 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 13 849 17 , srcInfoPoints = [] } "LPos")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 30 849 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 849 30 849 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 32 849 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 32 849 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 849 32 849 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 1 850 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 1 850 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 13 850 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 850 18 850 19 , SrcSpan "tests/examples/Attributes.hs" 850 19 850 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 13 850 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 13 850 18 , srcInfoPoints = [] } "LTail")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 30 850 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 850 30 850 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 32 850 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 32 850 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 850 32 850 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 1 851 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 1 851 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 13 851 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 851 19 851 20 , SrcSpan "tests/examples/Attributes.hs" 851 20 851 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 13 851 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 13 851 19 , srcInfoPoints = [] } "MinLen")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 30 851 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 851 30 851 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 32 851 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 32 851 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 851 32 851 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 1 852 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 1 852 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 13 852 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 852 22 852 23 , SrcSpan "tests/examples/Attributes.hs" 852 23 852 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 13 852 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 13 852 22 , srcInfoPoints = [] } "NoJustify")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 30 852 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 852 30 852 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 32 852 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 32 852 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 852 32 852 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 1 853 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 1 853 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 13 853 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 853 21 853 22 , SrcSpan "tests/examples/Attributes.hs" 853 22 853 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 13 853 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 13 853 21 , srcInfoPoints = [] } "PenWidth")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 30 853 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 853 30 853 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 32 853 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 32 853 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 853 32 853 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 1 854 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 1 854 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 13 854 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 854 16 854 17 , SrcSpan "tests/examples/Attributes.hs" 854 17 854 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 13 854 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 13 854 16 , srcInfoPoints = [] } "Pos")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 30 854 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 854 30 854 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 32 854 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 32 854 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 854 32 854 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 1 855 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 1 855 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 13 855 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 855 21 855 22 , SrcSpan "tests/examples/Attributes.hs" 855 22 855 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 13 855 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 13 855 21 , srcInfoPoints = [] } "SameHead")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 30 855 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 855 30 855 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 32 855 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 32 855 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 855 32 855 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 1 856 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 1 856 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 13 856 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 856 21 856 22 , SrcSpan "tests/examples/Attributes.hs" 856 22 856 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 13 856 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 13 856 21 , srcInfoPoints = [] } "SameTail")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 30 856 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 856 30 856 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 32 856 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 32 856 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 856 32 856 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 1 857 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 1 857 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 13 857 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 857 22 857 23 , SrcSpan "tests/examples/Attributes.hs" 857 23 857 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 13 857 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 13 857 22 , srcInfoPoints = [] } "ShowBoxes")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 30 857 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 857 30 857 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 32 857 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 32 857 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 857 32 857 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 1 858 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 1 858 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 13 858 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 858 18 858 19 , SrcSpan "tests/examples/Attributes.hs" 858 19 858 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 13 858 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 13 858 18 , srcInfoPoints = [] } "Style")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 30 858 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 858 30 858 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 32 858 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 32 858 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 858 32 858 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 1 859 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 1 859 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 13 859 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 859 20 859 21 , SrcSpan "tests/examples/Attributes.hs" 859 21 859 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 13 859 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 13 859 20 , srcInfoPoints = [] } "TailURL")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 30 859 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 859 30 859 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 32 859 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 32 859 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 859 32 859 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 1 860 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 1 860 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 13 860 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 860 21 860 22 , SrcSpan "tests/examples/Attributes.hs" 860 22 860 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 13 860 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 13 860 21 , srcInfoPoints = [] } "TailClip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 30 860 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 860 30 860 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 32 860 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 32 860 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 860 32 860 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 1 861 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 1 861 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 13 861 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 861 22 861 23 , SrcSpan "tests/examples/Attributes.hs" 861 23 861 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 13 861 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 13 861 22 , srcInfoPoints = [] } "TailLabel")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 30 861 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 861 30 861 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 32 861 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 32 861 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 861 32 861 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 1 862 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 1 862 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 13 862 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 862 21 862 22 , SrcSpan "tests/examples/Attributes.hs" 862 22 862 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 13 862 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 13 862 21 , srcInfoPoints = [] } "TailPort")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 30 862 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 862 30 862 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 32 862 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 32 862 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 862 32 862 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 1 863 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 1 863 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 13 863 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 863 23 863 24 , SrcSpan "tests/examples/Attributes.hs" 863 24 863 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 13 863 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 13 863 23 , srcInfoPoints = [] } "TailTarget")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 30 863 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 863 30 863 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 32 863 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 32 863 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 863 32 863 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 1 864 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 1 864 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 13 864 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 864 24 864 25 , SrcSpan "tests/examples/Attributes.hs" 864 25 864 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 13 864 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 13 864 24 , srcInfoPoints = [] } "TailTooltip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 30 864 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 864 30 864 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 32 864 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 32 864 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 864 32 864 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 1 865 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 1 865 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 13 865 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 865 19 865 20 , SrcSpan "tests/examples/Attributes.hs" 865 20 865 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 13 865 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 13 865 19 , srcInfoPoints = [] } "Target")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 30 865 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 865 30 865 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 32 865 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 32 865 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 865 32 865 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 1 866 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 1 866 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 13 866 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 866 20 866 21 , SrcSpan "tests/examples/Attributes.hs" 866 21 866 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 13 866 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 13 866 20 , srcInfoPoints = [] } "Tooltip")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 30 866 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 866 30 866 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 32 866 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 32 866 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 866 32 866 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 1 867 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 1 867 12 , srcInfoPoints = [] } "usedByEdges") [ PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 13 867 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 867 19 867 20 , SrcSpan "tests/examples/Attributes.hs" 867 20 867 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 13 867 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 13 867 19 , srcInfoPoints = [] } "Weight")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 30 867 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 867 30 867 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 32 867 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 32 867 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 867 32 867 36 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 868 1 868 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 868 1 868 12 , srcInfoPoints = [] } "usedByEdges") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 868 13 868 14 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 868 30 868 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 868 30 868 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 868 32 868 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 868 32 868 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 868 32 868 37 , srcInfoPoints = [] } "False")))) Nothing ] , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 906 1 906 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 906 1 906 5 , SrcSpan "tests/examples/Attributes.hs" 906 16 906 17 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 906 6 906 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 906 6 906 15 , srcInfoPoints = [] } "EscString")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 906 18 906 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 906 18 906 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 906 18 906 24 , srcInfoPoints = [] } "String"))) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 1 916 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 915 13 915 14 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 1 915 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 9 915 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 9 915 12 , srcInfoPoints = [] } "URL")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 15 915 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 915 20 915 21 , SrcSpan "tests/examples/Attributes.hs" 915 45 915 46 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 15 915 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 915 20 915 21 , SrcSpan "tests/examples/Attributes.hs" 915 45 915 46 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 15 915 19 , srcInfoPoints = [] } "UStr") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 22 915 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 915 32 915 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 22 915 31 , srcInfoPoints = [] } "urlString" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 35 915 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 35 915 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 915 35 915 44 , srcInfoPoints = [] } "EscString"))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 5 916 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 916 5 916 13 , SrcSpan "tests/examples/Attributes.hs" 916 14 916 15 , SrcSpan "tests/examples/Attributes.hs" 916 17 916 18 , SrcSpan "tests/examples/Attributes.hs" 916 22 916 23 , SrcSpan "tests/examples/Attributes.hs" 916 28 916 29 , SrcSpan "tests/examples/Attributes.hs" 916 34 916 35 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 15 916 17 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 15 916 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 15 916 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 15 916 17 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 19 916 22 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 19 916 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 19 916 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 19 916 22 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 24 916 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 24 916 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 24 916 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 24 916 28 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 30 916 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 30 916 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 30 916 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 916 30 916 34 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 1 923 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 918 1 918 9 , SrcSpan "tests/examples/Attributes.hs" 918 23 918 28 , SrcSpan "tests/examples/Attributes.hs" 919 5 919 5 , SrcSpan "tests/examples/Attributes.hs" 923 1 923 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 10 918 22 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 10 918 22 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 10 918 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 10 918 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 10 918 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 19 918 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 19 918 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 918 19 918 22 , srcInfoPoints = [] } "URL"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 5 921 33 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 5 921 33 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 5 919 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 5 919 12 , srcInfoPoints = [] } "unqtDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 13 921 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 919 13 919 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 15 921 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 15 919 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 15 919 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 15 919 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 15 919 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 15 919 19 , srcInfoPoints = [] } "wrap"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 20 919 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 919 20 919 21 , SrcSpan "tests/examples/Attributes.hs" 919 29 919 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 21 919 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 21 919 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 21 919 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 21 919 25 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 26 919 29 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 26 919 29 , srcInfoPoints = [] } '<' "<"))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 31 919 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 919 31 919 32 , SrcSpan "tests/examples/Attributes.hs" 919 40 919 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 32 919 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 32 919 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 32 919 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 32 919 36 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 37 919 40 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 919 37 919 40 , srcInfoPoints = [] } '>' ">"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 15 921 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 15 921 16 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 15 921 16 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 17 921 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 17 921 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 17 921 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 17 921 21 , srcInfoPoints = [] } "text"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 22 921 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 22 921 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 22 921 23 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 24 921 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 24 921 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 921 24 921 33 , srcInfoPoints = [] } "urlString")))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 1 947 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 923 1 923 9 , SrcSpan "tests/examples/Attributes.hs" 923 23 923 28 , SrcSpan "tests/examples/Attributes.hs" 924 5 924 5 , SrcSpan "tests/examples/Attributes.hs" 933 5 933 5 , SrcSpan "tests/examples/Attributes.hs" 947 1 947 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 10 923 22 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 10 923 22 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 10 923 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 10 923 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 10 923 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 19 923 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 19 923 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 923 19 923 22 , srcInfoPoints = [] } "URL"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 5 930 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 928 9 928 14 ] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 5 930 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 928 9 928 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 5 924 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 5 924 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 15 927 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 924 15 924 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 17 927 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 17 924 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 17 924 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 17 924 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 17 924 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 23 924 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 23 924 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 924 23 924 27 , srcInfoPoints = [] } "UStr")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 17 925 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 17 925 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 17 925 18 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 19 927 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 19 926 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 19 925 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 19 925 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 19 925 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 19 925 26 , srcInfoPoints = [] } "bracket"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 27 925 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 925 27 925 28 , SrcSpan "tests/examples/Attributes.hs" 925 42 925 43 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 28 925 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 28 925 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 28 925 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 28 925 37 , srcInfoPoints = [] } "character"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 38 925 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 38 925 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 925 38 925 42 , srcInfoPoints = [] } "open")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 926 27 926 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 926 27 926 28 , SrcSpan "tests/examples/Attributes.hs" 926 43 926 44 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 926 28 926 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 926 28 926 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 926 28 926 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 926 28 926 37 , srcInfoPoints = [] } "character"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 926 38 926 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 926 38 926 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 926 38 926 43 , srcInfoPoints = [] } "close")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 27 927 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 927 27 927 28 , SrcSpan "tests/examples/Attributes.hs" 927 56 927 57 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 28 927 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 28 927 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 28 927 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 28 927 33 , srcInfoPoints = [] } "many1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 34 927 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 34 927 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 34 927 35 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 36 927 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 36 927 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 36 927 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 36 927 43 , srcInfoPoints = [] } "satisfy"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 44 927 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 927 44 927 45 , SrcSpan "tests/examples/Attributes.hs" 927 55 927 56 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 45 927 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 45 927 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 927 45 927 46 , SrcSpan "tests/examples/Attributes.hs" 927 46 927 48 , SrcSpan "tests/examples/Attributes.hs" 927 48 927 49 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 45 927 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 927 45 927 46 , SrcSpan "tests/examples/Attributes.hs" 927 46 927 48 , SrcSpan "tests/examples/Attributes.hs" 927 48 927 49 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 46 927 48 , srcInfoPoints = [] } "/="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 50 927 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 50 927 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 927 50 927 55 , srcInfoPoints = [] } "close"))))))))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 929 11 930 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 929 11 929 11 , SrcSpan "tests/examples/Attributes.hs" 930 11 930 11 , SrcSpan "tests/examples/Attributes.hs" 933 5 933 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 929 11 929 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 929 11 929 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 929 11 929 15 , srcInfoPoints = [] } "open")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 929 16 929 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 929 16 929 17 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 929 18 929 21 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 929 18 929 21 , srcInfoPoints = [] } '<' "<"))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 930 11 930 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 930 11 930 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 930 11 930 16 , srcInfoPoints = [] } "close")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 930 17 930 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 930 17 930 18 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 930 19 930 22 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 930 19 930 22 , srcInfoPoints = [] } '>' ">"))) Nothing ]))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 933 5 933 22 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 933 5 933 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 933 5 933 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 933 5 933 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 933 11 933 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 933 11 933 12 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 933 13 933 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 933 13 933 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 933 13 933 22 , srcInfoPoints = [] } "parseUnqt")))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 1 948 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 947 19 947 20 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 1 947 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 9 947 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 9 947 18 , srcInfoPoints = [] } "ArrowType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 21 947 56 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 21 947 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 21 947 26 , srcInfoPoints = [] } "AType") [ TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 27 947 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 947 27 947 28 , SrcSpan "tests/examples/Attributes.hs" 947 55 947 56 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 28 947 55 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 947 28 947 29 , SrcSpan "tests/examples/Attributes.hs" 947 42 947 43 , SrcSpan "tests/examples/Attributes.hs" 947 54 947 55 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 29 947 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 29 947 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 29 947 42 , srcInfoPoints = [] } "ArrowModifier")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 44 947 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 44 947 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 947 44 947 54 , srcInfoPoints = [] } "ArrowShape")) ]) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 5 948 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 948 5 948 13 , SrcSpan "tests/examples/Attributes.hs" 948 14 948 15 , SrcSpan "tests/examples/Attributes.hs" 948 17 948 18 , SrcSpan "tests/examples/Attributes.hs" 948 22 948 23 , SrcSpan "tests/examples/Attributes.hs" 948 28 948 29 , SrcSpan "tests/examples/Attributes.hs" 948 34 948 35 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 15 948 17 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 15 948 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 15 948 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 15 948 17 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 19 948 22 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 19 948 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 19 948 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 19 948 22 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 24 948 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 24 948 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 24 948 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 24 948 28 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 30 948 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 30 948 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 30 948 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 948 30 948 34 , srcInfoPoints = [] } "Read"))) ])) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 1 950 74 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 950 4 950 5 , SrcSpan "tests/examples/Attributes.hs" 950 10 950 11 , SrcSpan "tests/examples/Attributes.hs" 950 19 950 20 , SrcSpan "tests/examples/Attributes.hs" 950 29 950 30 , SrcSpan "tests/examples/Attributes.hs" 950 34 950 35 , SrcSpan "tests/examples/Attributes.hs" 950 43 950 44 , SrcSpan "tests/examples/Attributes.hs" 950 51 950 52 , SrcSpan "tests/examples/Attributes.hs" 950 56 950 57 , SrcSpan "tests/examples/Attributes.hs" 950 62 950 64 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 1 950 4 , srcInfoPoints = [] } "box" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 6 950 10 , srcInfoPoints = [] } "crow" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 12 950 19 , srcInfoPoints = [] } "diamond" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 21 950 29 , srcInfoPoints = [] } "dotArrow" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 31 950 34 , srcInfoPoints = [] } "inv" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 36 950 43 , srcInfoPoints = [] } "noArrow" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 45 950 51 , srcInfoPoints = [] } "normal" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 53 950 56 , srcInfoPoints = [] } "tee" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 58 950 61 , srcInfoPoints = [] } "vee" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 65 950 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 65 950 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 950 65 950 74 , srcInfoPoints = [] } "ArrowType"))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 1 951 51 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 951 5 951 6 , SrcSpan "tests/examples/Attributes.hs" 951 13 951 14 , SrcSpan "tests/examples/Attributes.hs" 951 22 951 23 , SrcSpan "tests/examples/Attributes.hs" 951 28 951 29 , SrcSpan "tests/examples/Attributes.hs" 951 39 951 41 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 1 951 5 , srcInfoPoints = [] } "oDot" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 7 951 13 , srcInfoPoints = [] } "invDot" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 15 951 22 , srcInfoPoints = [] } "invODot" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 24 951 28 , srcInfoPoints = [] } "oBox" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 30 951 38 , srcInfoPoints = [] } "oDiamond" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 42 951 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 42 951 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 951 42 951 51 , srcInfoPoints = [] } "ArrowType"))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 1 952 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 952 9 952 10 , SrcSpan "tests/examples/Attributes.hs" 952 18 952 19 , SrcSpan "tests/examples/Attributes.hs" 952 28 952 29 , SrcSpan "tests/examples/Attributes.hs" 952 38 952 39 , SrcSpan "tests/examples/Attributes.hs" 952 49 952 51 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 1 952 9 , srcInfoPoints = [] } "eDiamond" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 11 952 18 , srcInfoPoints = [] } "openArr" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 20 952 28 , srcInfoPoints = [] } "halfOpen" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 30 952 38 , srcInfoPoints = [] } "emptyArr" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 40 952 48 , srcInfoPoints = [] } "invEmpty" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 52 952 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 52 952 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 952 52 952 61 , srcInfoPoints = [] } "ArrowType"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 1 954 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 1 954 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 1 954 7 , srcInfoPoints = [] } "normal")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 8 954 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 954 8 954 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 10 954 34 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 10 954 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 10 954 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 10 954 15 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 16 954 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 954 16 954 17 , SrcSpan "tests/examples/Attributes.hs" 954 33 954 34 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 17 954 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 954 17 954 18 , SrcSpan "tests/examples/Attributes.hs" 954 24 954 25 , SrcSpan "tests/examples/Attributes.hs" 954 32 954 33 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 18 954 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 18 954 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 18 954 24 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 26 954 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 26 954 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 954 26 954 32 , srcInfoPoints = [] } "Normal")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 1 955 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 1 955 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 1 955 4 , srcInfoPoints = [] } "inv")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 5 955 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 955 5 955 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 7 955 28 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 7 955 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 7 955 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 7 955 12 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 13 955 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 955 13 955 14 , SrcSpan "tests/examples/Attributes.hs" 955 27 955 28 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 14 955 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 955 14 955 15 , SrcSpan "tests/examples/Attributes.hs" 955 21 955 22 , SrcSpan "tests/examples/Attributes.hs" 955 26 955 27 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 15 955 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 15 955 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 15 955 21 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 23 955 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 23 955 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 955 23 955 26 , srcInfoPoints = [] } "Inv")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 1 956 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 1 956 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 1 956 9 , srcInfoPoints = [] } "dotArrow")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 10 956 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 956 10 956 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 12 956 38 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 12 956 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 12 956 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 12 956 17 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 18 956 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 956 18 956 19 , SrcSpan "tests/examples/Attributes.hs" 956 37 956 38 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 19 956 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 956 19 956 20 , SrcSpan "tests/examples/Attributes.hs" 956 26 956 27 , SrcSpan "tests/examples/Attributes.hs" 956 36 956 37 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 20 956 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 20 956 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 20 956 26 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 28 956 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 28 956 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 956 28 956 36 , srcInfoPoints = [] } "DotArrow")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 1 958 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 1 957 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 1 957 7 , srcInfoPoints = [] } "invDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 8 958 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 957 8 957 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 10 958 37 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 10 957 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 10 957 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 10 957 15 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 16 958 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 957 16 957 17 , SrcSpan "tests/examples/Attributes.hs" 958 16 958 17 , SrcSpan "tests/examples/Attributes.hs" 958 36 958 37 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 18 957 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 957 18 957 19 , SrcSpan "tests/examples/Attributes.hs" 957 25 957 26 , SrcSpan "tests/examples/Attributes.hs" 957 30 957 31 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 19 957 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 19 957 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 19 957 25 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 27 957 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 27 957 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 957 27 957 30 , srcInfoPoints = [] } "Inv")) ] , Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 958 18 958 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 958 18 958 19 , SrcSpan "tests/examples/Attributes.hs" 958 25 958 26 , SrcSpan "tests/examples/Attributes.hs" 958 35 958 36 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 958 19 958 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 958 19 958 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 958 19 958 25 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 958 27 958 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 958 27 958 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 958 27 958 35 , srcInfoPoints = [] } "DotArrow")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 1 959 54 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 1 959 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 1 959 5 , srcInfoPoints = [] } "oDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 6 959 54 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 959 6 959 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 8 959 54 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 8 959 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 8 959 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 8 959 13 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 14 959 54 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 959 14 959 15 , SrcSpan "tests/examples/Attributes.hs" 959 53 959 54 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 15 959 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 959 15 959 16 , SrcSpan "tests/examples/Attributes.hs" 959 42 959 43 , SrcSpan "tests/examples/Attributes.hs" 959 52 959 53 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 16 959 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 16 959 32 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 16 959 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 16 959 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 16 959 22 , srcInfoPoints = [] } "ArrMod"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 23 959 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 23 959 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 23 959 32 , srcInfoPoints = [] } "OpenArrow")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 33 959 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 33 959 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 33 959 42 , srcInfoPoints = [] } "BothSides"))) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 44 959 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 44 959 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 959 44 959 52 , srcInfoPoints = [] } "DotArrow")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 1 961 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 1 960 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 1 960 8 , srcInfoPoints = [] } "invODot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 9 961 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 960 9 960 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 11 961 39 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 11 960 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 11 960 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 11 960 16 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 17 961 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 960 17 960 18 , SrcSpan "tests/examples/Attributes.hs" 961 17 961 18 , SrcSpan "tests/examples/Attributes.hs" 961 38 961 39 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 19 960 32 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 960 19 960 20 , SrcSpan "tests/examples/Attributes.hs" 960 26 960 27 , SrcSpan "tests/examples/Attributes.hs" 960 31 960 32 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 20 960 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 20 960 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 20 960 26 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 28 960 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 28 960 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 960 28 960 31 , srcInfoPoints = [] } "Inv")) ] , Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 961 19 961 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 961 19 961 20 , SrcSpan "tests/examples/Attributes.hs" 961 27 961 28 , SrcSpan "tests/examples/Attributes.hs" 961 37 961 38 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 961 20 961 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 961 20 961 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 961 20 961 27 , srcInfoPoints = [] } "openMod")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 961 29 961 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 961 29 961 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 961 29 961 37 , srcInfoPoints = [] } "DotArrow")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 1 962 36 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 1 962 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 1 962 8 , srcInfoPoints = [] } "noArrow")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 9 962 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 962 9 962 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 11 962 36 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 11 962 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 11 962 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 11 962 16 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 17 962 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 962 17 962 18 , SrcSpan "tests/examples/Attributes.hs" 962 35 962 36 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 18 962 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 962 18 962 19 , SrcSpan "tests/examples/Attributes.hs" 962 25 962 26 , SrcSpan "tests/examples/Attributes.hs" 962 34 962 35 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 19 962 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 19 962 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 19 962 25 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 27 962 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 27 962 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 962 27 962 34 , srcInfoPoints = [] } "NoArrow")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 1 963 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 1 963 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 1 963 4 , srcInfoPoints = [] } "tee")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 5 963 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 963 5 963 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 7 963 28 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 7 963 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 7 963 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 7 963 12 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 13 963 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 963 13 963 14 , SrcSpan "tests/examples/Attributes.hs" 963 27 963 28 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 14 963 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 963 14 963 15 , SrcSpan "tests/examples/Attributes.hs" 963 21 963 22 , SrcSpan "tests/examples/Attributes.hs" 963 26 963 27 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 15 963 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 15 963 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 15 963 21 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 23 963 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 23 963 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 963 23 963 26 , srcInfoPoints = [] } "Tee")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 1 964 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 1 964 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 1 964 9 , srcInfoPoints = [] } "emptyArr")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 10 964 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 964 10 964 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 12 964 37 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 12 964 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 12 964 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 12 964 17 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 18 964 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 964 18 964 19 , SrcSpan "tests/examples/Attributes.hs" 964 36 964 37 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 19 964 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 964 19 964 20 , SrcSpan "tests/examples/Attributes.hs" 964 27 964 28 , SrcSpan "tests/examples/Attributes.hs" 964 35 964 36 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 20 964 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 20 964 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 20 964 27 , srcInfoPoints = [] } "openMod")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 29 964 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 29 964 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 964 29 964 35 , srcInfoPoints = [] } "Normal")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 1 966 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 1 965 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 1 965 9 , srcInfoPoints = [] } "invEmpty")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 10 966 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 965 10 965 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 12 966 38 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 12 965 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 12 965 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 12 965 17 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 18 966 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 965 18 965 19 , SrcSpan "tests/examples/Attributes.hs" 966 18 966 19 , SrcSpan "tests/examples/Attributes.hs" 966 37 966 38 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 20 965 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 965 20 965 21 , SrcSpan "tests/examples/Attributes.hs" 965 27 965 28 , SrcSpan "tests/examples/Attributes.hs" 965 32 965 33 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 21 965 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 21 965 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 21 965 27 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 29 965 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 29 965 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 965 29 965 32 , srcInfoPoints = [] } "Inv")) ] , Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 966 20 966 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 966 20 966 21 , SrcSpan "tests/examples/Attributes.hs" 966 28 966 29 , SrcSpan "tests/examples/Attributes.hs" 966 36 966 37 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 966 21 966 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 966 21 966 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 966 21 966 28 , srcInfoPoints = [] } "openMod")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 966 30 966 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 966 30 966 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 966 30 966 36 , srcInfoPoints = [] } "Normal")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 1 967 36 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 1 967 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 1 967 8 , srcInfoPoints = [] } "diamond")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 9 967 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 967 9 967 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 11 967 36 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 11 967 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 11 967 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 11 967 16 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 17 967 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 967 17 967 18 , SrcSpan "tests/examples/Attributes.hs" 967 35 967 36 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 18 967 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 967 18 967 19 , SrcSpan "tests/examples/Attributes.hs" 967 25 967 26 , SrcSpan "tests/examples/Attributes.hs" 967 34 967 35 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 19 967 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 19 967 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 19 967 25 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 27 967 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 27 967 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 967 27 967 34 , srcInfoPoints = [] } "Diamond")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 1 968 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 1 968 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 1 968 9 , srcInfoPoints = [] } "oDiamond")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 10 968 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 968 10 968 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 12 968 38 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 12 968 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 12 968 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 12 968 17 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 18 968 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 968 18 968 19 , SrcSpan "tests/examples/Attributes.hs" 968 37 968 38 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 19 968 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 968 19 968 20 , SrcSpan "tests/examples/Attributes.hs" 968 27 968 28 , SrcSpan "tests/examples/Attributes.hs" 968 36 968 37 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 20 968 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 20 968 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 20 968 27 , srcInfoPoints = [] } "openMod")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 29 968 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 29 968 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 968 29 968 36 , srcInfoPoints = [] } "Diamond")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 969 1 969 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 969 1 969 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 969 1 969 9 , srcInfoPoints = [] } "eDiamond")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 969 10 969 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 969 10 969 11 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 969 12 969 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 969 12 969 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 969 12 969 20 , srcInfoPoints = [] } "oDiamond")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 1 970 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 1 970 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 1 970 5 , srcInfoPoints = [] } "crow")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 6 970 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 970 6 970 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 8 970 30 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 8 970 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 8 970 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 8 970 13 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 14 970 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 970 14 970 15 , SrcSpan "tests/examples/Attributes.hs" 970 29 970 30 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 15 970 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 970 15 970 16 , SrcSpan "tests/examples/Attributes.hs" 970 22 970 23 , SrcSpan "tests/examples/Attributes.hs" 970 28 970 29 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 16 970 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 16 970 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 16 970 22 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 24 970 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 24 970 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 970 24 970 28 , srcInfoPoints = [] } "Crow")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 1 971 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 1 971 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 1 971 4 , srcInfoPoints = [] } "box")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 5 971 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 971 5 971 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 7 971 28 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 7 971 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 7 971 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 7 971 12 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 13 971 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 971 13 971 14 , SrcSpan "tests/examples/Attributes.hs" 971 27 971 28 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 14 971 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 971 14 971 15 , SrcSpan "tests/examples/Attributes.hs" 971 21 971 22 , SrcSpan "tests/examples/Attributes.hs" 971 26 971 27 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 15 971 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 15 971 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 15 971 21 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 23 971 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 23 971 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 971 23 971 26 , srcInfoPoints = [] } "Box")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 1 972 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 1 972 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 1 972 5 , srcInfoPoints = [] } "oBox")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 6 972 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 972 6 972 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 8 972 30 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 8 972 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 8 972 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 8 972 13 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 14 972 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 972 14 972 15 , SrcSpan "tests/examples/Attributes.hs" 972 29 972 30 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 15 972 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 972 15 972 16 , SrcSpan "tests/examples/Attributes.hs" 972 23 972 24 , SrcSpan "tests/examples/Attributes.hs" 972 28 972 29 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 16 972 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 16 972 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 16 972 23 , srcInfoPoints = [] } "openMod")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 25 972 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 25 972 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 972 25 972 28 , srcInfoPoints = [] } "Box")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 973 1 973 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 973 1 973 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 973 1 973 8 , srcInfoPoints = [] } "openArr")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 973 9 973 14 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 973 9 973 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 973 11 973 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 973 11 973 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 973 11 973 14 , srcInfoPoints = [] } "vee")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 1 974 54 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 1 974 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 1 974 9 , srcInfoPoints = [] } "halfOpen")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 10 974 54 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 974 10 974 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 12 974 54 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 12 974 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 12 974 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 12 974 17 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 18 974 54 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 974 18 974 19 , SrcSpan "tests/examples/Attributes.hs" 974 53 974 54 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 19 974 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 974 19 974 20 , SrcSpan "tests/examples/Attributes.hs" 974 47 974 48 , SrcSpan "tests/examples/Attributes.hs" 974 52 974 53 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 20 974 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 20 974 38 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 20 974 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 20 974 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 20 974 26 , srcInfoPoints = [] } "ArrMod"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 27 974 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 27 974 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 27 974 38 , srcInfoPoints = [] } "FilledArrow")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 39 974 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 39 974 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 39 974 47 , srcInfoPoints = [] } "LeftSide"))) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 49 974 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 49 974 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 974 49 974 52 , srcInfoPoints = [] } "Vee")) ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 1 975 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 1 975 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 1 975 4 , srcInfoPoints = [] } "vee")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 5 975 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 975 5 975 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 7 975 28 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 7 975 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 7 975 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 7 975 12 , srcInfoPoints = [] } "AType"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 13 975 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 975 13 975 14 , SrcSpan "tests/examples/Attributes.hs" 975 27 975 28 ] } [ Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 14 975 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 975 14 975 15 , SrcSpan "tests/examples/Attributes.hs" 975 21 975 22 , SrcSpan "tests/examples/Attributes.hs" 975 26 975 27 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 15 975 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 15 975 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 15 975 21 , srcInfoPoints = [] } "noMods")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 23 975 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 23 975 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 975 23 975 26 , srcInfoPoints = [] } "Vee")) ] ]))) Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 1 982 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 977 1 977 9 , SrcSpan "tests/examples/Attributes.hs" 977 29 977 34 , SrcSpan "tests/examples/Attributes.hs" 978 5 978 5 , SrcSpan "tests/examples/Attributes.hs" 982 1 982 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 10 977 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 10 977 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 10 977 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 10 977 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 10 977 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 19 977 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 19 977 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 977 19 977 28 , srcInfoPoints = [] } "ArrowType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 5 980 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 979 9 979 14 ] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 5 980 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 979 9 979 14 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 5 980 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 979 9 979 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 5 978 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 13 978 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 978 13 978 14 , SrcSpan "tests/examples/Attributes.hs" 978 23 978 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 14 978 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 14 978 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 14 978 19 , srcInfoPoints = [] } "AType")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 20 978 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 20 978 23 , srcInfoPoints = [] } "mas") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 25 978 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 978 25 978 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 27 978 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 27 978 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 27 978 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 27 978 31 , srcInfoPoints = [] } "hcat"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 32 978 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 32 978 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 32 978 33 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 34 978 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 34 978 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 34 978 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 34 978 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 34 978 37 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 38 978 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 38 978 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 38 978 44 , srcInfoPoints = [] } "appMod")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 45 978 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 45 978 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 978 45 978 48 , srcInfoPoints = [] } "mas")))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 11 980 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 980 11 980 11 , SrcSpan "tests/examples/Attributes.hs" 982 1 982 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 11 980 49 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 11 980 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 11 980 17 , srcInfoPoints = [] } "appMod") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 18 980 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 980 18 980 19 , SrcSpan "tests/examples/Attributes.hs" 980 20 980 21 , SrcSpan "tests/examples/Attributes.hs" 980 23 980 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 19 980 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 19 980 20 , srcInfoPoints = [] } "m") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 22 980 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 22 980 23 , srcInfoPoints = [] } "a") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 25 980 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 980 25 980 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 27 980 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 27 980 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 27 980 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 27 980 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 27 980 34 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 35 980 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 35 980 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 35 980 36 , srcInfoPoints = [] } "m")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 37 980 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 37 980 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 37 980 39 , srcInfoPoints = [] } "<>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 40 980 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 40 980 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 40 980 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 40 980 47 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 48 980 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 48 980 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 980 48 980 49 , srcInfoPoints = [] } "a")))))) Nothing ] ])) ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 1 990 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 982 1 982 9 , SrcSpan "tests/examples/Attributes.hs" 982 29 982 34 , SrcSpan "tests/examples/Attributes.hs" 983 5 983 5 , SrcSpan "tests/examples/Attributes.hs" 990 1 990 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 10 982 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 10 982 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 10 982 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 10 982 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 10 982 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 19 982 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 19 982 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 982 19 982 28 , srcInfoPoints = [] } "ArrowType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 5 988 34 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 5 988 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 5 983 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 5 983 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 15 988 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 983 15 983 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 17 988 34 , srcInfoPoints = [] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 17 986 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 983 17 983 19 , SrcSpan "tests/examples/Attributes.hs" 983 20 983 20 , SrcSpan "tests/examples/Attributes.hs" 986 20 986 20 , SrcSpan "tests/examples/Attributes.hs" 987 17 987 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 20 985 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 983 24 983 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 20 983 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 20 983 23 , srcInfoPoints = [] } "mas")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 27 985 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 27 983 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 27 983 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 27 983 32 , srcInfoPoints = [] } "many1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 33 983 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 33 983 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 33 983 34 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 35 985 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 983 35 983 37 , SrcSpan "tests/examples/Attributes.hs" 983 38 983 38 , SrcSpan "tests/examples/Attributes.hs" 984 38 984 38 , SrcSpan "tests/examples/Attributes.hs" 985 38 985 38 , SrcSpan "tests/examples/Attributes.hs" 986 20 986 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 38 983 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 983 40 983 42 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 38 983 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 38 983 39 , srcInfoPoints = [] } "m")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 43 983 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 43 983 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 983 43 983 52 , srcInfoPoints = [] } "parseUnqt"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 984 38 984 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 984 40 984 42 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 984 38 984 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 984 38 984 39 , srcInfoPoints = [] } "a")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 984 43 984 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 984 43 984 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 984 43 984 52 , srcInfoPoints = [] } "parseUnqt"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 38 985 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 38 985 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 38 985 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 38 985 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 38 985 44 , srcInfoPoints = [] } "return"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 45 985 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 985 45 985 46 , SrcSpan "tests/examples/Attributes.hs" 985 47 985 48 , SrcSpan "tests/examples/Attributes.hs" 985 49 985 50 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 46 985 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 46 985 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 46 985 47 , srcInfoPoints = [] } "m")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 48 985 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 48 985 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 985 48 985 49 , srcInfoPoints = [] } "a")) ])) ])) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 20 986 38 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 20 986 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 20 986 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 20 986 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 20 986 26 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 27 986 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 27 986 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 27 986 28 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 29 986 38 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 29 986 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 29 986 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 29 986 34 , srcInfoPoints = [] } "AType"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 35 986 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 35 986 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 986 35 986 38 , srcInfoPoints = [] } "mas"))))) ]) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 987 17 987 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 987 17 987 18 , SrcSpan "tests/examples/Attributes.hs" 987 18 987 24 , SrcSpan "tests/examples/Attributes.hs" 987 24 987 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 987 17 987 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 987 17 987 18 , SrcSpan "tests/examples/Attributes.hs" 987 18 987 24 , SrcSpan "tests/examples/Attributes.hs" 987 24 987 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 987 18 987 24 , srcInfoPoints = [] } "onFail"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 988 17 988 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 988 17 988 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 988 17 988 34 , srcInfoPoints = [] } "specialArrowParse"))))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 1 990 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 990 19 990 21 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 1 990 18 , srcInfoPoints = [] } "specialArrowParse" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 22 990 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 22 990 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 22 990 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 22 990 27 , srcInfoPoints = [] } "Parse"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 28 990 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 28 990 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 990 28 990 37 , srcInfoPoints = [] } "ArrowType")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 1 996 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 1 991 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 1 991 18 , srcInfoPoints = [] } "specialArrowParse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 19 996 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 991 19 991 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 21 996 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 21 991 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 21 991 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 21 991 26 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 27 996 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 991 27 991 28 , SrcSpan "tests/examples/Attributes.hs" 992 27 992 28 , SrcSpan "tests/examples/Attributes.hs" 993 27 993 28 , SrcSpan "tests/examples/Attributes.hs" 994 27 994 28 , SrcSpan "tests/examples/Attributes.hs" 995 27 995 28 , SrcSpan "tests/examples/Attributes.hs" 996 27 996 28 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 29 991 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 29 991 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 29 991 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 29 991 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 29 991 38 , srcInfoPoints = [] } "stringRep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 39 991 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 39 991 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 39 991 47 , srcInfoPoints = [] } "eDiamond")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 48 991 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 991 48 991 58 , srcInfoPoints = [] } "ediamond" "ediamond")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 29 992 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 29 992 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 29 992 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 29 992 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 29 992 38 , srcInfoPoints = [] } "stringRep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 39 992 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 39 992 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 39 992 46 , srcInfoPoints = [] } "openArr")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 47 992 53 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 992 47 992 53 , srcInfoPoints = [] } "open" "open")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 29 993 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 29 993 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 29 993 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 29 993 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 29 993 38 , srcInfoPoints = [] } "stringRep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 39 993 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 39 993 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 39 993 47 , srcInfoPoints = [] } "halfOpen")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 48 993 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 993 48 993 58 , srcInfoPoints = [] } "halfopen" "halfopen")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 29 994 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 29 994 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 29 994 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 29 994 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 29 994 38 , srcInfoPoints = [] } "stringRep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 39 994 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 39 994 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 39 994 47 , srcInfoPoints = [] } "emptyArr")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 48 994 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 994 48 994 55 , srcInfoPoints = [] } "empty" "empty")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 29 995 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 29 995 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 29 995 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 29 995 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 29 995 38 , srcInfoPoints = [] } "stringRep"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 39 995 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 39 995 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 39 995 47 , srcInfoPoints = [] } "invEmpty")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 48 995 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 995 48 995 58 , srcInfoPoints = [] } "invempty" "invempty")) ]))) Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 998 1 1007 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 998 17 998 18 , SrcSpan "tests/examples/Attributes.hs" 999 17 999 18 , SrcSpan "tests/examples/Attributes.hs" 1000 17 1000 18 , SrcSpan "tests/examples/Attributes.hs" 1001 17 1001 18 , SrcSpan "tests/examples/Attributes.hs" 1002 17 1002 18 , SrcSpan "tests/examples/Attributes.hs" 1003 17 1003 18 , SrcSpan "tests/examples/Attributes.hs" 1004 17 1004 18 , SrcSpan "tests/examples/Attributes.hs" 1005 17 1005 18 , SrcSpan "tests/examples/Attributes.hs" 1006 17 1006 18 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 998 1 998 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 998 6 998 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 998 6 998 16 , srcInfoPoints = [] } "ArrowShape")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 998 19 998 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 998 19 998 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 998 19 998 22 , srcInfoPoints = [] } "Box") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 999 19 999 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 999 19 999 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 999 19 999 23 , srcInfoPoints = [] } "Crow") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1000 19 1000 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1000 19 1000 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1000 19 1000 26 , srcInfoPoints = [] } "Diamond") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1001 19 1001 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1001 19 1001 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1001 19 1001 27 , srcInfoPoints = [] } "DotArrow") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1002 19 1002 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1002 19 1002 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1002 19 1002 22 , srcInfoPoints = [] } "Inv") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1003 19 1003 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1003 19 1003 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1003 19 1003 26 , srcInfoPoints = [] } "NoArrow") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1004 19 1004 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1004 19 1004 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1004 19 1004 25 , srcInfoPoints = [] } "Normal") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1005 19 1005 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1005 19 1005 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1005 19 1005 22 , srcInfoPoints = [] } "Tee") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1006 19 1006 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1006 19 1006 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1006 19 1006 22 , srcInfoPoints = [] } "Vee") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 19 1007 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1007 19 1007 27 , SrcSpan "tests/examples/Attributes.hs" 1007 28 1007 29 , SrcSpan "tests/examples/Attributes.hs" 1007 31 1007 32 , SrcSpan "tests/examples/Attributes.hs" 1007 36 1007 37 , SrcSpan "tests/examples/Attributes.hs" 1007 45 1007 46 , SrcSpan "tests/examples/Attributes.hs" 1007 51 1007 52 , SrcSpan "tests/examples/Attributes.hs" 1007 57 1007 58 , SrcSpan "tests/examples/Attributes.hs" 1007 63 1007 64 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 29 1007 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 29 1007 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 29 1007 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 29 1007 31 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 33 1007 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 33 1007 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 33 1007 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 33 1007 36 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 38 1007 45 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 38 1007 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 38 1007 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 38 1007 45 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 47 1007 51 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 47 1007 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 47 1007 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 47 1007 51 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 53 1007 57 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 53 1007 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 53 1007 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 53 1007 57 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 59 1007 63 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 59 1007 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 59 1007 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1007 59 1007 63 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 1 1020 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1009 1 1009 9 , SrcSpan "tests/examples/Attributes.hs" 1009 30 1009 35 , SrcSpan "tests/examples/Attributes.hs" 1010 5 1010 5 , SrcSpan "tests/examples/Attributes.hs" 1011 5 1011 5 , SrcSpan "tests/examples/Attributes.hs" 1012 5 1012 5 , SrcSpan "tests/examples/Attributes.hs" 1013 5 1013 5 , SrcSpan "tests/examples/Attributes.hs" 1014 5 1014 5 , SrcSpan "tests/examples/Attributes.hs" 1015 5 1015 5 , SrcSpan "tests/examples/Attributes.hs" 1016 5 1016 5 , SrcSpan "tests/examples/Attributes.hs" 1017 5 1017 5 , SrcSpan "tests/examples/Attributes.hs" 1018 5 1018 5 , SrcSpan "tests/examples/Attributes.hs" 1020 1 1020 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 10 1009 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 10 1009 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 10 1009 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 10 1009 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 10 1009 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 19 1009 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 19 1009 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1009 19 1009 29 , srcInfoPoints = [] } "ArrowShape"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 5 1018 37 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 5 1018 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 5 1010 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 5 1010 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 13 1010 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 13 1010 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 13 1010 16 , srcInfoPoints = [] } "Box")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 22 1010 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1010 22 1010 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 24 1010 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 24 1010 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 24 1010 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 24 1010 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 32 1010 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1010 32 1010 37 , srcInfoPoints = [] } "box" "box")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 5 1011 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 5 1011 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 13 1011 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 13 1011 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 13 1011 17 , srcInfoPoints = [] } "Crow")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 22 1011 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1011 22 1011 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 24 1011 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 24 1011 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 24 1011 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 24 1011 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 32 1011 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1011 32 1011 38 , srcInfoPoints = [] } "crow" "crow")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 5 1012 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 5 1012 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 13 1012 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 13 1012 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 13 1012 20 , srcInfoPoints = [] } "Diamond")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 22 1012 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1012 22 1012 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 24 1012 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 24 1012 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 24 1012 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 24 1012 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 32 1012 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1012 32 1012 41 , srcInfoPoints = [] } "diamond" "diamond")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 5 1013 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 5 1013 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 13 1013 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 13 1013 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 13 1013 21 , srcInfoPoints = [] } "DotArrow")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 22 1013 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1013 22 1013 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 24 1013 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 24 1013 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 24 1013 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 24 1013 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 32 1013 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1013 32 1013 37 , srcInfoPoints = [] } "dot" "dot")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 5 1014 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 5 1014 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 13 1014 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 13 1014 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 13 1014 16 , srcInfoPoints = [] } "Inv")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 22 1014 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1014 22 1014 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 24 1014 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 24 1014 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 24 1014 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 24 1014 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 32 1014 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1014 32 1014 37 , srcInfoPoints = [] } "inv" "inv")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 5 1015 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 5 1015 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 13 1015 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 13 1015 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 13 1015 20 , srcInfoPoints = [] } "NoArrow")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 22 1015 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1015 22 1015 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 24 1015 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 24 1015 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 24 1015 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 24 1015 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 32 1015 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1015 32 1015 38 , srcInfoPoints = [] } "none" "none")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 5 1016 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 5 1016 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 13 1016 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 13 1016 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 13 1016 19 , srcInfoPoints = [] } "Normal")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 22 1016 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1016 22 1016 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 24 1016 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 24 1016 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 24 1016 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 24 1016 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 32 1016 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1016 32 1016 40 , srcInfoPoints = [] } "normal" "normal")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 5 1017 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 5 1017 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 13 1017 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 13 1017 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 13 1017 16 , srcInfoPoints = [] } "Tee")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 22 1017 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1017 22 1017 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 24 1017 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 24 1017 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 24 1017 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 24 1017 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 32 1017 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1017 32 1017 37 , srcInfoPoints = [] } "tee" "tee")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 5 1018 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 5 1018 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 13 1018 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 13 1018 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 13 1018 16 , srcInfoPoints = [] } "Vee")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 22 1018 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1018 22 1018 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 24 1018 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 24 1018 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 24 1018 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 24 1018 31 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 32 1018 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1018 32 1018 37 , srcInfoPoints = [] } "vee" "vee")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 1 1033 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1020 1 1020 9 , SrcSpan "tests/examples/Attributes.hs" 1020 30 1020 35 , SrcSpan "tests/examples/Attributes.hs" 1021 5 1021 5 , SrcSpan "tests/examples/Attributes.hs" 1033 1 1033 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 10 1020 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 10 1020 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 10 1020 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 10 1020 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 10 1020 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 19 1020 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 19 1020 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1020 19 1020 29 , srcInfoPoints = [] } "ArrowShape"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 5 1030 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 5 1030 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 5 1021 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 5 1021 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 15 1030 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1021 15 1021 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 17 1030 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 17 1021 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 17 1021 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 17 1021 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 23 1030 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1021 23 1021 24 , SrcSpan "tests/examples/Attributes.hs" 1022 23 1022 24 , SrcSpan "tests/examples/Attributes.hs" 1023 23 1023 24 , SrcSpan "tests/examples/Attributes.hs" 1024 23 1024 24 , SrcSpan "tests/examples/Attributes.hs" 1025 23 1025 24 , SrcSpan "tests/examples/Attributes.hs" 1026 23 1026 24 , SrcSpan "tests/examples/Attributes.hs" 1027 23 1027 24 , SrcSpan "tests/examples/Attributes.hs" 1028 23 1028 24 , SrcSpan "tests/examples/Attributes.hs" 1029 23 1029 24 , SrcSpan "tests/examples/Attributes.hs" 1030 23 1030 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 25 1021 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 25 1021 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 25 1021 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 25 1021 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 25 1021 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 35 1021 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 35 1021 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 35 1021 38 , srcInfoPoints = [] } "Box")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 39 1021 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1021 39 1021 44 , srcInfoPoints = [] } "box" "box")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 25 1022 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 25 1022 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 25 1022 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 25 1022 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 25 1022 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 35 1022 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 35 1022 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 35 1022 39 , srcInfoPoints = [] } "Crow")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 40 1022 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1022 40 1022 46 , srcInfoPoints = [] } "crow" "crow")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 25 1023 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 25 1023 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 25 1023 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 25 1023 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 25 1023 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 35 1023 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 35 1023 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 35 1023 42 , srcInfoPoints = [] } "Diamond")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 43 1023 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1023 43 1023 52 , srcInfoPoints = [] } "diamond" "diamond")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 25 1024 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 25 1024 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 25 1024 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 25 1024 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 25 1024 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 35 1024 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 35 1024 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 35 1024 43 , srcInfoPoints = [] } "DotArrow")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 44 1024 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1024 44 1024 49 , srcInfoPoints = [] } "dot" "dot")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 25 1025 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 25 1025 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 25 1025 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 25 1025 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 25 1025 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 35 1025 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 35 1025 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 35 1025 38 , srcInfoPoints = [] } "Inv")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 39 1025 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1025 39 1025 44 , srcInfoPoints = [] } "inv" "inv")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 25 1026 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 25 1026 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 25 1026 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 25 1026 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 25 1026 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 35 1026 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 35 1026 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 35 1026 42 , srcInfoPoints = [] } "NoArrow")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 43 1026 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1026 43 1026 49 , srcInfoPoints = [] } "none" "none")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 25 1027 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 25 1027 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 25 1027 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 25 1027 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 25 1027 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 35 1027 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 35 1027 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 35 1027 41 , srcInfoPoints = [] } "Normal")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 42 1027 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1027 42 1027 50 , srcInfoPoints = [] } "normal" "normal")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 25 1028 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 25 1028 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 25 1028 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 25 1028 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 25 1028 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 35 1028 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 35 1028 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 35 1028 38 , srcInfoPoints = [] } "Tee")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 39 1028 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1028 39 1028 44 , srcInfoPoints = [] } "tee" "tee")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 25 1029 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 25 1029 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 25 1029 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 25 1029 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 25 1029 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 35 1029 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 35 1029 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 35 1029 38 , srcInfoPoints = [] } "Vee")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 39 1029 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1029 39 1029 44 , srcInfoPoints = [] } "vee" "vee")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 1 1036 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1033 20 1033 21 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 1 1033 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 6 1033 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 6 1033 19 , srcInfoPoints = [] } "ArrowModifier")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 22 1035 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1033 29 1033 30 , SrcSpan "tests/examples/Attributes.hs" 1034 29 1034 30 , SrcSpan "tests/examples/Attributes.hs" 1035 29 1035 30 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 22 1035 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1033 29 1033 30 , SrcSpan "tests/examples/Attributes.hs" 1034 29 1034 30 , SrcSpan "tests/examples/Attributes.hs" 1035 29 1035 30 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 22 1033 28 , srcInfoPoints = [] } "ArrMod") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 31 1033 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1033 41 1033 43 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 31 1033 40 , srcInfoPoints = [] } "arrowFill" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 44 1033 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 44 1033 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1033 44 1033 53 , srcInfoPoints = [] } "ArrowFill"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1034 31 1034 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1034 41 1034 43 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1034 31 1034 40 , srcInfoPoints = [] } "arrowSide" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1034 44 1034 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1034 44 1034 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1034 44 1034 53 , srcInfoPoints = [] } "ArrowSide"))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 22 1036 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1036 22 1036 30 , SrcSpan "tests/examples/Attributes.hs" 1036 31 1036 32 , SrcSpan "tests/examples/Attributes.hs" 1036 34 1036 35 , SrcSpan "tests/examples/Attributes.hs" 1036 39 1036 40 , SrcSpan "tests/examples/Attributes.hs" 1036 45 1036 46 , SrcSpan "tests/examples/Attributes.hs" 1036 51 1036 52 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 32 1036 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 32 1036 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 32 1036 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 32 1036 34 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 36 1036 39 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 36 1036 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 36 1036 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 36 1036 39 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 41 1036 45 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 41 1036 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 41 1036 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 41 1036 45 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 47 1036 51 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 47 1036 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 47 1036 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1036 47 1036 51 , srcInfoPoints = [] } "Read"))) ])) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1039 1 1039 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1039 8 1039 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1039 1 1039 7 , srcInfoPoints = [] } "noMods" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1039 11 1039 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1039 11 1039 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1039 11 1039 24 , srcInfoPoints = [] } "ArrowModifier"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 1 1040 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 1 1040 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 1 1040 7 , srcInfoPoints = [] } "noMods")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 8 1040 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1040 8 1040 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 10 1040 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 10 1040 28 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 10 1040 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 10 1040 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 10 1040 16 , srcInfoPoints = [] } "ArrMod"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 17 1040 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 17 1040 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 17 1040 28 , srcInfoPoints = [] } "FilledArrow")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 29 1040 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 29 1040 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1040 29 1040 38 , srcInfoPoints = [] } "BothSides"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1043 1 1043 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1043 9 1043 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1043 1 1043 8 , srcInfoPoints = [] } "openMod" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1043 12 1043 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1043 12 1043 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1043 12 1043 25 , srcInfoPoints = [] } "ArrowModifier"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 1 1044 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 1 1044 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 1 1044 8 , srcInfoPoints = [] } "openMod")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 9 1044 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1044 9 1044 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 11 1044 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 11 1044 27 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 11 1044 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 11 1044 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 11 1044 17 , srcInfoPoints = [] } "ArrMod"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 18 1044 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 18 1044 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 18 1044 27 , srcInfoPoints = [] } "OpenArrow")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 28 1044 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 28 1044 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1044 28 1044 37 , srcInfoPoints = [] } "BothSides"))))) Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 1 1049 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1046 1 1046 9 , SrcSpan "tests/examples/Attributes.hs" 1046 33 1046 38 , SrcSpan "tests/examples/Attributes.hs" 1047 5 1047 5 , SrcSpan "tests/examples/Attributes.hs" 1049 1 1049 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 10 1046 32 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 10 1046 32 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 10 1046 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 10 1046 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 10 1046 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 19 1046 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 19 1046 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1046 19 1046 32 , srcInfoPoints = [] } "ArrowModifier"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 5 1047 50 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 5 1047 50 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 5 1047 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 5 1047 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 13 1047 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1047 13 1047 14 , SrcSpan "tests/examples/Attributes.hs" 1047 24 1047 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 14 1047 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 14 1047 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 14 1047 20 , srcInfoPoints = [] } "ArrMod")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 21 1047 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 21 1047 22 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 23 1047 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 23 1047 24 , srcInfoPoints = [] } "s") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 26 1047 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1047 26 1047 27 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 28 1047 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 28 1047 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 28 1047 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 28 1047 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 28 1047 35 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 36 1047 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 36 1047 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 36 1047 37 , srcInfoPoints = [] } "f")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 38 1047 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 38 1047 40 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 38 1047 40 , srcInfoPoints = [] } "<>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 41 1047 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 41 1047 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 41 1047 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 41 1047 48 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 49 1047 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 49 1047 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1047 49 1047 50 , srcInfoPoints = [] } "s")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 1 1054 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1049 1 1049 9 , SrcSpan "tests/examples/Attributes.hs" 1049 33 1049 38 , SrcSpan "tests/examples/Attributes.hs" 1050 5 1050 5 , SrcSpan "tests/examples/Attributes.hs" 1054 1 1054 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 10 1049 32 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 10 1049 32 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 10 1049 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 10 1049 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 10 1049 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 19 1049 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 19 1049 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1049 19 1049 32 , srcInfoPoints = [] } "ArrowModifier"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 5 1052 39 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 5 1052 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 5 1050 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 5 1050 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 15 1052 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1050 15 1050 16 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 17 1052 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1050 17 1050 19 , SrcSpan "tests/examples/Attributes.hs" 1050 20 1050 20 , SrcSpan "tests/examples/Attributes.hs" 1051 20 1051 20 , SrcSpan "tests/examples/Attributes.hs" 1052 20 1052 20 , SrcSpan "tests/examples/Attributes.hs" 1054 1 1054 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 20 1050 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1050 22 1050 24 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 20 1050 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 20 1050 21 , srcInfoPoints = [] } "f")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 25 1050 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 25 1050 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1050 25 1050 34 , srcInfoPoints = [] } "parseUnqt"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1051 20 1051 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1051 22 1051 24 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1051 20 1051 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1051 20 1051 21 , srcInfoPoints = [] } "s")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1051 25 1051 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1051 25 1051 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1051 25 1051 34 , srcInfoPoints = [] } "parseUnqt"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 20 1052 39 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 20 1052 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 20 1052 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 20 1052 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 20 1052 26 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 27 1052 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 27 1052 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 27 1052 28 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 29 1052 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 29 1052 37 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 29 1052 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 29 1052 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 29 1052 35 , srcInfoPoints = [] } "ArrMod"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 36 1052 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 36 1052 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 36 1052 37 , srcInfoPoints = [] } "f")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 38 1052 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 38 1052 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1052 38 1052 39 , srcInfoPoints = [] } "s"))))) ])) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1054 1 1056 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1054 16 1054 17 , SrcSpan "tests/examples/Attributes.hs" 1055 16 1055 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1054 1 1054 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1054 6 1054 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1054 6 1054 15 , srcInfoPoints = [] } "ArrowFill")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1054 18 1054 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1054 18 1054 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1054 18 1054 27 , srcInfoPoints = [] } "OpenArrow") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1055 18 1055 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1055 18 1055 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1055 18 1055 29 , srcInfoPoints = [] } "FilledArrow") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 18 1056 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1056 18 1056 26 , SrcSpan "tests/examples/Attributes.hs" 1056 27 1056 28 , SrcSpan "tests/examples/Attributes.hs" 1056 30 1056 31 , SrcSpan "tests/examples/Attributes.hs" 1056 35 1056 36 , SrcSpan "tests/examples/Attributes.hs" 1056 44 1056 45 , SrcSpan "tests/examples/Attributes.hs" 1056 50 1056 51 , SrcSpan "tests/examples/Attributes.hs" 1056 56 1056 57 , SrcSpan "tests/examples/Attributes.hs" 1056 62 1056 63 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 28 1056 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 28 1056 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 28 1056 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 28 1056 30 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 32 1056 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 32 1056 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 32 1056 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 32 1056 35 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 37 1056 44 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 37 1056 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 37 1056 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 37 1056 44 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 46 1056 50 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 46 1056 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 46 1056 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 46 1056 50 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 52 1056 56 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 52 1056 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 52 1056 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 52 1056 56 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 58 1056 62 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 58 1056 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 58 1056 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1056 58 1056 62 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 1 1062 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1058 1 1058 9 , SrcSpan "tests/examples/Attributes.hs" 1058 29 1058 34 , SrcSpan "tests/examples/Attributes.hs" 1059 5 1059 5 , SrcSpan "tests/examples/Attributes.hs" 1060 5 1060 5 , SrcSpan "tests/examples/Attributes.hs" 1062 1 1062 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 10 1058 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 10 1058 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 10 1058 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 10 1058 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 10 1058 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 19 1058 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 19 1058 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1058 19 1058 28 , srcInfoPoints = [] } "ArrowFill"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 5 1060 32 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 5 1060 32 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 5 1059 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 5 1059 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 13 1059 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 13 1059 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 13 1059 22 , srcInfoPoints = [] } "OpenArrow")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 25 1059 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1059 25 1059 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 27 1059 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 27 1059 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 27 1059 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 27 1059 31 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 32 1059 35 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1059 32 1059 35 , srcInfoPoints = [] } 'o' "o")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 5 1060 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 5 1060 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 13 1060 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 13 1060 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 13 1060 24 , srcInfoPoints = [] } "FilledArrow")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 25 1060 32 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1060 25 1060 26 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 27 1060 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 27 1060 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1060 27 1060 32 , srcInfoPoints = [] } "empty")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 1 1071 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1062 1 1062 9 , SrcSpan "tests/examples/Attributes.hs" 1062 29 1062 34 , SrcSpan "tests/examples/Attributes.hs" 1063 5 1063 5 , SrcSpan "tests/examples/Attributes.hs" 1067 5 1067 5 , SrcSpan "tests/examples/Attributes.hs" 1071 1 1071 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 10 1062 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 10 1062 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 10 1062 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 10 1062 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 10 1062 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 19 1062 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 19 1062 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1062 19 1062 28 , srcInfoPoints = [] } "ArrowFill"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 5 1064 43 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 5 1064 43 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 5 1063 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 5 1063 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 15 1064 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1063 15 1063 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 17 1064 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 17 1063 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 17 1063 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 17 1063 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 17 1063 22 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 23 1063 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1063 23 1063 24 , SrcSpan "tests/examples/Attributes.hs" 1063 59 1063 60 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 24 1063 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 24 1063 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 24 1063 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 24 1063 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 24 1063 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 24 1063 28 , srcInfoPoints = [] } "bool"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 29 1063 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 29 1063 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 29 1063 40 , srcInfoPoints = [] } "FilledArrow")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 41 1063 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 41 1063 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 41 1063 50 , srcInfoPoints = [] } "OpenArrow")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 51 1063 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 51 1063 52 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 51 1063 52 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 53 1063 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 53 1063 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1063 53 1063 59 , srcInfoPoints = [] } "isJust")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 17 1064 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 17 1064 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 17 1064 18 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 19 1064 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 19 1064 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 19 1064 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 19 1064 27 , srcInfoPoints = [] } "optional"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 28 1064 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1064 28 1064 29 , SrcSpan "tests/examples/Attributes.hs" 1064 42 1064 43 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 29 1064 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 29 1064 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 29 1064 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 29 1064 38 , srcInfoPoints = [] } "character"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 39 1064 42 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1064 39 1064 42 , srcInfoPoints = [] } 'o' "o"))))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1067 5 1067 22 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1067 5 1067 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1067 5 1067 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1067 5 1067 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1067 11 1067 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1067 11 1067 12 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1067 13 1067 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1067 13 1067 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1067 13 1067 22 , srcInfoPoints = [] } "parseUnqt")))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1071 1 1074 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1071 16 1071 17 , SrcSpan "tests/examples/Attributes.hs" 1072 16 1072 17 , SrcSpan "tests/examples/Attributes.hs" 1073 16 1073 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1071 1 1071 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1071 6 1071 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1071 6 1071 15 , srcInfoPoints = [] } "ArrowSide")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1071 18 1071 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1071 18 1071 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1071 18 1071 26 , srcInfoPoints = [] } "LeftSide") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1072 18 1072 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1072 18 1072 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1072 18 1072 27 , srcInfoPoints = [] } "RightSide") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1073 18 1073 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1073 18 1073 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1073 18 1073 27 , srcInfoPoints = [] } "BothSides") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 18 1074 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1074 18 1074 26 , SrcSpan "tests/examples/Attributes.hs" 1074 27 1074 28 , SrcSpan "tests/examples/Attributes.hs" 1074 30 1074 31 , SrcSpan "tests/examples/Attributes.hs" 1074 35 1074 36 , SrcSpan "tests/examples/Attributes.hs" 1074 44 1074 45 , SrcSpan "tests/examples/Attributes.hs" 1074 50 1074 51 , SrcSpan "tests/examples/Attributes.hs" 1074 56 1074 57 , SrcSpan "tests/examples/Attributes.hs" 1074 62 1074 63 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 28 1074 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 28 1074 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 28 1074 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 28 1074 30 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 32 1074 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 32 1074 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 32 1074 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 32 1074 35 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 37 1074 44 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 37 1074 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 37 1074 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 37 1074 44 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 46 1074 50 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 46 1074 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 46 1074 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 46 1074 50 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 52 1074 56 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 52 1074 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 52 1074 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 52 1074 56 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 58 1074 62 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 58 1074 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 58 1074 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1074 58 1074 62 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 1 1081 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1076 1 1076 9 , SrcSpan "tests/examples/Attributes.hs" 1076 29 1076 34 , SrcSpan "tests/examples/Attributes.hs" 1077 5 1077 5 , SrcSpan "tests/examples/Attributes.hs" 1078 5 1078 5 , SrcSpan "tests/examples/Attributes.hs" 1079 5 1079 5 , SrcSpan "tests/examples/Attributes.hs" 1081 1 1081 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 10 1076 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 10 1076 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 10 1076 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 10 1076 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 10 1076 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 19 1076 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 19 1076 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1076 19 1076 28 , srcInfoPoints = [] } "ArrowSide"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 5 1079 30 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 5 1079 30 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 5 1077 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 5 1077 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 13 1077 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 13 1077 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 13 1077 21 , srcInfoPoints = [] } "LeftSide")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 23 1077 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1077 23 1077 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 25 1077 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 25 1077 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 25 1077 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 25 1077 29 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 30 1077 33 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1077 30 1077 33 , srcInfoPoints = [] } 'l' "l")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 5 1078 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 5 1078 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 13 1078 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 13 1078 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 13 1078 22 , srcInfoPoints = [] } "RightSide")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 23 1078 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1078 23 1078 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 25 1078 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 25 1078 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 25 1078 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 25 1078 29 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 30 1078 33 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1078 30 1078 33 , srcInfoPoints = [] } 'r' "r")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 5 1079 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 5 1079 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 13 1079 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 13 1079 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 13 1079 22 , srcInfoPoints = [] } "BothSides")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 23 1079 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1079 23 1079 24 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 25 1079 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 25 1079 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1079 25 1079 30 , srcInfoPoints = [] } "empty")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 1 1093 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1081 1 1081 9 , SrcSpan "tests/examples/Attributes.hs" 1081 29 1081 34 , SrcSpan "tests/examples/Attributes.hs" 1082 5 1082 5 , SrcSpan "tests/examples/Attributes.hs" 1089 5 1089 5 , SrcSpan "tests/examples/Attributes.hs" 1093 1 1093 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 10 1081 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 10 1081 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 10 1081 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 10 1081 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 10 1081 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 19 1081 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 19 1081 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1081 19 1081 28 , srcInfoPoints = [] } "ArrowSide"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 5 1086 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1084 9 1084 14 ] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 5 1086 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1084 9 1084 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 5 1082 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 5 1082 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 15 1083 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1082 15 1082 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 17 1083 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 17 1082 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 17 1082 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 17 1082 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 17 1082 22 , srcInfoPoints = [] } "liftM"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 23 1082 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 23 1082 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1082 23 1082 34 , srcInfoPoints = [] } "getSideType")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 17 1083 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 17 1083 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 17 1083 18 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 19 1083 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 19 1083 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 19 1083 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 19 1083 27 , srcInfoPoints = [] } "optional"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 28 1083 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1083 28 1083 29 , SrcSpan "tests/examples/Attributes.hs" 1083 61 1083 62 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 29 1083 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 29 1083 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 29 1083 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 29 1083 34 , srcInfoPoints = [] } "oneOf"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 35 1083 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 35 1083 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 35 1083 36 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 37 1083 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 37 1083 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 37 1083 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 37 1083 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 37 1083 40 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 41 1083 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 41 1083 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 41 1083 50 , srcInfoPoints = [] } "character")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 51 1083 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1083 51 1083 52 , SrcSpan "tests/examples/Attributes.hs" 1083 55 1083 56 , SrcSpan "tests/examples/Attributes.hs" 1083 60 1083 61 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 52 1083 55 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 52 1083 55 , srcInfoPoints = [] } 'l' "l") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 57 1083 60 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1083 57 1083 60 , srcInfoPoints = [] } 'r' "r") ]))))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 11 1086 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1085 11 1085 11 , SrcSpan "tests/examples/Attributes.hs" 1089 5 1089 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 11 1086 67 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 11 1085 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 11 1085 22 , srcInfoPoints = [] } "getSideType")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 23 1086 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1085 23 1085 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 25 1086 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 25 1085 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 25 1085 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 25 1085 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 25 1085 30 , srcInfoPoints = [] } "maybe"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 31 1085 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 31 1085 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1085 31 1085 40 , srcInfoPoints = [] } "BothSides")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 31 1086 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1086 31 1086 32 , SrcSpan "tests/examples/Attributes.hs" 1086 66 1086 67 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 32 1086 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 32 1086 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 32 1086 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 32 1086 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 32 1086 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 32 1086 36 , srcInfoPoints = [] } "bool"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 37 1086 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 37 1086 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 37 1086 46 , srcInfoPoints = [] } "RightSide")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 47 1086 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 47 1086 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 47 1086 55 , srcInfoPoints = [] } "LeftSide")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 56 1086 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 56 1086 57 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 56 1086 57 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 58 1086 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 58 1086 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1086 58 1086 59 , SrcSpan "tests/examples/Attributes.hs" 1086 59 1086 61 , SrcSpan "tests/examples/Attributes.hs" 1086 61 1086 62 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 58 1086 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1086 58 1086 59 , SrcSpan "tests/examples/Attributes.hs" 1086 59 1086 61 , SrcSpan "tests/examples/Attributes.hs" 1086 61 1086 62 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 59 1086 61 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 63 1086 66 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1086 63 1086 66 , srcInfoPoints = [] } 'l' "l"))))))) Nothing ]))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1089 5 1089 22 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1089 5 1089 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1089 5 1089 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1089 5 1089 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1089 11 1089 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1089 11 1089 12 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1089 13 1089 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1089 13 1089 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1089 13 1089 22 , srcInfoPoints = [] } "parseUnqt")))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 1 1095 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1093 17 1093 18 , SrcSpan "tests/examples/Attributes.hs" 1094 17 1094 18 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 1 1093 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 6 1093 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 6 1093 16 , srcInfoPoints = [] } "AspectType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 19 1093 35 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 19 1093 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 19 1093 28 , srcInfoPoints = [] } "RatioOnly") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 29 1093 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 29 1093 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1093 29 1093 35 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 19 1094 44 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 19 1094 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 19 1094 33 , srcInfoPoints = [] } "RatioPassCount") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 34 1094 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 34 1094 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 34 1094 40 , srcInfoPoints = [] } "Double")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 41 1094 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 41 1094 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1094 41 1094 44 , srcInfoPoints = [] } "Int")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 19 1095 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1095 19 1095 27 , SrcSpan "tests/examples/Attributes.hs" 1095 28 1095 29 , SrcSpan "tests/examples/Attributes.hs" 1095 31 1095 32 , SrcSpan "tests/examples/Attributes.hs" 1095 36 1095 37 , SrcSpan "tests/examples/Attributes.hs" 1095 42 1095 43 , SrcSpan "tests/examples/Attributes.hs" 1095 48 1095 49 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 29 1095 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 29 1095 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 29 1095 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 29 1095 31 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 33 1095 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 33 1095 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 33 1095 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 33 1095 36 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 38 1095 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 38 1095 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 38 1095 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 38 1095 42 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 44 1095 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 44 1095 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 44 1095 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1095 44 1095 48 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 1 1104 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1097 1 1097 9 , SrcSpan "tests/examples/Attributes.hs" 1097 30 1097 35 , SrcSpan "tests/examples/Attributes.hs" 1098 5 1098 5 , SrcSpan "tests/examples/Attributes.hs" 1099 5 1099 5 , SrcSpan "tests/examples/Attributes.hs" 1101 5 1101 5 , SrcSpan "tests/examples/Attributes.hs" 1102 5 1102 5 , SrcSpan "tests/examples/Attributes.hs" 1104 1 1104 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 10 1097 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 10 1097 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 10 1097 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 10 1097 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 10 1097 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 19 1097 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 19 1097 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1097 19 1097 29 , srcInfoPoints = [] } "AspectType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 5 1099 48 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 5 1099 48 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 5 1098 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 5 1098 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 13 1098 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1098 13 1098 14 , SrcSpan "tests/examples/Attributes.hs" 1098 25 1098 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 14 1098 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 14 1098 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 14 1098 23 , srcInfoPoints = [] } "RatioOnly")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 24 1098 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 24 1098 25 , srcInfoPoints = [] } "r") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 34 1098 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1098 34 1098 35 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 36 1098 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 36 1098 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 36 1098 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 36 1098 43 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 44 1098 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 44 1098 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1098 44 1098 45 , srcInfoPoints = [] } "r"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 5 1099 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 5 1099 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 13 1099 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1099 13 1099 14 , SrcSpan "tests/examples/Attributes.hs" 1099 32 1099 33 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 14 1099 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 14 1099 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 14 1099 28 , srcInfoPoints = [] } "RatioPassCount")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 29 1099 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 29 1099 30 , srcInfoPoints = [] } "r") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 31 1099 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 31 1099 32 , srcInfoPoints = [] } "p") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 34 1099 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1099 34 1099 35 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 36 1099 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 36 1099 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 36 1099 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 36 1099 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 36 1099 44 , srcInfoPoints = [] } "commaDel"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 45 1099 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 45 1099 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 45 1099 46 , srcInfoPoints = [] } "r")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 47 1099 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 47 1099 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1099 47 1099 48 , srcInfoPoints = [] } "p"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 5 1102 58 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 5 1102 58 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 5 1101 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 5 1101 10 , srcInfoPoints = [] } "toDot") [ PAsPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 11 1101 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1101 13 1101 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 11 1101 13 , srcInfoPoints = [] } "at") (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 14 1101 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1101 23 1101 24 , SrcSpan "tests/examples/Attributes.hs" 1101 24 1101 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 14 1101 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 14 1101 23 , srcInfoPoints = [] } "RatioOnly")) []) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 31 1101 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1101 31 1101 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 33 1101 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 33 1101 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 33 1101 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 33 1101 40 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 41 1101 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 41 1101 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1101 41 1101 43 , srcInfoPoints = [] } "at"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 5 1102 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 5 1102 10 , srcInfoPoints = [] } "toDot") [ PAsPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 11 1102 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1102 13 1102 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 11 1102 13 , srcInfoPoints = [] } "at") (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 14 1102 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1102 28 1102 29 , SrcSpan "tests/examples/Attributes.hs" 1102 29 1102 30 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 14 1102 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 14 1102 28 , srcInfoPoints = [] } "RatioPassCount")) []) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 31 1102 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1102 31 1102 32 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 33 1102 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 33 1102 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 33 1102 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 33 1102 45 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 46 1102 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 46 1102 47 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 46 1102 47 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 48 1102 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 48 1102 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 48 1102 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 48 1102 55 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 56 1102 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 56 1102 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1102 56 1102 58 , srcInfoPoints = [] } "at")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 1 1116 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1104 1 1104 9 , SrcSpan "tests/examples/Attributes.hs" 1104 30 1104 35 , SrcSpan "tests/examples/Attributes.hs" 1105 5 1105 5 , SrcSpan "tests/examples/Attributes.hs" 1110 5 1110 5 , SrcSpan "tests/examples/Attributes.hs" 1116 1 1116 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 10 1104 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 10 1104 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 10 1104 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 10 1104 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 10 1104 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 19 1104 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 19 1104 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1104 19 1104 29 , srcInfoPoints = [] } "AspectType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 5 1107 42 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 5 1107 42 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 5 1105 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 5 1105 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 15 1107 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1105 15 1105 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 17 1107 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 17 1105 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 17 1105 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 17 1105 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 17 1105 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 17 1105 22 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 23 1105 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1105 23 1105 24 , SrcSpan "tests/examples/Attributes.hs" 1105 46 1105 47 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 24 1105 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 24 1105 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 24 1105 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 24 1105 31 , srcInfoPoints = [] } "uncurry"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 32 1105 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 32 1105 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 32 1105 46 , srcInfoPoints = [] } "RatioPassCount")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 48 1105 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 48 1105 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1105 48 1105 60 , srcInfoPoints = [] } "commaSepUnqt")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1106 17 1106 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1106 17 1106 18 , SrcSpan "tests/examples/Attributes.hs" 1106 18 1106 24 , SrcSpan "tests/examples/Attributes.hs" 1106 24 1106 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1106 17 1106 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1106 17 1106 18 , SrcSpan "tests/examples/Attributes.hs" 1106 18 1106 24 , SrcSpan "tests/examples/Attributes.hs" 1106 24 1106 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1106 18 1106 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 17 1107 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 17 1107 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 17 1107 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 17 1107 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 17 1107 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 23 1107 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 23 1107 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 23 1107 32 , srcInfoPoints = [] } "RatioOnly")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 33 1107 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 33 1107 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1107 33 1107 42 , srcInfoPoints = [] } "parseUnqt")))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 5 1112 34 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 5 1112 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 5 1110 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 5 1110 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 11 1112 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1110 11 1110 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 13 1112 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 13 1110 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 13 1110 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 13 1110 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 13 1110 24 , srcInfoPoints = [] } "quotedParse"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 25 1110 70 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1110 25 1110 26 , SrcSpan "tests/examples/Attributes.hs" 1110 69 1110 70 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 26 1110 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 26 1110 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 26 1110 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 26 1110 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 26 1110 31 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 32 1110 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1110 32 1110 33 , SrcSpan "tests/examples/Attributes.hs" 1110 55 1110 56 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 33 1110 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 33 1110 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 33 1110 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 33 1110 40 , srcInfoPoints = [] } "uncurry"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 41 1110 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 41 1110 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 41 1110 55 , srcInfoPoints = [] } "RatioPassCount")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 57 1110 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 57 1110 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1110 57 1110 69 , srcInfoPoints = [] } "commaSepUnqt")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1111 13 1111 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1111 13 1111 14 , SrcSpan "tests/examples/Attributes.hs" 1111 14 1111 20 , SrcSpan "tests/examples/Attributes.hs" 1111 20 1111 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1111 13 1111 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1111 13 1111 14 , SrcSpan "tests/examples/Attributes.hs" 1111 14 1111 20 , SrcSpan "tests/examples/Attributes.hs" 1111 20 1111 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1111 14 1111 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 13 1112 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 13 1112 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 13 1112 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 13 1112 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 13 1112 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 19 1112 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 19 1112 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 19 1112 28 , srcInfoPoints = [] } "RatioOnly")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 29 1112 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 29 1112 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1112 29 1112 34 , srcInfoPoints = [] } "parse")))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 1 1117 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1116 11 1116 12 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 1 1116 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 6 1116 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 6 1116 10 , srcInfoPoints = [] } "Rect")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 13 1116 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 13 1116 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 13 1116 17 , srcInfoPoints = [] } "Rect") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 18 1116 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 18 1116 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 18 1116 23 , srcInfoPoints = [] } "Point")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 24 1116 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 24 1116 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1116 24 1116 29 , srcInfoPoints = [] } "Point")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 13 1117 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1117 13 1117 21 , SrcSpan "tests/examples/Attributes.hs" 1117 22 1117 23 , SrcSpan "tests/examples/Attributes.hs" 1117 25 1117 26 , SrcSpan "tests/examples/Attributes.hs" 1117 30 1117 31 , SrcSpan "tests/examples/Attributes.hs" 1117 36 1117 37 , SrcSpan "tests/examples/Attributes.hs" 1117 42 1117 43 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 23 1117 25 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 23 1117 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 23 1117 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 23 1117 25 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 27 1117 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 27 1117 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 27 1117 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 27 1117 30 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 32 1117 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 32 1117 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 32 1117 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 32 1117 36 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 38 1117 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 38 1117 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 38 1117 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1117 38 1117 42 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 1 1124 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1119 1 1119 9 , SrcSpan "tests/examples/Attributes.hs" 1119 24 1119 29 , SrcSpan "tests/examples/Attributes.hs" 1120 5 1120 5 , SrcSpan "tests/examples/Attributes.hs" 1122 5 1122 5 , SrcSpan "tests/examples/Attributes.hs" 1124 1 1124 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 10 1119 23 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 10 1119 23 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 10 1119 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 10 1119 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 10 1119 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 19 1119 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 19 1119 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1119 19 1119 23 , srcInfoPoints = [] } "Rect"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 5 1120 42 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 5 1120 42 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 5 1120 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 5 1120 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 13 1120 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1120 13 1120 14 , SrcSpan "tests/examples/Attributes.hs" 1120 24 1120 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 14 1120 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 14 1120 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 14 1120 18 , srcInfoPoints = [] } "Rect")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 19 1120 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 19 1120 21 , srcInfoPoints = [] } "p1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 22 1120 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 22 1120 24 , srcInfoPoints = [] } "p2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 26 1120 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1120 26 1120 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 28 1120 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 28 1120 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 28 1120 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 28 1120 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 28 1120 36 , srcInfoPoints = [] } "commaDel"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 37 1120 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 37 1120 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 37 1120 39 , srcInfoPoints = [] } "p1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 40 1120 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 40 1120 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1120 40 1120 42 , srcInfoPoints = [] } "p2"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 5 1122 35 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 5 1122 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 5 1122 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 5 1122 10 , srcInfoPoints = [] } "toDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 11 1122 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1122 11 1122 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 13 1122 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 13 1122 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 13 1122 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 13 1122 25 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 26 1122 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 26 1122 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 26 1122 27 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 28 1122 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 28 1122 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1122 28 1122 35 , srcInfoPoints = [] } "unqtDot"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 1 1131 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1124 1 1124 9 , SrcSpan "tests/examples/Attributes.hs" 1124 24 1124 29 , SrcSpan "tests/examples/Attributes.hs" 1125 5 1125 5 , SrcSpan "tests/examples/Attributes.hs" 1127 5 1127 5 , SrcSpan "tests/examples/Attributes.hs" 1131 1 1131 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 10 1124 23 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 10 1124 23 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 10 1124 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 10 1124 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 10 1124 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 19 1124 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 19 1124 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1124 19 1124 23 , srcInfoPoints = [] } "Rect"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 5 1125 50 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 5 1125 50 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 5 1125 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 5 1125 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 15 1125 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1125 15 1125 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 17 1125 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 17 1125 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 17 1125 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 17 1125 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 17 1125 22 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 23 1125 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1125 23 1125 24 , SrcSpan "tests/examples/Attributes.hs" 1125 36 1125 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 24 1125 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 24 1125 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 24 1125 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 24 1125 31 , srcInfoPoints = [] } "uncurry"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 32 1125 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 32 1125 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 32 1125 36 , srcInfoPoints = [] } "Rect")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 38 1125 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 38 1125 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1125 38 1125 50 , srcInfoPoints = [] } "commaSepUnqt"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 5 1127 34 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 5 1127 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 5 1127 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 5 1127 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 11 1127 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1127 11 1127 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 13 1127 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 13 1127 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 13 1127 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 13 1127 24 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 25 1127 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 25 1127 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1127 25 1127 34 , srcInfoPoints = [] } "parseUnqt"))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1131 1 1134 65 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1131 18 1131 19 , SrcSpan "tests/examples/Attributes.hs" 1132 18 1132 19 , SrcSpan "tests/examples/Attributes.hs" 1133 18 1133 19 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1131 1 1131 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1131 6 1131 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1131 6 1131 17 , srcInfoPoints = [] } "ClusterMode")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1131 20 1131 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1131 20 1131 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1131 20 1131 25 , srcInfoPoints = [] } "Local") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1132 20 1132 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1132 20 1132 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1132 20 1132 26 , srcInfoPoints = [] } "Global") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1133 20 1133 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1133 20 1133 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1133 20 1133 29 , srcInfoPoints = [] } "NoCluster") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 20 1134 65 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1134 20 1134 28 , SrcSpan "tests/examples/Attributes.hs" 1134 29 1134 30 , SrcSpan "tests/examples/Attributes.hs" 1134 32 1134 33 , SrcSpan "tests/examples/Attributes.hs" 1134 37 1134 38 , SrcSpan "tests/examples/Attributes.hs" 1134 46 1134 47 , SrcSpan "tests/examples/Attributes.hs" 1134 52 1134 53 , SrcSpan "tests/examples/Attributes.hs" 1134 58 1134 59 , SrcSpan "tests/examples/Attributes.hs" 1134 64 1134 65 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 30 1134 32 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 30 1134 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 30 1134 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 30 1134 32 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 34 1134 37 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 34 1134 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 34 1134 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 34 1134 37 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 39 1134 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 39 1134 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 39 1134 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 39 1134 46 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 48 1134 52 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 48 1134 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 48 1134 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 48 1134 52 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 54 1134 58 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 54 1134 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 54 1134 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 54 1134 58 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 60 1134 64 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 60 1134 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 60 1134 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1134 60 1134 64 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 1 1143 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1136 1 1136 9 , SrcSpan "tests/examples/Attributes.hs" 1136 31 1136 36 , SrcSpan "tests/examples/Attributes.hs" 1137 5 1137 5 , SrcSpan "tests/examples/Attributes.hs" 1138 5 1138 5 , SrcSpan "tests/examples/Attributes.hs" 1139 5 1139 5 , SrcSpan "tests/examples/Attributes.hs" 1143 1 1143 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 10 1136 30 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 10 1136 30 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 10 1136 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 10 1136 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 10 1136 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 19 1136 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 19 1136 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1136 19 1136 30 , srcInfoPoints = [] } "ClusterMode"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 5 1139 39 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 5 1139 39 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 5 1137 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 5 1137 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 13 1137 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 13 1137 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 13 1137 18 , srcInfoPoints = [] } "Local")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 23 1137 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1137 23 1137 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 25 1137 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 25 1137 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 25 1137 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 25 1137 32 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 33 1137 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1137 33 1137 40 , srcInfoPoints = [] } "local" "local")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 5 1138 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 5 1138 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 13 1138 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 13 1138 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 13 1138 19 , srcInfoPoints = [] } "Global")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 23 1138 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1138 23 1138 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 25 1138 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 25 1138 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 25 1138 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 25 1138 32 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 33 1138 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1138 33 1138 41 , srcInfoPoints = [] } "global" "global")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 5 1139 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 5 1139 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 13 1139 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 13 1139 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 13 1139 22 , srcInfoPoints = [] } "NoCluster")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 23 1139 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1139 23 1139 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 25 1139 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 25 1139 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 25 1139 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 25 1139 32 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 33 1139 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1139 33 1139 39 , srcInfoPoints = [] } "none" "none")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 1 1151 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1143 1 1143 9 , SrcSpan "tests/examples/Attributes.hs" 1143 31 1143 36 , SrcSpan "tests/examples/Attributes.hs" 1144 5 1144 5 , SrcSpan "tests/examples/Attributes.hs" 1151 1 1151 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 10 1143 30 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 10 1143 30 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 10 1143 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 10 1143 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 10 1143 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 19 1143 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 19 1143 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1143 19 1143 30 , srcInfoPoints = [] } "ClusterMode"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 5 1147 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 5 1147 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 5 1144 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 5 1144 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 15 1147 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1144 15 1144 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 17 1147 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 17 1144 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 17 1144 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 17 1144 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 23 1147 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1144 23 1144 24 , SrcSpan "tests/examples/Attributes.hs" 1145 23 1145 24 , SrcSpan "tests/examples/Attributes.hs" 1146 23 1146 24 , SrcSpan "tests/examples/Attributes.hs" 1147 23 1147 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 25 1144 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 25 1144 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 25 1144 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 25 1144 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 25 1144 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 35 1144 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 35 1144 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 35 1144 40 , srcInfoPoints = [] } "Local")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 41 1144 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1144 41 1144 48 , srcInfoPoints = [] } "local" "local")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 25 1145 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 25 1145 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 25 1145 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 25 1145 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 25 1145 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 35 1145 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 35 1145 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 35 1145 41 , srcInfoPoints = [] } "Global")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 42 1145 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1145 42 1145 50 , srcInfoPoints = [] } "global" "global")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 25 1146 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 25 1146 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 25 1146 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 25 1146 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 25 1146 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 35 1146 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 35 1146 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 35 1146 44 , srcInfoPoints = [] } "NoCluster")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 45 1146 51 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1146 45 1146 51 , srcInfoPoints = [] } "none" "none")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 1 1152 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1151 14 1151 15 , SrcSpan "tests/examples/Attributes.hs" 1151 24 1151 25 , SrcSpan "tests/examples/Attributes.hs" 1151 31 1151 32 , SrcSpan "tests/examples/Attributes.hs" 1151 38 1151 39 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 1 1151 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 6 1151 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 6 1151 13 , srcInfoPoints = [] } "DirType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 16 1151 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 16 1151 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 16 1151 23 , srcInfoPoints = [] } "Forward") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 26 1151 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 26 1151 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 26 1151 30 , srcInfoPoints = [] } "Back") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 33 1151 37 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 33 1151 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 33 1151 37 , srcInfoPoints = [] } "Both") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 40 1151 45 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 40 1151 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1151 40 1151 45 , srcInfoPoints = [] } "NoDir") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 16 1152 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1152 16 1152 24 , SrcSpan "tests/examples/Attributes.hs" 1152 25 1152 26 , SrcSpan "tests/examples/Attributes.hs" 1152 28 1152 29 , SrcSpan "tests/examples/Attributes.hs" 1152 33 1152 34 , SrcSpan "tests/examples/Attributes.hs" 1152 42 1152 43 , SrcSpan "tests/examples/Attributes.hs" 1152 48 1152 49 , SrcSpan "tests/examples/Attributes.hs" 1152 54 1152 55 , SrcSpan "tests/examples/Attributes.hs" 1152 60 1152 61 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 26 1152 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 26 1152 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 26 1152 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 26 1152 28 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 30 1152 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 30 1152 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 30 1152 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 30 1152 33 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 35 1152 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 35 1152 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 35 1152 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 35 1152 42 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 44 1152 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 44 1152 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 44 1152 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 44 1152 48 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 50 1152 54 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 50 1152 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 50 1152 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 50 1152 54 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 56 1152 60 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 56 1152 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 56 1152 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1152 56 1152 60 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 1 1160 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1154 1 1154 9 , SrcSpan "tests/examples/Attributes.hs" 1154 27 1154 32 , SrcSpan "tests/examples/Attributes.hs" 1155 5 1155 5 , SrcSpan "tests/examples/Attributes.hs" 1156 5 1156 5 , SrcSpan "tests/examples/Attributes.hs" 1157 5 1157 5 , SrcSpan "tests/examples/Attributes.hs" 1158 5 1158 5 , SrcSpan "tests/examples/Attributes.hs" 1160 1 1160 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 10 1154 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 10 1154 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 10 1154 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 10 1154 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 10 1154 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 19 1154 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 19 1154 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1154 19 1154 26 , srcInfoPoints = [] } "DirType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 5 1158 37 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 5 1158 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 5 1155 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 5 1155 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 13 1155 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 13 1155 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 13 1155 20 , srcInfoPoints = [] } "Forward")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 21 1155 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1155 21 1155 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 23 1155 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 23 1155 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 23 1155 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 23 1155 30 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 31 1155 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1155 31 1155 40 , srcInfoPoints = [] } "forward" "forward")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 5 1156 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 5 1156 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 13 1156 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 13 1156 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 13 1156 17 , srcInfoPoints = [] } "Back")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 21 1156 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1156 21 1156 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 23 1156 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 23 1156 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 23 1156 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 23 1156 30 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 31 1156 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1156 31 1156 37 , srcInfoPoints = [] } "back" "back")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 5 1157 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 5 1157 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 13 1157 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 13 1157 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 13 1157 17 , srcInfoPoints = [] } "Both")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 21 1157 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1157 21 1157 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 23 1157 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 23 1157 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 23 1157 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 23 1157 30 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 31 1157 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1157 31 1157 37 , srcInfoPoints = [] } "both" "both")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 5 1158 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 5 1158 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 13 1158 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 13 1158 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 13 1158 18 , srcInfoPoints = [] } "NoDir")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 21 1158 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1158 21 1158 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 23 1158 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 23 1158 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 23 1158 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 23 1158 30 , srcInfoPoints = [] } "unqtDot"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 31 1158 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1158 31 1158 37 , srcInfoPoints = [] } "none" "none")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 1 1170 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1160 1 1160 9 , SrcSpan "tests/examples/Attributes.hs" 1160 27 1160 32 , SrcSpan "tests/examples/Attributes.hs" 1161 5 1161 5 , SrcSpan "tests/examples/Attributes.hs" 1170 1 1170 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 10 1160 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 10 1160 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 10 1160 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 10 1160 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 10 1160 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 19 1160 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 19 1160 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1160 19 1160 26 , srcInfoPoints = [] } "DirType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 5 1165 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 5 1165 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 5 1161 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 5 1161 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 15 1165 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1161 15 1161 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 17 1165 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 17 1161 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 17 1161 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 17 1161 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 23 1165 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1161 23 1161 24 , SrcSpan "tests/examples/Attributes.hs" 1162 23 1162 24 , SrcSpan "tests/examples/Attributes.hs" 1163 23 1163 24 , SrcSpan "tests/examples/Attributes.hs" 1164 23 1164 24 , SrcSpan "tests/examples/Attributes.hs" 1165 23 1165 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 25 1161 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 25 1161 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 25 1161 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 25 1161 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 25 1161 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 35 1161 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 35 1161 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 35 1161 42 , srcInfoPoints = [] } "Forward")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 43 1161 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1161 43 1161 52 , srcInfoPoints = [] } "forward" "forward")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 25 1162 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 25 1162 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 25 1162 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 25 1162 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 25 1162 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 35 1162 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 35 1162 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 35 1162 39 , srcInfoPoints = [] } "Back")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 40 1162 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1162 40 1162 46 , srcInfoPoints = [] } "back" "back")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 25 1163 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 25 1163 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 25 1163 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 25 1163 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 25 1163 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 35 1163 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 35 1163 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 35 1163 39 , srcInfoPoints = [] } "Both")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 40 1163 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1163 40 1163 46 , srcInfoPoints = [] } "both" "both")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 25 1164 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 25 1164 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 25 1164 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 25 1164 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 25 1164 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 35 1164 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 35 1164 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 35 1164 40 , srcInfoPoints = [] } "NoDir")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 41 1164 47 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1164 41 1164 47 , srcInfoPoints = [] } "none" "none")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1170 1 1173 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1170 20 1170 21 , SrcSpan "tests/examples/Attributes.hs" 1171 20 1171 21 , SrcSpan "tests/examples/Attributes.hs" 1172 20 1172 21 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1170 1 1170 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1170 6 1170 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1170 6 1170 19 , srcInfoPoints = [] } "DEConstraints")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1170 22 1170 37 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1170 22 1170 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1170 22 1170 37 , srcInfoPoints = [] } "EdgeConstraints") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1171 22 1171 35 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1171 22 1171 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1171 22 1171 35 , srcInfoPoints = [] } "NoConstraints") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1172 22 1172 37 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1172 22 1172 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1172 22 1172 37 , srcInfoPoints = [] } "HierConstraints") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 22 1173 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1173 22 1173 30 , SrcSpan "tests/examples/Attributes.hs" 1173 31 1173 32 , SrcSpan "tests/examples/Attributes.hs" 1173 34 1173 35 , SrcSpan "tests/examples/Attributes.hs" 1173 39 1173 40 , SrcSpan "tests/examples/Attributes.hs" 1173 48 1173 49 , SrcSpan "tests/examples/Attributes.hs" 1173 54 1173 55 , SrcSpan "tests/examples/Attributes.hs" 1173 60 1173 61 , SrcSpan "tests/examples/Attributes.hs" 1173 66 1173 67 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 32 1173 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 32 1173 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 32 1173 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 32 1173 34 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 36 1173 39 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 36 1173 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 36 1173 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 36 1173 39 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 41 1173 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 41 1173 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 41 1173 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 41 1173 48 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 50 1173 54 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 50 1173 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 50 1173 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 50 1173 54 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 56 1173 60 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 56 1173 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 56 1173 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 56 1173 60 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 62 1173 66 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 62 1173 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 62 1173 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1173 62 1173 66 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 1 1180 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1175 1 1175 9 , SrcSpan "tests/examples/Attributes.hs" 1175 33 1175 38 , SrcSpan "tests/examples/Attributes.hs" 1176 5 1176 5 , SrcSpan "tests/examples/Attributes.hs" 1177 5 1177 5 , SrcSpan "tests/examples/Attributes.hs" 1178 5 1178 5 , SrcSpan "tests/examples/Attributes.hs" 1180 1 1180 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 10 1175 32 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 10 1175 32 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 10 1175 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 10 1175 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 10 1175 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 19 1175 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 19 1175 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1175 19 1175 32 , srcInfoPoints = [] } "DEConstraints"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 5 1178 42 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 5 1178 42 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 5 1176 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 5 1176 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 13 1176 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 13 1176 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 13 1176 28 , srcInfoPoints = [] } "EdgeConstraints")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 29 1176 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1176 29 1176 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 31 1176 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 31 1176 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 31 1176 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 31 1176 38 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 39 1176 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 39 1176 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1176 39 1176 43 , srcInfoPoints = [] } "True"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 5 1177 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 5 1177 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 13 1177 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 13 1177 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 13 1177 26 , srcInfoPoints = [] } "NoConstraints")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 29 1177 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1177 29 1177 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 31 1177 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 31 1177 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 31 1177 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 31 1177 38 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 39 1177 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 39 1177 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1177 39 1177 44 , srcInfoPoints = [] } "False"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 5 1178 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 5 1178 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 13 1178 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 13 1178 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 13 1178 28 , srcInfoPoints = [] } "HierConstraints")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 29 1178 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1178 29 1178 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 31 1178 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 31 1178 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 31 1178 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 31 1178 35 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 36 1178 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1178 36 1178 42 , srcInfoPoints = [] } "hier" "hier")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 1 1188 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1180 1 1180 9 , SrcSpan "tests/examples/Attributes.hs" 1180 33 1180 38 , SrcSpan "tests/examples/Attributes.hs" 1181 5 1181 5 , SrcSpan "tests/examples/Attributes.hs" 1188 1 1188 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 10 1180 32 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 10 1180 32 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 10 1180 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 10 1180 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 10 1180 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 19 1180 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 19 1180 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1180 19 1180 32 , srcInfoPoints = [] } "DEConstraints"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 5 1183 49 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 5 1183 49 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 5 1181 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 5 1181 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 15 1183 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1181 15 1181 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 17 1183 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 17 1181 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 17 1181 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 17 1181 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 17 1181 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 17 1181 22 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 23 1181 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1181 23 1181 24 , SrcSpan "tests/examples/Attributes.hs" 1181 58 1181 59 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 24 1181 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 24 1181 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 24 1181 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 24 1181 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 24 1181 28 , srcInfoPoints = [] } "bool"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 29 1181 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 29 1181 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 29 1181 42 , srcInfoPoints = [] } "NoConstraints")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 43 1181 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 43 1181 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 43 1181 58 , srcInfoPoints = [] } "EdgeConstraints")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 60 1181 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 60 1181 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1181 60 1181 65 , srcInfoPoints = [] } "parse")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1182 17 1182 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1182 17 1182 18 , SrcSpan "tests/examples/Attributes.hs" 1182 18 1182 24 , SrcSpan "tests/examples/Attributes.hs" 1182 24 1182 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1182 17 1182 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1182 17 1182 18 , SrcSpan "tests/examples/Attributes.hs" 1182 18 1182 24 , SrcSpan "tests/examples/Attributes.hs" 1182 24 1182 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1182 18 1182 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 17 1183 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 17 1183 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 17 1183 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 17 1183 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 17 1183 26 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 27 1183 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 27 1183 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 27 1183 42 , srcInfoPoints = [] } "HierConstraints")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 43 1183 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1183 43 1183 49 , srcInfoPoints = [] } "hier" "hier"))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 1 1190 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1188 13 1188 14 , SrcSpan "tests/examples/Attributes.hs" 1189 13 1189 14 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 1 1188 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 6 1188 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 6 1188 12 , srcInfoPoints = [] } "DPoint")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 15 1188 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 15 1188 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 15 1188 19 , srcInfoPoints = [] } "DVal") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 20 1188 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 20 1188 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1188 20 1188 26 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1189 15 1189 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1189 15 1189 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1189 15 1189 19 , srcInfoPoints = [] } "PVal") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1189 20 1189 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1189 20 1189 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1189 20 1189 25 , srcInfoPoints = [] } "Point")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 14 1190 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1190 14 1190 22 , SrcSpan "tests/examples/Attributes.hs" 1190 23 1190 24 , SrcSpan "tests/examples/Attributes.hs" 1190 26 1190 27 , SrcSpan "tests/examples/Attributes.hs" 1190 31 1190 32 , SrcSpan "tests/examples/Attributes.hs" 1190 37 1190 38 , SrcSpan "tests/examples/Attributes.hs" 1190 43 1190 44 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 24 1190 26 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 24 1190 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 24 1190 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 24 1190 26 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 28 1190 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 28 1190 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 28 1190 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 28 1190 31 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 33 1190 37 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 33 1190 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 33 1190 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 33 1190 37 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 39 1190 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 39 1190 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 39 1190 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1190 39 1190 43 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 1 1199 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1192 1 1192 9 , SrcSpan "tests/examples/Attributes.hs" 1192 26 1192 31 , SrcSpan "tests/examples/Attributes.hs" 1193 5 1193 5 , SrcSpan "tests/examples/Attributes.hs" 1194 5 1194 5 , SrcSpan "tests/examples/Attributes.hs" 1196 5 1196 5 , SrcSpan "tests/examples/Attributes.hs" 1197 5 1197 5 , SrcSpan "tests/examples/Attributes.hs" 1199 1 1199 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 10 1192 25 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 10 1192 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 10 1192 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 10 1192 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 10 1192 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 19 1192 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 19 1192 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1192 19 1192 25 , srcInfoPoints = [] } "DPoint"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 5 1194 33 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 5 1194 33 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 5 1193 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 5 1193 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 13 1193 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1193 13 1193 14 , SrcSpan "tests/examples/Attributes.hs" 1193 20 1193 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 14 1193 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 14 1193 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 14 1193 18 , srcInfoPoints = [] } "DVal")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 19 1193 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 19 1193 20 , srcInfoPoints = [] } "d") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 22 1193 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1193 22 1193 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 24 1193 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 24 1193 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 24 1193 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 24 1193 31 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 32 1193 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 32 1193 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1193 32 1193 33 , srcInfoPoints = [] } "d"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 5 1194 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 5 1194 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 13 1194 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1194 13 1194 14 , SrcSpan "tests/examples/Attributes.hs" 1194 20 1194 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 14 1194 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 14 1194 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 14 1194 18 , srcInfoPoints = [] } "PVal")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 19 1194 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 19 1194 20 , srcInfoPoints = [] } "p") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 22 1194 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1194 22 1194 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 24 1194 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 24 1194 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 24 1194 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 24 1194 31 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 32 1194 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 32 1194 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1194 32 1194 33 , srcInfoPoints = [] } "p"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 5 1197 29 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 5 1197 29 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 5 1196 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 5 1196 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 11 1196 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1196 11 1196 12 , SrcSpan "tests/examples/Attributes.hs" 1196 18 1196 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 12 1196 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 12 1196 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 12 1196 16 , srcInfoPoints = [] } "DVal")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 17 1196 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 17 1196 18 , srcInfoPoints = [] } "d") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 20 1196 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1196 20 1196 21 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 22 1196 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 22 1196 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 22 1196 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 22 1196 27 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 28 1196 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 28 1196 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1196 28 1196 29 , srcInfoPoints = [] } "d"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 5 1197 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 5 1197 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 11 1197 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1197 11 1197 12 , SrcSpan "tests/examples/Attributes.hs" 1197 18 1197 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 12 1197 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 12 1197 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 12 1197 16 , srcInfoPoints = [] } "PVal")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 17 1197 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 17 1197 18 , srcInfoPoints = [] } "p") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 20 1197 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1197 20 1197 21 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 22 1197 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 22 1197 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 22 1197 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 22 1197 27 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 28 1197 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 28 1197 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1197 28 1197 29 , srcInfoPoints = [] } "p"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 1 1210 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1199 1 1199 9 , SrcSpan "tests/examples/Attributes.hs" 1199 26 1199 31 , SrcSpan "tests/examples/Attributes.hs" 1200 5 1200 5 , SrcSpan "tests/examples/Attributes.hs" 1204 5 1204 5 , SrcSpan "tests/examples/Attributes.hs" 1210 1 1210 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 10 1199 25 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 10 1199 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 10 1199 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 10 1199 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 10 1199 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 19 1199 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 19 1199 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1199 19 1199 25 , srcInfoPoints = [] } "DPoint"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 5 1202 37 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 5 1202 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 5 1200 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 5 1200 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 15 1202 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1200 15 1200 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 17 1202 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 17 1200 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 17 1200 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 17 1200 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 17 1200 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 17 1200 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 23 1200 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 23 1200 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 23 1200 27 , srcInfoPoints = [] } "PVal")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 28 1200 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 28 1200 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1200 28 1200 37 , srcInfoPoints = [] } "parseUnqt")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1201 17 1201 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1201 17 1201 18 , SrcSpan "tests/examples/Attributes.hs" 1201 18 1201 24 , SrcSpan "tests/examples/Attributes.hs" 1201 24 1201 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1201 17 1201 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1201 17 1201 18 , SrcSpan "tests/examples/Attributes.hs" 1201 18 1201 24 , SrcSpan "tests/examples/Attributes.hs" 1201 24 1201 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1201 18 1201 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 17 1202 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 17 1202 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 17 1202 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 17 1202 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 17 1202 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 23 1202 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 23 1202 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 23 1202 27 , srcInfoPoints = [] } "DVal")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 28 1202 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 28 1202 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1202 28 1202 37 , srcInfoPoints = [] } "parseUnqt")))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 5 1206 29 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 5 1206 29 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 5 1204 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 5 1204 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 11 1206 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1204 11 1204 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 13 1206 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 13 1204 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 13 1204 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 13 1204 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 13 1204 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 13 1204 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 19 1204 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 19 1204 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 19 1204 23 , srcInfoPoints = [] } "PVal")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 24 1204 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 24 1204 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1204 24 1204 29 , srcInfoPoints = [] } "parse")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1205 13 1205 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1205 13 1205 14 , SrcSpan "tests/examples/Attributes.hs" 1205 14 1205 20 , SrcSpan "tests/examples/Attributes.hs" 1205 20 1205 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1205 13 1205 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1205 13 1205 14 , SrcSpan "tests/examples/Attributes.hs" 1205 14 1205 20 , SrcSpan "tests/examples/Attributes.hs" 1205 20 1205 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1205 14 1205 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 13 1206 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 13 1206 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 13 1206 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 13 1206 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 13 1206 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 19 1206 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 19 1206 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 19 1206 23 , srcInfoPoints = [] } "DVal")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 24 1206 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 24 1206 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1206 24 1206 29 , srcInfoPoints = [] } "parse")))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1210 1 1214 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1210 15 1210 16 , SrcSpan "tests/examples/Attributes.hs" 1211 15 1211 16 , SrcSpan "tests/examples/Attributes.hs" 1212 15 1212 16 , SrcSpan "tests/examples/Attributes.hs" 1213 15 1213 16 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1210 1 1210 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1210 6 1210 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1210 6 1210 14 , srcInfoPoints = [] } "ModeType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1210 17 1210 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1210 17 1210 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1210 17 1210 22 , srcInfoPoints = [] } "Major") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1211 17 1211 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1211 17 1211 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1211 17 1211 19 , srcInfoPoints = [] } "KK") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1212 17 1212 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1212 17 1212 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1212 17 1212 21 , srcInfoPoints = [] } "Hier") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1213 17 1213 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1213 17 1213 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1213 17 1213 22 , srcInfoPoints = [] } "IpSep") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 17 1214 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1214 17 1214 25 , SrcSpan "tests/examples/Attributes.hs" 1214 26 1214 27 , SrcSpan "tests/examples/Attributes.hs" 1214 29 1214 30 , SrcSpan "tests/examples/Attributes.hs" 1214 34 1214 35 , SrcSpan "tests/examples/Attributes.hs" 1214 43 1214 44 , SrcSpan "tests/examples/Attributes.hs" 1214 49 1214 50 , SrcSpan "tests/examples/Attributes.hs" 1214 55 1214 56 , SrcSpan "tests/examples/Attributes.hs" 1214 61 1214 62 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 27 1214 29 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 27 1214 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 27 1214 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 27 1214 29 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 31 1214 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 31 1214 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 31 1214 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 31 1214 34 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 36 1214 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 36 1214 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 36 1214 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 36 1214 43 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 45 1214 49 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 45 1214 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 45 1214 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 45 1214 49 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 51 1214 55 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 51 1214 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 51 1214 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 51 1214 55 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 57 1214 61 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 57 1214 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 57 1214 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1214 57 1214 61 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 1 1222 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1216 1 1216 9 , SrcSpan "tests/examples/Attributes.hs" 1216 28 1216 33 , SrcSpan "tests/examples/Attributes.hs" 1217 5 1217 5 , SrcSpan "tests/examples/Attributes.hs" 1218 5 1218 5 , SrcSpan "tests/examples/Attributes.hs" 1219 5 1219 5 , SrcSpan "tests/examples/Attributes.hs" 1220 5 1220 5 , SrcSpan "tests/examples/Attributes.hs" 1222 1 1222 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 10 1216 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 10 1216 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 10 1216 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 10 1216 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 10 1216 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 19 1216 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 19 1216 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1216 19 1216 27 , srcInfoPoints = [] } "ModeType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 5 1220 33 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 5 1220 33 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 5 1217 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 5 1217 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 13 1217 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 13 1217 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 13 1217 18 , srcInfoPoints = [] } "Major")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 19 1217 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1217 19 1217 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 21 1217 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 21 1217 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 21 1217 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 21 1217 25 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 26 1217 33 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1217 26 1217 33 , srcInfoPoints = [] } "major" "major")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 5 1218 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 5 1218 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 13 1218 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 13 1218 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 13 1218 15 , srcInfoPoints = [] } "KK")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 19 1218 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1218 19 1218 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 21 1218 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 21 1218 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 21 1218 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 21 1218 25 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 26 1218 30 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1218 26 1218 30 , srcInfoPoints = [] } "KK" "KK")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 5 1219 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 5 1219 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 13 1219 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 13 1219 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 13 1219 17 , srcInfoPoints = [] } "Hier")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 19 1219 32 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1219 19 1219 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 21 1219 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 21 1219 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 21 1219 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 21 1219 25 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 26 1219 32 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1219 26 1219 32 , srcInfoPoints = [] } "hier" "hier")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 5 1220 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 5 1220 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 13 1220 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 13 1220 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 13 1220 18 , srcInfoPoints = [] } "IpSep")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 19 1220 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1220 19 1220 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 21 1220 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 21 1220 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 21 1220 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 21 1220 25 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 26 1220 33 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1220 26 1220 33 , srcInfoPoints = [] } "ipsep" "ipsep")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 1 1231 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1222 1 1222 9 , SrcSpan "tests/examples/Attributes.hs" 1222 28 1222 33 , SrcSpan "tests/examples/Attributes.hs" 1223 5 1223 5 , SrcSpan "tests/examples/Attributes.hs" 1231 1 1231 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 10 1222 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 10 1222 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 10 1222 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 10 1222 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 10 1222 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 19 1222 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 19 1222 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1222 19 1222 27 , srcInfoPoints = [] } "ModeType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 5 1227 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 5 1227 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 5 1223 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 5 1223 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 15 1227 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1223 15 1223 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 17 1227 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 17 1223 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 17 1223 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 17 1223 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 23 1227 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1223 23 1223 24 , SrcSpan "tests/examples/Attributes.hs" 1224 23 1224 24 , SrcSpan "tests/examples/Attributes.hs" 1225 23 1225 24 , SrcSpan "tests/examples/Attributes.hs" 1226 23 1226 24 , SrcSpan "tests/examples/Attributes.hs" 1227 23 1227 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 25 1223 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 25 1223 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 25 1223 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 25 1223 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 25 1223 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 35 1223 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 35 1223 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 35 1223 40 , srcInfoPoints = [] } "Major")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 41 1223 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1223 41 1223 48 , srcInfoPoints = [] } "major" "major")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 25 1224 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 25 1224 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 25 1224 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 25 1224 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 25 1224 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 35 1224 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 35 1224 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 35 1224 37 , srcInfoPoints = [] } "KK")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 38 1224 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1224 38 1224 42 , srcInfoPoints = [] } "KK" "KK")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 25 1225 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 25 1225 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 25 1225 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 25 1225 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 25 1225 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 35 1225 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 35 1225 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 35 1225 39 , srcInfoPoints = [] } "Hier")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 40 1225 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1225 40 1225 46 , srcInfoPoints = [] } "hier" "hier")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 25 1226 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 25 1226 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 25 1226 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 25 1226 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 25 1226 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 35 1226 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 35 1226 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 35 1226 40 , srcInfoPoints = [] } "IpSep")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 41 1226 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1226 41 1226 48 , srcInfoPoints = [] } "ipsep" "ipsep")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1231 1 1234 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1231 12 1231 13 , SrcSpan "tests/examples/Attributes.hs" 1232 12 1232 13 , SrcSpan "tests/examples/Attributes.hs" 1233 12 1233 13 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1231 1 1231 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1231 6 1231 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1231 6 1231 11 , srcInfoPoints = [] } "Model")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1231 14 1231 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1231 14 1231 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1231 14 1231 23 , srcInfoPoints = [] } "ShortPath") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1232 14 1232 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1232 14 1232 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1232 14 1232 20 , srcInfoPoints = [] } "SubSet") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1233 14 1233 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1233 14 1233 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1233 14 1233 21 , srcInfoPoints = [] } "Circuit") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 14 1234 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1234 14 1234 22 , SrcSpan "tests/examples/Attributes.hs" 1234 23 1234 24 , SrcSpan "tests/examples/Attributes.hs" 1234 26 1234 27 , SrcSpan "tests/examples/Attributes.hs" 1234 31 1234 32 , SrcSpan "tests/examples/Attributes.hs" 1234 40 1234 41 , SrcSpan "tests/examples/Attributes.hs" 1234 46 1234 47 , SrcSpan "tests/examples/Attributes.hs" 1234 52 1234 53 , SrcSpan "tests/examples/Attributes.hs" 1234 58 1234 59 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 24 1234 26 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 24 1234 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 24 1234 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 24 1234 26 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 28 1234 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 28 1234 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 28 1234 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 28 1234 31 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 33 1234 40 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 33 1234 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 33 1234 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 33 1234 40 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 42 1234 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 42 1234 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 42 1234 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 42 1234 46 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 48 1234 52 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 48 1234 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 48 1234 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 48 1234 52 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 54 1234 58 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 54 1234 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 54 1234 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1234 54 1234 58 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 1 1241 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1236 1 1236 9 , SrcSpan "tests/examples/Attributes.hs" 1236 25 1236 30 , SrcSpan "tests/examples/Attributes.hs" 1237 5 1237 5 , SrcSpan "tests/examples/Attributes.hs" 1238 5 1238 5 , SrcSpan "tests/examples/Attributes.hs" 1239 5 1239 5 , SrcSpan "tests/examples/Attributes.hs" 1241 1 1241 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 10 1236 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 10 1236 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 10 1236 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 10 1236 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 10 1236 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 19 1236 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 19 1236 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1236 19 1236 24 , srcInfoPoints = [] } "Model"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 5 1239 39 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 5 1239 39 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 5 1237 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 5 1237 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 13 1237 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 13 1237 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 13 1237 22 , srcInfoPoints = [] } "ShortPath")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 23 1237 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1237 23 1237 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 25 1237 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 25 1237 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 25 1237 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 25 1237 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 30 1237 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1237 30 1237 41 , srcInfoPoints = [] } "shortpath" "shortpath")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 5 1238 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 5 1238 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 13 1238 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 13 1238 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 13 1238 19 , srcInfoPoints = [] } "SubSet")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 23 1238 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1238 23 1238 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 25 1238 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 25 1238 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 25 1238 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 25 1238 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 30 1238 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1238 30 1238 38 , srcInfoPoints = [] } "subset" "subset")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 5 1239 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 5 1239 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 13 1239 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 13 1239 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 13 1239 20 , srcInfoPoints = [] } "Circuit")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 23 1239 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1239 23 1239 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 25 1239 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 25 1239 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 25 1239 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 25 1239 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 30 1239 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1239 30 1239 39 , srcInfoPoints = [] } "circuit" "circuit")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 1 1249 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1241 1 1241 9 , SrcSpan "tests/examples/Attributes.hs" 1241 25 1241 30 , SrcSpan "tests/examples/Attributes.hs" 1242 5 1242 5 , SrcSpan "tests/examples/Attributes.hs" 1249 1 1249 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 10 1241 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 10 1241 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 10 1241 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 10 1241 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 10 1241 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 19 1241 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 19 1241 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1241 19 1241 24 , srcInfoPoints = [] } "Model"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 5 1245 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 5 1245 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 5 1242 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 5 1242 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 15 1245 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1242 15 1242 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 17 1245 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 17 1242 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 17 1242 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 17 1242 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 23 1245 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1242 23 1242 24 , SrcSpan "tests/examples/Attributes.hs" 1243 23 1243 24 , SrcSpan "tests/examples/Attributes.hs" 1244 23 1244 24 , SrcSpan "tests/examples/Attributes.hs" 1245 23 1245 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 25 1242 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 25 1242 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 25 1242 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 25 1242 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 25 1242 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 35 1242 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 35 1242 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 35 1242 44 , srcInfoPoints = [] } "ShortPath")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 45 1242 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1242 45 1242 56 , srcInfoPoints = [] } "shortpath" "shortpath")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 25 1243 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 25 1243 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 25 1243 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 25 1243 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 25 1243 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 35 1243 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 35 1243 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 35 1243 41 , srcInfoPoints = [] } "SubSet")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 42 1243 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1243 42 1243 50 , srcInfoPoints = [] } "subset" "subset")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 25 1244 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 25 1244 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 25 1244 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 25 1244 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 25 1244 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 35 1244 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 35 1244 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 35 1244 42 , srcInfoPoints = [] } "Circuit")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 43 1244 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1244 43 1244 52 , srcInfoPoints = [] } "circuit" "circuit")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 1 1251 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1249 12 1249 13 , SrcSpan "tests/examples/Attributes.hs" 1250 12 1250 13 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 1 1249 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 6 1249 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 6 1249 11 , srcInfoPoints = [] } "Label")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 14 1249 32 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 14 1249 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 14 1249 22 , srcInfoPoints = [] } "StrLabel") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 23 1249 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 23 1249 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1249 23 1249 32 , srcInfoPoints = [] } "EscString")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1250 14 1250 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1250 14 1250 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1250 14 1250 22 , srcInfoPoints = [] } "URLLabel") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1250 23 1250 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1250 23 1250 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1250 23 1250 26 , srcInfoPoints = [] } "URL")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 14 1251 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1251 14 1251 22 , SrcSpan "tests/examples/Attributes.hs" 1251 23 1251 24 , SrcSpan "tests/examples/Attributes.hs" 1251 26 1251 27 , SrcSpan "tests/examples/Attributes.hs" 1251 31 1251 32 , SrcSpan "tests/examples/Attributes.hs" 1251 37 1251 38 , SrcSpan "tests/examples/Attributes.hs" 1251 43 1251 44 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 24 1251 26 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 24 1251 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 24 1251 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 24 1251 26 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 28 1251 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 28 1251 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 28 1251 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 28 1251 31 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 33 1251 37 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 33 1251 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 33 1251 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 33 1251 37 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 39 1251 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 39 1251 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 39 1251 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1251 39 1251 43 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 1 1260 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1253 1 1253 9 , SrcSpan "tests/examples/Attributes.hs" 1253 25 1253 30 , SrcSpan "tests/examples/Attributes.hs" 1254 5 1254 5 , SrcSpan "tests/examples/Attributes.hs" 1255 5 1255 5 , SrcSpan "tests/examples/Attributes.hs" 1257 5 1257 5 , SrcSpan "tests/examples/Attributes.hs" 1258 5 1258 5 , SrcSpan "tests/examples/Attributes.hs" 1260 1 1260 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 10 1253 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 10 1253 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 10 1253 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 10 1253 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 10 1253 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 19 1253 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 19 1253 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1253 19 1253 24 , srcInfoPoints = [] } "Label"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 5 1255 37 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 5 1255 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 5 1254 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 5 1254 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 13 1254 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1254 13 1254 14 , SrcSpan "tests/examples/Attributes.hs" 1254 24 1254 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 14 1254 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 14 1254 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 14 1254 22 , srcInfoPoints = [] } "StrLabel")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 23 1254 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 23 1254 24 , srcInfoPoints = [] } "s") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 26 1254 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1254 26 1254 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 28 1254 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 28 1254 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 28 1254 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 28 1254 35 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 36 1254 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 36 1254 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1254 36 1254 37 , srcInfoPoints = [] } "s"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 5 1255 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 5 1255 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 13 1255 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1255 13 1255 14 , SrcSpan "tests/examples/Attributes.hs" 1255 24 1255 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 14 1255 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 14 1255 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 14 1255 22 , srcInfoPoints = [] } "URLLabel")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 23 1255 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 23 1255 24 , srcInfoPoints = [] } "u") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 26 1255 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1255 26 1255 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 28 1255 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 28 1255 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 28 1255 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 28 1255 35 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 36 1255 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 36 1255 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1255 36 1255 37 , srcInfoPoints = [] } "u"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 5 1258 33 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 5 1258 33 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 5 1257 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 5 1257 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 11 1257 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1257 11 1257 12 , SrcSpan "tests/examples/Attributes.hs" 1257 22 1257 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 12 1257 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 12 1257 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 12 1257 20 , srcInfoPoints = [] } "StrLabel")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 21 1257 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 21 1257 22 , srcInfoPoints = [] } "s") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 24 1257 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1257 24 1257 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 26 1257 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 26 1257 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 26 1257 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 26 1257 31 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 32 1257 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 32 1257 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1257 32 1257 33 , srcInfoPoints = [] } "s"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 5 1258 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 5 1258 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 11 1258 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1258 11 1258 12 , SrcSpan "tests/examples/Attributes.hs" 1258 22 1258 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 12 1258 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 12 1258 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 12 1258 20 , srcInfoPoints = [] } "URLLabel")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 21 1258 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 21 1258 22 , srcInfoPoints = [] } "u") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 24 1258 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1258 24 1258 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 26 1258 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 26 1258 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 26 1258 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 26 1258 31 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 32 1258 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 32 1258 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1258 32 1258 33 , srcInfoPoints = [] } "u"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 1 1271 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1260 1 1260 9 , SrcSpan "tests/examples/Attributes.hs" 1260 25 1260 30 , SrcSpan "tests/examples/Attributes.hs" 1261 5 1261 5 , SrcSpan "tests/examples/Attributes.hs" 1265 5 1265 5 , SrcSpan "tests/examples/Attributes.hs" 1271 1 1271 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 10 1260 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 10 1260 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 10 1260 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 10 1260 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 10 1260 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 19 1260 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 19 1260 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1260 19 1260 24 , srcInfoPoints = [] } "Label"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 5 1263 41 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 5 1263 41 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 5 1261 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 5 1261 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 15 1263 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1261 15 1261 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 17 1263 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 17 1261 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 17 1261 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 17 1261 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 17 1261 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 17 1261 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 23 1261 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 23 1261 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 23 1261 31 , srcInfoPoints = [] } "StrLabel")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 32 1261 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 32 1261 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1261 32 1261 41 , srcInfoPoints = [] } "parseUnqt")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1262 17 1262 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1262 17 1262 18 , SrcSpan "tests/examples/Attributes.hs" 1262 18 1262 24 , SrcSpan "tests/examples/Attributes.hs" 1262 24 1262 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1262 17 1262 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1262 17 1262 18 , SrcSpan "tests/examples/Attributes.hs" 1262 18 1262 24 , SrcSpan "tests/examples/Attributes.hs" 1262 24 1262 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1262 18 1262 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 17 1263 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 17 1263 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 17 1263 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 17 1263 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 17 1263 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 23 1263 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 23 1263 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 23 1263 31 , srcInfoPoints = [] } "URLLabel")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 32 1263 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 32 1263 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1263 32 1263 41 , srcInfoPoints = [] } "parseUnqt")))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 5 1267 33 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 5 1267 33 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 5 1265 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 5 1265 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 11 1267 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1265 11 1265 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 13 1267 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 13 1265 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 13 1265 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 13 1265 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 13 1265 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 13 1265 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 19 1265 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 19 1265 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 19 1265 27 , srcInfoPoints = [] } "StrLabel")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 28 1265 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 28 1265 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1265 28 1265 33 , srcInfoPoints = [] } "parse")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1266 13 1266 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1266 13 1266 14 , SrcSpan "tests/examples/Attributes.hs" 1266 14 1266 20 , SrcSpan "tests/examples/Attributes.hs" 1266 20 1266 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1266 13 1266 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1266 13 1266 14 , SrcSpan "tests/examples/Attributes.hs" 1266 14 1266 20 , SrcSpan "tests/examples/Attributes.hs" 1266 20 1266 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1266 14 1266 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 13 1267 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 13 1267 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 13 1267 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 13 1267 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 13 1267 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 19 1267 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 19 1267 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 19 1267 27 , srcInfoPoints = [] } "URLLabel")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 28 1267 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 28 1267 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1267 28 1267 33 , srcInfoPoints = [] } "parse")))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 1 1273 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1271 12 1271 13 , SrcSpan "tests/examples/Attributes.hs" 1272 12 1272 13 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 1 1271 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 6 1271 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 6 1271 11 , srcInfoPoints = [] } "Point")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 14 1271 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 14 1271 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 14 1271 19 , srcInfoPoints = [] } "Point") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 20 1271 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 20 1271 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 20 1271 23 , srcInfoPoints = [] } "Int")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 24 1271 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 24 1271 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1271 24 1271 27 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 14 1272 34 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 14 1272 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 14 1272 20 , srcInfoPoints = [] } "PointD") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 21 1272 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 21 1272 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 21 1272 27 , srcInfoPoints = [] } "Double")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 28 1272 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 28 1272 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1272 28 1272 34 , srcInfoPoints = [] } "Double")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 14 1273 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1273 14 1273 22 , SrcSpan "tests/examples/Attributes.hs" 1273 23 1273 24 , SrcSpan "tests/examples/Attributes.hs" 1273 26 1273 27 , SrcSpan "tests/examples/Attributes.hs" 1273 31 1273 32 , SrcSpan "tests/examples/Attributes.hs" 1273 37 1273 38 , SrcSpan "tests/examples/Attributes.hs" 1273 43 1273 44 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 24 1273 26 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 24 1273 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 24 1273 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 24 1273 26 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 28 1273 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 28 1273 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 28 1273 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 28 1273 31 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 33 1273 37 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 33 1273 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 33 1273 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 33 1273 37 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 39 1273 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 39 1273 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 39 1273 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1273 39 1273 43 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 1 1285 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1275 1 1275 9 , SrcSpan "tests/examples/Attributes.hs" 1275 25 1275 30 , SrcSpan "tests/examples/Attributes.hs" 1276 5 1276 5 , SrcSpan "tests/examples/Attributes.hs" 1277 5 1277 5 , SrcSpan "tests/examples/Attributes.hs" 1279 5 1279 5 , SrcSpan "tests/examples/Attributes.hs" 1281 5 1281 5 , SrcSpan "tests/examples/Attributes.hs" 1283 5 1283 5 , SrcSpan "tests/examples/Attributes.hs" 1285 1 1285 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 10 1275 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 10 1275 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 10 1275 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 10 1275 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 10 1275 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 19 1275 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 19 1275 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1275 19 1275 24 , srcInfoPoints = [] } "Point"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 5 1277 40 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 5 1277 40 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 5 1276 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 5 1276 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 13 1276 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1276 13 1276 14 , SrcSpan "tests/examples/Attributes.hs" 1276 24 1276 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 14 1276 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 14 1276 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 14 1276 19 , srcInfoPoints = [] } "Point")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 21 1276 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 21 1276 22 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 23 1276 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 23 1276 24 , srcInfoPoints = [] } "y") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 26 1276 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1276 26 1276 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 28 1276 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 28 1276 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 28 1276 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 28 1276 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 28 1276 36 , srcInfoPoints = [] } "commaDel"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 37 1276 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 37 1276 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 37 1276 38 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 39 1276 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 39 1276 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1276 39 1276 40 , srcInfoPoints = [] } "y"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 5 1277 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 5 1277 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 13 1277 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1277 13 1277 14 , SrcSpan "tests/examples/Attributes.hs" 1277 24 1277 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 14 1277 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 14 1277 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 14 1277 20 , srcInfoPoints = [] } "PointD")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 21 1277 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 21 1277 22 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 23 1277 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 23 1277 24 , srcInfoPoints = [] } "y") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 26 1277 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1277 26 1277 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 28 1277 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 28 1277 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 28 1277 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 28 1277 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 28 1277 36 , srcInfoPoints = [] } "commaDel"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 37 1277 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 37 1277 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 37 1277 38 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 39 1277 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 39 1277 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1277 39 1277 40 , srcInfoPoints = [] } "y"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 5 1279 35 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 5 1279 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 5 1279 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 5 1279 10 , srcInfoPoints = [] } "toDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 11 1279 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1279 11 1279 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 13 1279 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 13 1279 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 13 1279 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 13 1279 25 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 26 1279 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 26 1279 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 26 1279 27 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 28 1279 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 28 1279 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1279 28 1279 35 , srcInfoPoints = [] } "unqtDot"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 5 1281 39 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 5 1281 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 5 1281 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 5 1281 18 , srcInfoPoints = [] } "unqtListToDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 19 1281 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1281 19 1281 20 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 21 1281 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 21 1281 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 21 1281 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 21 1281 25 , srcInfoPoints = [] } "hsep"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 26 1281 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 26 1281 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 26 1281 27 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 28 1281 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 28 1281 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 28 1281 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 28 1281 31 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 32 1281 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 32 1281 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1281 32 1281 39 , srcInfoPoints = [] } "unqtDot")))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 5 1283 45 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 5 1283 45 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 5 1283 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 5 1283 14 , srcInfoPoints = [] } "listToDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 15 1283 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1283 15 1283 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 17 1283 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 17 1283 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 17 1283 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 17 1283 29 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 30 1283 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 30 1283 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 30 1283 31 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 32 1283 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 32 1283 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1283 32 1283 45 , srcInfoPoints = [] } "unqtListToDot"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 1 1307 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1285 1 1285 9 , SrcSpan "tests/examples/Attributes.hs" 1285 25 1285 30 , SrcSpan "tests/examples/Attributes.hs" 1290 5 1290 5 , SrcSpan "tests/examples/Attributes.hs" 1301 5 1301 5 , SrcSpan "tests/examples/Attributes.hs" 1303 5 1303 5 , SrcSpan "tests/examples/Attributes.hs" 1307 1 1307 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 10 1285 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 10 1285 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 10 1285 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 10 1285 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 10 1285 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 19 1285 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 19 1285 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1285 19 1285 24 , srcInfoPoints = [] } "Point"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 5 1299 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1295 9 1295 14 ] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 5 1299 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1295 9 1295 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 5 1290 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 5 1290 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 15 1294 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1290 15 1290 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 17 1294 52 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 17 1292 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 17 1290 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 17 1290 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1290 17 1290 28 , srcInfoPoints = [] } "intDblPoint"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1291 17 1291 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1291 17 1291 18 , SrcSpan "tests/examples/Attributes.hs" 1291 18 1291 24 , SrcSpan "tests/examples/Attributes.hs" 1291 24 1291 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1291 17 1291 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1291 17 1291 18 , SrcSpan "tests/examples/Attributes.hs" 1291 18 1291 24 , SrcSpan "tests/examples/Attributes.hs" 1291 24 1291 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1291 18 1291 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 17 1292 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 17 1292 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 17 1292 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 17 1292 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 17 1292 22 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 23 1292 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1292 23 1292 24 , SrcSpan "tests/examples/Attributes.hs" 1292 37 1292 38 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 24 1292 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 24 1292 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 24 1292 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 24 1292 31 , srcInfoPoints = [] } "uncurry"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 32 1292 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 32 1292 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 32 1292 37 , srcInfoPoints = [] } "Point")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 40 1292 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 40 1292 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1292 40 1292 52 , srcInfoPoints = [] } "commaSepUnqt"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1293 17 1293 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1293 17 1293 18 , SrcSpan "tests/examples/Attributes.hs" 1293 18 1293 24 , SrcSpan "tests/examples/Attributes.hs" 1293 24 1293 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1293 17 1293 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1293 17 1293 18 , SrcSpan "tests/examples/Attributes.hs" 1293 18 1293 24 , SrcSpan "tests/examples/Attributes.hs" 1293 24 1293 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1293 18 1293 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 17 1294 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 17 1294 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 17 1294 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 17 1294 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 17 1294 22 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 23 1294 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1294 23 1294 24 , SrcSpan "tests/examples/Attributes.hs" 1294 38 1294 39 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 24 1294 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 24 1294 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 24 1294 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 24 1294 31 , srcInfoPoints = [] } "uncurry"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 32 1294 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 32 1294 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 32 1294 38 , srcInfoPoints = [] } "PointD")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 40 1294 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 40 1294 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1294 40 1294 52 , srcInfoPoints = [] } "commaSepUnqt")))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 11 1299 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1296 11 1296 11 , SrcSpan "tests/examples/Attributes.hs" 1298 11 1298 11 , SrcSpan "tests/examples/Attributes.hs" 1299 11 1299 11 , SrcSpan "tests/examples/Attributes.hs" 1301 5 1301 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 11 1297 63 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 11 1296 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 11 1296 22 , srcInfoPoints = [] } "intDblPoint")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 23 1297 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1296 23 1296 24 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 25 1297 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 25 1296 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 25 1296 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 25 1296 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 25 1296 30 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 31 1296 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1296 31 1296 32 , SrcSpan "tests/examples/Attributes.hs" 1296 57 1296 58 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 32 1296 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 32 1296 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 32 1296 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 32 1296 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 32 1296 39 , srcInfoPoints = [] } "uncurry"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 40 1296 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 40 1296 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 40 1296 46 , srcInfoPoints = [] } "PointD")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 47 1296 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 47 1296 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 47 1296 48 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 49 1296 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 49 1296 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 49 1296 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 49 1296 54 , srcInfoPoints = [] } "first"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 55 1296 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 55 1296 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1296 55 1296 57 , srcInfoPoints = [] } "fI"))))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 25 1297 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 25 1297 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 25 1297 26 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 27 1297 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 27 1297 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 27 1297 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 27 1297 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 27 1297 36 , srcInfoPoints = [] } "commaSep'"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 37 1297 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 37 1297 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 37 1297 46 , srcInfoPoints = [] } "parseUnqt")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 47 1297 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 47 1297 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1297 47 1297 63 , srcInfoPoints = [] } "parseStrictFloat")))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 11 1298 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1298 14 1298 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 11 1298 13 , srcInfoPoints = [] } "fI" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 17 1298 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1298 21 1298 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 17 1298 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 17 1298 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 17 1298 20 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 24 1298 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 24 1298 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1298 24 1298 30 , srcInfoPoints = [] } "Double")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1299 11 1299 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1299 11 1299 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1299 11 1299 13 , srcInfoPoints = [] } "fI")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1299 14 1299 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1299 14 1299 15 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1299 16 1299 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1299 16 1299 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1299 16 1299 28 , srcInfoPoints = [] } "fromIntegral")))) Nothing ]))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 5 1301 34 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 5 1301 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 5 1301 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 5 1301 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 11 1301 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1301 11 1301 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 13 1301 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 13 1301 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 13 1301 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 13 1301 24 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 25 1301 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 25 1301 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1301 25 1301 34 , srcInfoPoints = [] } "parseUnqt"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 5 1303 48 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 5 1303 48 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 5 1303 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 5 1303 18 , srcInfoPoints = [] } "parseUnqtList")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 19 1303 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1303 19 1303 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 21 1303 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 21 1303 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 21 1303 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 21 1303 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 21 1303 27 , srcInfoPoints = [] } "sepBy1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 28 1303 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 28 1303 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 28 1303 37 , srcInfoPoints = [] } "parseUnqt")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 38 1303 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 38 1303 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1303 38 1303 48 , srcInfoPoints = [] } "whitespace"))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1307 1 1315 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1307 14 1307 15 , SrcSpan "tests/examples/Attributes.hs" 1308 14 1308 15 , SrcSpan "tests/examples/Attributes.hs" 1309 14 1309 15 , SrcSpan "tests/examples/Attributes.hs" 1310 14 1310 15 , SrcSpan "tests/examples/Attributes.hs" 1311 14 1311 15 , SrcSpan "tests/examples/Attributes.hs" 1312 14 1312 15 , SrcSpan "tests/examples/Attributes.hs" 1313 14 1313 15 , SrcSpan "tests/examples/Attributes.hs" 1314 14 1314 15 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1307 1 1307 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1307 6 1307 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1307 6 1307 13 , srcInfoPoints = [] } "Overlap")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1307 16 1307 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1307 16 1307 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1307 16 1307 28 , srcInfoPoints = [] } "KeepOverlaps") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1308 16 1308 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1308 16 1308 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1308 16 1308 30 , srcInfoPoints = [] } "RemoveOverlaps") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1309 16 1309 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1309 16 1309 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1309 16 1309 29 , srcInfoPoints = [] } "ScaleOverlaps") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1310 16 1310 31 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1310 16 1310 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1310 16 1310 31 , srcInfoPoints = [] } "ScaleXYOverlaps") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 16 1311 40 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 16 1311 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 16 1311 28 , srcInfoPoints = [] } "PrismOverlap") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 29 1311 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1311 29 1311 30 , SrcSpan "tests/examples/Attributes.hs" 1311 39 1311 40 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 30 1311 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 30 1311 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 30 1311 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 30 1311 35 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 36 1311 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 36 1311 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1311 36 1311 39 , srcInfoPoints = [] } "Int")))) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1312 16 1312 31 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1312 16 1312 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1312 16 1312 31 , srcInfoPoints = [] } "CompressOverlap") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1313 16 1313 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1313 16 1313 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1313 16 1313 27 , srcInfoPoints = [] } "VpscOverlap") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1314 16 1314 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1314 16 1314 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1314 16 1314 28 , srcInfoPoints = [] } "IpsepOverlap") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 16 1315 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1315 16 1315 24 , SrcSpan "tests/examples/Attributes.hs" 1315 25 1315 26 , SrcSpan "tests/examples/Attributes.hs" 1315 28 1315 29 , SrcSpan "tests/examples/Attributes.hs" 1315 33 1315 34 , SrcSpan "tests/examples/Attributes.hs" 1315 39 1315 40 , SrcSpan "tests/examples/Attributes.hs" 1315 45 1315 46 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 26 1315 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 26 1315 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 26 1315 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 26 1315 28 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 30 1315 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 30 1315 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 30 1315 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 30 1315 33 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 35 1315 39 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 35 1315 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 35 1315 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 35 1315 39 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 41 1315 45 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 41 1315 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 41 1315 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1315 41 1315 45 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 1 1327 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1317 1 1317 9 , SrcSpan "tests/examples/Attributes.hs" 1317 27 1317 32 , SrcSpan "tests/examples/Attributes.hs" 1318 5 1318 5 , SrcSpan "tests/examples/Attributes.hs" 1319 5 1319 5 , SrcSpan "tests/examples/Attributes.hs" 1320 5 1320 5 , SrcSpan "tests/examples/Attributes.hs" 1321 5 1321 5 , SrcSpan "tests/examples/Attributes.hs" 1322 5 1322 5 , SrcSpan "tests/examples/Attributes.hs" 1323 5 1323 5 , SrcSpan "tests/examples/Attributes.hs" 1324 5 1324 5 , SrcSpan "tests/examples/Attributes.hs" 1325 5 1325 5 , SrcSpan "tests/examples/Attributes.hs" 1327 1 1327 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 10 1317 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 10 1317 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 10 1317 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 10 1317 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 10 1317 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 19 1317 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 19 1317 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1317 19 1317 26 , srcInfoPoints = [] } "Overlap"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 5 1325 44 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 5 1325 44 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 5 1318 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 5 1318 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 13 1318 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 13 1318 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 13 1318 25 , srcInfoPoints = [] } "KeepOverlaps")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 30 1318 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1318 30 1318 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 32 1318 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 32 1318 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 32 1318 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 32 1318 39 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 40 1318 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 40 1318 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1318 40 1318 44 , srcInfoPoints = [] } "True"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 5 1319 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 5 1319 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 13 1319 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 13 1319 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 13 1319 27 , srcInfoPoints = [] } "RemoveOverlaps")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 30 1319 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1319 30 1319 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 32 1319 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 32 1319 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 32 1319 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 32 1319 39 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 40 1319 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 40 1319 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1319 40 1319 45 , srcInfoPoints = [] } "False"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 5 1320 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 5 1320 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 13 1320 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 13 1320 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 13 1320 26 , srcInfoPoints = [] } "ScaleOverlaps")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 30 1320 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1320 30 1320 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 32 1320 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 32 1320 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 32 1320 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 32 1320 36 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 37 1320 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1320 37 1320 44 , srcInfoPoints = [] } "scale" "scale")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 5 1321 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 5 1321 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 13 1321 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 13 1321 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 13 1321 28 , srcInfoPoints = [] } "ScaleXYOverlaps")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 30 1321 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1321 30 1321 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 32 1321 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 32 1321 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 32 1321 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 32 1321 36 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 37 1321 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1321 37 1321 46 , srcInfoPoints = [] } "scalexy" "scalexy")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 5 1322 79 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 5 1322 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 13 1322 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1322 13 1322 14 , SrcSpan "tests/examples/Attributes.hs" 1322 28 1322 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 14 1322 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 14 1322 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 14 1322 26 , srcInfoPoints = [] } "PrismOverlap")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 27 1322 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 27 1322 28 , srcInfoPoints = [] } "i") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 30 1322 79 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1322 30 1322 31 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 32 1322 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 32 1322 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 32 1322 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 32 1322 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 32 1322 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 32 1322 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 32 1322 37 , srcInfoPoints = [] } "maybe"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 38 1322 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 38 1322 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 38 1322 40 , srcInfoPoints = [] } "id")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 41 1322 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1322 41 1322 42 , SrcSpan "tests/examples/Attributes.hs" 1322 61 1322 62 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 42 1322 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 42 1322 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 42 1322 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 42 1322 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 42 1322 46 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 47 1322 51 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1322 47 1322 48 , SrcSpan "tests/examples/Attributes.hs" 1322 48 1322 50 , SrcSpan "tests/examples/Attributes.hs" 1322 50 1322 51 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 47 1322 51 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1322 47 1322 48 , SrcSpan "tests/examples/Attributes.hs" 1322 48 1322 50 , SrcSpan "tests/examples/Attributes.hs" 1322 50 1322 51 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 48 1322 50 , srcInfoPoints = [] } "<>")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 52 1322 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 52 1322 53 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 52 1322 53 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 54 1322 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 54 1322 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 54 1322 61 , srcInfoPoints = [] } "unqtDot")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 63 1322 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 63 1322 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 63 1322 64 , srcInfoPoints = [] } "i")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 65 1322 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 65 1322 66 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 65 1322 66 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 67 1322 79 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 67 1322 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 67 1322 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 67 1322 71 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 72 1322 79 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1322 72 1322 79 , srcInfoPoints = [] } "prism" "prism"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 5 1323 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 5 1323 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 13 1323 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 13 1323 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 13 1323 28 , srcInfoPoints = [] } "CompressOverlap")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 30 1323 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1323 30 1323 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 32 1323 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 32 1323 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 32 1323 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 32 1323 36 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 37 1323 47 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1323 37 1323 47 , srcInfoPoints = [] } "compress" "compress")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 5 1324 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 5 1324 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 13 1324 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 13 1324 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 13 1324 24 , srcInfoPoints = [] } "VpscOverlap")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 30 1324 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1324 30 1324 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 32 1324 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 32 1324 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 32 1324 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 32 1324 36 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 37 1324 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1324 37 1324 43 , srcInfoPoints = [] } "vpsc" "vpsc")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 5 1325 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 5 1325 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 13 1325 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 13 1325 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 13 1325 25 , srcInfoPoints = [] } "IpsepOverlap")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 30 1325 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1325 30 1325 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 32 1325 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 32 1325 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 32 1325 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 32 1325 36 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 37 1325 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1325 37 1325 44 , srcInfoPoints = [] } "ipsep" "ipsep")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 1 1340 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1327 1 1327 9 , SrcSpan "tests/examples/Attributes.hs" 1327 27 1327 32 , SrcSpan "tests/examples/Attributes.hs" 1328 5 1328 5 , SrcSpan "tests/examples/Attributes.hs" 1340 1 1340 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 10 1327 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 10 1327 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 10 1327 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 10 1327 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 10 1327 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 19 1327 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 19 1327 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1327 19 1327 26 , srcInfoPoints = [] } "Overlap"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 5 1336 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 5 1336 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 5 1328 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 5 1328 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 15 1336 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1328 15 1328 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 17 1336 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 17 1328 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 17 1328 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 17 1328 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 23 1336 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1328 23 1328 24 , SrcSpan "tests/examples/Attributes.hs" 1329 23 1329 24 , SrcSpan "tests/examples/Attributes.hs" 1330 23 1330 24 , SrcSpan "tests/examples/Attributes.hs" 1331 23 1331 24 , SrcSpan "tests/examples/Attributes.hs" 1332 23 1332 24 , SrcSpan "tests/examples/Attributes.hs" 1333 23 1333 24 , SrcSpan "tests/examples/Attributes.hs" 1334 23 1334 24 , SrcSpan "tests/examples/Attributes.hs" 1335 23 1335 24 , SrcSpan "tests/examples/Attributes.hs" 1336 23 1336 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 25 1328 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 25 1328 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 25 1328 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 25 1328 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 25 1328 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 35 1328 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 35 1328 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 35 1328 47 , srcInfoPoints = [] } "KeepOverlaps")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 48 1328 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1328 48 1328 54 , srcInfoPoints = [] } "true" "true")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 25 1329 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 25 1329 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 25 1329 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 25 1329 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 25 1329 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 35 1329 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 35 1329 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 35 1329 49 , srcInfoPoints = [] } "RemoveOverlaps")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 50 1329 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1329 50 1329 57 , srcInfoPoints = [] } "false" "false")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 25 1330 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 25 1330 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 25 1330 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 25 1330 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 25 1330 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 35 1330 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 35 1330 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 35 1330 50 , srcInfoPoints = [] } "ScaleXYOverlaps")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 51 1330 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1330 51 1330 60 , srcInfoPoints = [] } "scalexy" "scalexy")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 25 1331 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 25 1331 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 25 1331 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 25 1331 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 25 1331 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 35 1331 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 35 1331 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 35 1331 48 , srcInfoPoints = [] } "ScaleOverlaps")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 49 1331 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1331 49 1331 56 , srcInfoPoints = [] } "scale" "scale")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 25 1332 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 25 1332 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 25 1332 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 25 1332 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 25 1332 31 , srcInfoPoints = [] } "string"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 32 1332 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 32 1332 39 , srcInfoPoints = [] } "prism" "prism"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 40 1332 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 40 1332 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 40 1332 42 , srcInfoPoints = [] } ">>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 43 1332 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 43 1332 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 43 1332 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 43 1332 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 43 1332 48 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 49 1332 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 49 1332 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 49 1332 61 , srcInfoPoints = [] } "PrismOverlap")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 62 1332 78 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1332 62 1332 63 , SrcSpan "tests/examples/Attributes.hs" 1332 77 1332 78 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 63 1332 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 63 1332 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 63 1332 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 63 1332 71 , srcInfoPoints = [] } "optional"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 72 1332 77 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 72 1332 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1332 72 1332 77 , srcInfoPoints = [] } "parse")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 25 1333 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 25 1333 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 25 1333 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 25 1333 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 25 1333 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 35 1333 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 35 1333 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 35 1333 50 , srcInfoPoints = [] } "CompressOverlap")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 51 1333 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1333 51 1333 61 , srcInfoPoints = [] } "compress" "compress")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 25 1334 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 25 1334 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 25 1334 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 25 1334 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 25 1334 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 35 1334 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 35 1334 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 35 1334 46 , srcInfoPoints = [] } "VpscOverlap")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 47 1334 53 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1334 47 1334 53 , srcInfoPoints = [] } "vpsc" "vpsc")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 25 1335 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 25 1335 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 25 1335 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 25 1335 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 25 1335 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 35 1335 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 35 1335 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 35 1335 47 , srcInfoPoints = [] } "IpsepOverlap")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 48 1335 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1335 48 1335 55 , srcInfoPoints = [] } "ipsep" "ipsep")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 1 1342 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1340 17 1340 18 , SrcSpan "tests/examples/Attributes.hs" 1341 17 1341 18 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 1 1340 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 6 1340 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 6 1340 16 , srcInfoPoints = [] } "LayerRange")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 19 1340 31 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 19 1340 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 19 1340 23 , srcInfoPoints = [] } "LRID") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 24 1340 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 24 1340 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1340 24 1340 31 , srcInfoPoints = [] } "LayerID")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 19 1341 45 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 19 1341 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 19 1341 22 , srcInfoPoints = [] } "LRS") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 23 1341 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 23 1341 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 23 1341 30 , srcInfoPoints = [] } "LayerID")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 31 1341 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 31 1341 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 31 1341 37 , srcInfoPoints = [] } "String")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 38 1341 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 38 1341 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1341 38 1341 45 , srcInfoPoints = [] } "LayerID")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 19 1342 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1342 19 1342 27 , SrcSpan "tests/examples/Attributes.hs" 1342 28 1342 29 , SrcSpan "tests/examples/Attributes.hs" 1342 31 1342 32 , SrcSpan "tests/examples/Attributes.hs" 1342 36 1342 37 , SrcSpan "tests/examples/Attributes.hs" 1342 42 1342 43 , SrcSpan "tests/examples/Attributes.hs" 1342 48 1342 49 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 29 1342 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 29 1342 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 29 1342 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 29 1342 31 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 33 1342 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 33 1342 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 33 1342 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 33 1342 36 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 38 1342 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 38 1342 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 38 1342 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 38 1342 42 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 44 1342 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 44 1342 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 44 1342 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1342 44 1342 48 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 1 1351 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1344 1 1344 9 , SrcSpan "tests/examples/Attributes.hs" 1344 30 1344 35 , SrcSpan "tests/examples/Attributes.hs" 1345 5 1345 5 , SrcSpan "tests/examples/Attributes.hs" 1346 5 1346 5 , SrcSpan "tests/examples/Attributes.hs" 1348 5 1348 5 , SrcSpan "tests/examples/Attributes.hs" 1349 5 1349 5 , SrcSpan "tests/examples/Attributes.hs" 1351 1 1351 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 10 1344 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 10 1344 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 10 1344 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 10 1344 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 10 1344 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 19 1344 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 19 1344 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1344 19 1344 29 , srcInfoPoints = [] } "LayerRange"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 5 1346 70 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 5 1346 70 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 5 1345 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 5 1345 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 13 1345 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1345 13 1345 14 , SrcSpan "tests/examples/Attributes.hs" 1345 22 1345 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 14 1345 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 14 1345 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 14 1345 18 , srcInfoPoints = [] } "LRID")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 19 1345 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 19 1345 22 , srcInfoPoints = [] } "lid") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 29 1345 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1345 29 1345 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 31 1345 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 31 1345 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 31 1345 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 31 1345 38 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 39 1345 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 39 1345 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1345 39 1345 42 , srcInfoPoints = [] } "lid"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 5 1346 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 5 1346 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 13 1346 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1346 13 1346 14 , SrcSpan "tests/examples/Attributes.hs" 1346 27 1346 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 14 1346 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 14 1346 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 14 1346 17 , srcInfoPoints = [] } "LRS")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 18 1346 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 18 1346 21 , srcInfoPoints = [] } "id1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 22 1346 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 22 1346 23 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 24 1346 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 24 1346 27 , srcInfoPoints = [] } "id2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 29 1346 70 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1346 29 1346 30 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 31 1346 70 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 31 1346 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 31 1346 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 31 1346 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 31 1346 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 31 1346 38 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 39 1346 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 39 1346 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 39 1346 42 , srcInfoPoints = [] } "id1")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 43 1346 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 43 1346 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 43 1346 45 , srcInfoPoints = [] } "<>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 46 1346 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 46 1346 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 46 1346 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 46 1346 53 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 54 1346 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 54 1346 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 54 1346 55 , srcInfoPoints = [] } "s"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 56 1346 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 56 1346 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 56 1346 58 , srcInfoPoints = [] } "<>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 59 1346 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 59 1346 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 59 1346 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 59 1346 66 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 67 1346 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 67 1346 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1346 67 1346 70 , srcInfoPoints = [] } "id2")))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 5 1349 50 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 5 1349 50 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 5 1348 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 5 1348 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 11 1348 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1348 11 1348 12 , SrcSpan "tests/examples/Attributes.hs" 1348 20 1348 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 12 1348 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 12 1348 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 12 1348 16 , srcInfoPoints = [] } "LRID")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 17 1348 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 17 1348 20 , srcInfoPoints = [] } "lid") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 22 1348 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1348 22 1348 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 24 1348 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 24 1348 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 24 1348 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 24 1348 29 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 30 1348 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 30 1348 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1348 30 1348 33 , srcInfoPoints = [] } "lid"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 5 1349 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 5 1349 10 , srcInfoPoints = [] } "toDot") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 11 1349 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 11 1349 14 , srcInfoPoints = [] } "lrs") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 22 1349 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1349 22 1349 23 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 24 1349 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 24 1349 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 24 1349 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 24 1349 36 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 37 1349 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 37 1349 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 37 1349 38 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 39 1349 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 39 1349 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 39 1349 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 39 1349 46 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 47 1349 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 47 1349 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1349 47 1349 50 , srcInfoPoints = [] } "lrs")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 1 1368 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1351 1 1351 9 , SrcSpan "tests/examples/Attributes.hs" 1351 30 1351 35 , SrcSpan "tests/examples/Attributes.hs" 1352 5 1352 5 , SrcSpan "tests/examples/Attributes.hs" 1360 5 1360 5 , SrcSpan "tests/examples/Attributes.hs" 1368 1 1368 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 10 1351 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 10 1351 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 10 1351 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 10 1351 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 10 1351 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 19 1351 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 19 1351 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1351 19 1351 29 , srcInfoPoints = [] } "LayerRange"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 5 1357 37 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 5 1357 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 5 1352 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 5 1352 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 15 1357 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1352 15 1352 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 17 1357 37 , srcInfoPoints = [] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 17 1355 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1352 17 1352 19 , SrcSpan "tests/examples/Attributes.hs" 1352 20 1352 20 , SrcSpan "tests/examples/Attributes.hs" 1353 20 1353 20 , SrcSpan "tests/examples/Attributes.hs" 1354 20 1354 20 , SrcSpan "tests/examples/Attributes.hs" 1355 20 1355 20 , SrcSpan "tests/examples/Attributes.hs" 1356 17 1356 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 20 1352 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1352 24 1352 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 20 1352 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 20 1352 23 , srcInfoPoints = [] } "id1")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 27 1352 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 27 1352 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1352 27 1352 36 , srcInfoPoints = [] } "parseUnqt"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1353 20 1353 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1353 24 1353 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1353 20 1353 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1353 20 1353 21 , srcInfoPoints = [] } "s")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1353 27 1353 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1353 27 1353 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1353 27 1353 40 , srcInfoPoints = [] } "parseLayerSep"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1354 20 1354 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1354 24 1354 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1354 20 1354 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1354 20 1354 23 , srcInfoPoints = [] } "id2")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1354 27 1354 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1354 27 1354 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1354 27 1354 36 , srcInfoPoints = [] } "parseUnqt"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 20 1355 42 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 20 1355 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 20 1355 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 20 1355 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 20 1355 26 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 27 1355 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 27 1355 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 27 1355 28 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 29 1355 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 29 1355 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 29 1355 36 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 29 1355 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 29 1355 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 29 1355 32 , srcInfoPoints = [] } "LRS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 33 1355 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 33 1355 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 33 1355 36 , srcInfoPoints = [] } "id1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 37 1355 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 37 1355 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 37 1355 38 , srcInfoPoints = [] } "s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 39 1355 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 39 1355 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1355 39 1355 42 , srcInfoPoints = [] } "id2"))))) ]) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1356 17 1356 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1356 17 1356 18 , SrcSpan "tests/examples/Attributes.hs" 1356 18 1356 24 , SrcSpan "tests/examples/Attributes.hs" 1356 24 1356 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1356 17 1356 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1356 17 1356 18 , SrcSpan "tests/examples/Attributes.hs" 1356 18 1356 24 , SrcSpan "tests/examples/Attributes.hs" 1356 24 1356 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1356 18 1356 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 17 1357 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 17 1357 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 17 1357 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 17 1357 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 17 1357 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 23 1357 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 23 1357 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 23 1357 27 , srcInfoPoints = [] } "LRID")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 28 1357 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 28 1357 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1357 28 1357 37 , srcInfoPoints = [] } "parseUnqt")))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 5 1366 29 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 5 1366 29 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 5 1360 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 5 1360 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 11 1366 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1360 11 1360 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 13 1366 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 13 1364 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 13 1360 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 13 1360 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 13 1360 24 , srcInfoPoints = [] } "quotedParse"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 25 1364 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1360 25 1360 26 , SrcSpan "tests/examples/Attributes.hs" 1364 25 1364 26 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 27 1363 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1360 27 1360 29 , SrcSpan "tests/examples/Attributes.hs" 1360 30 1360 30 , SrcSpan "tests/examples/Attributes.hs" 1361 30 1361 30 , SrcSpan "tests/examples/Attributes.hs" 1362 30 1362 30 , SrcSpan "tests/examples/Attributes.hs" 1363 30 1363 30 , SrcSpan "tests/examples/Attributes.hs" 1364 25 1364 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 30 1360 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1360 34 1360 36 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 30 1360 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 30 1360 33 , srcInfoPoints = [] } "id1")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 37 1360 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 37 1360 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1360 37 1360 46 , srcInfoPoints = [] } "parseUnqt"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1361 30 1361 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1361 34 1361 36 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1361 30 1361 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1361 30 1361 31 , srcInfoPoints = [] } "s")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1361 37 1361 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1361 37 1361 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1361 37 1361 50 , srcInfoPoints = [] } "parseLayerSep"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1362 30 1362 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1362 34 1362 36 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1362 30 1362 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1362 30 1362 33 , srcInfoPoints = [] } "id2")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1362 37 1362 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1362 37 1362 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1362 37 1362 46 , srcInfoPoints = [] } "parseUnqt"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 30 1363 52 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 30 1363 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 30 1363 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 30 1363 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 30 1363 36 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 37 1363 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 37 1363 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 37 1363 38 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 39 1363 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 39 1363 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 39 1363 46 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 39 1363 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 39 1363 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 39 1363 42 , srcInfoPoints = [] } "LRS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 43 1363 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 43 1363 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 43 1363 46 , srcInfoPoints = [] } "id1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 47 1363 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 47 1363 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 47 1363 48 , srcInfoPoints = [] } "s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 49 1363 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 49 1363 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1363 49 1363 52 , srcInfoPoints = [] } "id2"))))) ]))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1365 13 1365 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1365 13 1365 14 , SrcSpan "tests/examples/Attributes.hs" 1365 14 1365 20 , SrcSpan "tests/examples/Attributes.hs" 1365 20 1365 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1365 13 1365 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1365 13 1365 14 , SrcSpan "tests/examples/Attributes.hs" 1365 14 1365 20 , SrcSpan "tests/examples/Attributes.hs" 1365 20 1365 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1365 14 1365 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 13 1366 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 13 1366 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 13 1366 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 13 1366 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 13 1366 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 19 1366 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 19 1366 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 19 1366 23 , srcInfoPoints = [] } "LRID")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 24 1366 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 24 1366 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1366 24 1366 29 , srcInfoPoints = [] } "parse")))))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 1 1368 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1368 15 1368 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 1 1368 14 , srcInfoPoints = [] } "parseLayerSep" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 18 1368 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 18 1368 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 18 1368 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 18 1368 23 , srcInfoPoints = [] } "Parse"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 24 1368 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 24 1368 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1368 24 1368 30 , srcInfoPoints = [] } "String")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 1 1370 44 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 1 1369 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 1 1369 14 , srcInfoPoints = [] } "parseLayerSep")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 15 1370 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1369 15 1369 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 17 1370 44 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 17 1369 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 17 1369 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 17 1369 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 17 1369 22 , srcInfoPoints = [] } "many1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 23 1369 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 23 1369 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 23 1369 24 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 25 1369 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 25 1369 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1369 25 1369 30 , srcInfoPoints = [] } "oneOf")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 17 1370 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 17 1370 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 17 1370 18 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 19 1370 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 19 1370 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 19 1370 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 19 1370 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 19 1370 22 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 23 1370 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 23 1370 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 23 1370 32 , srcInfoPoints = [] } "character")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 33 1370 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 33 1370 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1370 33 1370 44 , srcInfoPoints = [] } "defLayerSep")))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1372 1 1372 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1372 13 1372 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1372 1 1372 12 , srcInfoPoints = [] } "defLayerSep" ] (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1372 16 1372 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1372 16 1372 17 , SrcSpan "tests/examples/Attributes.hs" 1372 21 1372 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1372 17 1372 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1372 17 1372 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1372 17 1372 21 , srcInfoPoints = [] } "Char")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 1 1373 31 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 1 1373 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 1 1373 12 , srcInfoPoints = [] } "defLayerSep")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 13 1373 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1373 13 1373 14 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 15 1373 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1373 15 1373 16 , SrcSpan "tests/examples/Attributes.hs" 1373 19 1373 20 , SrcSpan "tests/examples/Attributes.hs" 1373 24 1373 25 , SrcSpan "tests/examples/Attributes.hs" 1373 30 1373 31 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 16 1373 19 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 16 1373 19 , srcInfoPoints = [] } ' ' " ") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 21 1373 24 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 21 1373 24 , srcInfoPoints = [] } ':' ":") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 26 1373 30 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1373 26 1373 30 , srcInfoPoints = [] } '\t' "\\t") ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 1 1375 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1375 16 1375 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 1 1375 15 , srcInfoPoints = [] } "parseLayerName" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 19 1375 31 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 19 1375 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 19 1375 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 19 1375 24 , srcInfoPoints = [] } "Parse"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 25 1375 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 25 1375 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1375 25 1375 31 , srcInfoPoints = [] } "String")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 1 1377 70 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 1 1376 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 1 1376 15 , srcInfoPoints = [] } "parseLayerName")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 16 1377 70 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1376 16 1376 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 18 1377 70 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 18 1376 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 18 1376 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 18 1376 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 18 1376 23 , srcInfoPoints = [] } "many1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 24 1376 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 24 1376 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 24 1376 25 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 26 1376 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 26 1376 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1376 26 1376 33 , srcInfoPoints = [] } "orQuote")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 18 1377 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 18 1377 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 18 1377 19 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 20 1377 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 20 1377 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 20 1377 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 20 1377 27 , srcInfoPoints = [] } "satisfy"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 28 1377 70 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1377 28 1377 29 , SrcSpan "tests/examples/Attributes.hs" 1377 69 1377 70 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 29 1377 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 29 1377 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 29 1377 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 29 1377 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 29 1377 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 29 1377 35 , srcInfoPoints = [] } "liftM2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 36 1377 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1377 36 1377 37 , SrcSpan "tests/examples/Attributes.hs" 1377 37 1377 39 , SrcSpan "tests/examples/Attributes.hs" 1377 39 1377 40 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 36 1377 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1377 36 1377 37 , SrcSpan "tests/examples/Attributes.hs" 1377 37 1377 39 , SrcSpan "tests/examples/Attributes.hs" 1377 39 1377 40 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 37 1377 39 , srcInfoPoints = [] } "&&")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 41 1377 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 41 1377 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 41 1377 52 , srcInfoPoints = [] } "notLayerSep")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 53 1377 69 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1377 53 1377 54 , SrcSpan "tests/examples/Attributes.hs" 1377 68 1377 69 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 54 1377 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 54 1377 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1377 54 1377 55 , SrcSpan "tests/examples/Attributes.hs" 1377 55 1377 57 , SrcSpan "tests/examples/Attributes.hs" 1377 57 1377 58 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 54 1377 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1377 54 1377 55 , SrcSpan "tests/examples/Attributes.hs" 1377 55 1377 57 , SrcSpan "tests/examples/Attributes.hs" 1377 57 1377 58 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 55 1377 57 , srcInfoPoints = [] } "/="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 59 1377 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 59 1377 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1377 59 1377 68 , srcInfoPoints = [] } "quoteChar")))))))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 1 1379 32 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1379 17 1379 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 1 1379 16 , srcInfoPoints = [] } "parseLayerName'" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 20 1379 32 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 20 1379 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 20 1379 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 20 1379 25 , srcInfoPoints = [] } "Parse"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 26 1379 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 26 1379 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1379 26 1379 32 , srcInfoPoints = [] } "String")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1380 1 1382 45 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1380 1 1380 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1380 1 1380 16 , srcInfoPoints = [] } "parseLayerName'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1380 17 1382 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1380 17 1380 18 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1380 19 1382 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1380 19 1380 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1380 19 1380 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1380 19 1380 30 , srcInfoPoints = [] } "stringBlock"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1381 19 1381 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1381 19 1381 20 , SrcSpan "tests/examples/Attributes.hs" 1381 20 1381 26 , SrcSpan "tests/examples/Attributes.hs" 1381 26 1381 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1381 19 1381 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1381 19 1381 20 , SrcSpan "tests/examples/Attributes.hs" 1381 20 1381 26 , SrcSpan "tests/examples/Attributes.hs" 1381 26 1381 27 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1381 20 1381 26 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1382 19 1382 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1382 19 1382 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1382 19 1382 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1382 19 1382 30 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1382 31 1382 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1382 31 1382 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1382 31 1382 45 , srcInfoPoints = [] } "parseLayerName")))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 1 1384 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1384 13 1384 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 1 1384 12 , srcInfoPoints = [] } "notLayerSep" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 16 1384 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1384 21 1384 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 16 1384 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 16 1384 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 16 1384 20 , srcInfoPoints = [] } "Char"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 24 1384 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 24 1384 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1384 24 1384 28 , srcInfoPoints = [] } "Bool")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 1 1385 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 1 1385 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 1 1385 12 , srcInfoPoints = [] } "notLayerSep")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 13 1385 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1385 13 1385 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 15 1385 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 15 1385 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 15 1385 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 15 1385 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 15 1385 19 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 20 1385 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 20 1385 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 20 1385 27 , srcInfoPoints = [] } "notElem")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 28 1385 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 28 1385 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1385 28 1385 39 , srcInfoPoints = [] } "defLayerSep"))))) Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1389 1 1392 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1389 14 1389 15 , SrcSpan "tests/examples/Attributes.hs" 1390 14 1390 15 , SrcSpan "tests/examples/Attributes.hs" 1391 14 1391 15 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1389 1 1389 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1389 6 1389 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1389 6 1389 13 , srcInfoPoints = [] } "LayerID")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1389 16 1389 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1389 16 1389 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1389 16 1389 25 , srcInfoPoints = [] } "AllLayers") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1390 16 1390 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1390 16 1390 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1390 16 1390 21 , srcInfoPoints = [] } "LRInt") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1390 22 1390 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1390 22 1390 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1390 22 1390 25 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1391 16 1391 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1391 16 1391 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1391 16 1391 22 , srcInfoPoints = [] } "LRName") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1391 23 1391 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1391 23 1391 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1391 23 1391 29 , srcInfoPoints = [] } "String")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 16 1392 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1392 16 1392 24 , SrcSpan "tests/examples/Attributes.hs" 1392 25 1392 26 , SrcSpan "tests/examples/Attributes.hs" 1392 28 1392 29 , SrcSpan "tests/examples/Attributes.hs" 1392 33 1392 34 , SrcSpan "tests/examples/Attributes.hs" 1392 39 1392 40 , SrcSpan "tests/examples/Attributes.hs" 1392 45 1392 46 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 26 1392 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 26 1392 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 26 1392 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 26 1392 28 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 30 1392 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 30 1392 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 30 1392 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 30 1392 33 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 35 1392 39 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 35 1392 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 35 1392 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 35 1392 39 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 41 1392 45 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 41 1392 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 41 1392 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1392 41 1392 45 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 1 1403 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1394 1 1394 9 , SrcSpan "tests/examples/Attributes.hs" 1394 27 1394 32 , SrcSpan "tests/examples/Attributes.hs" 1395 5 1395 5 , SrcSpan "tests/examples/Attributes.hs" 1396 5 1396 5 , SrcSpan "tests/examples/Attributes.hs" 1397 5 1397 5 , SrcSpan "tests/examples/Attributes.hs" 1399 5 1399 5 , SrcSpan "tests/examples/Attributes.hs" 1401 5 1401 5 , SrcSpan "tests/examples/Attributes.hs" 1403 1 1403 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 10 1394 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 10 1394 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 10 1394 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 10 1394 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 10 1394 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 19 1394 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 19 1394 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1394 19 1394 26 , srcInfoPoints = [] } "LayerID"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 5 1397 37 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 5 1397 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 5 1395 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 5 1395 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 13 1395 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 13 1395 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 13 1395 22 , srcInfoPoints = [] } "AllLayers")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 25 1395 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1395 25 1395 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 27 1395 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 27 1395 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 27 1395 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 27 1395 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 32 1395 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1395 32 1395 37 , srcInfoPoints = [] } "all" "all")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 5 1396 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 5 1396 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 13 1396 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1396 13 1396 14 , SrcSpan "tests/examples/Attributes.hs" 1396 21 1396 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 14 1396 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 14 1396 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 14 1396 19 , srcInfoPoints = [] } "LRInt")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 20 1396 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 20 1396 21 , srcInfoPoints = [] } "n") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 25 1396 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1396 25 1396 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 27 1396 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 27 1396 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 27 1396 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 27 1396 34 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 35 1396 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 35 1396 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1396 35 1396 36 , srcInfoPoints = [] } "n"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 5 1397 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 5 1397 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 13 1397 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1397 13 1397 14 , SrcSpan "tests/examples/Attributes.hs" 1397 23 1397 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 14 1397 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 14 1397 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 14 1397 20 , srcInfoPoints = [] } "LRName")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 21 1397 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 21 1397 23 , srcInfoPoints = [] } "nm") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 25 1397 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1397 25 1397 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 27 1397 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 27 1397 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 27 1397 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 27 1397 34 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 35 1397 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 35 1397 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1397 35 1397 37 , srcInfoPoints = [] } "nm"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 5 1401 35 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 5 1401 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 5 1399 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 5 1399 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 11 1399 22 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1399 11 1399 12 , SrcSpan "tests/examples/Attributes.hs" 1399 21 1399 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 12 1399 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 12 1399 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 12 1399 18 , srcInfoPoints = [] } "LRName")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 19 1399 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 19 1399 21 , srcInfoPoints = [] } "nm") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 23 1399 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1399 23 1399 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 25 1399 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 25 1399 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 25 1399 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 25 1399 30 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 31 1399 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 31 1399 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1399 31 1399 33 , srcInfoPoints = [] } "nm"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 5 1401 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 5 1401 10 , srcInfoPoints = [] } "toDot") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 11 1401 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 11 1401 13 , srcInfoPoints = [] } "li") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 23 1401 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1401 23 1401 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 25 1401 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 25 1401 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 25 1401 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 25 1401 32 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 33 1401 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 33 1401 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1401 33 1401 35 , srcInfoPoints = [] } "li"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 1 1410 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1403 1 1403 9 , SrcSpan "tests/examples/Attributes.hs" 1403 27 1403 32 , SrcSpan "tests/examples/Attributes.hs" 1404 5 1404 5 , SrcSpan "tests/examples/Attributes.hs" 1406 5 1406 5 , SrcSpan "tests/examples/Attributes.hs" 1410 1 1410 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 10 1403 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 10 1403 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 10 1403 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 10 1403 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 10 1403 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 19 1403 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 19 1403 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1403 19 1403 26 , srcInfoPoints = [] } "LayerID"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 5 1404 52 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 5 1404 52 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 5 1404 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 5 1404 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 15 1404 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1404 15 1404 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 17 1404 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 17 1404 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 17 1404 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 17 1404 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 17 1404 22 , srcInfoPoints = [] } "liftM"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 23 1404 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 23 1404 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 23 1404 37 , srcInfoPoints = [] } "checkLayerName")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 38 1404 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 38 1404 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1404 38 1404 52 , srcInfoPoints = [] } "parseLayerName"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 5 1408 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 5 1408 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 5 1406 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 5 1406 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 11 1408 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1406 11 1406 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 13 1408 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 13 1406 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 13 1406 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 13 1406 18 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 19 1408 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1406 19 1406 20 , SrcSpan "tests/examples/Attributes.hs" 1407 19 1407 20 , SrcSpan "tests/examples/Attributes.hs" 1408 19 1408 20 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 21 1406 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 21 1406 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 21 1406 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 21 1406 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 21 1406 26 , srcInfoPoints = [] } "liftM"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 27 1406 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 27 1406 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 27 1406 41 , srcInfoPoints = [] } "checkLayerName")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 42 1406 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 42 1406 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1406 42 1406 57 , srcInfoPoints = [] } "parseLayerName'"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 21 1407 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 21 1407 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 21 1407 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 21 1407 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 21 1407 26 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 27 1407 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 27 1407 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 27 1407 32 , srcInfoPoints = [] } "LRInt")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 33 1407 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 33 1407 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1407 33 1407 38 , srcInfoPoints = [] } "parse"))) ]))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 1 1410 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1410 20 1410 22 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 1 1410 15 , srcInfoPoints = [] } "checkLayerName" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 23 1410 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1410 30 1410 32 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 23 1410 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 23 1410 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 23 1410 29 , srcInfoPoints = [] } "String"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 33 1410 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 33 1410 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1410 33 1410 40 , srcInfoPoints = [] } "LayerID")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 1 1415 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1412 3 1412 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 1 1415 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1412 3 1412 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 1 1411 15 , srcInfoPoints = [] } "checkLayerName") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 16 1411 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 16 1411 19 , srcInfoPoints = [] } "str") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 20 1411 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1411 20 1411 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 22 1411 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 22 1411 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 22 1411 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 22 1411 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 22 1411 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 22 1411 27 , srcInfoPoints = [] } "maybe"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 28 1411 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 28 1411 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 28 1411 36 , srcInfoPoints = [] } "checkAll")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 37 1411 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 37 1411 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 37 1411 42 , srcInfoPoints = [] } "LRInt")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 43 1411 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 43 1411 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 43 1411 44 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 45 1411 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 45 1411 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 45 1411 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 45 1411 56 , srcInfoPoints = [] } "stringToInt"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 57 1411 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 57 1411 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1411 57 1411 60 , srcInfoPoints = [] } "str")))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 5 1415 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1413 5 1413 5 , SrcSpan "tests/examples/Attributes.hs" 1420 1 1420 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 5 1415 31 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 5 1413 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 5 1413 13 , srcInfoPoints = [] } "checkAll")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 14 1415 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1413 14 1413 15 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 16 1415 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1413 16 1413 18 , SrcSpan "tests/examples/Attributes.hs" 1414 16 1414 20 , SrcSpan "tests/examples/Attributes.hs" 1415 16 1415 20 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 19 1413 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 19 1413 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 19 1413 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 19 1413 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 19 1413 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 19 1413 22 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 23 1413 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 23 1413 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 23 1413 30 , srcInfoPoints = [] } "toLower")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 31 1413 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 31 1413 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 31 1413 34 , srcInfoPoints = [] } "str")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 35 1413 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 35 1413 37 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 35 1413 37 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 38 1413 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1413 38 1413 43 , srcInfoPoints = [] } "all" "all"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1414 21 1414 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1414 21 1414 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1414 21 1414 30 , srcInfoPoints = [] } "AllLayers"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1415 21 1415 31 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1415 21 1415 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1415 21 1415 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1415 21 1415 27 , srcInfoPoints = [] } "LRName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1415 28 1415 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1415 28 1415 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1415 28 1415 31 , srcInfoPoints = [] } "str")))))) Nothing ])) ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 1 1421 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1420 16 1420 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 1 1420 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 6 1420 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 6 1420 15 , srcInfoPoints = [] } "LayerList")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 18 1420 46 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 18 1420 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 18 1420 20 , srcInfoPoints = [] } "LL") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 21 1420 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 21 1420 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 21 1420 27 , srcInfoPoints = [] } "String")) , TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 28 1420 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1420 28 1420 29 , SrcSpan "tests/examples/Attributes.hs" 1420 45 1420 46 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 29 1420 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1420 29 1420 30 , SrcSpan "tests/examples/Attributes.hs" 1420 36 1420 37 , SrcSpan "tests/examples/Attributes.hs" 1420 44 1420 45 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 30 1420 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 30 1420 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 30 1420 36 , srcInfoPoints = [] } "String")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 38 1420 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 38 1420 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1420 38 1420 44 , srcInfoPoints = [] } "String")) ]) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 18 1421 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1421 18 1421 26 , SrcSpan "tests/examples/Attributes.hs" 1421 27 1421 28 , SrcSpan "tests/examples/Attributes.hs" 1421 30 1421 31 , SrcSpan "tests/examples/Attributes.hs" 1421 35 1421 36 , SrcSpan "tests/examples/Attributes.hs" 1421 41 1421 42 , SrcSpan "tests/examples/Attributes.hs" 1421 47 1421 48 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 28 1421 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 28 1421 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 28 1421 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 28 1421 30 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 32 1421 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 32 1421 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 32 1421 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 32 1421 35 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 37 1421 41 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 37 1421 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 37 1421 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 37 1421 41 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 43 1421 47 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 43 1421 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 43 1421 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1421 43 1421 47 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 1 1432 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1423 1 1423 9 , SrcSpan "tests/examples/Attributes.hs" 1423 29 1423 34 , SrcSpan "tests/examples/Attributes.hs" 1424 5 1424 5 , SrcSpan "tests/examples/Attributes.hs" 1428 5 1428 5 , SrcSpan "tests/examples/Attributes.hs" 1430 5 1430 5 , SrcSpan "tests/examples/Attributes.hs" 1432 1 1432 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 10 1423 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 10 1423 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 10 1423 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 10 1423 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 10 1423 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 19 1423 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 19 1423 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1423 19 1423 28 , srcInfoPoints = [] } "LayerList"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 5 1426 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1425 9 1425 14 ] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 5 1426 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1425 9 1425 14 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 5 1426 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1425 9 1425 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 5 1424 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 13 1424 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1424 13 1424 14 , SrcSpan "tests/examples/Attributes.hs" 1424 23 1424 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 14 1424 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 14 1424 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 14 1424 16 , srcInfoPoints = [] } "LL")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 17 1424 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 17 1424 19 , srcInfoPoints = [] } "l1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 20 1424 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 20 1424 23 , srcInfoPoints = [] } "ols") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 25 1424 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1424 25 1424 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 27 1424 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 27 1424 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 27 1424 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 27 1424 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 27 1424 34 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 35 1424 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 35 1424 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 35 1424 37 , srcInfoPoints = [] } "l1")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 38 1424 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 38 1424 40 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 38 1424 40 , srcInfoPoints = [] } "<>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 41 1424 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 41 1424 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 41 1424 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 41 1424 45 , srcInfoPoints = [] } "hcat"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 46 1424 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1424 46 1424 47 , SrcSpan "tests/examples/Attributes.hs" 1424 60 1424 61 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 47 1424 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 47 1424 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 47 1424 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 47 1424 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 47 1424 50 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 51 1424 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 51 1424 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 51 1424 56 , srcInfoPoints = [] } "subLL")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 57 1424 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 57 1424 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1424 57 1424 60 , srcInfoPoints = [] } "ols")))))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 11 1426 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1426 11 1426 11 , SrcSpan "tests/examples/Attributes.hs" 1428 5 1428 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 11 1426 48 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 11 1426 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 11 1426 16 , srcInfoPoints = [] } "subLL") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 17 1426 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1426 17 1426 18 , SrcSpan "tests/examples/Attributes.hs" 1426 19 1426 20 , SrcSpan "tests/examples/Attributes.hs" 1426 22 1426 23 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 18 1426 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 18 1426 19 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 21 1426 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 21 1426 22 , srcInfoPoints = [] } "l") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 24 1426 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1426 24 1426 25 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 26 1426 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 26 1426 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 26 1426 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 26 1426 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 26 1426 33 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 34 1426 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 34 1426 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 34 1426 35 , srcInfoPoints = [] } "s")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 36 1426 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 36 1426 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 36 1426 38 , srcInfoPoints = [] } "<>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 39 1426 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 39 1426 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 39 1426 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 39 1426 46 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 47 1426 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 47 1426 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1426 47 1426 48 , srcInfoPoints = [] } "l")))))) Nothing ] ])) ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 5 1430 49 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 5 1430 49 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 5 1428 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 5 1428 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 11 1428 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1428 11 1428 12 , SrcSpan "tests/examples/Attributes.hs" 1428 20 1428 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 12 1428 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 12 1428 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 12 1428 14 , srcInfoPoints = [] } "LL")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 15 1428 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 15 1428 17 , srcInfoPoints = [] } "l1") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 18 1428 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1428 18 1428 19 , SrcSpan "tests/examples/Attributes.hs" 1428 19 1428 20 ] } [] ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 22 1428 32 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1428 22 1428 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 24 1428 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 24 1428 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 24 1428 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 24 1428 29 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 30 1428 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 30 1428 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1428 30 1428 32 , srcInfoPoints = [] } "l1"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 5 1430 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 5 1430 10 , srcInfoPoints = [] } "toDot") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 11 1430 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 11 1430 13 , srcInfoPoints = [] } "ll") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 22 1430 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1430 22 1430 23 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 24 1430 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 24 1430 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 24 1430 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 24 1430 36 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 37 1430 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 37 1430 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 37 1430 38 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 39 1430 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 39 1430 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 39 1430 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 39 1430 46 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 47 1430 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 47 1430 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1430 47 1430 49 , srcInfoPoints = [] } "ll")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 1 1445 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1432 1 1432 9 , SrcSpan "tests/examples/Attributes.hs" 1432 29 1432 34 , SrcSpan "tests/examples/Attributes.hs" 1433 5 1433 5 , SrcSpan "tests/examples/Attributes.hs" 1439 5 1439 5 , SrcSpan "tests/examples/Attributes.hs" 1445 1 1445 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 10 1432 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 10 1432 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 10 1432 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 10 1432 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 10 1432 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 19 1432 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 19 1432 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1432 19 1432 28 , srcInfoPoints = [] } "LayerList"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 5 1437 38 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 5 1437 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 5 1433 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 5 1433 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 15 1437 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1433 15 1433 16 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 17 1437 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1433 17 1433 19 , SrcSpan "tests/examples/Attributes.hs" 1433 20 1433 20 , SrcSpan "tests/examples/Attributes.hs" 1434 20 1434 20 , SrcSpan "tests/examples/Attributes.hs" 1437 20 1437 20 , SrcSpan "tests/examples/Attributes.hs" 1439 5 1439 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 20 1433 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1433 23 1433 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 20 1433 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 20 1433 22 , srcInfoPoints = [] } "l1")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 26 1433 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 26 1433 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1433 26 1433 40 , srcInfoPoints = [] } "parseLayerName"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 20 1436 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1434 24 1434 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 20 1434 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 20 1434 23 , srcInfoPoints = [] } "ols")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 27 1436 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 27 1434 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 27 1434 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 27 1434 31 , srcInfoPoints = [] } "many"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 32 1434 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 32 1434 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 32 1434 33 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 34 1436 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1434 34 1434 36 , SrcSpan "tests/examples/Attributes.hs" 1434 37 1434 37 , SrcSpan "tests/examples/Attributes.hs" 1435 37 1435 37 , SrcSpan "tests/examples/Attributes.hs" 1436 37 1436 37 , SrcSpan "tests/examples/Attributes.hs" 1437 20 1437 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 37 1434 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1434 41 1434 43 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 37 1434 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 37 1434 38 , srcInfoPoints = [] } "s")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 44 1434 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 44 1434 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1434 44 1434 57 , srcInfoPoints = [] } "parseLayerSep"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1435 37 1435 58 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1435 41 1435 43 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1435 37 1435 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1435 37 1435 40 , srcInfoPoints = [] } "lnm")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1435 44 1435 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1435 44 1435 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1435 44 1435 58 , srcInfoPoints = [] } "parseLayerName"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 37 1436 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 37 1436 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 37 1436 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 37 1436 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 37 1436 43 , srcInfoPoints = [] } "return"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 44 1436 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1436 44 1436 45 , SrcSpan "tests/examples/Attributes.hs" 1436 46 1436 47 , SrcSpan "tests/examples/Attributes.hs" 1436 51 1436 52 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 45 1436 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 45 1436 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 45 1436 46 , srcInfoPoints = [] } "s")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 48 1436 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 48 1436 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1436 48 1436 51 , srcInfoPoints = [] } "lnm")) ])) ])) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 20 1437 38 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 20 1437 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 20 1437 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 20 1437 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 20 1437 26 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 27 1437 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 27 1437 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 27 1437 28 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 29 1437 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 29 1437 34 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 29 1437 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 29 1437 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 29 1437 31 , srcInfoPoints = [] } "LL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 32 1437 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 32 1437 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 32 1437 34 , srcInfoPoints = [] } "l1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 35 1437 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 35 1437 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1437 35 1437 38 , srcInfoPoints = [] } "ols"))))) ])) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 5 1441 68 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 5 1441 68 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 5 1439 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 5 1439 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 11 1441 68 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1439 11 1439 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 13 1441 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 13 1439 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 13 1439 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 13 1439 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 13 1439 24 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 25 1439 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 25 1439 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1439 25 1439 34 , srcInfoPoints = [] } "parseUnqt")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1440 13 1440 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1440 13 1440 14 , SrcSpan "tests/examples/Attributes.hs" 1440 14 1440 20 , SrcSpan "tests/examples/Attributes.hs" 1440 20 1440 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1440 13 1440 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1440 13 1440 14 , SrcSpan "tests/examples/Attributes.hs" 1440 14 1440 20 , SrcSpan "tests/examples/Attributes.hs" 1440 20 1440 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1440 14 1440 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 13 1441 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 13 1441 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 13 1441 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 13 1441 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 13 1441 18 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 19 1441 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1441 19 1441 20 , SrcSpan "tests/examples/Attributes.hs" 1441 30 1441 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 20 1441 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 20 1441 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 20 1441 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 20 1441 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 20 1441 24 , srcInfoPoints = [] } "flip"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 25 1441 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 25 1441 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 25 1441 27 , srcInfoPoints = [] } "LL")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 28 1441 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1441 28 1441 29 , SrcSpan "tests/examples/Attributes.hs" 1441 29 1441 30 ] } [])))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 32 1441 68 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1441 32 1441 33 , SrcSpan "tests/examples/Attributes.hs" 1441 67 1441 68 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 33 1441 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 33 1441 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 33 1441 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 33 1441 48 , srcInfoPoints = [] } "parseLayerName'"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 49 1441 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1441 49 1441 50 , SrcSpan "tests/examples/Attributes.hs" 1441 50 1441 56 , SrcSpan "tests/examples/Attributes.hs" 1441 56 1441 57 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 49 1441 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1441 49 1441 50 , SrcSpan "tests/examples/Attributes.hs" 1441 50 1441 56 , SrcSpan "tests/examples/Attributes.hs" 1441 56 1441 57 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 50 1441 56 , srcInfoPoints = [] } "onFail"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 58 1441 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 58 1441 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1441 58 1441 67 , srcInfoPoints = [] } "numString")))))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 1 1446 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1445 17 1445 18 , SrcSpan "tests/examples/Attributes.hs" 1445 32 1445 33 , SrcSpan "tests/examples/Attributes.hs" 1445 45 1445 46 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 1 1445 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 6 1445 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 6 1445 16 , srcInfoPoints = [] } "OutputMode")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 19 1445 31 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 19 1445 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 19 1445 31 , srcInfoPoints = [] } "BreadthFirst") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 34 1445 44 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 34 1445 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 34 1445 44 , srcInfoPoints = [] } "NodesFirst") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 47 1445 57 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 47 1445 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1445 47 1445 57 , srcInfoPoints = [] } "EdgesFirst") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 19 1446 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1446 19 1446 27 , SrcSpan "tests/examples/Attributes.hs" 1446 28 1446 29 , SrcSpan "tests/examples/Attributes.hs" 1446 31 1446 32 , SrcSpan "tests/examples/Attributes.hs" 1446 36 1446 37 , SrcSpan "tests/examples/Attributes.hs" 1446 45 1446 46 , SrcSpan "tests/examples/Attributes.hs" 1446 51 1446 52 , SrcSpan "tests/examples/Attributes.hs" 1446 57 1446 58 , SrcSpan "tests/examples/Attributes.hs" 1446 63 1446 64 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 29 1446 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 29 1446 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 29 1446 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 29 1446 31 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 33 1446 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 33 1446 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 33 1446 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 33 1446 36 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 38 1446 45 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 38 1446 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 38 1446 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 38 1446 45 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 47 1446 51 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 47 1446 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 47 1446 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 47 1446 51 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 53 1446 57 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 53 1446 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 53 1446 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 53 1446 57 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 59 1446 63 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 59 1446 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 59 1446 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1446 59 1446 63 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 1 1453 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1448 1 1448 9 , SrcSpan "tests/examples/Attributes.hs" 1448 30 1448 35 , SrcSpan "tests/examples/Attributes.hs" 1449 5 1449 5 , SrcSpan "tests/examples/Attributes.hs" 1450 5 1450 5 , SrcSpan "tests/examples/Attributes.hs" 1451 5 1451 5 , SrcSpan "tests/examples/Attributes.hs" 1453 1 1453 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 10 1448 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 10 1448 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 10 1448 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 10 1448 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 10 1448 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 19 1448 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 19 1448 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1448 19 1448 29 , srcInfoPoints = [] } "OutputMode"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 5 1451 45 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 5 1451 45 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 5 1449 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 5 1449 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 13 1449 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 13 1449 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 13 1449 25 , srcInfoPoints = [] } "BreadthFirst")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 26 1449 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1449 26 1449 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 28 1449 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 28 1449 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 28 1449 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 28 1449 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 33 1449 47 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1449 33 1449 47 , srcInfoPoints = [] } "breadthfirst" "breadthfirst")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 5 1450 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 5 1450 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 13 1450 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 13 1450 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 13 1450 23 , srcInfoPoints = [] } "NodesFirst")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 26 1450 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1450 26 1450 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 28 1450 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 28 1450 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 28 1450 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 28 1450 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 33 1450 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1450 33 1450 45 , srcInfoPoints = [] } "nodesfirst" "nodesfirst")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 5 1451 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 5 1451 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 13 1451 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 13 1451 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 13 1451 23 , srcInfoPoints = [] } "EdgesFirst")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 26 1451 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1451 26 1451 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 28 1451 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 28 1451 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 28 1451 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 28 1451 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 33 1451 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1451 33 1451 45 , srcInfoPoints = [] } "edgesfirst" "edgesfirst")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 1 1461 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1453 1 1453 9 , SrcSpan "tests/examples/Attributes.hs" 1453 30 1453 35 , SrcSpan "tests/examples/Attributes.hs" 1454 5 1454 5 , SrcSpan "tests/examples/Attributes.hs" 1461 1 1461 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 10 1453 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 10 1453 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 10 1453 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 10 1453 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 10 1453 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 19 1453 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 19 1453 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1453 19 1453 29 , srcInfoPoints = [] } "OutputMode"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 5 1457 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 5 1457 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 5 1454 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 5 1454 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 15 1457 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1454 15 1454 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 17 1457 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 17 1454 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 17 1454 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 17 1454 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 23 1457 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1454 23 1454 24 , SrcSpan "tests/examples/Attributes.hs" 1455 23 1455 24 , SrcSpan "tests/examples/Attributes.hs" 1456 23 1456 24 , SrcSpan "tests/examples/Attributes.hs" 1457 23 1457 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 25 1454 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 25 1454 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 25 1454 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 25 1454 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 25 1454 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 35 1454 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 35 1454 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 35 1454 47 , srcInfoPoints = [] } "BreadthFirst")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 48 1454 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1454 48 1454 62 , srcInfoPoints = [] } "breadthfirst" "breadthfirst")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 25 1455 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 25 1455 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 25 1455 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 25 1455 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 25 1455 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 35 1455 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 35 1455 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 35 1455 45 , srcInfoPoints = [] } "NodesFirst")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 46 1455 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1455 46 1455 58 , srcInfoPoints = [] } "nodesfirst" "nodesfirst")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 25 1456 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 25 1456 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 25 1456 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 25 1456 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 25 1456 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 35 1456 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 35 1456 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 35 1456 45 , srcInfoPoints = [] } "EdgesFirst")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 46 1456 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1456 46 1456 58 , srcInfoPoints = [] } "edgesfirst" "edgesfirst")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1461 1 1464 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1461 11 1461 12 , SrcSpan "tests/examples/Attributes.hs" 1462 11 1462 12 , SrcSpan "tests/examples/Attributes.hs" 1463 11 1463 12 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1461 1 1461 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1461 6 1461 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1461 6 1461 10 , srcInfoPoints = [] } "Pack")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1461 13 1461 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1461 13 1461 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1461 13 1461 19 , srcInfoPoints = [] } "DoPack") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1462 13 1462 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1462 13 1462 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1462 13 1462 21 , srcInfoPoints = [] } "DontPack") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1463 13 1463 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1463 13 1463 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1463 13 1463 23 , srcInfoPoints = [] } "PackMargin") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1463 24 1463 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1463 24 1463 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1463 24 1463 27 , srcInfoPoints = [] } "Int")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 13 1464 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1464 13 1464 21 , SrcSpan "tests/examples/Attributes.hs" 1464 22 1464 23 , SrcSpan "tests/examples/Attributes.hs" 1464 25 1464 26 , SrcSpan "tests/examples/Attributes.hs" 1464 30 1464 31 , SrcSpan "tests/examples/Attributes.hs" 1464 36 1464 37 , SrcSpan "tests/examples/Attributes.hs" 1464 42 1464 43 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 23 1464 25 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 23 1464 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 23 1464 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 23 1464 25 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 27 1464 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 27 1464 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 27 1464 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 27 1464 30 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 32 1464 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 32 1464 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 32 1464 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 32 1464 36 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 38 1464 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 38 1464 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 38 1464 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1464 38 1464 42 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 1 1471 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1466 1 1466 9 , SrcSpan "tests/examples/Attributes.hs" 1466 24 1466 29 , SrcSpan "tests/examples/Attributes.hs" 1467 5 1467 5 , SrcSpan "tests/examples/Attributes.hs" 1468 5 1468 5 , SrcSpan "tests/examples/Attributes.hs" 1469 5 1469 5 , SrcSpan "tests/examples/Attributes.hs" 1471 1 1471 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 10 1466 23 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 10 1466 23 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 10 1466 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 10 1466 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 10 1466 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 19 1466 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 19 1466 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1466 19 1466 23 , srcInfoPoints = [] } "Pack"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 5 1469 39 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 5 1469 39 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 5 1467 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 5 1467 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 13 1467 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 13 1467 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 13 1467 19 , srcInfoPoints = [] } "DoPack")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 28 1467 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1467 28 1467 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 30 1467 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 30 1467 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 30 1467 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 30 1467 37 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 38 1467 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 38 1467 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1467 38 1467 42 , srcInfoPoints = [] } "True"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 5 1468 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 5 1468 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 13 1468 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 13 1468 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 13 1468 21 , srcInfoPoints = [] } "DontPack")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 28 1468 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1468 28 1468 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 30 1468 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 30 1468 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 30 1468 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 30 1468 37 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 38 1468 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 38 1468 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1468 38 1468 43 , srcInfoPoints = [] } "False"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 5 1469 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 5 1469 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 13 1469 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1469 13 1469 14 , SrcSpan "tests/examples/Attributes.hs" 1469 26 1469 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 14 1469 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 14 1469 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 14 1469 24 , srcInfoPoints = [] } "PackMargin")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 25 1469 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 25 1469 26 , srcInfoPoints = [] } "m") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 28 1469 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1469 28 1469 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 30 1469 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 30 1469 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 30 1469 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 30 1469 37 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 38 1469 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 38 1469 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1469 38 1469 39 , srcInfoPoints = [] } "m"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 1 1479 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1471 1 1471 9 , SrcSpan "tests/examples/Attributes.hs" 1471 24 1471 29 , SrcSpan "tests/examples/Attributes.hs" 1473 5 1473 5 , SrcSpan "tests/examples/Attributes.hs" 1479 1 1479 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 10 1471 23 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 10 1471 23 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 10 1471 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 10 1471 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 10 1471 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 19 1471 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 19 1471 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1471 19 1471 23 , srcInfoPoints = [] } "Pack"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 5 1475 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 5 1475 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 5 1473 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 5 1473 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 15 1475 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1473 15 1473 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 17 1475 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 17 1473 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 17 1473 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 17 1473 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 23 1475 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1473 23 1473 24 , SrcSpan "tests/examples/Attributes.hs" 1474 23 1474 24 , SrcSpan "tests/examples/Attributes.hs" 1475 23 1475 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 25 1473 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 25 1473 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 25 1473 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 25 1473 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 25 1473 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 31 1473 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 31 1473 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 31 1473 41 , srcInfoPoints = [] } "PackMargin")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 42 1473 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 42 1473 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1473 42 1473 51 , srcInfoPoints = [] } "parseUnqt"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 25 1474 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 25 1474 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 25 1474 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 25 1474 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 25 1474 30 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 31 1474 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1474 31 1474 32 , SrcSpan "tests/examples/Attributes.hs" 1474 52 1474 53 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 32 1474 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 32 1474 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 32 1474 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 32 1474 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 32 1474 36 , srcInfoPoints = [] } "bool"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 37 1474 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 37 1474 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 37 1474 45 , srcInfoPoints = [] } "DontPack")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 46 1474 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 46 1474 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 46 1474 52 , srcInfoPoints = [] } "DoPack")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 54 1474 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 54 1474 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1474 54 1474 62 , srcInfoPoints = [] } "onlyBool"))) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1479 1 1485 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1479 15 1479 16 , SrcSpan "tests/examples/Attributes.hs" 1480 15 1480 16 , SrcSpan "tests/examples/Attributes.hs" 1481 15 1481 16 , SrcSpan "tests/examples/Attributes.hs" 1482 15 1482 16 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1479 1 1479 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1479 6 1479 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1479 6 1479 14 , srcInfoPoints = [] } "PackMode")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1479 17 1479 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1479 17 1479 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1479 17 1479 25 , srcInfoPoints = [] } "PackNode") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1480 17 1480 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1480 17 1480 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1480 17 1480 26 , srcInfoPoints = [] } "PackClust") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1481 17 1481 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1481 17 1481 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1481 17 1481 26 , srcInfoPoints = [] } "PackGraph") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 17 1482 48 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 17 1482 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 17 1482 26 , srcInfoPoints = [] } "PackArray") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 27 1482 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 27 1482 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 27 1482 31 , srcInfoPoints = [] } "Bool")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 32 1482 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 32 1482 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 32 1482 36 , srcInfoPoints = [] } "Bool")) , TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 37 1482 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1482 37 1482 38 , SrcSpan "tests/examples/Attributes.hs" 1482 47 1482 48 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 38 1482 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 38 1482 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 38 1482 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 38 1482 43 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 44 1482 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 44 1482 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1482 44 1482 47 , srcInfoPoints = [] } "Int")))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 17 1485 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1485 17 1485 25 , SrcSpan "tests/examples/Attributes.hs" 1485 26 1485 27 , SrcSpan "tests/examples/Attributes.hs" 1485 29 1485 30 , SrcSpan "tests/examples/Attributes.hs" 1485 34 1485 35 , SrcSpan "tests/examples/Attributes.hs" 1485 40 1485 41 , SrcSpan "tests/examples/Attributes.hs" 1485 46 1485 47 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 27 1485 29 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 27 1485 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 27 1485 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 27 1485 29 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 31 1485 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 31 1485 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 31 1485 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 31 1485 34 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 36 1485 40 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 36 1485 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 36 1485 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 36 1485 40 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 42 1485 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 42 1485 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 42 1485 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1485 42 1485 46 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 1 1505 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1487 1 1487 9 , SrcSpan "tests/examples/Attributes.hs" 1487 28 1487 33 , SrcSpan "tests/examples/Attributes.hs" 1488 5 1488 5 , SrcSpan "tests/examples/Attributes.hs" 1489 5 1489 5 , SrcSpan "tests/examples/Attributes.hs" 1490 5 1490 5 , SrcSpan "tests/examples/Attributes.hs" 1491 5 1491 5 , SrcSpan "tests/examples/Attributes.hs" 1505 1 1505 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 10 1487 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 10 1487 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 10 1487 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 10 1487 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 10 1487 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 19 1487 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 19 1487 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1487 19 1487 27 , srcInfoPoints = [] } "PackMode"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 5 1503 24 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 5 1503 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 5 1488 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 5 1488 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 13 1488 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 13 1488 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 13 1488 21 , srcInfoPoints = [] } "PackNode")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 32 1488 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1488 32 1488 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 34 1488 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 34 1488 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 34 1488 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 34 1488 38 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 39 1488 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1488 39 1488 45 , srcInfoPoints = [] } "node" "node")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 5 1489 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 5 1489 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 13 1489 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 13 1489 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 13 1489 22 , srcInfoPoints = [] } "PackClust")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 32 1489 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1489 32 1489 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 34 1489 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 34 1489 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 34 1489 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 34 1489 38 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 39 1489 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1489 39 1489 46 , srcInfoPoints = [] } "clust" "clust")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 5 1490 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 5 1490 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 13 1490 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 13 1490 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 13 1490 22 , srcInfoPoints = [] } "PackGraph")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 32 1490 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1490 32 1490 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 34 1490 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 34 1490 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 34 1490 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 34 1490 38 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 39 1490 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1490 39 1490 46 , srcInfoPoints = [] } "graph" "graph")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 5 1503 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1493 9 1493 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 5 1491 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 13 1491 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1491 13 1491 14 , SrcSpan "tests/examples/Attributes.hs" 1491 30 1491 31 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 14 1491 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 14 1491 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 14 1491 23 , srcInfoPoints = [] } "PackArray")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 24 1491 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 24 1491 25 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 26 1491 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 26 1491 27 , srcInfoPoints = [] } "u") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 28 1491 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 28 1491 30 , srcInfoPoints = [] } "mi") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 32 1492 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1491 32 1491 33 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 34 1492 48 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 34 1491 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 34 1491 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 34 1491 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 34 1491 40 , srcInfoPoints = [] } "addNum"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 41 1491 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 41 1491 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 41 1491 42 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 43 1491 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 43 1491 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 43 1491 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 43 1491 46 , srcInfoPoints = [] } "isU"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 47 1491 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 47 1491 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 47 1491 48 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 49 1491 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 49 1491 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 49 1491 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 49 1491 52 , srcInfoPoints = [] } "isC"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 53 1491 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 53 1491 54 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 53 1491 54 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 55 1491 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 55 1491 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1491 55 1491 62 , srcInfoPoints = [] } "isUnder")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 34 1492 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 34 1492 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 34 1492 35 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 36 1492 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 36 1492 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 36 1492 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 36 1492 40 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 41 1492 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1492 41 1492 48 , srcInfoPoints = [] } "array" "array"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 11 1503 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1494 11 1494 11 , SrcSpan "tests/examples/Attributes.hs" 1495 11 1495 11 , SrcSpan "tests/examples/Attributes.hs" 1498 11 1498 11 , SrcSpan "tests/examples/Attributes.hs" 1501 11 1501 11 , SrcSpan "tests/examples/Attributes.hs" 1505 1 1505 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 11 1494 53 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 11 1494 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 11 1494 17 , srcInfoPoints = [] } "addNum")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 18 1494 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1494 18 1494 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 20 1494 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 20 1494 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 20 1494 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 20 1494 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 20 1494 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 20 1494 25 , srcInfoPoints = [] } "maybe"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 26 1494 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 26 1494 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 26 1494 28 , srcInfoPoints = [] } "id")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 29 1494 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1494 29 1494 30 , SrcSpan "tests/examples/Attributes.hs" 1494 49 1494 50 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 30 1494 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 30 1494 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 30 1494 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 30 1494 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 30 1494 34 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 35 1494 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1494 35 1494 36 , SrcSpan "tests/examples/Attributes.hs" 1494 36 1494 38 , SrcSpan "tests/examples/Attributes.hs" 1494 38 1494 39 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 35 1494 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1494 35 1494 36 , SrcSpan "tests/examples/Attributes.hs" 1494 36 1494 38 , SrcSpan "tests/examples/Attributes.hs" 1494 38 1494 39 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 36 1494 38 , srcInfoPoints = [] } "<>")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 40 1494 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 40 1494 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 40 1494 41 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 42 1494 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 42 1494 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 42 1494 49 , srcInfoPoints = [] } "unqtDot")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 51 1494 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 51 1494 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1494 51 1494 53 , srcInfoPoints = [] } "mi"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 11 1497 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 11 1495 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 11 1495 18 , srcInfoPoints = [] } "isUnder")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 19 1497 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1495 19 1495 20 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 21 1497 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1495 21 1495 23 , SrcSpan "tests/examples/Attributes.hs" 1496 21 1496 25 , SrcSpan "tests/examples/Attributes.hs" 1497 21 1497 25 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 24 1495 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 24 1495 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 24 1495 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 24 1495 25 , srcInfoPoints = [] } "c"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 26 1495 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 26 1495 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 26 1495 28 , srcInfoPoints = [] } "||"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 29 1495 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 29 1495 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1495 29 1495 30 , srcInfoPoints = [] } "u")))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 26 1496 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 26 1496 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 26 1496 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 26 1496 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 26 1496 30 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 31 1496 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1496 31 1496 32 , SrcSpan "tests/examples/Attributes.hs" 1496 32 1496 34 , SrcSpan "tests/examples/Attributes.hs" 1496 34 1496 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 31 1496 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1496 31 1496 32 , SrcSpan "tests/examples/Attributes.hs" 1496 32 1496 34 , SrcSpan "tests/examples/Attributes.hs" 1496 34 1496 35 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 32 1496 34 , srcInfoPoints = [] } "<>")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 36 1496 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 36 1496 37 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 36 1496 37 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 38 1496 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 38 1496 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 38 1496 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 38 1496 42 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 43 1496 46 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1496 43 1496 46 , srcInfoPoints = [] } '_' "_")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1497 26 1497 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1497 26 1497 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1497 26 1497 28 , srcInfoPoints = [] } "id"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1498 11 1500 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1498 11 1498 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1498 11 1498 14 , srcInfoPoints = [] } "isC")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1498 15 1500 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1498 15 1498 16 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1498 17 1500 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1498 17 1498 19 , SrcSpan "tests/examples/Attributes.hs" 1499 17 1499 21 , SrcSpan "tests/examples/Attributes.hs" 1500 17 1500 21 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1498 20 1498 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1498 20 1498 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1498 20 1498 21 , srcInfoPoints = [] } "c"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 22 1499 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 22 1499 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 22 1499 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 22 1499 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 22 1499 26 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 27 1499 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1499 27 1499 28 , SrcSpan "tests/examples/Attributes.hs" 1499 28 1499 30 , SrcSpan "tests/examples/Attributes.hs" 1499 30 1499 31 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 27 1499 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1499 27 1499 28 , SrcSpan "tests/examples/Attributes.hs" 1499 28 1499 30 , SrcSpan "tests/examples/Attributes.hs" 1499 30 1499 31 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 28 1499 30 , srcInfoPoints = [] } "<>")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 32 1499 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 32 1499 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 32 1499 33 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 34 1499 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 34 1499 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 34 1499 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 34 1499 38 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 39 1499 42 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1499 39 1499 42 , srcInfoPoints = [] } 'c' "c")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1500 22 1500 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1500 22 1500 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1500 22 1500 24 , srcInfoPoints = [] } "id"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1501 11 1503 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1501 11 1501 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1501 11 1501 14 , srcInfoPoints = [] } "isU")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1501 15 1503 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1501 15 1501 16 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1501 17 1503 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1501 17 1501 19 , SrcSpan "tests/examples/Attributes.hs" 1502 17 1502 21 , SrcSpan "tests/examples/Attributes.hs" 1503 17 1503 21 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1501 20 1501 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1501 20 1501 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1501 20 1501 21 , srcInfoPoints = [] } "u"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 22 1502 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 22 1502 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 22 1502 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 22 1502 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 22 1502 26 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 27 1502 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1502 27 1502 28 , SrcSpan "tests/examples/Attributes.hs" 1502 28 1502 30 , SrcSpan "tests/examples/Attributes.hs" 1502 30 1502 31 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 27 1502 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1502 27 1502 28 , SrcSpan "tests/examples/Attributes.hs" 1502 28 1502 30 , SrcSpan "tests/examples/Attributes.hs" 1502 30 1502 31 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 28 1502 30 , srcInfoPoints = [] } "<>")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 32 1502 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 32 1502 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 32 1502 33 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 34 1502 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 34 1502 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 34 1502 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 34 1502 38 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 39 1502 42 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1502 39 1502 42 , srcInfoPoints = [] } 'u' "u")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1503 22 1503 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1503 22 1503 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1503 22 1503 24 , srcInfoPoints = [] } "id"))))) Nothing ])) ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 1 1524 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1505 1 1505 9 , SrcSpan "tests/examples/Attributes.hs" 1505 28 1505 33 , SrcSpan "tests/examples/Attributes.hs" 1506 5 1506 5 , SrcSpan "tests/examples/Attributes.hs" 1524 1 1524 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 10 1505 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 10 1505 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 10 1505 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 10 1505 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 10 1505 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 19 1505 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 19 1505 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1505 19 1505 27 , srcInfoPoints = [] } "PackMode"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 5 1520 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1517 9 1517 14 ] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 5 1520 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1517 9 1517 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 5 1506 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 5 1506 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 15 1516 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1506 15 1506 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 17 1516 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 17 1506 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 17 1506 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 17 1506 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 23 1516 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1506 23 1506 24 , SrcSpan "tests/examples/Attributes.hs" 1507 23 1507 24 , SrcSpan "tests/examples/Attributes.hs" 1508 23 1508 24 , SrcSpan "tests/examples/Attributes.hs" 1509 23 1509 24 , SrcSpan "tests/examples/Attributes.hs" 1516 23 1516 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 25 1506 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 25 1506 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 25 1506 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 25 1506 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 25 1506 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 35 1506 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 35 1506 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 35 1506 43 , srcInfoPoints = [] } "PackNode")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 44 1506 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1506 44 1506 50 , srcInfoPoints = [] } "node" "node")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 25 1507 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 25 1507 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 25 1507 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 25 1507 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 25 1507 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 35 1507 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 35 1507 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 35 1507 44 , srcInfoPoints = [] } "PackClust")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 45 1507 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1507 45 1507 52 , srcInfoPoints = [] } "clust" "clust")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 25 1508 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 25 1508 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 25 1508 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 25 1508 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 25 1508 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 35 1508 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 35 1508 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 35 1508 44 , srcInfoPoints = [] } "PackGraph")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 45 1508 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1508 45 1508 52 , srcInfoPoints = [] } "graph" "graph")) , Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1509 25 1515 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1509 25 1509 27 , SrcSpan "tests/examples/Attributes.hs" 1509 28 1509 28 , SrcSpan "tests/examples/Attributes.hs" 1510 28 1510 28 , SrcSpan "tests/examples/Attributes.hs" 1512 28 1512 28 , SrcSpan "tests/examples/Attributes.hs" 1514 28 1514 28 , SrcSpan "tests/examples/Attributes.hs" 1515 28 1515 28 , SrcSpan "tests/examples/Attributes.hs" 1516 23 1516 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1509 28 1509 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1509 28 1509 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1509 28 1509 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1509 28 1509 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1509 28 1509 34 , srcInfoPoints = [] } "string"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1509 35 1509 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1509 35 1509 42 , srcInfoPoints = [] } "array" "array"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 28 1511 69 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1510 32 1510 34 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 28 1510 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 28 1510 31 , srcInfoPoints = [] } "mcu")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 35 1511 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 35 1510 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 35 1510 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 35 1510 43 , srcInfoPoints = [] } "optional"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 44 1510 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 44 1510 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 44 1510 45 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 46 1511 69 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1510 46 1510 48 , SrcSpan "tests/examples/Attributes.hs" 1510 49 1510 49 , SrcSpan "tests/examples/Attributes.hs" 1511 49 1511 49 , SrcSpan "tests/examples/Attributes.hs" 1512 28 1512 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 49 1510 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 49 1510 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 49 1510 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 49 1510 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 49 1510 58 , srcInfoPoints = [] } "character"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 59 1510 62 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1510 59 1510 62 , srcInfoPoints = [] } '_' "_"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 49 1511 69 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 49 1511 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 49 1511 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 49 1511 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 49 1511 54 , srcInfoPoints = [] } "many1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 55 1511 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 55 1511 56 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 55 1511 56 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 57 1511 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 57 1511 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 57 1511 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 57 1511 64 , srcInfoPoints = [] } "satisfy"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 65 1511 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 65 1511 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1511 65 1511 69 , srcInfoPoints = [] } "isCU"))))) ])) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 28 1513 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1512 28 1512 31 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 32 1513 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1512 32 1512 32 , SrcSpan "tests/examples/Attributes.hs" 1513 32 1513 32 , SrcSpan "tests/examples/Attributes.hs" 1514 28 1514 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 32 1512 56 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 32 1512 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 32 1512 33 , srcInfoPoints = [] } "c")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 34 1512 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1512 34 1512 35 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 36 1512 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 36 1512 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 36 1512 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 36 1512 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 36 1512 48 , srcInfoPoints = [] } "hasCharacter"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 49 1512 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 49 1512 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 49 1512 52 , srcInfoPoints = [] } "mcu")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 53 1512 56 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1512 53 1512 56 , srcInfoPoints = [] } 'c' "c")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 32 1513 56 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 32 1513 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 32 1513 33 , srcInfoPoints = [] } "u")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 34 1513 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1513 34 1513 35 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 36 1513 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 36 1513 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 36 1513 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 36 1513 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 36 1513 48 , srcInfoPoints = [] } "hasCharacter"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 49 1513 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 49 1513 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 49 1513 52 , srcInfoPoints = [] } "mcu")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 53 1513 56 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1513 53 1513 56 , srcInfoPoints = [] } 'u' "u")))) Nothing ]) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 28 1514 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1514 31 1514 33 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 28 1514 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 28 1514 30 , srcInfoPoints = [] } "mi")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 34 1514 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 34 1514 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 34 1514 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 34 1514 42 , srcInfoPoints = [] } "optional"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 43 1514 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 43 1514 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1514 43 1514 52 , srcInfoPoints = [] } "parseUnqt")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 28 1515 53 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 28 1515 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 28 1515 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 28 1515 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 28 1515 34 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 35 1515 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 35 1515 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 35 1515 36 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 37 1515 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 37 1515 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 37 1515 48 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 37 1515 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 37 1515 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 37 1515 46 , srcInfoPoints = [] } "PackArray"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 47 1515 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 47 1515 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 47 1515 48 , srcInfoPoints = [] } "c")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 49 1515 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 49 1515 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 49 1515 50 , srcInfoPoints = [] } "u")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 51 1515 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 51 1515 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1515 51 1515 53 , srcInfoPoints = [] } "mi"))))) ] ]))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 11 1520 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1518 11 1518 11 , SrcSpan "tests/examples/Attributes.hs" 1520 11 1520 11 , SrcSpan "tests/examples/Attributes.hs" 1524 1 1524 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 11 1518 54 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 11 1518 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 11 1518 23 , srcInfoPoints = [] } "hasCharacter") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 24 1518 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 24 1518 26 , srcInfoPoints = [] } "ms") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 27 1518 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 27 1518 28 , srcInfoPoints = [] } "c") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 29 1518 54 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1518 29 1518 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 31 1518 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 31 1518 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 31 1518 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 31 1518 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 31 1518 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 31 1518 36 , srcInfoPoints = [] } "maybe"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 37 1518 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 37 1518 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 37 1518 42 , srcInfoPoints = [] } "False")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 43 1518 51 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1518 43 1518 44 , SrcSpan "tests/examples/Attributes.hs" 1518 50 1518 51 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 44 1518 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 44 1518 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 44 1518 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 44 1518 48 , srcInfoPoints = [] } "elem"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 49 1518 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 49 1518 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 49 1518 50 , srcInfoPoints = [] } "c")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 52 1518 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 52 1518 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1518 52 1518 54 , srcInfoPoints = [] } "ms"))))) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 11 1520 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 11 1520 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 11 1520 15 , srcInfoPoints = [] } "isCU")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 16 1520 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1520 16 1520 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 18 1520 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 18 1520 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 18 1520 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 18 1520 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 18 1520 22 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 23 1520 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 23 1520 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 23 1520 27 , srcInfoPoints = [] } "elem")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 28 1520 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1520 28 1520 29 , SrcSpan "tests/examples/Attributes.hs" 1520 32 1520 33 , SrcSpan "tests/examples/Attributes.hs" 1520 37 1520 38 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 29 1520 32 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 29 1520 32 , srcInfoPoints = [] } 'c' "c") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 34 1520 37 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1520 34 1520 37 , srcInfoPoints = [] } 'u' "u") ]))) Nothing ]))) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 1 1526 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1524 10 1524 11 , SrcSpan "tests/examples/Attributes.hs" 1525 10 1525 11 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 1 1524 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 6 1524 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 6 1524 9 , srcInfoPoints = [] } "Pos")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 12 1524 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 12 1524 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 12 1524 20 , srcInfoPoints = [] } "PointPos") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 21 1524 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 21 1524 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1524 21 1524 26 , srcInfoPoints = [] } "Point")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1525 12 1525 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1525 12 1525 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1525 12 1525 21 , srcInfoPoints = [] } "SplinePos") [ TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1525 22 1525 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1525 22 1525 23 , SrcSpan "tests/examples/Attributes.hs" 1525 29 1525 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1525 23 1525 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1525 23 1525 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1525 23 1525 29 , srcInfoPoints = [] } "Spline"))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 12 1526 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1526 12 1526 20 , SrcSpan "tests/examples/Attributes.hs" 1526 21 1526 22 , SrcSpan "tests/examples/Attributes.hs" 1526 24 1526 25 , SrcSpan "tests/examples/Attributes.hs" 1526 29 1526 30 , SrcSpan "tests/examples/Attributes.hs" 1526 35 1526 36 , SrcSpan "tests/examples/Attributes.hs" 1526 41 1526 42 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 22 1526 24 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 22 1526 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 22 1526 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 22 1526 24 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 26 1526 29 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 26 1526 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 26 1526 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 26 1526 29 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 31 1526 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 31 1526 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 31 1526 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 31 1526 35 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 37 1526 41 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 37 1526 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 37 1526 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1526 37 1526 41 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 1 1535 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1528 1 1528 9 , SrcSpan "tests/examples/Attributes.hs" 1528 23 1528 28 , SrcSpan "tests/examples/Attributes.hs" 1529 5 1529 5 , SrcSpan "tests/examples/Attributes.hs" 1530 5 1530 5 , SrcSpan "tests/examples/Attributes.hs" 1532 5 1532 5 , SrcSpan "tests/examples/Attributes.hs" 1533 5 1533 5 , SrcSpan "tests/examples/Attributes.hs" 1535 1 1535 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 10 1528 22 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 10 1528 22 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 10 1528 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 10 1528 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 10 1528 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 19 1528 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 19 1528 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1528 19 1528 22 , srcInfoPoints = [] } "Pos"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 5 1530 40 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 5 1530 40 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 5 1529 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 5 1529 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 13 1529 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1529 13 1529 14 , SrcSpan "tests/examples/Attributes.hs" 1529 24 1529 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 14 1529 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 14 1529 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 14 1529 22 , srcInfoPoints = [] } "PointPos")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 23 1529 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 23 1529 24 , srcInfoPoints = [] } "p") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 28 1529 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1529 28 1529 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 30 1529 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 30 1529 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 30 1529 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 30 1529 37 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 38 1529 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 38 1529 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1529 38 1529 39 , srcInfoPoints = [] } "p"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 5 1530 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 5 1530 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 13 1530 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1530 13 1530 14 , SrcSpan "tests/examples/Attributes.hs" 1530 26 1530 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 14 1530 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 14 1530 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 14 1530 23 , srcInfoPoints = [] } "SplinePos")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 24 1530 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 24 1530 26 , srcInfoPoints = [] } "ss") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 28 1530 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1530 28 1530 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 30 1530 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 30 1530 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 30 1530 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 30 1530 37 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 38 1530 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 38 1530 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1530 38 1530 40 , srcInfoPoints = [] } "ss"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 5 1533 36 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 5 1533 36 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 5 1532 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 5 1532 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 11 1532 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1532 11 1532 12 , SrcSpan "tests/examples/Attributes.hs" 1532 22 1532 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 12 1532 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 12 1532 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 12 1532 20 , srcInfoPoints = [] } "PointPos")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 21 1532 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 21 1532 22 , srcInfoPoints = [] } "p") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 26 1532 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1532 26 1532 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 28 1532 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 28 1532 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 28 1532 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 28 1532 33 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 34 1532 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 34 1532 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1532 34 1532 35 , srcInfoPoints = [] } "p"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 5 1533 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 5 1533 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 11 1533 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1533 11 1533 12 , SrcSpan "tests/examples/Attributes.hs" 1533 24 1533 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 12 1533 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 12 1533 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 12 1533 21 , srcInfoPoints = [] } "SplinePos")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 22 1533 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 22 1533 24 , srcInfoPoints = [] } "ss") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 26 1533 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1533 26 1533 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 28 1533 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 28 1533 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 28 1533 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 28 1533 33 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 34 1533 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 34 1533 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1533 34 1533 36 , srcInfoPoints = [] } "ss"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 1 1550 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1535 1 1535 9 , SrcSpan "tests/examples/Attributes.hs" 1535 23 1535 28 , SrcSpan "tests/examples/Attributes.hs" 1540 5 1540 5 , SrcSpan "tests/examples/Attributes.hs" 1545 5 1545 5 , SrcSpan "tests/examples/Attributes.hs" 1550 1 1550 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 10 1535 22 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 10 1535 22 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 10 1535 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 10 1535 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 10 1535 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 19 1535 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 19 1535 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1535 19 1535 22 , srcInfoPoints = [] } "Pos"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 5 1543 78 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 5 1543 78 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 5 1540 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 5 1540 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 15 1543 78 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1540 15 1540 16 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 17 1543 78 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1540 17 1540 19 , SrcSpan "tests/examples/Attributes.hs" 1540 20 1540 20 , SrcSpan "tests/examples/Attributes.hs" 1541 20 1541 20 , SrcSpan "tests/examples/Attributes.hs" 1545 5 1545 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 20 1540 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1540 26 1540 28 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 20 1540 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 20 1540 25 , srcInfoPoints = [] } "splns")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 29 1540 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 29 1540 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1540 29 1540 38 , srcInfoPoints = [] } "parseUnqt"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1541 20 1543 78 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1541 20 1541 24 , SrcSpan "tests/examples/Attributes.hs" 1541 31 1541 33 , SrcSpan "tests/examples/Attributes.hs" 1542 22 1542 22 , SrcSpan "tests/examples/Attributes.hs" 1543 22 1543 22 , SrcSpan "tests/examples/Attributes.hs" 1545 5 1545 0 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1541 20 1543 78 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1541 20 1541 24 , SrcSpan "tests/examples/Attributes.hs" 1541 31 1541 33 , SrcSpan "tests/examples/Attributes.hs" 1542 22 1542 22 , SrcSpan "tests/examples/Attributes.hs" 1543 22 1543 22 , SrcSpan "tests/examples/Attributes.hs" 1545 5 1545 0 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1541 25 1541 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1541 25 1541 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1541 25 1541 30 , srcInfoPoints = [] } "splns"))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 22 1542 73 , srcInfoPoints = [] } (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 22 1542 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1542 22 1542 23 , SrcSpan "tests/examples/Attributes.hs" 1542 49 1542 50 ] } [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 23 1542 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 23 1542 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 23 1542 29 , srcInfoPoints = [] } "Spline")) [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 30 1542 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 30 1542 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 30 1542 37 , srcInfoPoints = [] } "Nothing")) [] , PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 38 1542 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 38 1542 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 38 1542 45 , srcInfoPoints = [] } "Nothing")) [] , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 46 1542 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1542 46 1542 47 , SrcSpan "tests/examples/Attributes.hs" 1542 48 1542 49 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 47 1542 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 47 1542 48 , srcInfoPoints = [] } "p") ] ] ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 51 1542 73 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1542 51 1542 53 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 54 1542 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 54 1542 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 54 1542 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 54 1542 60 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 61 1542 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 61 1542 62 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 61 1542 62 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 63 1542 73 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 63 1542 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 63 1542 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 63 1542 71 , srcInfoPoints = [] } "PointPos"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 72 1542 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 72 1542 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1542 72 1542 73 , srcInfoPoints = [] } "p")))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 22 1543 78 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 22 1543 23 , srcInfoPoints = [] }) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 51 1543 78 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1543 51 1543 53 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 54 1543 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 54 1543 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 54 1543 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 54 1543 60 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 61 1543 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 61 1543 62 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 61 1543 62 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 63 1543 78 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 63 1543 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 63 1543 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 63 1543 72 , srcInfoPoints = [] } "SplinePos"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 73 1543 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 73 1543 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1543 73 1543 78 , srcInfoPoints = [] } "splns")))))) Nothing ]) ])) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 5 1545 34 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 5 1545 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 5 1545 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 5 1545 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 11 1545 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1545 11 1545 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 13 1545 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 13 1545 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 13 1545 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 13 1545 24 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 25 1545 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 25 1545 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1545 25 1545 34 , srcInfoPoints = [] } "parseUnqt"))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1550 1 1555 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1550 15 1550 16 , SrcSpan "tests/examples/Attributes.hs" 1551 15 1551 16 , SrcSpan "tests/examples/Attributes.hs" 1552 15 1552 16 , SrcSpan "tests/examples/Attributes.hs" 1553 15 1553 16 , SrcSpan "tests/examples/Attributes.hs" 1554 15 1554 16 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1550 1 1550 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1550 6 1550 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1550 6 1550 14 , srcInfoPoints = [] } "EdgeType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1550 17 1550 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1550 17 1550 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1550 17 1550 28 , srcInfoPoints = [] } "SplineEdges") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1551 17 1551 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1551 17 1551 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1551 17 1551 26 , srcInfoPoints = [] } "LineEdges") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1552 17 1552 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1552 17 1552 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1552 17 1552 24 , srcInfoPoints = [] } "NoEdges") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1553 17 1553 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1553 17 1553 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1553 17 1553 25 , srcInfoPoints = [] } "PolyLine") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1554 17 1554 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1554 17 1554 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1554 17 1554 29 , srcInfoPoints = [] } "CompoundEdge") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 17 1555 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1555 17 1555 25 , SrcSpan "tests/examples/Attributes.hs" 1555 26 1555 27 , SrcSpan "tests/examples/Attributes.hs" 1555 29 1555 30 , SrcSpan "tests/examples/Attributes.hs" 1555 34 1555 35 , SrcSpan "tests/examples/Attributes.hs" 1555 43 1555 44 , SrcSpan "tests/examples/Attributes.hs" 1555 49 1555 50 , SrcSpan "tests/examples/Attributes.hs" 1555 55 1555 56 , SrcSpan "tests/examples/Attributes.hs" 1555 61 1555 62 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 27 1555 29 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 27 1555 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 27 1555 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 27 1555 29 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 31 1555 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 31 1555 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 31 1555 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 31 1555 34 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 36 1555 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 36 1555 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 36 1555 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 36 1555 43 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 45 1555 49 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 45 1555 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 45 1555 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 45 1555 49 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 51 1555 55 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 51 1555 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 51 1555 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 51 1555 55 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 57 1555 61 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 57 1555 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 57 1555 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1555 57 1555 61 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 1 1567 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1557 1 1557 9 , SrcSpan "tests/examples/Attributes.hs" 1557 28 1557 33 , SrcSpan "tests/examples/Attributes.hs" 1558 5 1558 5 , SrcSpan "tests/examples/Attributes.hs" 1559 5 1559 5 , SrcSpan "tests/examples/Attributes.hs" 1560 5 1560 5 , SrcSpan "tests/examples/Attributes.hs" 1561 5 1561 5 , SrcSpan "tests/examples/Attributes.hs" 1562 5 1562 5 , SrcSpan "tests/examples/Attributes.hs" 1564 5 1564 5 , SrcSpan "tests/examples/Attributes.hs" 1565 5 1565 5 , SrcSpan "tests/examples/Attributes.hs" 1567 1 1567 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 10 1557 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 10 1557 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 10 1557 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 10 1557 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 10 1557 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 19 1557 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 19 1557 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1557 19 1557 27 , srcInfoPoints = [] } "EdgeType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 5 1562 43 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 5 1562 43 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 5 1558 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 5 1558 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 13 1558 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 13 1558 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 13 1558 24 , srcInfoPoints = [] } "SplineEdges")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 26 1558 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1558 26 1558 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 28 1558 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 28 1558 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 28 1558 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 28 1558 33 , srcInfoPoints = [] } "toDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 34 1558 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 34 1558 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1558 34 1558 38 , srcInfoPoints = [] } "True"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 5 1559 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 5 1559 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 13 1559 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 13 1559 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 13 1559 22 , srcInfoPoints = [] } "LineEdges")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 26 1559 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1559 26 1559 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 28 1559 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 28 1559 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 28 1559 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 28 1559 33 , srcInfoPoints = [] } "toDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 34 1559 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 34 1559 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1559 34 1559 39 , srcInfoPoints = [] } "False"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 5 1560 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 5 1560 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 13 1560 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 13 1560 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 13 1560 20 , srcInfoPoints = [] } "NoEdges")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 26 1560 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1560 26 1560 27 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 28 1560 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 28 1560 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1560 28 1560 33 , srcInfoPoints = [] } "empty")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 5 1561 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 5 1561 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 13 1561 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 13 1561 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 13 1561 21 , srcInfoPoints = [] } "PolyLine")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 26 1561 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1561 26 1561 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 28 1561 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 28 1561 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 28 1561 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 28 1561 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 33 1561 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1561 33 1561 43 , srcInfoPoints = [] } "polyline" "polyline")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 5 1562 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 5 1562 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 13 1562 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 13 1562 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 13 1562 25 , srcInfoPoints = [] } "CompoundEdge")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 26 1562 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1562 26 1562 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 28 1562 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 28 1562 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 28 1562 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 28 1562 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 33 1562 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1562 33 1562 43 , srcInfoPoints = [] } "compound" "compound")))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 5 1565 31 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 5 1565 31 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 5 1564 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 5 1564 10 , srcInfoPoints = [] } "toDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 11 1564 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 11 1564 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 11 1564 18 , srcInfoPoints = [] } "NoEdges")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 19 1564 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1564 19 1564 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 21 1564 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 21 1564 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 21 1564 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 21 1564 33 , srcInfoPoints = [] } "doubleQuotes"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 34 1564 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 34 1564 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1564 34 1564 39 , srcInfoPoints = [] } "empty"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 5 1565 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 5 1565 10 , srcInfoPoints = [] } "toDot") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 11 1565 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 11 1565 13 , srcInfoPoints = [] } "et") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 19 1565 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1565 19 1565 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 21 1565 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 21 1565 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 21 1565 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 21 1565 28 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 29 1565 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 29 1565 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1565 29 1565 31 , srcInfoPoints = [] } "et"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 1 1584 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1567 1 1567 9 , SrcSpan "tests/examples/Attributes.hs" 1567 28 1567 33 , SrcSpan "tests/examples/Attributes.hs" 1569 5 1569 5 , SrcSpan "tests/examples/Attributes.hs" 1576 5 1576 5 , SrcSpan "tests/examples/Attributes.hs" 1584 1 1584 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 10 1567 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 10 1567 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 10 1567 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 10 1567 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 10 1567 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 19 1567 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 19 1567 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1567 19 1567 27 , srcInfoPoints = [] } "EdgeType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 5 1574 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 5 1574 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 5 1569 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 5 1569 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 15 1574 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1569 15 1569 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 17 1574 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 17 1569 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 17 1569 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 17 1569 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 23 1574 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1569 23 1569 24 , SrcSpan "tests/examples/Attributes.hs" 1570 23 1570 24 , SrcSpan "tests/examples/Attributes.hs" 1571 23 1571 24 , SrcSpan "tests/examples/Attributes.hs" 1572 23 1572 24 , SrcSpan "tests/examples/Attributes.hs" 1573 23 1573 24 , SrcSpan "tests/examples/Attributes.hs" 1574 23 1574 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 25 1569 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 25 1569 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 25 1569 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 25 1569 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 25 1569 30 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 31 1569 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1569 31 1569 32 , SrcSpan "tests/examples/Attributes.hs" 1569 58 1569 59 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 32 1569 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 32 1569 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 32 1569 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 32 1569 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 32 1569 36 , srcInfoPoints = [] } "bool"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 37 1569 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 37 1569 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 37 1569 46 , srcInfoPoints = [] } "LineEdges")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 47 1569 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 47 1569 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 47 1569 58 , srcInfoPoints = [] } "SplineEdges")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 60 1569 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 60 1569 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1569 60 1569 65 , srcInfoPoints = [] } "parse"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 25 1570 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 25 1570 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 25 1570 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 25 1570 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 25 1570 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 35 1570 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 35 1570 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 35 1570 46 , srcInfoPoints = [] } "SplineEdges")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 47 1570 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1570 47 1570 55 , srcInfoPoints = [] } "spline" "spline")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 25 1571 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 25 1571 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 25 1571 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 25 1571 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 25 1571 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 35 1571 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 35 1571 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 35 1571 44 , srcInfoPoints = [] } "LineEdges")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 45 1571 51 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1571 45 1571 51 , srcInfoPoints = [] } "line" "line")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 25 1572 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 25 1572 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 25 1572 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 25 1572 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 25 1572 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 35 1572 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 35 1572 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 35 1572 43 , srcInfoPoints = [] } "PolyLine")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 44 1572 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1572 44 1572 54 , srcInfoPoints = [] } "polyline" "polyline")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 25 1573 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 25 1573 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 25 1573 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 25 1573 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 25 1573 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 35 1573 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 35 1573 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 35 1573 47 , srcInfoPoints = [] } "CompoundEdge")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 48 1573 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1573 48 1573 58 , srcInfoPoints = [] } "compound" "compound")) ]))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 5 1578 37 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 5 1578 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 5 1576 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 5 1576 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 11 1578 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1576 11 1576 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 13 1578 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 13 1576 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 13 1576 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 13 1576 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 13 1576 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 13 1576 22 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 23 1576 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 23 1576 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 23 1576 30 , srcInfoPoints = [] } "NoEdges")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 31 1576 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1576 31 1576 37 , srcInfoPoints = [] } "\"\"" "\\\"\\\""))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1577 13 1577 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1577 13 1577 14 , SrcSpan "tests/examples/Attributes.hs" 1577 14 1577 20 , SrcSpan "tests/examples/Attributes.hs" 1577 20 1577 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1577 13 1577 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1577 13 1577 14 , SrcSpan "tests/examples/Attributes.hs" 1577 14 1577 20 , SrcSpan "tests/examples/Attributes.hs" 1577 20 1577 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1577 14 1577 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1578 13 1578 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1578 13 1578 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1578 13 1578 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1578 13 1578 27 , srcInfoPoints = [] } "optionalQuoted"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1578 28 1578 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1578 28 1578 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1578 28 1578 37 , srcInfoPoints = [] } "parseUnqt")))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 1 1585 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1584 14 1584 15 , SrcSpan "tests/examples/Attributes.hs" 1584 19 1584 20 , SrcSpan "tests/examples/Attributes.hs" 1584 24 1584 25 , SrcSpan "tests/examples/Attributes.hs" 1584 29 1584 30 , SrcSpan "tests/examples/Attributes.hs" 1584 34 1584 35 , SrcSpan "tests/examples/Attributes.hs" 1584 39 1584 40 , SrcSpan "tests/examples/Attributes.hs" 1584 44 1584 45 , SrcSpan "tests/examples/Attributes.hs" 1584 49 1584 50 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 1 1584 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 6 1584 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 6 1584 13 , srcInfoPoints = [] } "PageDir")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 16 1584 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 16 1584 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 16 1584 18 , srcInfoPoints = [] } "Bl") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 21 1584 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 21 1584 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 21 1584 23 , srcInfoPoints = [] } "Br") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 26 1584 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 26 1584 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 26 1584 28 , srcInfoPoints = [] } "Tl") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 31 1584 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 31 1584 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 31 1584 33 , srcInfoPoints = [] } "Tr") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 36 1584 38 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 36 1584 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 36 1584 38 , srcInfoPoints = [] } "Rb") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 41 1584 43 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 41 1584 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 41 1584 43 , srcInfoPoints = [] } "Rt") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 46 1584 48 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 46 1584 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 46 1584 48 , srcInfoPoints = [] } "Lb") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 51 1584 53 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 51 1584 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1584 51 1584 53 , srcInfoPoints = [] } "Lt") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 16 1585 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1585 16 1585 24 , SrcSpan "tests/examples/Attributes.hs" 1585 25 1585 26 , SrcSpan "tests/examples/Attributes.hs" 1585 28 1585 29 , SrcSpan "tests/examples/Attributes.hs" 1585 33 1585 34 , SrcSpan "tests/examples/Attributes.hs" 1585 42 1585 43 , SrcSpan "tests/examples/Attributes.hs" 1585 48 1585 49 , SrcSpan "tests/examples/Attributes.hs" 1585 54 1585 55 , SrcSpan "tests/examples/Attributes.hs" 1585 60 1585 61 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 26 1585 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 26 1585 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 26 1585 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 26 1585 28 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 30 1585 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 30 1585 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 30 1585 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 30 1585 33 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 35 1585 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 35 1585 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 35 1585 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 35 1585 42 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 44 1585 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 44 1585 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 44 1585 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 44 1585 48 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 50 1585 54 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 50 1585 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 50 1585 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 50 1585 54 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 56 1585 60 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 56 1585 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 56 1585 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1585 56 1585 60 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 1 1597 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1587 1 1587 9 , SrcSpan "tests/examples/Attributes.hs" 1587 27 1587 32 , SrcSpan "tests/examples/Attributes.hs" 1588 5 1588 5 , SrcSpan "tests/examples/Attributes.hs" 1589 5 1589 5 , SrcSpan "tests/examples/Attributes.hs" 1590 5 1590 5 , SrcSpan "tests/examples/Attributes.hs" 1591 5 1591 5 , SrcSpan "tests/examples/Attributes.hs" 1592 5 1592 5 , SrcSpan "tests/examples/Attributes.hs" 1593 5 1593 5 , SrcSpan "tests/examples/Attributes.hs" 1594 5 1594 5 , SrcSpan "tests/examples/Attributes.hs" 1595 5 1595 5 , SrcSpan "tests/examples/Attributes.hs" 1597 1 1597 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 10 1587 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 10 1587 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 10 1587 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 10 1587 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 10 1587 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 19 1587 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 19 1587 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1587 19 1587 26 , srcInfoPoints = [] } "PageDir"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 5 1595 27 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 5 1595 27 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 5 1588 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 5 1588 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 13 1588 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 13 1588 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 13 1588 15 , srcInfoPoints = [] } "Bl")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 16 1588 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1588 16 1588 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 18 1588 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 18 1588 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 18 1588 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 18 1588 22 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 23 1588 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1588 23 1588 27 , srcInfoPoints = [] } "BL" "BL")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 5 1589 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 5 1589 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 13 1589 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 13 1589 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 13 1589 15 , srcInfoPoints = [] } "Br")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 16 1589 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1589 16 1589 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 18 1589 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 18 1589 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 18 1589 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 18 1589 22 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 23 1589 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1589 23 1589 27 , srcInfoPoints = [] } "BR" "BR")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 5 1590 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 5 1590 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 13 1590 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 13 1590 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 13 1590 15 , srcInfoPoints = [] } "Tl")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 16 1590 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1590 16 1590 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 18 1590 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 18 1590 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 18 1590 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 18 1590 22 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 23 1590 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1590 23 1590 27 , srcInfoPoints = [] } "TL" "TL")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 5 1591 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 5 1591 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 13 1591 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 13 1591 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 13 1591 15 , srcInfoPoints = [] } "Tr")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 16 1591 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1591 16 1591 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 18 1591 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 18 1591 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 18 1591 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 18 1591 22 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 23 1591 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1591 23 1591 27 , srcInfoPoints = [] } "TR" "TR")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 5 1592 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 5 1592 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 13 1592 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 13 1592 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 13 1592 15 , srcInfoPoints = [] } "Rb")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 16 1592 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1592 16 1592 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 18 1592 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 18 1592 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 18 1592 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 18 1592 22 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 23 1592 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1592 23 1592 27 , srcInfoPoints = [] } "RB" "RB")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 5 1593 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 5 1593 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 13 1593 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 13 1593 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 13 1593 15 , srcInfoPoints = [] } "Rt")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 16 1593 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1593 16 1593 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 18 1593 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 18 1593 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 18 1593 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 18 1593 22 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 23 1593 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1593 23 1593 27 , srcInfoPoints = [] } "RT" "RT")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 5 1594 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 5 1594 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 13 1594 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 13 1594 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 13 1594 15 , srcInfoPoints = [] } "Lb")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 16 1594 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1594 16 1594 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 18 1594 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 18 1594 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 18 1594 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 18 1594 22 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 23 1594 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1594 23 1594 27 , srcInfoPoints = [] } "LB" "LB")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 5 1595 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 5 1595 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 13 1595 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 13 1595 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 13 1595 15 , srcInfoPoints = [] } "Lt")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 16 1595 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1595 16 1595 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 18 1595 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 18 1595 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 18 1595 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 18 1595 22 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 23 1595 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1595 23 1595 27 , srcInfoPoints = [] } "LT" "LT")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 1 1612 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1597 1 1597 9 , SrcSpan "tests/examples/Attributes.hs" 1597 27 1597 32 , SrcSpan "tests/examples/Attributes.hs" 1598 5 1598 5 , SrcSpan "tests/examples/Attributes.hs" 1612 1 1612 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 10 1597 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 10 1597 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 10 1597 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 10 1597 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 10 1597 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 19 1597 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 19 1597 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1597 19 1597 26 , srcInfoPoints = [] } "PageDir"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 5 1606 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 5 1606 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 5 1598 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 5 1598 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 15 1606 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1598 15 1598 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 17 1606 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 17 1598 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 17 1598 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 17 1598 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 23 1606 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1598 23 1598 24 , SrcSpan "tests/examples/Attributes.hs" 1599 23 1599 24 , SrcSpan "tests/examples/Attributes.hs" 1600 23 1600 24 , SrcSpan "tests/examples/Attributes.hs" 1601 23 1601 24 , SrcSpan "tests/examples/Attributes.hs" 1602 23 1602 24 , SrcSpan "tests/examples/Attributes.hs" 1603 23 1603 24 , SrcSpan "tests/examples/Attributes.hs" 1604 23 1604 24 , SrcSpan "tests/examples/Attributes.hs" 1605 23 1605 24 , SrcSpan "tests/examples/Attributes.hs" 1606 23 1606 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 25 1598 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 25 1598 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 25 1598 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 25 1598 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 25 1598 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 35 1598 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 35 1598 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 35 1598 37 , srcInfoPoints = [] } "Bl")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 38 1598 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1598 38 1598 42 , srcInfoPoints = [] } "BL" "BL")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 25 1599 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 25 1599 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 25 1599 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 25 1599 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 25 1599 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 35 1599 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 35 1599 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 35 1599 37 , srcInfoPoints = [] } "Br")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 38 1599 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1599 38 1599 42 , srcInfoPoints = [] } "BR" "BR")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 25 1600 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 25 1600 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 25 1600 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 25 1600 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 25 1600 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 35 1600 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 35 1600 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 35 1600 37 , srcInfoPoints = [] } "Tl")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 38 1600 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1600 38 1600 42 , srcInfoPoints = [] } "TL" "TL")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 25 1601 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 25 1601 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 25 1601 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 25 1601 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 25 1601 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 35 1601 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 35 1601 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 35 1601 37 , srcInfoPoints = [] } "Tr")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 38 1601 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1601 38 1601 42 , srcInfoPoints = [] } "TR" "TR")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 25 1602 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 25 1602 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 25 1602 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 25 1602 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 25 1602 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 35 1602 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 35 1602 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 35 1602 37 , srcInfoPoints = [] } "Rb")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 38 1602 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1602 38 1602 42 , srcInfoPoints = [] } "RB" "RB")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 25 1603 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 25 1603 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 25 1603 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 25 1603 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 25 1603 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 35 1603 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 35 1603 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 35 1603 37 , srcInfoPoints = [] } "Rt")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 38 1603 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1603 38 1603 42 , srcInfoPoints = [] } "RT" "RT")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 25 1604 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 25 1604 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 25 1604 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 25 1604 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 25 1604 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 35 1604 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 35 1604 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 35 1604 37 , srcInfoPoints = [] } "Lb")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 38 1604 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1604 38 1604 42 , srcInfoPoints = [] } "LB" "LB")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 25 1605 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 25 1605 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 25 1605 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 25 1605 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 25 1605 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 35 1605 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 35 1605 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 35 1605 37 , srcInfoPoints = [] } "Lt")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 38 1605 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1605 38 1605 42 , srcInfoPoints = [] } "LT" "LT")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 1 1613 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1612 13 1612 14 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 1 1612 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 6 1612 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 6 1612 12 , srcInfoPoints = [] } "Spline")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 15 1612 57 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 15 1612 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 15 1612 21 , srcInfoPoints = [] } "Spline") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 22 1612 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1612 22 1612 23 , SrcSpan "tests/examples/Attributes.hs" 1612 34 1612 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 23 1612 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 23 1612 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 23 1612 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 23 1612 28 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 29 1612 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 29 1612 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 29 1612 34 , srcInfoPoints = [] } "Point")))) , TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 36 1612 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1612 36 1612 37 , SrcSpan "tests/examples/Attributes.hs" 1612 48 1612 49 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 37 1612 48 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 37 1612 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 37 1612 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 37 1612 42 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 43 1612 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 43 1612 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 43 1612 48 , srcInfoPoints = [] } "Point")))) , TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 50 1612 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1612 50 1612 51 , SrcSpan "tests/examples/Attributes.hs" 1612 56 1612 57 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 51 1612 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 51 1612 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1612 51 1612 56 , srcInfoPoints = [] } "Point"))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 15 1613 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1613 15 1613 23 , SrcSpan "tests/examples/Attributes.hs" 1613 24 1613 25 , SrcSpan "tests/examples/Attributes.hs" 1613 27 1613 28 , SrcSpan "tests/examples/Attributes.hs" 1613 32 1613 33 , SrcSpan "tests/examples/Attributes.hs" 1613 38 1613 39 , SrcSpan "tests/examples/Attributes.hs" 1613 44 1613 45 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 25 1613 27 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 25 1613 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 25 1613 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 25 1613 27 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 29 1613 32 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 29 1613 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 29 1613 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 29 1613 32 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 34 1613 38 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 34 1613 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 34 1613 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 34 1613 38 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 40 1613 44 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 40 1613 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 40 1613 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1613 40 1613 44 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 1 1630 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1615 1 1615 9 , SrcSpan "tests/examples/Attributes.hs" 1615 26 1615 31 , SrcSpan "tests/examples/Attributes.hs" 1616 5 1616 5 , SrcSpan "tests/examples/Attributes.hs" 1624 5 1624 5 , SrcSpan "tests/examples/Attributes.hs" 1626 5 1626 5 , SrcSpan "tests/examples/Attributes.hs" 1628 5 1628 5 , SrcSpan "tests/examples/Attributes.hs" 1630 1 1630 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 10 1615 25 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 10 1615 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 10 1615 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 10 1615 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 10 1615 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 19 1615 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 19 1615 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1615 19 1615 25 , srcInfoPoints = [] } "Spline"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 5 1622 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1619 9 1619 14 ] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 5 1622 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1619 9 1619 14 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 5 1622 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1619 9 1619 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 5 1616 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 13 1616 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1616 13 1616 14 , SrcSpan "tests/examples/Attributes.hs" 1616 29 1616 30 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 14 1616 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 14 1616 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 14 1616 20 , srcInfoPoints = [] } "Spline")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 21 1616 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 21 1616 23 , srcInfoPoints = [] } "ms") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 24 1616 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 24 1616 26 , srcInfoPoints = [] } "me") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 27 1616 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 27 1616 29 , srcInfoPoints = [] } "ps") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 31 1618 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1616 31 1616 32 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 33 1618 48 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 33 1617 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 33 1616 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 33 1616 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 33 1616 37 , srcInfoPoints = [] } "addS"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 38 1616 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 38 1616 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 38 1616 39 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 40 1617 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 40 1616 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 40 1616 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1616 40 1616 44 , srcInfoPoints = [] } "addE"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1617 32 1617 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1617 32 1617 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1617 32 1617 33 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1617 34 1617 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1617 34 1617 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1617 34 1617 38 , srcInfoPoints = [] } "hsep"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 32 1618 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 32 1618 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 32 1618 33 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 34 1618 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 34 1618 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 34 1618 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 34 1618 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 34 1618 37 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 38 1618 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 38 1618 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 38 1618 45 , srcInfoPoints = [] } "unqtDot")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 46 1618 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 46 1618 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1618 46 1618 48 , srcInfoPoints = [] } "ps")))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 11 1622 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1620 11 1620 11 , SrcSpan "tests/examples/Attributes.hs" 1621 11 1621 11 , SrcSpan "tests/examples/Attributes.hs" 1622 11 1622 11 , SrcSpan "tests/examples/Attributes.hs" 1624 5 1624 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 11 1620 49 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 11 1620 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 11 1620 15 , srcInfoPoints = [] } "addP") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 16 1620 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 16 1620 17 , srcInfoPoints = [] } "t") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 18 1620 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1620 18 1620 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 20 1620 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 20 1620 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 20 1620 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 20 1620 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 20 1620 25 , srcInfoPoints = [] } "maybe"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 26 1620 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 26 1620 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 26 1620 28 , srcInfoPoints = [] } "id")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 29 1620 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1620 29 1620 30 , SrcSpan "tests/examples/Attributes.hs" 1620 48 1620 49 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 30 1620 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 30 1620 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1620 30 1620 31 , SrcSpan "tests/examples/Attributes.hs" 1620 31 1620 34 , SrcSpan "tests/examples/Attributes.hs" 1620 34 1620 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 30 1620 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1620 30 1620 31 , SrcSpan "tests/examples/Attributes.hs" 1620 31 1620 34 , SrcSpan "tests/examples/Attributes.hs" 1620 34 1620 35 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 31 1620 34 , srcInfoPoints = [] } "<+>"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 36 1620 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 36 1620 37 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 36 1620 37 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 38 1620 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 38 1620 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 38 1620 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 38 1620 46 , srcInfoPoints = [] } "commaDel"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 47 1620 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 47 1620 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1620 47 1620 48 , srcInfoPoints = [] } "t")))))))) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 11 1621 29 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 11 1621 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 11 1621 15 , srcInfoPoints = [] } "addS")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 16 1621 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1621 16 1621 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 18 1621 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 18 1621 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 18 1621 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 18 1621 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 18 1621 22 , srcInfoPoints = [] } "addP"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 23 1621 26 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 23 1621 26 , srcInfoPoints = [] } 's' "s"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 27 1621 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 27 1621 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1621 27 1621 29 , srcInfoPoints = [] } "ms"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 11 1622 29 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 11 1622 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 11 1622 15 , srcInfoPoints = [] } "addE")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 16 1622 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1622 16 1622 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 18 1622 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 18 1622 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 18 1622 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 18 1622 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 18 1622 22 , srcInfoPoints = [] } "addP"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 23 1622 26 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 23 1622 26 , srcInfoPoints = [] } 'e' "e"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 27 1622 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 27 1622 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1622 27 1622 29 , srcInfoPoints = [] } "me"))))) Nothing ])) ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 5 1624 35 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 5 1624 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 5 1624 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 5 1624 10 , srcInfoPoints = [] } "toDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 11 1624 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1624 11 1624 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 13 1624 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 13 1624 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 13 1624 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 13 1624 25 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 26 1624 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 26 1624 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 26 1624 27 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 28 1624 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 28 1624 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1624 28 1624 35 , srcInfoPoints = [] } "unqtDot"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 5 1626 56 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 5 1626 56 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 5 1626 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 5 1626 18 , srcInfoPoints = [] } "unqtListToDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 19 1626 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1626 19 1626 20 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 21 1626 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 21 1626 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 21 1626 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 21 1626 25 , srcInfoPoints = [] } "hcat"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 26 1626 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 26 1626 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 26 1626 27 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 28 1626 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 28 1626 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 28 1626 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 28 1626 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 28 1626 37 , srcInfoPoints = [] } "punctuate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 38 1626 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 38 1626 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 38 1626 42 , srcInfoPoints = [] } "semi")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 43 1626 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 43 1626 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 43 1626 44 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 45 1626 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 45 1626 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 45 1626 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 45 1626 48 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 49 1626 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 49 1626 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1626 49 1626 56 , srcInfoPoints = [] } "unqtDot"))))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 5 1628 45 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 5 1628 45 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 5 1628 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 5 1628 14 , srcInfoPoints = [] } "listToDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 15 1628 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1628 15 1628 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 17 1628 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 17 1628 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 17 1628 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 17 1628 29 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 30 1628 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 30 1628 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 30 1628 31 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 32 1628 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 32 1628 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1628 32 1628 45 , srcInfoPoints = [] } "unqtListToDot"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 1 1646 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1630 1 1630 9 , SrcSpan "tests/examples/Attributes.hs" 1630 26 1630 31 , SrcSpan "tests/examples/Attributes.hs" 1631 5 1631 5 , SrcSpan "tests/examples/Attributes.hs" 1640 5 1640 5 , SrcSpan "tests/examples/Attributes.hs" 1642 5 1642 5 , SrcSpan "tests/examples/Attributes.hs" 1646 1 1646 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 10 1630 25 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 10 1630 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 10 1630 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 10 1630 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 10 1630 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 19 1630 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 19 1630 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1630 19 1630 25 , srcInfoPoints = [] } "Spline"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 5 1638 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1635 9 1635 14 ] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 5 1638 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1635 9 1635 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 5 1631 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 5 1631 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 15 1634 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1631 15 1631 16 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 17 1634 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1631 17 1631 19 , SrcSpan "tests/examples/Attributes.hs" 1631 20 1631 20 , SrcSpan "tests/examples/Attributes.hs" 1632 20 1632 20 , SrcSpan "tests/examples/Attributes.hs" 1633 20 1633 20 , SrcSpan "tests/examples/Attributes.hs" 1634 20 1634 20 , SrcSpan "tests/examples/Attributes.hs" 1635 9 1635 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 20 1631 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1631 23 1631 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 20 1631 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 20 1631 22 , srcInfoPoints = [] } "ms")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 26 1631 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 26 1631 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 26 1631 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 26 1631 32 , srcInfoPoints = [] } "parseP"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 33 1631 36 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1631 33 1631 36 , srcInfoPoints = [] } 's' "s"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 20 1632 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1632 23 1632 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 20 1632 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 20 1632 22 , srcInfoPoints = [] } "me")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 26 1632 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 26 1632 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 26 1632 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 26 1632 32 , srcInfoPoints = [] } "parseP"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 33 1632 36 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1632 33 1632 36 , srcInfoPoints = [] } 'e' "e"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 20 1633 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1633 23 1633 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 20 1633 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 20 1633 22 , srcInfoPoints = [] } "ps")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 26 1633 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 26 1633 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 26 1633 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 26 1633 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 26 1633 32 , srcInfoPoints = [] } "sepBy1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 33 1633 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 33 1633 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 33 1633 42 , srcInfoPoints = [] } "parseUnqt")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 43 1633 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 43 1633 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1633 43 1633 53 , srcInfoPoints = [] } "whitespace")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 20 1634 44 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 20 1634 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 20 1634 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 20 1634 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 20 1634 26 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 27 1634 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 27 1634 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 27 1634 28 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 29 1634 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 29 1634 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 29 1634 38 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 29 1634 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 29 1634 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 29 1634 35 , srcInfoPoints = [] } "Spline"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 36 1634 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 36 1634 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 36 1634 38 , srcInfoPoints = [] } "ms")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 39 1634 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 39 1634 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 39 1634 41 , srcInfoPoints = [] } "me")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 42 1634 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 42 1634 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1634 42 1634 44 , srcInfoPoints = [] } "ps"))))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 11 1638 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1636 11 1636 11 , SrcSpan "tests/examples/Attributes.hs" 1640 5 1640 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 11 1638 66 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 11 1638 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 11 1636 17 , srcInfoPoints = [] } "parseP") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 18 1636 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 18 1636 19 , srcInfoPoints = [] } "t") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 20 1638 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1636 20 1636 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 22 1638 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 22 1636 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 22 1636 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 22 1636 30 , srcInfoPoints = [] } "optional"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 31 1636 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 31 1636 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 31 1636 32 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 33 1638 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1636 33 1636 35 , SrcSpan "tests/examples/Attributes.hs" 1636 36 1636 36 , SrcSpan "tests/examples/Attributes.hs" 1637 36 1637 36 , SrcSpan "tests/examples/Attributes.hs" 1638 36 1638 36 , SrcSpan "tests/examples/Attributes.hs" 1640 5 1640 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 36 1636 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 36 1636 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 36 1636 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 36 1636 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 36 1636 45 , srcInfoPoints = [] } "character"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 46 1636 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 46 1636 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1636 46 1636 47 , srcInfoPoints = [] } "t")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1637 36 1637 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1637 36 1637 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1637 36 1637 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1637 36 1637 46 , srcInfoPoints = [] } "parseComma"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 36 1638 66 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 36 1638 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 36 1638 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 36 1638 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 36 1638 45 , srcInfoPoints = [] } "parseUnqt"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 46 1638 55 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1638 46 1638 47 , SrcSpan "tests/examples/Attributes.hs" 1638 47 1638 54 , SrcSpan "tests/examples/Attributes.hs" 1638 54 1638 55 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 46 1638 55 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1638 46 1638 47 , SrcSpan "tests/examples/Attributes.hs" 1638 47 1638 54 , SrcSpan "tests/examples/Attributes.hs" 1638 54 1638 55 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 47 1638 54 , srcInfoPoints = [] } "discard"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 56 1638 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 56 1638 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1638 56 1638 66 , srcInfoPoints = [] } "whitespace")))) ]))) Nothing ] ]))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 5 1640 34 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 5 1640 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 5 1640 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 5 1640 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 11 1640 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1640 11 1640 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 13 1640 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 13 1640 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 13 1640 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 13 1640 24 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 25 1640 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 25 1640 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1640 25 1640 34 , srcInfoPoints = [] } "parseUnqt"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 5 1642 53 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 5 1642 53 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 5 1642 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 5 1642 18 , srcInfoPoints = [] } "parseUnqtList")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 19 1642 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1642 19 1642 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 21 1642 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 21 1642 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 21 1642 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 21 1642 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 21 1642 27 , srcInfoPoints = [] } "sepBy1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 28 1642 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 28 1642 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 28 1642 37 , srcInfoPoints = [] } "parseUnqt")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 38 1642 53 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1642 38 1642 39 , SrcSpan "tests/examples/Attributes.hs" 1642 52 1642 53 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 39 1642 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 39 1642 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 39 1642 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 39 1642 48 , srcInfoPoints = [] } "character"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 49 1642 52 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1642 49 1642 52 , srcInfoPoints = [] } ';' ";")))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1646 1 1649 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1646 15 1646 16 , SrcSpan "tests/examples/Attributes.hs" 1647 15 1647 16 , SrcSpan "tests/examples/Attributes.hs" 1648 15 1648 16 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1646 1 1646 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1646 6 1646 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1646 6 1646 14 , srcInfoPoints = [] } "QuadType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1646 17 1646 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1646 17 1646 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1646 17 1646 25 , srcInfoPoints = [] } "NormalQT") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1647 17 1647 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1647 17 1647 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1647 17 1647 23 , srcInfoPoints = [] } "FastQT") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1648 17 1648 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1648 17 1648 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1648 17 1648 21 , srcInfoPoints = [] } "NoQT") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 17 1649 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1649 17 1649 25 , SrcSpan "tests/examples/Attributes.hs" 1649 26 1649 27 , SrcSpan "tests/examples/Attributes.hs" 1649 29 1649 30 , SrcSpan "tests/examples/Attributes.hs" 1649 34 1649 35 , SrcSpan "tests/examples/Attributes.hs" 1649 43 1649 44 , SrcSpan "tests/examples/Attributes.hs" 1649 49 1649 50 , SrcSpan "tests/examples/Attributes.hs" 1649 55 1649 56 , SrcSpan "tests/examples/Attributes.hs" 1649 61 1649 62 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 27 1649 29 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 27 1649 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 27 1649 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 27 1649 29 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 31 1649 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 31 1649 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 31 1649 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 31 1649 34 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 36 1649 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 36 1649 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 36 1649 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 36 1649 43 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 45 1649 49 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 45 1649 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 45 1649 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 45 1649 49 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 51 1649 55 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 51 1649 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 51 1649 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 51 1649 55 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 57 1649 61 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 57 1649 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 57 1649 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1649 57 1649 61 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 1 1656 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1651 1 1651 9 , SrcSpan "tests/examples/Attributes.hs" 1651 28 1651 33 , SrcSpan "tests/examples/Attributes.hs" 1652 5 1652 5 , SrcSpan "tests/examples/Attributes.hs" 1653 5 1653 5 , SrcSpan "tests/examples/Attributes.hs" 1654 5 1654 5 , SrcSpan "tests/examples/Attributes.hs" 1656 1 1656 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 10 1651 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 10 1651 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 10 1651 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 10 1651 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 10 1651 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 19 1651 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 19 1651 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1651 19 1651 27 , srcInfoPoints = [] } "QuadType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 5 1654 35 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 5 1654 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 5 1652 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 5 1652 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 13 1652 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 13 1652 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 13 1652 21 , srcInfoPoints = [] } "NormalQT")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 22 1652 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1652 22 1652 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 24 1652 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 24 1652 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 24 1652 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 24 1652 28 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 29 1652 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1652 29 1652 37 , srcInfoPoints = [] } "normal" "normal")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 5 1653 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 5 1653 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 13 1653 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 13 1653 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 13 1653 19 , srcInfoPoints = [] } "FastQT")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 22 1653 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1653 22 1653 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 24 1653 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 24 1653 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 24 1653 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 24 1653 28 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 29 1653 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1653 29 1653 35 , srcInfoPoints = [] } "fast" "fast")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 5 1654 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 5 1654 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 13 1654 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 13 1654 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 13 1654 17 , srcInfoPoints = [] } "NoQT")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 22 1654 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1654 22 1654 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 24 1654 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 24 1654 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 24 1654 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 24 1654 28 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 29 1654 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1654 29 1654 35 , srcInfoPoints = [] } "none" "none")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 1 1669 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1656 1 1656 9 , SrcSpan "tests/examples/Attributes.hs" 1656 28 1656 33 , SrcSpan "tests/examples/Attributes.hs" 1659 5 1659 5 , SrcSpan "tests/examples/Attributes.hs" 1669 1 1669 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 10 1656 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 10 1656 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 10 1656 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 10 1656 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 10 1656 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 19 1656 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 19 1656 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1656 19 1656 27 , srcInfoPoints = [] } "QuadType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 5 1664 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 5 1664 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 5 1659 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 5 1659 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 15 1664 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1659 15 1659 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 17 1664 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 17 1659 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 17 1659 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 17 1659 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 23 1664 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1659 23 1659 24 , SrcSpan "tests/examples/Attributes.hs" 1660 23 1660 24 , SrcSpan "tests/examples/Attributes.hs" 1661 23 1661 24 , SrcSpan "tests/examples/Attributes.hs" 1662 23 1662 24 , SrcSpan "tests/examples/Attributes.hs" 1663 23 1663 24 , SrcSpan "tests/examples/Attributes.hs" 1664 23 1664 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 25 1659 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 25 1659 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 25 1659 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 25 1659 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 25 1659 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 35 1659 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 35 1659 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 35 1659 43 , srcInfoPoints = [] } "NormalQT")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 44 1659 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1659 44 1659 52 , srcInfoPoints = [] } "normal" "normal")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 25 1660 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 25 1660 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 25 1660 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 25 1660 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 25 1660 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 35 1660 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 35 1660 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 35 1660 41 , srcInfoPoints = [] } "FastQT")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 42 1660 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1660 42 1660 48 , srcInfoPoints = [] } "fast" "fast")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 25 1661 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 25 1661 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 25 1661 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 25 1661 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 25 1661 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 35 1661 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 35 1661 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 35 1661 39 , srcInfoPoints = [] } "NoQT")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 40 1661 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1661 40 1661 46 , srcInfoPoints = [] } "none" "none")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 25 1662 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 25 1662 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 25 1662 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 25 1662 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 25 1662 34 , srcInfoPoints = [] } "character"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 35 1662 38 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 35 1662 38 , srcInfoPoints = [] } '2' "2"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 41 1662 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 41 1662 43 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 41 1662 43 , srcInfoPoints = [] } ">>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 44 1662 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 44 1662 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 44 1662 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 44 1662 50 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 51 1662 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 51 1662 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1662 51 1662 57 , srcInfoPoints = [] } "FastQT")))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 25 1663 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 25 1663 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 25 1663 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 25 1663 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 25 1663 30 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 31 1663 51 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1663 31 1663 32 , SrcSpan "tests/examples/Attributes.hs" 1663 50 1663 51 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 32 1663 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 32 1663 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 32 1663 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 32 1663 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 32 1663 36 , srcInfoPoints = [] } "bool"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 37 1663 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 37 1663 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 37 1663 41 , srcInfoPoints = [] } "NoQT")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 42 1663 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 42 1663 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 42 1663 50 , srcInfoPoints = [] } "NormalQT")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 52 1663 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 52 1663 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1663 52 1663 57 , srcInfoPoints = [] } "parse"))) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1669 1 1672 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1669 11 1669 12 , SrcSpan "tests/examples/Attributes.hs" 1670 11 1670 12 , SrcSpan "tests/examples/Attributes.hs" 1671 11 1671 12 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1669 1 1669 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1669 6 1669 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1669 6 1669 10 , srcInfoPoints = [] } "Root")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1669 13 1669 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1669 13 1669 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1669 13 1669 22 , srcInfoPoints = [] } "IsCentral") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1670 13 1670 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1670 13 1670 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1670 13 1670 23 , srcInfoPoints = [] } "NotCentral") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1671 13 1671 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1671 13 1671 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1671 13 1671 21 , srcInfoPoints = [] } "NodeName") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1671 22 1671 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1671 22 1671 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1671 22 1671 28 , srcInfoPoints = [] } "String")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 13 1672 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1672 13 1672 21 , SrcSpan "tests/examples/Attributes.hs" 1672 22 1672 23 , SrcSpan "tests/examples/Attributes.hs" 1672 25 1672 26 , SrcSpan "tests/examples/Attributes.hs" 1672 30 1672 31 , SrcSpan "tests/examples/Attributes.hs" 1672 36 1672 37 , SrcSpan "tests/examples/Attributes.hs" 1672 42 1672 43 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 23 1672 25 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 23 1672 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 23 1672 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 23 1672 25 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 27 1672 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 27 1672 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 27 1672 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 27 1672 30 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 32 1672 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 32 1672 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 32 1672 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 32 1672 36 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 38 1672 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 38 1672 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 38 1672 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1672 38 1672 42 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 1 1682 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1674 1 1674 9 , SrcSpan "tests/examples/Attributes.hs" 1674 24 1674 29 , SrcSpan "tests/examples/Attributes.hs" 1675 5 1675 5 , SrcSpan "tests/examples/Attributes.hs" 1676 5 1676 5 , SrcSpan "tests/examples/Attributes.hs" 1677 5 1677 5 , SrcSpan "tests/examples/Attributes.hs" 1679 5 1679 5 , SrcSpan "tests/examples/Attributes.hs" 1680 5 1680 5 , SrcSpan "tests/examples/Attributes.hs" 1682 1 1682 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 10 1674 23 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 10 1674 23 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 10 1674 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 10 1674 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 10 1674 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 19 1674 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 19 1674 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1674 19 1674 23 , srcInfoPoints = [] } "Root"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 5 1677 37 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 5 1677 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 5 1675 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 5 1675 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 13 1675 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 13 1675 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 13 1675 22 , srcInfoPoints = [] } "IsCentral")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 26 1675 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1675 26 1675 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 28 1675 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 28 1675 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 28 1675 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 28 1675 35 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 36 1675 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 36 1675 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1675 36 1675 40 , srcInfoPoints = [] } "True"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 5 1676 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 5 1676 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 13 1676 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 13 1676 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 13 1676 23 , srcInfoPoints = [] } "NotCentral")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 26 1676 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1676 26 1676 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 28 1676 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 28 1676 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 28 1676 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 28 1676 35 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 36 1676 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 36 1676 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1676 36 1676 41 , srcInfoPoints = [] } "False"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 5 1677 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 5 1677 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 13 1677 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1677 13 1677 14 , SrcSpan "tests/examples/Attributes.hs" 1677 24 1677 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 14 1677 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 14 1677 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 14 1677 22 , srcInfoPoints = [] } "NodeName")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 23 1677 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 23 1677 24 , srcInfoPoints = [] } "n") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 26 1677 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1677 26 1677 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 28 1677 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 28 1677 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 28 1677 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 28 1677 35 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 36 1677 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 36 1677 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1677 36 1677 37 , srcInfoPoints = [] } "n"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 5 1680 35 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 5 1680 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 5 1679 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 5 1679 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 11 1679 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1679 11 1679 12 , SrcSpan "tests/examples/Attributes.hs" 1679 22 1679 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 12 1679 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 12 1679 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 12 1679 20 , srcInfoPoints = [] } "NodeName")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 21 1679 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 21 1679 22 , srcInfoPoints = [] } "n") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 24 1679 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1679 24 1679 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 26 1679 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 26 1679 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 26 1679 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 26 1679 31 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 32 1679 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 32 1679 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1679 32 1679 33 , srcInfoPoints = [] } "n"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 5 1680 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 5 1680 10 , srcInfoPoints = [] } "toDot") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 11 1680 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 11 1680 12 , srcInfoPoints = [] } "r") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 24 1680 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1680 24 1680 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 26 1680 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 26 1680 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 26 1680 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 26 1680 33 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 34 1680 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 34 1680 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1680 34 1680 35 , srcInfoPoints = [] } "r"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 1 1693 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1682 1 1682 9 , SrcSpan "tests/examples/Attributes.hs" 1682 24 1682 29 , SrcSpan "tests/examples/Attributes.hs" 1683 5 1683 5 , SrcSpan "tests/examples/Attributes.hs" 1687 5 1687 5 , SrcSpan "tests/examples/Attributes.hs" 1693 1 1693 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 10 1682 23 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 10 1682 23 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 10 1682 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 10 1682 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 10 1682 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 19 1682 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 19 1682 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1682 19 1682 23 , srcInfoPoints = [] } "Root"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 5 1685 41 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 5 1685 41 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 5 1683 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 5 1683 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 15 1685 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1683 15 1683 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 17 1685 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 17 1683 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 17 1683 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 17 1683 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 17 1683 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 17 1683 22 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 23 1683 50 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1683 23 1683 24 , SrcSpan "tests/examples/Attributes.hs" 1683 49 1683 50 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 24 1683 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 24 1683 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 24 1683 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 24 1683 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 24 1683 28 , srcInfoPoints = [] } "bool"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 29 1683 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 29 1683 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 29 1683 39 , srcInfoPoints = [] } "NotCentral")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 40 1683 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 40 1683 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 40 1683 49 , srcInfoPoints = [] } "IsCentral")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 51 1683 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 51 1683 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1683 51 1683 59 , srcInfoPoints = [] } "onlyBool")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1684 17 1684 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1684 17 1684 18 , SrcSpan "tests/examples/Attributes.hs" 1684 18 1684 24 , SrcSpan "tests/examples/Attributes.hs" 1684 24 1684 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1684 17 1684 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1684 17 1684 18 , SrcSpan "tests/examples/Attributes.hs" 1684 18 1684 24 , SrcSpan "tests/examples/Attributes.hs" 1684 24 1684 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1684 18 1684 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 17 1685 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 17 1685 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 17 1685 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 17 1685 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 17 1685 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 23 1685 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 23 1685 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 23 1685 31 , srcInfoPoints = [] } "NodeName")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 32 1685 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 32 1685 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1685 32 1685 41 , srcInfoPoints = [] } "parseUnqt")))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 5 1689 33 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 5 1689 33 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 5 1687 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 5 1687 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 11 1689 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1687 11 1687 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 13 1689 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 13 1687 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 13 1687 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 13 1687 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 13 1687 27 , srcInfoPoints = [] } "optionalQuoted"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 28 1687 72 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1687 28 1687 29 , SrcSpan "tests/examples/Attributes.hs" 1687 71 1687 72 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 29 1687 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 29 1687 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 29 1687 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 29 1687 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 29 1687 34 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 35 1687 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1687 35 1687 36 , SrcSpan "tests/examples/Attributes.hs" 1687 61 1687 62 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 36 1687 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 36 1687 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 36 1687 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 36 1687 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 36 1687 40 , srcInfoPoints = [] } "bool"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 41 1687 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 41 1687 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 41 1687 51 , srcInfoPoints = [] } "NotCentral")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 52 1687 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 52 1687 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 52 1687 61 , srcInfoPoints = [] } "IsCentral")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 63 1687 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 63 1687 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1687 63 1687 71 , srcInfoPoints = [] } "onlyBool")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1688 13 1688 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1688 13 1688 14 , SrcSpan "tests/examples/Attributes.hs" 1688 14 1688 20 , SrcSpan "tests/examples/Attributes.hs" 1688 20 1688 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1688 13 1688 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1688 13 1688 14 , SrcSpan "tests/examples/Attributes.hs" 1688 14 1688 20 , SrcSpan "tests/examples/Attributes.hs" 1688 20 1688 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1688 14 1688 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 13 1689 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 13 1689 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 13 1689 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 13 1689 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 13 1689 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 19 1689 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 19 1689 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 19 1689 27 , srcInfoPoints = [] } "NodeName")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 28 1689 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 28 1689 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1689 28 1689 33 , srcInfoPoints = [] } "parse")))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1693 1 1698 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1693 15 1693 16 , SrcSpan "tests/examples/Attributes.hs" 1694 15 1694 16 , SrcSpan "tests/examples/Attributes.hs" 1695 15 1695 16 , SrcSpan "tests/examples/Attributes.hs" 1696 15 1696 16 , SrcSpan "tests/examples/Attributes.hs" 1697 15 1697 16 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1693 1 1693 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1693 6 1693 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1693 6 1693 14 , srcInfoPoints = [] } "RankType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1693 17 1693 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1693 17 1693 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1693 17 1693 25 , srcInfoPoints = [] } "SameRank") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1694 17 1694 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1694 17 1694 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1694 17 1694 24 , srcInfoPoints = [] } "MinRank") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1695 17 1695 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1695 17 1695 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1695 17 1695 27 , srcInfoPoints = [] } "SourceRank") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1696 17 1696 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1696 17 1696 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1696 17 1696 24 , srcInfoPoints = [] } "MaxRank") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1697 17 1697 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1697 17 1697 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1697 17 1697 25 , srcInfoPoints = [] } "SinkRank") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 17 1698 62 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1698 17 1698 25 , SrcSpan "tests/examples/Attributes.hs" 1698 26 1698 27 , SrcSpan "tests/examples/Attributes.hs" 1698 29 1698 30 , SrcSpan "tests/examples/Attributes.hs" 1698 34 1698 35 , SrcSpan "tests/examples/Attributes.hs" 1698 43 1698 44 , SrcSpan "tests/examples/Attributes.hs" 1698 49 1698 50 , SrcSpan "tests/examples/Attributes.hs" 1698 55 1698 56 , SrcSpan "tests/examples/Attributes.hs" 1698 61 1698 62 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 27 1698 29 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 27 1698 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 27 1698 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 27 1698 29 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 31 1698 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 31 1698 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 31 1698 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 31 1698 34 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 36 1698 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 36 1698 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 36 1698 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 36 1698 43 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 45 1698 49 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 45 1698 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 45 1698 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 45 1698 49 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 51 1698 55 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 51 1698 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 51 1698 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 51 1698 55 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 57 1698 61 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 57 1698 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 57 1698 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1698 57 1698 61 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 1 1707 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1700 1 1700 9 , SrcSpan "tests/examples/Attributes.hs" 1700 28 1700 33 , SrcSpan "tests/examples/Attributes.hs" 1701 5 1701 5 , SrcSpan "tests/examples/Attributes.hs" 1702 5 1702 5 , SrcSpan "tests/examples/Attributes.hs" 1703 5 1703 5 , SrcSpan "tests/examples/Attributes.hs" 1704 5 1704 5 , SrcSpan "tests/examples/Attributes.hs" 1705 5 1705 5 , SrcSpan "tests/examples/Attributes.hs" 1707 1 1707 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 10 1700 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 10 1700 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 10 1700 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 10 1700 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 10 1700 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 19 1700 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 19 1700 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1700 19 1700 27 , srcInfoPoints = [] } "RankType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 5 1705 37 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 5 1705 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 5 1701 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 5 1701 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 13 1701 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 13 1701 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 13 1701 21 , srcInfoPoints = [] } "SameRank")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 24 1701 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1701 24 1701 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 26 1701 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 26 1701 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 26 1701 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 26 1701 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 31 1701 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1701 31 1701 37 , srcInfoPoints = [] } "same" "same")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 5 1702 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 5 1702 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 13 1702 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 13 1702 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 13 1702 20 , srcInfoPoints = [] } "MinRank")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 24 1702 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1702 24 1702 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 26 1702 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 26 1702 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 26 1702 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 26 1702 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 31 1702 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1702 31 1702 36 , srcInfoPoints = [] } "min" "min")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 5 1703 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 5 1703 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 13 1703 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 13 1703 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 13 1703 23 , srcInfoPoints = [] } "SourceRank")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 24 1703 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1703 24 1703 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 26 1703 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 26 1703 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 26 1703 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 26 1703 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 31 1703 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1703 31 1703 39 , srcInfoPoints = [] } "source" "source")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 5 1704 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 5 1704 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 13 1704 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 13 1704 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 13 1704 20 , srcInfoPoints = [] } "MaxRank")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 24 1704 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1704 24 1704 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 26 1704 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 26 1704 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 26 1704 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 26 1704 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 31 1704 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1704 31 1704 36 , srcInfoPoints = [] } "max" "max")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 5 1705 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 5 1705 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 13 1705 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 13 1705 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 13 1705 21 , srcInfoPoints = [] } "SinkRank")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 24 1705 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1705 24 1705 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 26 1705 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 26 1705 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 26 1705 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 26 1705 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 31 1705 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1705 31 1705 37 , srcInfoPoints = [] } "sink" "sink")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 1 1717 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1707 1 1707 9 , SrcSpan "tests/examples/Attributes.hs" 1707 28 1707 33 , SrcSpan "tests/examples/Attributes.hs" 1708 5 1708 5 , SrcSpan "tests/examples/Attributes.hs" 1717 1 1717 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 10 1707 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 10 1707 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 10 1707 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 10 1707 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 10 1707 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 19 1707 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 19 1707 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1707 19 1707 27 , srcInfoPoints = [] } "RankType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 5 1713 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 5 1713 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 5 1708 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 5 1708 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 15 1713 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1708 15 1708 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 17 1713 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 17 1708 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 17 1708 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 17 1708 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 23 1713 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1708 23 1708 24 , SrcSpan "tests/examples/Attributes.hs" 1709 23 1709 24 , SrcSpan "tests/examples/Attributes.hs" 1710 23 1710 24 , SrcSpan "tests/examples/Attributes.hs" 1711 23 1711 24 , SrcSpan "tests/examples/Attributes.hs" 1712 23 1712 24 , SrcSpan "tests/examples/Attributes.hs" 1713 23 1713 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 25 1708 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 25 1708 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 25 1708 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 25 1708 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 25 1708 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 35 1708 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 35 1708 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 35 1708 43 , srcInfoPoints = [] } "SameRank")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 44 1708 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1708 44 1708 50 , srcInfoPoints = [] } "same" "same")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 25 1709 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 25 1709 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 25 1709 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 25 1709 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 25 1709 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 35 1709 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 35 1709 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 35 1709 42 , srcInfoPoints = [] } "MinRank")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 43 1709 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1709 43 1709 48 , srcInfoPoints = [] } "min" "min")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 25 1710 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 25 1710 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 25 1710 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 25 1710 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 25 1710 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 35 1710 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 35 1710 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 35 1710 45 , srcInfoPoints = [] } "SourceRank")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 46 1710 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1710 46 1710 54 , srcInfoPoints = [] } "source" "source")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 25 1711 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 25 1711 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 25 1711 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 25 1711 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 25 1711 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 35 1711 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 35 1711 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 35 1711 42 , srcInfoPoints = [] } "MaxRank")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 43 1711 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1711 43 1711 48 , srcInfoPoints = [] } "max" "max")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 25 1712 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 25 1712 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 25 1712 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 25 1712 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 25 1712 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 35 1712 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 35 1712 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 35 1712 43 , srcInfoPoints = [] } "SinkRank")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 44 1712 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1712 44 1712 50 , srcInfoPoints = [] } "sink" "sink")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1717 1 1721 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1717 14 1717 15 , SrcSpan "tests/examples/Attributes.hs" 1718 14 1718 15 , SrcSpan "tests/examples/Attributes.hs" 1719 14 1719 15 , SrcSpan "tests/examples/Attributes.hs" 1720 14 1720 15 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1717 1 1717 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1717 6 1717 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1717 6 1717 13 , srcInfoPoints = [] } "RankDir")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1717 16 1717 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1717 16 1717 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1717 16 1717 23 , srcInfoPoints = [] } "FromTop") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1718 16 1718 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1718 16 1718 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1718 16 1718 24 , srcInfoPoints = [] } "FromLeft") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1719 16 1719 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1719 16 1719 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1719 16 1719 26 , srcInfoPoints = [] } "FromBottom") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1720 16 1720 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1720 16 1720 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1720 16 1720 25 , srcInfoPoints = [] } "FromRight") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 16 1721 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1721 16 1721 24 , SrcSpan "tests/examples/Attributes.hs" 1721 25 1721 26 , SrcSpan "tests/examples/Attributes.hs" 1721 28 1721 29 , SrcSpan "tests/examples/Attributes.hs" 1721 33 1721 34 , SrcSpan "tests/examples/Attributes.hs" 1721 42 1721 43 , SrcSpan "tests/examples/Attributes.hs" 1721 48 1721 49 , SrcSpan "tests/examples/Attributes.hs" 1721 54 1721 55 , SrcSpan "tests/examples/Attributes.hs" 1721 60 1721 61 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 26 1721 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 26 1721 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 26 1721 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 26 1721 28 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 30 1721 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 30 1721 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 30 1721 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 30 1721 33 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 35 1721 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 35 1721 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 35 1721 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 35 1721 42 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 44 1721 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 44 1721 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 44 1721 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 44 1721 48 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 50 1721 54 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 50 1721 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 50 1721 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 50 1721 54 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 56 1721 60 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 56 1721 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 56 1721 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1721 56 1721 60 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 1 1729 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1723 1 1723 9 , SrcSpan "tests/examples/Attributes.hs" 1723 27 1723 32 , SrcSpan "tests/examples/Attributes.hs" 1724 5 1724 5 , SrcSpan "tests/examples/Attributes.hs" 1725 5 1725 5 , SrcSpan "tests/examples/Attributes.hs" 1726 5 1726 5 , SrcSpan "tests/examples/Attributes.hs" 1727 5 1727 5 , SrcSpan "tests/examples/Attributes.hs" 1729 1 1729 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 10 1723 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 10 1723 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 10 1723 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 10 1723 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 10 1723 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 19 1723 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 19 1723 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1723 19 1723 26 , srcInfoPoints = [] } "RankDir"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 5 1727 35 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 5 1727 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 5 1724 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 5 1724 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 13 1724 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 13 1724 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 13 1724 20 , srcInfoPoints = [] } "FromTop")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 24 1724 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1724 24 1724 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 26 1724 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 26 1724 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 26 1724 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 26 1724 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 31 1724 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1724 31 1724 35 , srcInfoPoints = [] } "TB" "TB")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 5 1725 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 5 1725 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 13 1725 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 13 1725 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 13 1725 21 , srcInfoPoints = [] } "FromLeft")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 24 1725 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1725 24 1725 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 26 1725 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 26 1725 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 26 1725 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 26 1725 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 31 1725 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1725 31 1725 35 , srcInfoPoints = [] } "LR" "LR")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 5 1726 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 5 1726 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 13 1726 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 13 1726 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 13 1726 23 , srcInfoPoints = [] } "FromBottom")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 24 1726 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1726 24 1726 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 26 1726 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 26 1726 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 26 1726 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 26 1726 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 31 1726 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1726 31 1726 35 , srcInfoPoints = [] } "BT" "BT")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 5 1727 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 5 1727 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 13 1727 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 13 1727 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 13 1727 22 , srcInfoPoints = [] } "FromRight")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 24 1727 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1727 24 1727 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 26 1727 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 26 1727 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 26 1727 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 26 1727 30 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 31 1727 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1727 31 1727 35 , srcInfoPoints = [] } "RL" "RL")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 1 1738 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1729 1 1729 9 , SrcSpan "tests/examples/Attributes.hs" 1729 27 1729 32 , SrcSpan "tests/examples/Attributes.hs" 1730 5 1730 5 , SrcSpan "tests/examples/Attributes.hs" 1738 1 1738 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 10 1729 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 10 1729 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 10 1729 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 10 1729 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 10 1729 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 19 1729 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 19 1729 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1729 19 1729 26 , srcInfoPoints = [] } "RankDir"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 5 1734 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 5 1734 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 5 1730 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 5 1730 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 15 1734 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1730 15 1730 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 17 1734 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 17 1730 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 17 1730 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 17 1730 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 23 1734 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1730 23 1730 24 , SrcSpan "tests/examples/Attributes.hs" 1731 23 1731 24 , SrcSpan "tests/examples/Attributes.hs" 1732 23 1732 24 , SrcSpan "tests/examples/Attributes.hs" 1733 23 1733 24 , SrcSpan "tests/examples/Attributes.hs" 1734 23 1734 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 25 1730 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 25 1730 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 25 1730 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 25 1730 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 25 1730 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 35 1730 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 35 1730 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 35 1730 42 , srcInfoPoints = [] } "FromTop")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 43 1730 47 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1730 43 1730 47 , srcInfoPoints = [] } "TB" "TB")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 25 1731 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 25 1731 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 25 1731 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 25 1731 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 25 1731 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 35 1731 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 35 1731 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 35 1731 43 , srcInfoPoints = [] } "FromLeft")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 44 1731 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1731 44 1731 48 , srcInfoPoints = [] } "LR" "LR")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 25 1732 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 25 1732 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 25 1732 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 25 1732 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 25 1732 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 35 1732 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 35 1732 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 35 1732 45 , srcInfoPoints = [] } "FromBottom")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 46 1732 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1732 46 1732 50 , srcInfoPoints = [] } "BT" "BT")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 25 1733 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 25 1733 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 25 1733 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 25 1733 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 25 1733 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 35 1733 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 35 1733 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 35 1733 44 , srcInfoPoints = [] } "FromRight")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 45 1733 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1733 45 1733 49 , srcInfoPoints = [] } "RL" "RL")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1738 1 1769 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1739 5 1739 6 , SrcSpan "tests/examples/Attributes.hs" 1740 5 1740 6 , SrcSpan "tests/examples/Attributes.hs" 1741 5 1741 6 , SrcSpan "tests/examples/Attributes.hs" 1742 5 1742 6 , SrcSpan "tests/examples/Attributes.hs" 1743 5 1743 6 , SrcSpan "tests/examples/Attributes.hs" 1744 5 1744 6 , SrcSpan "tests/examples/Attributes.hs" 1745 5 1745 6 , SrcSpan "tests/examples/Attributes.hs" 1746 5 1746 6 , SrcSpan "tests/examples/Attributes.hs" 1747 5 1747 6 , SrcSpan "tests/examples/Attributes.hs" 1748 5 1748 6 , SrcSpan "tests/examples/Attributes.hs" 1749 5 1749 6 , SrcSpan "tests/examples/Attributes.hs" 1750 5 1750 6 , SrcSpan "tests/examples/Attributes.hs" 1751 5 1751 6 , SrcSpan "tests/examples/Attributes.hs" 1752 5 1752 6 , SrcSpan "tests/examples/Attributes.hs" 1753 5 1753 6 , SrcSpan "tests/examples/Attributes.hs" 1754 5 1754 6 , SrcSpan "tests/examples/Attributes.hs" 1755 5 1755 6 , SrcSpan "tests/examples/Attributes.hs" 1756 5 1756 6 , SrcSpan "tests/examples/Attributes.hs" 1757 5 1757 6 , SrcSpan "tests/examples/Attributes.hs" 1758 5 1758 6 , SrcSpan "tests/examples/Attributes.hs" 1759 5 1759 6 , SrcSpan "tests/examples/Attributes.hs" 1760 5 1760 6 , SrcSpan "tests/examples/Attributes.hs" 1761 5 1761 6 , SrcSpan "tests/examples/Attributes.hs" 1762 5 1762 6 , SrcSpan "tests/examples/Attributes.hs" 1763 5 1763 6 , SrcSpan "tests/examples/Attributes.hs" 1764 5 1764 6 , SrcSpan "tests/examples/Attributes.hs" 1765 5 1765 6 , SrcSpan "tests/examples/Attributes.hs" 1766 5 1766 6 , SrcSpan "tests/examples/Attributes.hs" 1767 5 1767 6 , SrcSpan "tests/examples/Attributes.hs" 1768 5 1768 6 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1738 1 1738 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1738 6 1738 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1738 6 1738 11 , srcInfoPoints = [] } "Shape")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1739 7 1739 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1739 7 1739 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1739 7 1739 15 , srcInfoPoints = [] } "BoxShape") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1740 7 1740 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1740 7 1740 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1740 7 1740 14 , srcInfoPoints = [] } "Polygon") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1741 7 1741 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1741 7 1741 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1741 7 1741 14 , srcInfoPoints = [] } "Ellipse") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1742 7 1742 13 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1742 7 1742 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1742 7 1742 13 , srcInfoPoints = [] } "Circle") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1743 7 1743 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1743 7 1743 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1743 7 1743 17 , srcInfoPoints = [] } "PointShape") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1744 7 1744 10 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1744 7 1744 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1744 7 1744 10 , srcInfoPoints = [] } "Egg") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1745 7 1745 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1745 7 1745 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1745 7 1745 15 , srcInfoPoints = [] } "Triangle") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1746 7 1746 16 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1746 7 1746 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1746 7 1746 16 , srcInfoPoints = [] } "PlainText") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1747 7 1747 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1747 7 1747 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1747 7 1747 19 , srcInfoPoints = [] } "DiamondShape") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1748 7 1748 16 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1748 7 1748 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1748 7 1748 16 , srcInfoPoints = [] } "Trapezium") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1749 7 1749 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1749 7 1749 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1749 7 1749 20 , srcInfoPoints = [] } "Parallelogram") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1750 7 1750 12 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1750 7 1750 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1750 7 1750 12 , srcInfoPoints = [] } "House") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1751 7 1751 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1751 7 1751 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1751 7 1751 15 , srcInfoPoints = [] } "Pentagon") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1752 7 1752 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1752 7 1752 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1752 7 1752 14 , srcInfoPoints = [] } "Hexagon") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1753 7 1753 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1753 7 1753 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1753 7 1753 15 , srcInfoPoints = [] } "Septagon") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1754 7 1754 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1754 7 1754 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1754 7 1754 14 , srcInfoPoints = [] } "Octagon") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1755 7 1755 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1755 7 1755 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1755 7 1755 19 , srcInfoPoints = [] } "DoubleCircle") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1756 7 1756 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1756 7 1756 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1756 7 1756 20 , srcInfoPoints = [] } "DoubleOctagon") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1757 7 1757 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1757 7 1757 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1757 7 1757 20 , srcInfoPoints = [] } "TripleOctagon") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1758 7 1758 18 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1758 7 1758 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1758 7 1758 18 , srcInfoPoints = [] } "InvTriangle") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1759 7 1759 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1759 7 1759 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1759 7 1759 19 , srcInfoPoints = [] } "InvTrapezium") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1760 7 1760 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1760 7 1760 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1760 7 1760 15 , srcInfoPoints = [] } "InvHouse") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1761 7 1761 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1761 7 1761 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1761 7 1761 15 , srcInfoPoints = [] } "MDiamond") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1762 7 1762 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1762 7 1762 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1762 7 1762 14 , srcInfoPoints = [] } "MSquare") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1763 7 1763 14 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1763 7 1763 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1763 7 1763 14 , srcInfoPoints = [] } "MCircle") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1764 7 1764 11 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1764 7 1764 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1764 7 1764 11 , srcInfoPoints = [] } "Note") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1765 7 1765 10 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1765 7 1765 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1765 7 1765 10 , srcInfoPoints = [] } "Tab") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1766 7 1766 13 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1766 7 1766 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1766 7 1766 13 , srcInfoPoints = [] } "Folder") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1767 7 1767 12 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1767 7 1767 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1767 7 1767 12 , srcInfoPoints = [] } "Box3D") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1768 7 1768 16 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1768 7 1768 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1768 7 1768 16 , srcInfoPoints = [] } "Component") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 7 1769 52 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1769 7 1769 15 , SrcSpan "tests/examples/Attributes.hs" 1769 16 1769 17 , SrcSpan "tests/examples/Attributes.hs" 1769 19 1769 20 , SrcSpan "tests/examples/Attributes.hs" 1769 24 1769 25 , SrcSpan "tests/examples/Attributes.hs" 1769 33 1769 34 , SrcSpan "tests/examples/Attributes.hs" 1769 39 1769 40 , SrcSpan "tests/examples/Attributes.hs" 1769 45 1769 46 , SrcSpan "tests/examples/Attributes.hs" 1769 51 1769 52 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 17 1769 19 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 17 1769 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 17 1769 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 17 1769 19 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 21 1769 24 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 21 1769 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 21 1769 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 21 1769 24 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 26 1769 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 26 1769 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 26 1769 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 26 1769 33 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 35 1769 39 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 35 1769 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 35 1769 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 35 1769 39 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 41 1769 45 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 41 1769 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 41 1769 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 41 1769 45 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 47 1769 51 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 47 1769 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 47 1769 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1769 47 1769 51 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 1 1803 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1771 1 1771 9 , SrcSpan "tests/examples/Attributes.hs" 1771 25 1771 30 , SrcSpan "tests/examples/Attributes.hs" 1772 5 1772 5 , SrcSpan "tests/examples/Attributes.hs" 1773 5 1773 5 , SrcSpan "tests/examples/Attributes.hs" 1774 5 1774 5 , SrcSpan "tests/examples/Attributes.hs" 1775 5 1775 5 , SrcSpan "tests/examples/Attributes.hs" 1776 5 1776 5 , SrcSpan "tests/examples/Attributes.hs" 1777 5 1777 5 , SrcSpan "tests/examples/Attributes.hs" 1778 5 1778 5 , SrcSpan "tests/examples/Attributes.hs" 1779 5 1779 5 , SrcSpan "tests/examples/Attributes.hs" 1780 5 1780 5 , SrcSpan "tests/examples/Attributes.hs" 1781 5 1781 5 , SrcSpan "tests/examples/Attributes.hs" 1782 5 1782 5 , SrcSpan "tests/examples/Attributes.hs" 1783 5 1783 5 , SrcSpan "tests/examples/Attributes.hs" 1784 5 1784 5 , SrcSpan "tests/examples/Attributes.hs" 1785 5 1785 5 , SrcSpan "tests/examples/Attributes.hs" 1786 5 1786 5 , SrcSpan "tests/examples/Attributes.hs" 1787 5 1787 5 , SrcSpan "tests/examples/Attributes.hs" 1788 5 1788 5 , SrcSpan "tests/examples/Attributes.hs" 1789 5 1789 5 , SrcSpan "tests/examples/Attributes.hs" 1790 5 1790 5 , SrcSpan "tests/examples/Attributes.hs" 1791 5 1791 5 , SrcSpan "tests/examples/Attributes.hs" 1792 5 1792 5 , SrcSpan "tests/examples/Attributes.hs" 1793 5 1793 5 , SrcSpan "tests/examples/Attributes.hs" 1794 5 1794 5 , SrcSpan "tests/examples/Attributes.hs" 1795 5 1795 5 , SrcSpan "tests/examples/Attributes.hs" 1796 5 1796 5 , SrcSpan "tests/examples/Attributes.hs" 1797 5 1797 5 , SrcSpan "tests/examples/Attributes.hs" 1798 5 1798 5 , SrcSpan "tests/examples/Attributes.hs" 1799 5 1799 5 , SrcSpan "tests/examples/Attributes.hs" 1800 5 1800 5 , SrcSpan "tests/examples/Attributes.hs" 1801 5 1801 5 , SrcSpan "tests/examples/Attributes.hs" 1803 1 1803 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 10 1771 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 10 1771 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 10 1771 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 10 1771 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 10 1771 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 19 1771 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 19 1771 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1771 19 1771 24 , srcInfoPoints = [] } "Shape"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 5 1801 45 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 5 1801 45 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 5 1772 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 5 1772 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 13 1772 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 13 1772 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 13 1772 21 , srcInfoPoints = [] } "BoxShape")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 27 1772 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1772 27 1772 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 29 1772 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 29 1772 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 29 1772 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 29 1772 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 34 1772 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1772 34 1772 39 , srcInfoPoints = [] } "box" "box")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 5 1773 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 5 1773 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 13 1773 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 13 1773 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 13 1773 20 , srcInfoPoints = [] } "Polygon")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 27 1773 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1773 27 1773 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 29 1773 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 29 1773 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 29 1773 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 29 1773 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 34 1773 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1773 34 1773 43 , srcInfoPoints = [] } "polygon" "polygon")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 5 1774 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 5 1774 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 13 1774 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 13 1774 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 13 1774 20 , srcInfoPoints = [] } "Ellipse")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 27 1774 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1774 27 1774 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 29 1774 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 29 1774 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 29 1774 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 29 1774 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 34 1774 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1774 34 1774 43 , srcInfoPoints = [] } "ellipse" "ellipse")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 5 1775 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 5 1775 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 13 1775 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 13 1775 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 13 1775 19 , srcInfoPoints = [] } "Circle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 27 1775 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1775 27 1775 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 29 1775 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 29 1775 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 29 1775 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 29 1775 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 34 1775 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1775 34 1775 42 , srcInfoPoints = [] } "circle" "circle")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 5 1776 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 5 1776 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 13 1776 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 13 1776 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 13 1776 23 , srcInfoPoints = [] } "PointShape")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 27 1776 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1776 27 1776 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 29 1776 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 29 1776 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 29 1776 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 29 1776 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 34 1776 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1776 34 1776 41 , srcInfoPoints = [] } "point" "point")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 5 1777 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 5 1777 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 13 1777 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 13 1777 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 13 1777 16 , srcInfoPoints = [] } "Egg")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 27 1777 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1777 27 1777 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 29 1777 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 29 1777 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 29 1777 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 29 1777 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 34 1777 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1777 34 1777 39 , srcInfoPoints = [] } "egg" "egg")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 5 1778 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 5 1778 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 13 1778 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 13 1778 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 13 1778 21 , srcInfoPoints = [] } "Triangle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 27 1778 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1778 27 1778 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 29 1778 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 29 1778 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 29 1778 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 29 1778 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 34 1778 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1778 34 1778 44 , srcInfoPoints = [] } "triangle" "triangle")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 5 1779 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 5 1779 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 13 1779 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 13 1779 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 13 1779 22 , srcInfoPoints = [] } "PlainText")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 27 1779 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1779 27 1779 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 29 1779 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 29 1779 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 29 1779 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 29 1779 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 34 1779 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1779 34 1779 45 , srcInfoPoints = [] } "plaintext" "plaintext")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 5 1780 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 5 1780 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 13 1780 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 13 1780 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 13 1780 25 , srcInfoPoints = [] } "DiamondShape")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 27 1780 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1780 27 1780 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 29 1780 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 29 1780 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 29 1780 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 29 1780 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 34 1780 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1780 34 1780 43 , srcInfoPoints = [] } "diamond" "diamond")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 5 1781 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 5 1781 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 13 1781 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 13 1781 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 13 1781 22 , srcInfoPoints = [] } "Trapezium")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 27 1781 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1781 27 1781 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 29 1781 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 29 1781 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 29 1781 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 29 1781 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 34 1781 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1781 34 1781 45 , srcInfoPoints = [] } "trapezium" "trapezium")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 5 1782 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 5 1782 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 13 1782 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 13 1782 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 13 1782 26 , srcInfoPoints = [] } "Parallelogram")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 27 1782 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1782 27 1782 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 29 1782 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 29 1782 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 29 1782 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 29 1782 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 34 1782 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1782 34 1782 49 , srcInfoPoints = [] } "parallelogram" "parallelogram")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 5 1783 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 5 1783 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 13 1783 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 13 1783 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 13 1783 18 , srcInfoPoints = [] } "House")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 27 1783 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1783 27 1783 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 29 1783 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 29 1783 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 29 1783 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 29 1783 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 34 1783 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1783 34 1783 41 , srcInfoPoints = [] } "house" "house")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 5 1784 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 5 1784 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 13 1784 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 13 1784 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 13 1784 21 , srcInfoPoints = [] } "Pentagon")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 27 1784 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1784 27 1784 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 29 1784 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 29 1784 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 29 1784 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 29 1784 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 34 1784 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1784 34 1784 44 , srcInfoPoints = [] } "pentagon" "pentagon")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 5 1785 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 5 1785 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 13 1785 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 13 1785 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 13 1785 20 , srcInfoPoints = [] } "Hexagon")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 27 1785 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1785 27 1785 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 29 1785 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 29 1785 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 29 1785 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 29 1785 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 34 1785 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1785 34 1785 43 , srcInfoPoints = [] } "hexagon" "hexagon")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 5 1786 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 5 1786 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 13 1786 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 13 1786 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 13 1786 21 , srcInfoPoints = [] } "Septagon")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 27 1786 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1786 27 1786 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 29 1786 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 29 1786 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 29 1786 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 29 1786 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 34 1786 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1786 34 1786 44 , srcInfoPoints = [] } "septagon" "septagon")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 5 1787 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 5 1787 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 13 1787 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 13 1787 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 13 1787 20 , srcInfoPoints = [] } "Octagon")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 27 1787 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1787 27 1787 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 29 1787 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 29 1787 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 29 1787 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 29 1787 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 34 1787 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1787 34 1787 43 , srcInfoPoints = [] } "octagon" "octagon")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 5 1788 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 5 1788 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 13 1788 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 13 1788 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 13 1788 25 , srcInfoPoints = [] } "DoubleCircle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 27 1788 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1788 27 1788 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 29 1788 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 29 1788 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 29 1788 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 29 1788 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 34 1788 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1788 34 1788 48 , srcInfoPoints = [] } "doublecircle" "doublecircle")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 5 1789 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 5 1789 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 13 1789 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 13 1789 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 13 1789 26 , srcInfoPoints = [] } "DoubleOctagon")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 27 1789 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1789 27 1789 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 29 1789 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 29 1789 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 29 1789 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 29 1789 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 34 1789 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1789 34 1789 49 , srcInfoPoints = [] } "doubleoctagon" "doubleoctagon")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 5 1790 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 5 1790 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 13 1790 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 13 1790 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 13 1790 26 , srcInfoPoints = [] } "TripleOctagon")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 27 1790 49 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1790 27 1790 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 29 1790 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 29 1790 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 29 1790 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 29 1790 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 34 1790 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1790 34 1790 49 , srcInfoPoints = [] } "tripleoctagon" "tripleoctagon")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 5 1791 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 5 1791 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 13 1791 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 13 1791 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 13 1791 24 , srcInfoPoints = [] } "InvTriangle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 27 1791 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1791 27 1791 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 29 1791 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 29 1791 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 29 1791 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 29 1791 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 34 1791 47 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1791 34 1791 47 , srcInfoPoints = [] } "invtriangle" "invtriangle")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 5 1792 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 5 1792 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 13 1792 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 13 1792 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 13 1792 25 , srcInfoPoints = [] } "InvTrapezium")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 27 1792 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1792 27 1792 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 29 1792 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 29 1792 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 29 1792 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 29 1792 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 34 1792 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1792 34 1792 48 , srcInfoPoints = [] } "invtrapezium" "invtrapezium")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 5 1793 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 5 1793 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 13 1793 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 13 1793 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 13 1793 21 , srcInfoPoints = [] } "InvHouse")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 27 1793 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1793 27 1793 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 29 1793 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 29 1793 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 29 1793 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 29 1793 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 34 1793 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1793 34 1793 44 , srcInfoPoints = [] } "invhouse" "invhouse")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 5 1794 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 5 1794 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 13 1794 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 13 1794 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 13 1794 21 , srcInfoPoints = [] } "MDiamond")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 27 1794 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1794 27 1794 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 29 1794 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 29 1794 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 29 1794 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 29 1794 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 34 1794 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1794 34 1794 44 , srcInfoPoints = [] } "Mdiamond" "Mdiamond")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 5 1795 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 5 1795 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 13 1795 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 13 1795 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 13 1795 20 , srcInfoPoints = [] } "MSquare")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 27 1795 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1795 27 1795 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 29 1795 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 29 1795 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 29 1795 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 29 1795 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 34 1795 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1795 34 1795 43 , srcInfoPoints = [] } "Msquare" "Msquare")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 5 1796 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 5 1796 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 13 1796 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 13 1796 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 13 1796 20 , srcInfoPoints = [] } "MCircle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 27 1796 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1796 27 1796 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 29 1796 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 29 1796 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 29 1796 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 29 1796 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 34 1796 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1796 34 1796 43 , srcInfoPoints = [] } "Mcircle" "Mcircle")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 5 1797 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 5 1797 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 13 1797 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 13 1797 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 13 1797 17 , srcInfoPoints = [] } "Note")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 27 1797 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1797 27 1797 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 29 1797 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 29 1797 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 29 1797 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 29 1797 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 34 1797 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1797 34 1797 40 , srcInfoPoints = [] } "note" "note")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 5 1798 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 5 1798 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 13 1798 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 13 1798 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 13 1798 16 , srcInfoPoints = [] } "Tab")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 27 1798 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1798 27 1798 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 29 1798 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 29 1798 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 29 1798 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 29 1798 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 34 1798 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1798 34 1798 39 , srcInfoPoints = [] } "tab" "tab")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 5 1799 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 5 1799 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 13 1799 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 13 1799 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 13 1799 19 , srcInfoPoints = [] } "Folder")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 27 1799 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1799 27 1799 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 29 1799 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 29 1799 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 29 1799 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 29 1799 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 34 1799 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1799 34 1799 42 , srcInfoPoints = [] } "folder" "folder")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 5 1800 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 5 1800 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 13 1800 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 13 1800 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 13 1800 18 , srcInfoPoints = [] } "Box3D")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 27 1800 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1800 27 1800 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 29 1800 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 29 1800 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 29 1800 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 29 1800 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 34 1800 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1800 34 1800 41 , srcInfoPoints = [] } "box3d" "box3d")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 5 1801 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 5 1801 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 13 1801 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 13 1801 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 13 1801 22 , srcInfoPoints = [] } "Component")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 27 1801 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1801 27 1801 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 29 1801 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 29 1801 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 29 1801 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 29 1801 33 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 34 1801 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1801 34 1801 45 , srcInfoPoints = [] } "component" "component")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 1 1838 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1803 1 1803 9 , SrcSpan "tests/examples/Attributes.hs" 1803 25 1803 30 , SrcSpan "tests/examples/Attributes.hs" 1804 5 1804 5 , SrcSpan "tests/examples/Attributes.hs" 1838 1 1838 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 10 1803 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 10 1803 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 10 1803 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 10 1803 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 10 1803 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 19 1803 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 19 1803 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1803 19 1803 24 , srcInfoPoints = [] } "Shape"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 5 1834 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 5 1834 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 5 1804 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 5 1804 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 15 1834 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1804 15 1804 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 17 1834 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 17 1804 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 17 1804 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 17 1804 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 23 1834 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1804 23 1804 24 , SrcSpan "tests/examples/Attributes.hs" 1805 23 1805 24 , SrcSpan "tests/examples/Attributes.hs" 1806 23 1806 24 , SrcSpan "tests/examples/Attributes.hs" 1807 23 1807 24 , SrcSpan "tests/examples/Attributes.hs" 1808 23 1808 24 , SrcSpan "tests/examples/Attributes.hs" 1809 23 1809 24 , SrcSpan "tests/examples/Attributes.hs" 1810 23 1810 24 , SrcSpan "tests/examples/Attributes.hs" 1811 23 1811 24 , SrcSpan "tests/examples/Attributes.hs" 1812 23 1812 24 , SrcSpan "tests/examples/Attributes.hs" 1813 23 1813 24 , SrcSpan "tests/examples/Attributes.hs" 1814 23 1814 24 , SrcSpan "tests/examples/Attributes.hs" 1815 23 1815 24 , SrcSpan "tests/examples/Attributes.hs" 1816 23 1816 24 , SrcSpan "tests/examples/Attributes.hs" 1817 23 1817 24 , SrcSpan "tests/examples/Attributes.hs" 1818 23 1818 24 , SrcSpan "tests/examples/Attributes.hs" 1819 23 1819 24 , SrcSpan "tests/examples/Attributes.hs" 1820 23 1820 24 , SrcSpan "tests/examples/Attributes.hs" 1821 23 1821 24 , SrcSpan "tests/examples/Attributes.hs" 1822 23 1822 24 , SrcSpan "tests/examples/Attributes.hs" 1823 23 1823 24 , SrcSpan "tests/examples/Attributes.hs" 1824 23 1824 24 , SrcSpan "tests/examples/Attributes.hs" 1825 23 1825 24 , SrcSpan "tests/examples/Attributes.hs" 1826 23 1826 24 , SrcSpan "tests/examples/Attributes.hs" 1827 23 1827 24 , SrcSpan "tests/examples/Attributes.hs" 1828 23 1828 24 , SrcSpan "tests/examples/Attributes.hs" 1829 23 1829 24 , SrcSpan "tests/examples/Attributes.hs" 1830 23 1830 24 , SrcSpan "tests/examples/Attributes.hs" 1831 23 1831 24 , SrcSpan "tests/examples/Attributes.hs" 1832 23 1832 24 , SrcSpan "tests/examples/Attributes.hs" 1833 23 1833 24 , SrcSpan "tests/examples/Attributes.hs" 1834 23 1834 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 25 1804 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 25 1804 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 25 1804 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 25 1804 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 25 1804 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 35 1804 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 35 1804 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 35 1804 40 , srcInfoPoints = [] } "Box3D")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 41 1804 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1804 41 1804 48 , srcInfoPoints = [] } "box3d" "box3d")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 25 1805 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 25 1805 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 25 1805 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 25 1805 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 25 1805 35 , srcInfoPoints = [] } "stringReps"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 36 1805 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 36 1805 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 36 1805 44 , srcInfoPoints = [] } "BoxShape")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 45 1805 71 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1805 45 1805 46 , SrcSpan "tests/examples/Attributes.hs" 1805 51 1805 52 , SrcSpan "tests/examples/Attributes.hs" 1805 63 1805 64 , SrcSpan "tests/examples/Attributes.hs" 1805 70 1805 71 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 46 1805 51 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 46 1805 51 , srcInfoPoints = [] } "box" "box") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 52 1805 63 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 52 1805 63 , srcInfoPoints = [] } "rectangle" "rectangle") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 64 1805 70 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1805 64 1805 70 , srcInfoPoints = [] } "rect" "rect") ]) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 25 1806 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 25 1806 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 25 1806 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 25 1806 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 25 1806 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 35 1806 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 35 1806 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 35 1806 42 , srcInfoPoints = [] } "Polygon")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 43 1806 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1806 43 1806 52 , srcInfoPoints = [] } "polygon" "polygon")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 25 1807 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 25 1807 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 25 1807 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 25 1807 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 25 1807 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 35 1807 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 35 1807 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 35 1807 42 , srcInfoPoints = [] } "Ellipse")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 43 1807 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1807 43 1807 52 , srcInfoPoints = [] } "ellipse" "ellipse")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 25 1808 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 25 1808 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 25 1808 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 25 1808 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 25 1808 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 35 1808 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 35 1808 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 35 1808 41 , srcInfoPoints = [] } "Circle")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 42 1808 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1808 42 1808 50 , srcInfoPoints = [] } "circle" "circle")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 25 1809 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 25 1809 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 25 1809 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 25 1809 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 25 1809 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 35 1809 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 35 1809 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 35 1809 45 , srcInfoPoints = [] } "PointShape")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 46 1809 53 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1809 46 1809 53 , srcInfoPoints = [] } "point" "point")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 25 1810 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 25 1810 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 25 1810 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 25 1810 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 25 1810 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 35 1810 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 35 1810 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 35 1810 38 , srcInfoPoints = [] } "Egg")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 39 1810 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1810 39 1810 44 , srcInfoPoints = [] } "egg" "egg")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 25 1811 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 25 1811 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 25 1811 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 25 1811 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 25 1811 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 35 1811 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 35 1811 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 35 1811 43 , srcInfoPoints = [] } "Triangle")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 44 1811 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1811 44 1811 54 , srcInfoPoints = [] } "triangle" "triangle")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 25 1812 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 25 1812 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 25 1812 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 25 1812 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 25 1812 35 , srcInfoPoints = [] } "stringReps"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 36 1812 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 36 1812 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 36 1812 45 , srcInfoPoints = [] } "PlainText")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 46 1812 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1812 46 1812 47 , SrcSpan "tests/examples/Attributes.hs" 1812 58 1812 59 , SrcSpan "tests/examples/Attributes.hs" 1812 65 1812 66 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 47 1812 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 47 1812 58 , srcInfoPoints = [] } "plaintext" "plaintext") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 59 1812 65 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1812 59 1812 65 , srcInfoPoints = [] } "none" "none") ]) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 25 1813 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 25 1813 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 25 1813 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 25 1813 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 25 1813 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 35 1813 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 35 1813 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 35 1813 47 , srcInfoPoints = [] } "DiamondShape")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 48 1813 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1813 48 1813 57 , srcInfoPoints = [] } "diamond" "diamond")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 25 1814 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 25 1814 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 25 1814 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 25 1814 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 25 1814 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 35 1814 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 35 1814 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 35 1814 44 , srcInfoPoints = [] } "Trapezium")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 45 1814 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1814 45 1814 56 , srcInfoPoints = [] } "trapezium" "trapezium")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 25 1815 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 25 1815 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 25 1815 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 25 1815 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 25 1815 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 35 1815 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 35 1815 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 35 1815 48 , srcInfoPoints = [] } "Parallelogram")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 49 1815 64 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1815 49 1815 64 , srcInfoPoints = [] } "parallelogram" "parallelogram")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 25 1816 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 25 1816 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 25 1816 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 25 1816 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 25 1816 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 35 1816 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 35 1816 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 35 1816 40 , srcInfoPoints = [] } "House")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 41 1816 48 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1816 41 1816 48 , srcInfoPoints = [] } "house" "house")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 25 1817 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 25 1817 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 25 1817 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 25 1817 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 25 1817 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 35 1817 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 35 1817 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 35 1817 43 , srcInfoPoints = [] } "Pentagon")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 44 1817 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1817 44 1817 54 , srcInfoPoints = [] } "pentagon" "pentagon")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 25 1818 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 25 1818 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 25 1818 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 25 1818 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 25 1818 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 35 1818 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 35 1818 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 35 1818 42 , srcInfoPoints = [] } "Hexagon")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 43 1818 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1818 43 1818 52 , srcInfoPoints = [] } "hexagon" "hexagon")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 25 1819 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 25 1819 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 25 1819 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 25 1819 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 25 1819 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 35 1819 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 35 1819 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 35 1819 43 , srcInfoPoints = [] } "Septagon")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 44 1819 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1819 44 1819 54 , srcInfoPoints = [] } "septagon" "septagon")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 25 1820 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 25 1820 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 25 1820 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 25 1820 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 25 1820 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 35 1820 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 35 1820 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 35 1820 42 , srcInfoPoints = [] } "Octagon")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 43 1820 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1820 43 1820 52 , srcInfoPoints = [] } "octagon" "octagon")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 25 1821 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 25 1821 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 25 1821 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 25 1821 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 25 1821 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 35 1821 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 35 1821 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 35 1821 47 , srcInfoPoints = [] } "DoubleCircle")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 48 1821 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1821 48 1821 62 , srcInfoPoints = [] } "doublecircle" "doublecircle")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 25 1822 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 25 1822 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 25 1822 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 25 1822 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 25 1822 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 35 1822 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 35 1822 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 35 1822 48 , srcInfoPoints = [] } "DoubleOctagon")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 49 1822 64 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1822 49 1822 64 , srcInfoPoints = [] } "doubleoctagon" "doubleoctagon")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 25 1823 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 25 1823 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 25 1823 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 25 1823 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 25 1823 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 35 1823 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 35 1823 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 35 1823 48 , srcInfoPoints = [] } "TripleOctagon")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 49 1823 64 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1823 49 1823 64 , srcInfoPoints = [] } "tripleoctagon" "tripleoctagon")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 25 1824 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 25 1824 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 25 1824 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 25 1824 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 25 1824 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 35 1824 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 35 1824 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 35 1824 46 , srcInfoPoints = [] } "InvTriangle")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 47 1824 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1824 47 1824 60 , srcInfoPoints = [] } "invtriangle" "invtriangle")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 25 1825 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 25 1825 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 25 1825 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 25 1825 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 25 1825 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 35 1825 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 35 1825 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 35 1825 47 , srcInfoPoints = [] } "InvTrapezium")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 48 1825 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1825 48 1825 62 , srcInfoPoints = [] } "invtrapezium" "invtrapezium")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 25 1826 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 25 1826 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 25 1826 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 25 1826 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 25 1826 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 35 1826 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 35 1826 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 35 1826 43 , srcInfoPoints = [] } "InvHouse")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 44 1826 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1826 44 1826 54 , srcInfoPoints = [] } "invhouse" "invhouse")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 25 1827 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 25 1827 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 25 1827 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 25 1827 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 25 1827 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 35 1827 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 35 1827 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 35 1827 43 , srcInfoPoints = [] } "MDiamond")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 44 1827 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1827 44 1827 54 , srcInfoPoints = [] } "Mdiamond" "Mdiamond")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 25 1828 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 25 1828 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 25 1828 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 25 1828 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 25 1828 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 35 1828 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 35 1828 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 35 1828 42 , srcInfoPoints = [] } "MSquare")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 43 1828 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1828 43 1828 52 , srcInfoPoints = [] } "Msquare" "Msquare")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 25 1829 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 25 1829 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 25 1829 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 25 1829 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 25 1829 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 35 1829 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 35 1829 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 35 1829 42 , srcInfoPoints = [] } "MCircle")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 43 1829 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1829 43 1829 52 , srcInfoPoints = [] } "Mcircle" "Mcircle")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 25 1830 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 25 1830 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 25 1830 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 25 1830 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 25 1830 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 35 1830 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 35 1830 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 35 1830 39 , srcInfoPoints = [] } "Note")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 40 1830 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1830 40 1830 46 , srcInfoPoints = [] } "note" "note")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 25 1831 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 25 1831 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 25 1831 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 25 1831 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 25 1831 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 35 1831 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 35 1831 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 35 1831 38 , srcInfoPoints = [] } "Tab")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 39 1831 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1831 39 1831 44 , srcInfoPoints = [] } "tab" "tab")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 25 1832 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 25 1832 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 25 1832 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 25 1832 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 25 1832 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 35 1832 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 35 1832 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 35 1832 41 , srcInfoPoints = [] } "Folder")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 42 1832 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1832 42 1832 50 , srcInfoPoints = [] } "folder" "folder")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 25 1833 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 25 1833 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 25 1833 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 25 1833 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 25 1833 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 35 1833 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 35 1833 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 35 1833 44 , srcInfoPoints = [] } "Component")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 45 1833 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1833 45 1833 56 , srcInfoPoints = [] } "component" "component")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1838 1 1845 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1838 17 1838 18 , SrcSpan "tests/examples/Attributes.hs" 1839 17 1839 18 , SrcSpan "tests/examples/Attributes.hs" 1840 17 1840 18 , SrcSpan "tests/examples/Attributes.hs" 1841 17 1841 18 , SrcSpan "tests/examples/Attributes.hs" 1842 17 1842 18 , SrcSpan "tests/examples/Attributes.hs" 1843 17 1843 18 , SrcSpan "tests/examples/Attributes.hs" 1844 17 1844 18 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1838 1 1838 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1838 6 1838 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1838 6 1838 16 , srcInfoPoints = [] } "SmoothType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1838 19 1838 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1838 19 1838 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1838 19 1838 27 , srcInfoPoints = [] } "NoSmooth") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1839 19 1839 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1839 19 1839 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1839 19 1839 26 , srcInfoPoints = [] } "AvgDist") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1840 19 1840 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1840 19 1840 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1840 19 1840 28 , srcInfoPoints = [] } "GraphDist") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1841 19 1841 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1841 19 1841 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1841 19 1841 28 , srcInfoPoints = [] } "PowerDist") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1842 19 1842 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1842 19 1842 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1842 19 1842 22 , srcInfoPoints = [] } "RNG") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1843 19 1843 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1843 19 1843 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1843 19 1843 25 , srcInfoPoints = [] } "Spring") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1844 19 1844 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1844 19 1844 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1844 19 1844 33 , srcInfoPoints = [] } "TriangleSmooth") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 19 1845 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1845 19 1845 27 , SrcSpan "tests/examples/Attributes.hs" 1845 28 1845 29 , SrcSpan "tests/examples/Attributes.hs" 1845 31 1845 32 , SrcSpan "tests/examples/Attributes.hs" 1845 36 1845 37 , SrcSpan "tests/examples/Attributes.hs" 1845 45 1845 46 , SrcSpan "tests/examples/Attributes.hs" 1845 51 1845 52 , SrcSpan "tests/examples/Attributes.hs" 1845 57 1845 58 , SrcSpan "tests/examples/Attributes.hs" 1845 63 1845 64 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 29 1845 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 29 1845 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 29 1845 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 29 1845 31 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 33 1845 36 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 33 1845 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 33 1845 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 33 1845 36 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 38 1845 45 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 38 1845 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 38 1845 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 38 1845 45 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 47 1845 51 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 47 1845 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 47 1845 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 47 1845 51 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 53 1845 57 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 53 1845 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 53 1845 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 53 1845 57 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 59 1845 63 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 59 1845 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 59 1845 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1845 59 1845 63 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 1 1856 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1847 1 1847 9 , SrcSpan "tests/examples/Attributes.hs" 1847 30 1847 35 , SrcSpan "tests/examples/Attributes.hs" 1848 5 1848 5 , SrcSpan "tests/examples/Attributes.hs" 1849 5 1849 5 , SrcSpan "tests/examples/Attributes.hs" 1850 5 1850 5 , SrcSpan "tests/examples/Attributes.hs" 1851 5 1851 5 , SrcSpan "tests/examples/Attributes.hs" 1852 5 1852 5 , SrcSpan "tests/examples/Attributes.hs" 1853 5 1853 5 , SrcSpan "tests/examples/Attributes.hs" 1854 5 1854 5 , SrcSpan "tests/examples/Attributes.hs" 1856 1 1856 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 10 1847 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 10 1847 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 10 1847 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 10 1847 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 10 1847 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 19 1847 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 19 1847 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1847 19 1847 29 , srcInfoPoints = [] } "SmoothType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 5 1854 45 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 5 1854 45 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 5 1848 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 5 1848 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 13 1848 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 13 1848 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 13 1848 21 , srcInfoPoints = [] } "NoSmooth")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 28 1848 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1848 28 1848 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 30 1848 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 30 1848 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 30 1848 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 30 1848 34 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 35 1848 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1848 35 1848 41 , srcInfoPoints = [] } "none" "none")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 5 1849 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 5 1849 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 13 1849 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 13 1849 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 13 1849 20 , srcInfoPoints = [] } "AvgDist")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 28 1849 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1849 28 1849 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 30 1849 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 30 1849 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 30 1849 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 30 1849 34 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 35 1849 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1849 35 1849 45 , srcInfoPoints = [] } "avg_dist" "avg_dist")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 5 1850 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 5 1850 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 13 1850 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 13 1850 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 13 1850 22 , srcInfoPoints = [] } "GraphDist")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 28 1850 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1850 28 1850 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 30 1850 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 30 1850 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 30 1850 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 30 1850 34 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 35 1850 47 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1850 35 1850 47 , srcInfoPoints = [] } "graph_dist" "graph_dist")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 5 1851 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 5 1851 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 13 1851 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 13 1851 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 13 1851 22 , srcInfoPoints = [] } "PowerDist")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 28 1851 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1851 28 1851 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 30 1851 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 30 1851 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 30 1851 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 30 1851 34 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 35 1851 47 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1851 35 1851 47 , srcInfoPoints = [] } "power_dist" "power_dist")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 5 1852 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 5 1852 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 13 1852 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 13 1852 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 13 1852 16 , srcInfoPoints = [] } "RNG")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 28 1852 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1852 28 1852 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 30 1852 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 30 1852 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 30 1852 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 30 1852 34 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 35 1852 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1852 35 1852 40 , srcInfoPoints = [] } "rng" "rng")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 5 1853 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 5 1853 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 13 1853 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 13 1853 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 13 1853 19 , srcInfoPoints = [] } "Spring")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 28 1853 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1853 28 1853 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 30 1853 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 30 1853 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 30 1853 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 30 1853 34 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 35 1853 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1853 35 1853 43 , srcInfoPoints = [] } "spring" "spring")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 5 1854 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 5 1854 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 13 1854 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 13 1854 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 13 1854 27 , srcInfoPoints = [] } "TriangleSmooth")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 28 1854 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1854 28 1854 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 30 1854 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 30 1854 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 30 1854 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 30 1854 34 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 35 1854 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1854 35 1854 45 , srcInfoPoints = [] } "triangle" "triangle")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 1 1868 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1856 1 1856 9 , SrcSpan "tests/examples/Attributes.hs" 1856 30 1856 35 , SrcSpan "tests/examples/Attributes.hs" 1857 5 1857 5 , SrcSpan "tests/examples/Attributes.hs" 1868 1 1868 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 10 1856 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 10 1856 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 10 1856 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 10 1856 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 10 1856 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 19 1856 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 19 1856 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1856 19 1856 29 , srcInfoPoints = [] } "SmoothType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 5 1864 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 5 1864 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 5 1857 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 5 1857 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 15 1864 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1857 15 1857 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 17 1864 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 17 1857 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 17 1857 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 17 1857 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 23 1864 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1857 23 1857 24 , SrcSpan "tests/examples/Attributes.hs" 1858 23 1858 24 , SrcSpan "tests/examples/Attributes.hs" 1859 23 1859 24 , SrcSpan "tests/examples/Attributes.hs" 1860 23 1860 24 , SrcSpan "tests/examples/Attributes.hs" 1861 23 1861 24 , SrcSpan "tests/examples/Attributes.hs" 1862 23 1862 24 , SrcSpan "tests/examples/Attributes.hs" 1863 23 1863 24 , SrcSpan "tests/examples/Attributes.hs" 1864 23 1864 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 25 1857 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 25 1857 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 25 1857 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 25 1857 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 25 1857 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 35 1857 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 35 1857 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 35 1857 43 , srcInfoPoints = [] } "NoSmooth")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 44 1857 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1857 44 1857 50 , srcInfoPoints = [] } "none" "none")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 25 1858 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 25 1858 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 25 1858 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 25 1858 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 25 1858 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 35 1858 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 35 1858 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 35 1858 42 , srcInfoPoints = [] } "AvgDist")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 43 1858 53 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1858 43 1858 53 , srcInfoPoints = [] } "avg_dist" "avg_dist")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 25 1859 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 25 1859 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 25 1859 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 25 1859 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 25 1859 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 35 1859 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 35 1859 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 35 1859 44 , srcInfoPoints = [] } "GraphDist")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 45 1859 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1859 45 1859 57 , srcInfoPoints = [] } "graph_dist" "graph_dist")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 25 1860 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 25 1860 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 25 1860 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 25 1860 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 25 1860 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 35 1860 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 35 1860 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 35 1860 44 , srcInfoPoints = [] } "PowerDist")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 45 1860 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1860 45 1860 57 , srcInfoPoints = [] } "power_dist" "power_dist")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 25 1861 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 25 1861 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 25 1861 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 25 1861 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 25 1861 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 35 1861 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 35 1861 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 35 1861 38 , srcInfoPoints = [] } "RNG")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 39 1861 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1861 39 1861 44 , srcInfoPoints = [] } "rng" "rng")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 25 1862 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 25 1862 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 25 1862 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 25 1862 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 25 1862 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 35 1862 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 35 1862 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 35 1862 41 , srcInfoPoints = [] } "Spring")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 42 1862 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1862 42 1862 50 , srcInfoPoints = [] } "spring" "spring")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 25 1863 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 25 1863 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 25 1863 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 25 1863 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 25 1863 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 35 1863 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 35 1863 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 35 1863 49 , srcInfoPoints = [] } "TriangleSmooth")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 50 1863 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1863 50 1863 60 , srcInfoPoints = [] } "triangle" "triangle")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 1 1871 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1868 16 1868 17 , SrcSpan "tests/examples/Attributes.hs" 1869 16 1869 17 , SrcSpan "tests/examples/Attributes.hs" 1870 16 1870 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 1 1868 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 6 1868 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 6 1868 15 , srcInfoPoints = [] } "StartType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 18 1868 36 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 18 1868 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 18 1868 28 , srcInfoPoints = [] } "StartStyle") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 29 1868 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 29 1868 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1868 29 1868 36 , srcInfoPoints = [] } "STStyle")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1869 18 1869 31 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1869 18 1869 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1869 18 1869 27 , srcInfoPoints = [] } "StartSeed") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1869 28 1869 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1869 28 1869 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1869 28 1869 31 , srcInfoPoints = [] } "Int")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 18 1870 44 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 18 1870 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 18 1870 32 , srcInfoPoints = [] } "StartStyleSeed") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 33 1870 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 33 1870 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 33 1870 40 , srcInfoPoints = [] } "STStyle")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 41 1870 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 41 1870 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1870 41 1870 44 , srcInfoPoints = [] } "Int")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 18 1871 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1871 18 1871 26 , SrcSpan "tests/examples/Attributes.hs" 1871 27 1871 28 , SrcSpan "tests/examples/Attributes.hs" 1871 30 1871 31 , SrcSpan "tests/examples/Attributes.hs" 1871 35 1871 36 , SrcSpan "tests/examples/Attributes.hs" 1871 41 1871 42 , SrcSpan "tests/examples/Attributes.hs" 1871 47 1871 48 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 28 1871 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 28 1871 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 28 1871 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 28 1871 30 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 32 1871 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 32 1871 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 32 1871 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 32 1871 35 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 37 1871 41 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 37 1871 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 37 1871 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 37 1871 41 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 43 1871 47 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 43 1871 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 43 1871 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1871 43 1871 47 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 1 1878 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1873 1 1873 9 , SrcSpan "tests/examples/Attributes.hs" 1873 29 1873 34 , SrcSpan "tests/examples/Attributes.hs" 1874 5 1874 5 , SrcSpan "tests/examples/Attributes.hs" 1875 5 1875 5 , SrcSpan "tests/examples/Attributes.hs" 1876 5 1876 5 , SrcSpan "tests/examples/Attributes.hs" 1878 1 1878 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 10 1873 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 10 1873 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 10 1873 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 10 1873 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 10 1873 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 19 1873 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 19 1873 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1873 19 1873 28 , srcInfoPoints = [] } "StartType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 5 1876 60 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 5 1876 60 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 5 1874 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 5 1874 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 13 1874 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1874 13 1874 14 , SrcSpan "tests/examples/Attributes.hs" 1874 27 1874 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 14 1874 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 14 1874 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 14 1874 24 , srcInfoPoints = [] } "StartStyle")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 25 1874 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 25 1874 27 , srcInfoPoints = [] } "ss") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 35 1874 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1874 35 1874 36 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 37 1874 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 37 1874 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 37 1874 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 37 1874 44 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 45 1874 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 45 1874 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1874 45 1874 47 , srcInfoPoints = [] } "ss"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 5 1875 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 5 1875 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 13 1875 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1875 13 1875 14 , SrcSpan "tests/examples/Attributes.hs" 1875 25 1875 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 14 1875 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 14 1875 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 14 1875 23 , srcInfoPoints = [] } "StartSeed")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 24 1875 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 24 1875 25 , srcInfoPoints = [] } "s") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 35 1875 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1875 35 1875 36 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 37 1875 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 37 1875 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 37 1875 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 37 1875 44 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 45 1875 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 45 1875 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1875 45 1875 46 , srcInfoPoints = [] } "s"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 5 1876 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 5 1876 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 13 1876 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1876 13 1876 14 , SrcSpan "tests/examples/Attributes.hs" 1876 33 1876 34 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 14 1876 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 14 1876 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 14 1876 28 , srcInfoPoints = [] } "StartStyleSeed")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 29 1876 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 29 1876 31 , srcInfoPoints = [] } "ss") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 32 1876 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 32 1876 33 , srcInfoPoints = [] } "s") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 35 1876 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1876 35 1876 36 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 37 1876 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 37 1876 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 37 1876 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 37 1876 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 37 1876 44 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 45 1876 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 45 1876 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 45 1876 47 , srcInfoPoints = [] } "ss")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 48 1876 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 48 1876 50 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 48 1876 50 , srcInfoPoints = [] } "<>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 51 1876 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 51 1876 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 51 1876 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 51 1876 58 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 59 1876 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 59 1876 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1876 59 1876 60 , srcInfoPoints = [] } "s")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 1 1886 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1878 1 1878 9 , SrcSpan "tests/examples/Attributes.hs" 1878 29 1878 34 , SrcSpan "tests/examples/Attributes.hs" 1879 5 1879 5 , SrcSpan "tests/examples/Attributes.hs" 1886 1 1886 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 10 1878 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 10 1878 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 10 1878 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 10 1878 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 10 1878 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 19 1878 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 19 1878 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1878 19 1878 28 , srcInfoPoints = [] } "StartType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 5 1884 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 5 1884 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 5 1879 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 5 1879 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 15 1884 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1879 15 1879 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 17 1884 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 17 1879 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 17 1879 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 17 1879 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 23 1884 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1879 23 1879 24 , SrcSpan "tests/examples/Attributes.hs" 1882 23 1882 24 , SrcSpan "tests/examples/Attributes.hs" 1883 23 1883 24 , SrcSpan "tests/examples/Attributes.hs" 1884 23 1884 24 ] } [ Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 25 1881 56 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1879 25 1879 27 , SrcSpan "tests/examples/Attributes.hs" 1879 28 1879 28 , SrcSpan "tests/examples/Attributes.hs" 1880 28 1880 28 , SrcSpan "tests/examples/Attributes.hs" 1881 28 1881 28 , SrcSpan "tests/examples/Attributes.hs" 1882 23 1882 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 28 1879 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1879 31 1879 33 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 28 1879 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 28 1879 30 , srcInfoPoints = [] } "ss")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 34 1879 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 34 1879 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1879 34 1879 43 , srcInfoPoints = [] } "parseUnqt"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1880 28 1880 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1880 31 1880 33 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1880 28 1880 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1880 28 1880 29 , srcInfoPoints = [] } "s")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1880 34 1880 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1880 34 1880 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1880 34 1880 43 , srcInfoPoints = [] } "parseUnqt"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 28 1881 56 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 28 1881 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 28 1881 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 28 1881 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 28 1881 34 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 35 1881 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 35 1881 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 35 1881 36 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 37 1881 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 37 1881 54 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 37 1881 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 37 1881 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 37 1881 51 , srcInfoPoints = [] } "StartStyleSeed"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 52 1881 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 52 1881 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 52 1881 54 , srcInfoPoints = [] } "ss")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 55 1881 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 55 1881 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1881 55 1881 56 , srcInfoPoints = [] } "s"))))) ] , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 25 1882 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 25 1882 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 25 1882 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 25 1882 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 25 1882 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 31 1882 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 31 1882 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 31 1882 41 , srcInfoPoints = [] } "StartStyle")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 42 1882 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 42 1882 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1882 42 1882 51 , srcInfoPoints = [] } "parseUnqt"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 25 1883 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 25 1883 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 25 1883 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 25 1883 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 25 1883 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 31 1883 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 31 1883 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 31 1883 40 , srcInfoPoints = [] } "StartSeed")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 41 1883 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 41 1883 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1883 41 1883 50 , srcInfoPoints = [] } "parseUnqt"))) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1886 1 1889 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1886 14 1886 15 , SrcSpan "tests/examples/Attributes.hs" 1887 14 1887 15 , SrcSpan "tests/examples/Attributes.hs" 1888 14 1888 15 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1886 1 1886 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1886 6 1886 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1886 6 1886 13 , srcInfoPoints = [] } "STStyle")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1886 16 1886 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1886 16 1886 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1886 16 1886 28 , srcInfoPoints = [] } "RegularStyle") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1887 16 1887 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1887 16 1887 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1887 16 1887 25 , srcInfoPoints = [] } "SelfStyle") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1888 16 1888 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1888 16 1888 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1888 16 1888 27 , srcInfoPoints = [] } "RandomStyle") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 16 1889 61 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1889 16 1889 24 , SrcSpan "tests/examples/Attributes.hs" 1889 25 1889 26 , SrcSpan "tests/examples/Attributes.hs" 1889 28 1889 29 , SrcSpan "tests/examples/Attributes.hs" 1889 33 1889 34 , SrcSpan "tests/examples/Attributes.hs" 1889 42 1889 43 , SrcSpan "tests/examples/Attributes.hs" 1889 48 1889 49 , SrcSpan "tests/examples/Attributes.hs" 1889 54 1889 55 , SrcSpan "tests/examples/Attributes.hs" 1889 60 1889 61 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 26 1889 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 26 1889 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 26 1889 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 26 1889 28 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 30 1889 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 30 1889 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 30 1889 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 30 1889 33 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 35 1889 42 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 35 1889 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 35 1889 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 35 1889 42 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 44 1889 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 44 1889 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 44 1889 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 44 1889 48 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 50 1889 54 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 50 1889 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 50 1889 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 50 1889 54 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 56 1889 60 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 56 1889 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 56 1889 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1889 56 1889 60 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 1 1896 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1891 1 1891 9 , SrcSpan "tests/examples/Attributes.hs" 1891 27 1891 32 , SrcSpan "tests/examples/Attributes.hs" 1892 5 1892 5 , SrcSpan "tests/examples/Attributes.hs" 1893 5 1893 5 , SrcSpan "tests/examples/Attributes.hs" 1894 5 1894 5 , SrcSpan "tests/examples/Attributes.hs" 1896 1 1896 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 10 1891 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 10 1891 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 10 1891 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 10 1891 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 10 1891 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 19 1891 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 19 1891 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1891 19 1891 26 , srcInfoPoints = [] } "STStyle"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 5 1894 41 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 5 1894 41 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 5 1892 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 5 1892 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 13 1892 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 13 1892 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 13 1892 25 , srcInfoPoints = [] } "RegularStyle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 26 1892 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1892 26 1892 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 28 1892 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 28 1892 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 28 1892 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 28 1892 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 33 1892 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1892 33 1892 42 , srcInfoPoints = [] } "regular" "regular")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 5 1893 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 5 1893 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 13 1893 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 13 1893 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 13 1893 22 , srcInfoPoints = [] } "SelfStyle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 26 1893 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1893 26 1893 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 28 1893 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 28 1893 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 28 1893 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 28 1893 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 33 1893 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1893 33 1893 39 , srcInfoPoints = [] } "self" "self")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 5 1894 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 5 1894 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 13 1894 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 13 1894 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 13 1894 24 , srcInfoPoints = [] } "RandomStyle")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 26 1894 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1894 26 1894 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 28 1894 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 28 1894 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 28 1894 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 28 1894 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 33 1894 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1894 33 1894 41 , srcInfoPoints = [] } "random" "random")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 1 1904 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1896 1 1896 9 , SrcSpan "tests/examples/Attributes.hs" 1896 27 1896 32 , SrcSpan "tests/examples/Attributes.hs" 1897 5 1897 5 , SrcSpan "tests/examples/Attributes.hs" 1904 1 1904 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 10 1896 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 10 1896 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 10 1896 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 10 1896 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 10 1896 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 19 1896 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 19 1896 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1896 19 1896 26 , srcInfoPoints = [] } "STStyle"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 5 1900 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 5 1900 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 5 1897 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 5 1897 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 15 1900 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1897 15 1897 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 17 1900 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 17 1897 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 17 1897 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 17 1897 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 23 1900 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1897 23 1897 24 , SrcSpan "tests/examples/Attributes.hs" 1898 23 1898 24 , SrcSpan "tests/examples/Attributes.hs" 1899 23 1899 24 , SrcSpan "tests/examples/Attributes.hs" 1900 23 1900 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 25 1897 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 25 1897 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 25 1897 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 25 1897 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 25 1897 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 35 1897 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 35 1897 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 35 1897 47 , srcInfoPoints = [] } "RegularStyle")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 48 1897 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1897 48 1897 57 , srcInfoPoints = [] } "regular" "regular")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 25 1898 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 25 1898 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 25 1898 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 25 1898 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 25 1898 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 35 1898 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 35 1898 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 35 1898 44 , srcInfoPoints = [] } "SelfStyle")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 45 1898 51 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1898 45 1898 51 , srcInfoPoints = [] } "self" "self")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 25 1899 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 25 1899 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 25 1899 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 25 1899 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 25 1899 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 35 1899 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 35 1899 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 35 1899 46 , srcInfoPoints = [] } "RandomStyle")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 47 1899 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1899 47 1899 55 , srcInfoPoints = [] } "random" "random")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 1 1905 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1904 16 1904 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 1 1904 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 6 1904 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 6 1904 15 , srcInfoPoints = [] } "StyleItem")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 18 1904 42 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 18 1904 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 18 1904 23 , srcInfoPoints = [] } "SItem") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 24 1904 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 24 1904 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 24 1904 33 , srcInfoPoints = [] } "StyleName")) , TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 34 1904 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1904 34 1904 35 , SrcSpan "tests/examples/Attributes.hs" 1904 41 1904 42 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 35 1904 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 35 1904 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1904 35 1904 41 , srcInfoPoints = [] } "String"))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 14 1905 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1905 14 1905 22 , SrcSpan "tests/examples/Attributes.hs" 1905 23 1905 24 , SrcSpan "tests/examples/Attributes.hs" 1905 26 1905 27 , SrcSpan "tests/examples/Attributes.hs" 1905 31 1905 32 , SrcSpan "tests/examples/Attributes.hs" 1905 37 1905 38 , SrcSpan "tests/examples/Attributes.hs" 1905 43 1905 44 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 24 1905 26 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 24 1905 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 24 1905 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 24 1905 26 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 28 1905 31 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 28 1905 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 28 1905 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 28 1905 31 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 33 1905 37 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 33 1905 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 33 1905 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 33 1905 37 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 39 1905 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 39 1905 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 39 1905 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1905 39 1905 43 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 1 1924 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1907 1 1907 9 , SrcSpan "tests/examples/Attributes.hs" 1907 29 1907 34 , SrcSpan "tests/examples/Attributes.hs" 1908 5 1908 5 , SrcSpan "tests/examples/Attributes.hs" 1915 5 1915 5 , SrcSpan "tests/examples/Attributes.hs" 1919 5 1919 5 , SrcSpan "tests/examples/Attributes.hs" 1921 5 1921 5 , SrcSpan "tests/examples/Attributes.hs" 1922 5 1922 5 , SrcSpan "tests/examples/Attributes.hs" 1924 1 1924 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 10 1907 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 10 1907 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 10 1907 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 10 1907 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 10 1907 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 19 1907 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 19 1907 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1907 19 1907 28 , srcInfoPoints = [] } "StyleItem"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 5 1913 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1911 9 1911 14 ] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 5 1913 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1911 9 1911 14 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 5 1913 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1911 9 1911 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 5 1908 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 13 1908 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1908 13 1908 14 , SrcSpan "tests/examples/Attributes.hs" 1908 27 1908 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 14 1908 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 14 1908 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 14 1908 19 , srcInfoPoints = [] } "SItem")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 20 1908 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 20 1908 22 , srcInfoPoints = [] } "nm") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 23 1908 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1908 23 1908 27 , srcInfoPoints = [] } "args") ]) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 9 1910 42 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 9 1909 26 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1909 9 1909 10 , SrcSpan "tests/examples/Attributes.hs" 1909 21 1909 22 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 11 1909 20 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 11 1909 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 11 1909 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 11 1909 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 11 1909 15 , srcInfoPoints = [] } "null"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 16 1909 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 16 1909 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 16 1909 20 , srcInfoPoints = [] } "args")))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 23 1909 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 23 1909 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1909 23 1909 26 , srcInfoPoints = [] } "dnm"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 9 1910 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1910 9 1910 10 , SrcSpan "tests/examples/Attributes.hs" 1910 21 1910 22 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 11 1910 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 11 1910 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 11 1910 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 11 1910 20 , srcInfoPoints = [] } "otherwise"))) ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 23 1910 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 23 1910 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 23 1910 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 23 1910 26 , srcInfoPoints = [] } "dnm"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 27 1910 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 27 1910 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 27 1910 29 , srcInfoPoints = [] } "<>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 30 1910 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 30 1910 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 30 1910 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 30 1910 36 , srcInfoPoints = [] } "parens"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 37 1910 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 37 1910 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1910 37 1910 42 , srcInfoPoints = [] } "args'"))))) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 11 1913 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1912 11 1912 11 , SrcSpan "tests/examples/Attributes.hs" 1913 11 1913 11 , SrcSpan "tests/examples/Attributes.hs" 1915 5 1915 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 11 1912 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 11 1912 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 11 1912 14 , srcInfoPoints = [] } "dnm")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 15 1912 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1912 15 1912 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 17 1912 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 17 1912 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 17 1912 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 17 1912 24 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 25 1912 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 25 1912 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1912 25 1912 27 , srcInfoPoints = [] } "nm"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 11 1913 60 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 11 1913 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 11 1913 16 , srcInfoPoints = [] } "args'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 17 1913 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1913 17 1913 18 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 19 1913 60 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 19 1913 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 19 1913 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 19 1913 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 19 1913 23 , srcInfoPoints = [] } "hcat"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 24 1913 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 24 1913 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 24 1913 25 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 26 1913 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 26 1913 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 26 1913 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 26 1913 35 , srcInfoPoints = [] } "punctuate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 36 1913 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 36 1913 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 36 1913 41 , srcInfoPoints = [] } "comma"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 42 1913 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 42 1913 43 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 42 1913 43 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 44 1913 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 44 1913 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 44 1913 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 44 1913 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 44 1913 47 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 48 1913 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 48 1913 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 48 1913 55 , srcInfoPoints = [] } "unqtDot")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 56 1913 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 56 1913 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1913 56 1913 60 , srcInfoPoints = [] } "args")))))) Nothing ])) ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 5 1917 48 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 5 1917 48 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 5 1917 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 5 1915 10 , srcInfoPoints = [] } "toDot") [ PAsPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 11 1915 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1915 13 1915 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 11 1915 13 , srcInfoPoints = [] } "si") (PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 14 1915 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1915 14 1915 15 , SrcSpan "tests/examples/Attributes.hs" 1915 28 1915 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 15 1915 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 15 1915 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 15 1915 20 , srcInfoPoints = [] } "SItem")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 21 1915 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 21 1915 23 , srcInfoPoints = [] } "nm") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 24 1915 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1915 24 1915 28 , srcInfoPoints = [] } "args") ])) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 9 1917 48 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 9 1916 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1916 9 1916 10 , SrcSpan "tests/examples/Attributes.hs" 1916 21 1916 22 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 11 1916 20 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 11 1916 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 11 1916 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 11 1916 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 11 1916 15 , srcInfoPoints = [] } "null"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 16 1916 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 16 1916 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 16 1916 20 , srcInfoPoints = [] } "args")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 23 1916 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 23 1916 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 23 1916 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 23 1916 28 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 29 1916 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 29 1916 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1916 29 1916 31 , srcInfoPoints = [] } "nm")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 9 1917 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1917 9 1917 10 , SrcSpan "tests/examples/Attributes.hs" 1917 21 1917 22 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 11 1917 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 11 1917 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 11 1917 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 11 1917 20 , srcInfoPoints = [] } "otherwise"))) ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 23 1917 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 23 1917 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 23 1917 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 23 1917 35 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 36 1917 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 36 1917 37 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 36 1917 37 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 38 1917 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 38 1917 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 38 1917 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 38 1917 45 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 46 1917 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 46 1917 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1917 46 1917 48 , srcInfoPoints = [] } "si"))))) ]) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 5 1919 57 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 5 1919 57 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 5 1919 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 5 1919 18 , srcInfoPoints = [] } "unqtListToDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 19 1919 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1919 19 1919 20 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 21 1919 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 21 1919 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 21 1919 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 21 1919 25 , srcInfoPoints = [] } "hcat"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 26 1919 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 26 1919 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 26 1919 27 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 28 1919 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 28 1919 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 28 1919 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 28 1919 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 28 1919 37 , srcInfoPoints = [] } "punctuate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 38 1919 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 38 1919 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 38 1919 43 , srcInfoPoints = [] } "comma")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 44 1919 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 44 1919 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 44 1919 45 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 46 1919 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 46 1919 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 46 1919 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 46 1919 49 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 50 1919 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 50 1919 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1919 50 1919 57 , srcInfoPoints = [] } "unqtDot"))))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 5 1922 63 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 5 1922 63 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 5 1921 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 5 1921 14 , srcInfoPoints = [] } "listToDot") [ PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 15 1921 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1921 15 1921 16 , SrcSpan "tests/examples/Attributes.hs" 1921 27 1921 28 ] } [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 16 1921 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 16 1921 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 16 1921 21 , srcInfoPoints = [] } "SItem")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 22 1921 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 22 1921 24 , srcInfoPoints = [] } "nm") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 25 1921 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1921 25 1921 26 , SrcSpan "tests/examples/Attributes.hs" 1921 26 1921 27 ] } [] ] ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 29 1921 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1921 29 1921 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 31 1921 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 31 1921 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 31 1921 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 31 1921 36 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 37 1921 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 37 1921 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1921 37 1921 39 , srcInfoPoints = [] } "nm"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 5 1922 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 5 1922 14 , srcInfoPoints = [] } "listToDot") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 15 1922 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 15 1922 18 , srcInfoPoints = [] } "sis") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 29 1922 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1922 29 1922 30 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 31 1922 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 31 1922 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 31 1922 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 31 1922 43 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 44 1922 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 44 1922 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 44 1922 45 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 46 1922 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 46 1922 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 46 1922 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 46 1922 59 , srcInfoPoints = [] } "unqtListToDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 60 1922 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 60 1922 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1922 60 1922 63 , srcInfoPoints = [] } "sis")))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 1 1940 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1924 1 1924 9 , SrcSpan "tests/examples/Attributes.hs" 1924 29 1924 34 , SrcSpan "tests/examples/Attributes.hs" 1925 5 1925 5 , SrcSpan "tests/examples/Attributes.hs" 1929 5 1929 5 , SrcSpan "tests/examples/Attributes.hs" 1933 5 1933 5 , SrcSpan "tests/examples/Attributes.hs" 1935 5 1935 5 , SrcSpan "tests/examples/Attributes.hs" 1940 1 1940 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 10 1924 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 10 1924 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 10 1924 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 10 1924 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 10 1924 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 19 1924 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 19 1924 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1924 19 1924 28 , srcInfoPoints = [] } "StyleItem"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 5 1927 42 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 5 1927 42 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 5 1925 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 5 1925 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 15 1927 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1925 15 1925 16 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 17 1927 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1925 17 1925 19 , SrcSpan "tests/examples/Attributes.hs" 1925 20 1925 20 , SrcSpan "tests/examples/Attributes.hs" 1926 20 1926 20 , SrcSpan "tests/examples/Attributes.hs" 1927 20 1927 20 , SrcSpan "tests/examples/Attributes.hs" 1929 5 1929 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 20 1925 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1925 23 1925 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 20 1925 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 20 1925 22 , srcInfoPoints = [] } "nm")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 26 1925 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 26 1925 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1925 26 1925 35 , srcInfoPoints = [] } "parseUnqt"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 20 1926 51 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1926 25 1926 27 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 20 1926 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 20 1926 24 , srcInfoPoints = [] } "args")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 28 1926 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 28 1926 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 28 1926 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 28 1926 41 , srcInfoPoints = [] } "tryParseList'"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 42 1926 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 42 1926 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1926 42 1926 51 , srcInfoPoints = [] } "parseArgs")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 20 1927 42 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 20 1927 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 20 1927 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 20 1927 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 20 1927 26 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 27 1927 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 27 1927 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 27 1927 28 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 29 1927 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 29 1927 37 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 29 1927 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 29 1927 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 29 1927 34 , srcInfoPoints = [] } "SItem"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 35 1927 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 35 1927 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 35 1927 37 , srcInfoPoints = [] } "nm")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 38 1927 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 38 1927 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1927 38 1927 42 , srcInfoPoints = [] } "args"))))) ])) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 5 1931 40 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 5 1931 40 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 5 1929 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 5 1929 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 11 1931 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1929 11 1929 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 13 1931 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 13 1929 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 13 1929 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 13 1929 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 13 1929 24 , srcInfoPoints = [] } "quotedParse"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 25 1929 59 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1929 25 1929 26 , SrcSpan "tests/examples/Attributes.hs" 1929 58 1929 59 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 26 1929 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 26 1929 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 26 1929 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 26 1929 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 26 1929 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 26 1929 32 , srcInfoPoints = [] } "liftM2"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 33 1929 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 33 1929 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 33 1929 38 , srcInfoPoints = [] } "SItem")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 39 1929 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 39 1929 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 39 1929 48 , srcInfoPoints = [] } "parseUnqt")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 49 1929 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 49 1929 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1929 49 1929 58 , srcInfoPoints = [] } "parseArgs")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1930 13 1930 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1930 13 1930 14 , SrcSpan "tests/examples/Attributes.hs" 1930 14 1930 20 , SrcSpan "tests/examples/Attributes.hs" 1930 20 1930 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1930 13 1930 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1930 13 1930 14 , SrcSpan "tests/examples/Attributes.hs" 1930 14 1930 20 , SrcSpan "tests/examples/Attributes.hs" 1930 20 1930 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1930 14 1930 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 13 1931 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 13 1931 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 13 1931 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 13 1931 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 13 1931 18 , srcInfoPoints = [] } "liftM"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 19 1931 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1931 19 1931 20 , SrcSpan "tests/examples/Attributes.hs" 1931 33 1931 34 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 20 1931 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 20 1931 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 20 1931 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 20 1931 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 20 1931 24 , srcInfoPoints = [] } "flip"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 25 1931 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 25 1931 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 25 1931 30 , srcInfoPoints = [] } "SItem")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 31 1931 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1931 31 1931 32 , SrcSpan "tests/examples/Attributes.hs" 1931 32 1931 33 ] } [])))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 35 1931 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 35 1931 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1931 35 1931 40 , srcInfoPoints = [] } "parse")))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 5 1933 48 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 5 1933 48 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 5 1933 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 5 1933 18 , srcInfoPoints = [] } "parseUnqtList")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 19 1933 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1933 19 1933 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 21 1933 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 21 1933 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 21 1933 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 21 1933 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 21 1933 27 , srcInfoPoints = [] } "sepBy1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 28 1933 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 28 1933 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 28 1933 37 , srcInfoPoints = [] } "parseUnqt")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 38 1933 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 38 1933 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1933 38 1933 48 , srcInfoPoints = [] } "parseComma"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 5 1938 35 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 5 1938 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 5 1935 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 5 1935 14 , srcInfoPoints = [] } "parseList")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 15 1938 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1935 15 1935 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 17 1938 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 17 1935 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 17 1935 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 17 1935 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 17 1935 28 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 29 1935 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 29 1935 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1935 29 1935 42 , srcInfoPoints = [] } "parseUnqtList")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1936 17 1936 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1936 17 1936 18 , SrcSpan "tests/examples/Attributes.hs" 1936 18 1936 24 , SrcSpan "tests/examples/Attributes.hs" 1936 24 1936 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1936 17 1936 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1936 17 1936 18 , SrcSpan "tests/examples/Attributes.hs" 1936 18 1936 24 , SrcSpan "tests/examples/Attributes.hs" 1936 24 1936 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1936 18 1936 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 17 1938 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 17 1938 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 17 1938 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 17 1938 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 17 1938 22 , srcInfoPoints = [] } "liftM"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 23 1938 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 23 1938 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 23 1938 29 , srcInfoPoints = [] } "return")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 30 1938 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 30 1938 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1938 30 1938 35 , srcInfoPoints = [] } "parse")))))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 1 1940 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1940 11 1940 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 1 1940 10 , srcInfoPoints = [] } "parseArgs" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 14 1940 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 14 1940 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 14 1940 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 14 1940 19 , srcInfoPoints = [] } "Parse"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 20 1940 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1940 20 1940 21 , SrcSpan "tests/examples/Attributes.hs" 1940 27 1940 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 21 1940 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 21 1940 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1940 21 1940 27 , srcInfoPoints = [] } "String"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 1 1944 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 1 1941 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 1 1941 10 , srcInfoPoints = [] } "parseArgs")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 11 1944 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1941 11 1941 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 13 1944 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 13 1943 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 13 1942 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 13 1941 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 13 1941 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 13 1941 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 13 1941 23 , srcInfoPoints = [] } "bracketSep"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 24 1941 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1941 24 1941 25 , SrcSpan "tests/examples/Attributes.hs" 1941 38 1941 39 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 25 1941 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 25 1941 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 25 1941 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 25 1941 34 , srcInfoPoints = [] } "character"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 35 1941 38 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1941 35 1941 38 , srcInfoPoints = [] } '(' "("))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1942 24 1942 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1942 24 1942 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1942 24 1942 34 , srcInfoPoints = [] } "parseComma")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1943 24 1943 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1943 24 1943 25 , SrcSpan "tests/examples/Attributes.hs" 1943 38 1943 39 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1943 25 1943 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1943 25 1943 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1943 25 1943 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1943 25 1943 34 , srcInfoPoints = [] } "character"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1943 35 1943 38 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1943 35 1943 38 , srcInfoPoints = [] } ')' ")"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1944 24 1944 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1944 24 1944 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1944 24 1944 38 , srcInfoPoints = [] } "parseStyleName"))))) Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1946 1 1955 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1946 16 1946 17 , SrcSpan "tests/examples/Attributes.hs" 1947 16 1947 17 , SrcSpan "tests/examples/Attributes.hs" 1948 16 1948 17 , SrcSpan "tests/examples/Attributes.hs" 1949 16 1949 17 , SrcSpan "tests/examples/Attributes.hs" 1950 16 1950 17 , SrcSpan "tests/examples/Attributes.hs" 1951 16 1951 17 , SrcSpan "tests/examples/Attributes.hs" 1952 16 1952 17 , SrcSpan "tests/examples/Attributes.hs" 1953 16 1953 17 , SrcSpan "tests/examples/Attributes.hs" 1954 16 1954 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1946 1 1946 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1946 6 1946 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1946 6 1946 15 , srcInfoPoints = [] } "StyleName")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1946 18 1946 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1946 18 1946 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1946 18 1946 24 , srcInfoPoints = [] } "Dashed") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1947 18 1947 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1947 18 1947 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1947 18 1947 24 , srcInfoPoints = [] } "Dotted") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1948 18 1948 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1948 18 1948 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1948 18 1948 23 , srcInfoPoints = [] } "Solid") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1949 18 1949 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1949 18 1949 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1949 18 1949 22 , srcInfoPoints = [] } "Bold") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1950 18 1950 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1950 18 1950 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1950 18 1950 27 , srcInfoPoints = [] } "Invisible") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1951 18 1951 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1951 18 1951 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1951 18 1951 24 , srcInfoPoints = [] } "Filled") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1952 18 1952 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1952 18 1952 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1952 18 1952 27 , srcInfoPoints = [] } "Diagonals") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1953 18 1953 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1953 18 1953 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1953 18 1953 25 , srcInfoPoints = [] } "Rounded") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1954 18 1954 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1954 18 1954 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1954 18 1954 20 , srcInfoPoints = [] } "DD") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1954 21 1954 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1954 21 1954 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1954 21 1954 27 , srcInfoPoints = [] } "String")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 18 1955 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1955 18 1955 26 , SrcSpan "tests/examples/Attributes.hs" 1955 27 1955 28 , SrcSpan "tests/examples/Attributes.hs" 1955 30 1955 31 , SrcSpan "tests/examples/Attributes.hs" 1955 35 1955 36 , SrcSpan "tests/examples/Attributes.hs" 1955 41 1955 42 , SrcSpan "tests/examples/Attributes.hs" 1955 47 1955 48 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 28 1955 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 28 1955 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 28 1955 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 28 1955 30 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 32 1955 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 32 1955 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 32 1955 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 32 1955 35 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 37 1955 41 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 37 1955 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 37 1955 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 37 1955 41 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 43 1955 47 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 43 1955 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 43 1955 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1955 43 1955 47 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 1 1971 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1957 1 1957 9 , SrcSpan "tests/examples/Attributes.hs" 1957 29 1957 34 , SrcSpan "tests/examples/Attributes.hs" 1958 5 1958 5 , SrcSpan "tests/examples/Attributes.hs" 1959 5 1959 5 , SrcSpan "tests/examples/Attributes.hs" 1960 5 1960 5 , SrcSpan "tests/examples/Attributes.hs" 1961 5 1961 5 , SrcSpan "tests/examples/Attributes.hs" 1962 5 1962 5 , SrcSpan "tests/examples/Attributes.hs" 1963 5 1963 5 , SrcSpan "tests/examples/Attributes.hs" 1964 5 1964 5 , SrcSpan "tests/examples/Attributes.hs" 1965 5 1965 5 , SrcSpan "tests/examples/Attributes.hs" 1966 5 1966 5 , SrcSpan "tests/examples/Attributes.hs" 1968 5 1968 5 , SrcSpan "tests/examples/Attributes.hs" 1969 5 1969 5 , SrcSpan "tests/examples/Attributes.hs" 1971 1 1971 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 10 1957 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 10 1957 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 10 1957 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 10 1957 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 10 1957 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 19 1957 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 19 1957 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1957 19 1957 28 , srcInfoPoints = [] } "StyleName"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 5 1966 35 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 5 1966 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 5 1958 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 5 1958 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 13 1958 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 13 1958 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 13 1958 19 , srcInfoPoints = [] } "Dashed")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 23 1958 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1958 23 1958 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 25 1958 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 25 1958 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 25 1958 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 25 1958 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 30 1958 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1958 30 1958 38 , srcInfoPoints = [] } "dashed" "dashed")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 5 1959 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 5 1959 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 13 1959 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 13 1959 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 13 1959 19 , srcInfoPoints = [] } "Dotted")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 23 1959 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1959 23 1959 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 25 1959 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 25 1959 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 25 1959 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 25 1959 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 30 1959 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1959 30 1959 38 , srcInfoPoints = [] } "dotted" "dotted")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 5 1960 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 5 1960 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 13 1960 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 13 1960 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 13 1960 18 , srcInfoPoints = [] } "Solid")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 23 1960 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1960 23 1960 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 25 1960 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 25 1960 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 25 1960 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 25 1960 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 30 1960 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1960 30 1960 37 , srcInfoPoints = [] } "solid" "solid")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 5 1961 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 5 1961 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 13 1961 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 13 1961 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 13 1961 17 , srcInfoPoints = [] } "Bold")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 23 1961 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1961 23 1961 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 25 1961 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 25 1961 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 25 1961 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 25 1961 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 30 1961 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1961 30 1961 36 , srcInfoPoints = [] } "bold" "bold")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 5 1962 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 5 1962 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 13 1962 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 13 1962 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 13 1962 22 , srcInfoPoints = [] } "Invisible")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 23 1962 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1962 23 1962 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 25 1962 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 25 1962 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 25 1962 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 25 1962 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 30 1962 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1962 30 1962 37 , srcInfoPoints = [] } "invis" "invis")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 5 1963 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 5 1963 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 13 1963 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 13 1963 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 13 1963 19 , srcInfoPoints = [] } "Filled")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 23 1963 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1963 23 1963 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 25 1963 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 25 1963 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 25 1963 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 25 1963 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 30 1963 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1963 30 1963 38 , srcInfoPoints = [] } "filled" "filled")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 5 1964 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 5 1964 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 13 1964 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 13 1964 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 13 1964 22 , srcInfoPoints = [] } "Diagonals")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 23 1964 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1964 23 1964 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 25 1964 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 25 1964 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 25 1964 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 25 1964 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 30 1964 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1964 30 1964 41 , srcInfoPoints = [] } "diagonals" "diagonals")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 5 1965 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 5 1965 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 13 1965 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 13 1965 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 13 1965 20 , srcInfoPoints = [] } "Rounded")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 23 1965 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1965 23 1965 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 25 1965 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 25 1965 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 25 1965 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 25 1965 29 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 30 1965 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1965 30 1965 39 , srcInfoPoints = [] } "rounded" "rounded")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 5 1966 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 5 1966 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 13 1966 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1966 13 1966 14 , SrcSpan "tests/examples/Attributes.hs" 1966 19 1966 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 14 1966 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 14 1966 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 14 1966 16 , srcInfoPoints = [] } "DD")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 17 1966 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 17 1966 19 , srcInfoPoints = [] } "nm") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 23 1966 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1966 23 1966 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 25 1966 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 25 1966 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 25 1966 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 25 1966 32 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 33 1966 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 33 1966 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1966 33 1966 35 , srcInfoPoints = [] } "nm"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 5 1969 31 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 5 1969 31 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 5 1968 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 5 1968 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 11 1968 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1968 11 1968 12 , SrcSpan "tests/examples/Attributes.hs" 1968 17 1968 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 12 1968 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 12 1968 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 12 1968 14 , srcInfoPoints = [] } "DD")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 15 1968 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 15 1968 17 , srcInfoPoints = [] } "nm") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 19 1968 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1968 19 1968 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 21 1968 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 21 1968 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 21 1968 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 21 1968 26 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 27 1968 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 27 1968 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1968 27 1968 29 , srcInfoPoints = [] } "nm"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 5 1969 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 5 1969 10 , srcInfoPoints = [] } "toDot") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 11 1969 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 11 1969 13 , srcInfoPoints = [] } "sn") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 19 1969 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1969 19 1969 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 21 1969 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 21 1969 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 21 1969 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 21 1969 28 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 29 1969 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 29 1969 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1969 29 1969 31 , srcInfoPoints = [] } "sn"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 1 1982 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1971 1 1971 9 , SrcSpan "tests/examples/Attributes.hs" 1971 29 1971 34 , SrcSpan "tests/examples/Attributes.hs" 1972 5 1972 5 , SrcSpan "tests/examples/Attributes.hs" 1974 5 1974 5 , SrcSpan "tests/examples/Attributes.hs" 1982 1 1982 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 10 1971 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 10 1971 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 10 1971 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 10 1971 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 10 1971 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 19 1971 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 19 1971 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1971 19 1971 28 , srcInfoPoints = [] } "StyleName"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 5 1972 45 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 5 1972 45 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 5 1972 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 5 1972 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 15 1972 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1972 15 1972 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 17 1972 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 17 1972 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 17 1972 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 17 1972 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 17 1972 22 , srcInfoPoints = [] } "liftM"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 23 1972 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 23 1972 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 23 1972 30 , srcInfoPoints = [] } "checkDD")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 31 1972 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 31 1972 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1972 31 1972 45 , srcInfoPoints = [] } "parseStyleName"))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 5 1980 30 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 5 1980 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 5 1974 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 5 1974 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 11 1980 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1974 11 1974 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 13 1980 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 13 1974 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 13 1974 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 13 1974 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 13 1974 18 , srcInfoPoints = [] } "liftM"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 19 1974 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 19 1974 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1974 19 1974 26 , srcInfoPoints = [] } "checkDD")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 13 1975 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 13 1975 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 13 1975 14 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 15 1980 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 15 1975 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 15 1975 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 15 1975 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 15 1975 26 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 27 1975 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 27 1975 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1975 27 1975 41 , srcInfoPoints = [] } "parseStyleName")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1976 15 1976 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1976 15 1976 16 , SrcSpan "tests/examples/Attributes.hs" 1976 16 1976 22 , SrcSpan "tests/examples/Attributes.hs" 1976 22 1976 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1976 15 1976 23 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1976 15 1976 16 , SrcSpan "tests/examples/Attributes.hs" 1976 16 1976 22 , SrcSpan "tests/examples/Attributes.hs" 1976 22 1976 23 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1976 16 1976 22 , srcInfoPoints = [] } "onFail"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 15 1980 30 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1978 15 1978 17 , SrcSpan "tests/examples/Attributes.hs" 1978 18 1978 18 , SrcSpan "tests/examples/Attributes.hs" 1979 18 1979 18 , SrcSpan "tests/examples/Attributes.hs" 1980 18 1980 18 , SrcSpan "tests/examples/Attributes.hs" 1982 1 1982 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 18 1978 76 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1978 20 1978 22 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 18 1978 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 18 1978 19 , srcInfoPoints = [] } "f")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 23 1978 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 23 1978 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 23 1978 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 23 1978 30 , srcInfoPoints = [] } "orQuote"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 31 1978 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 31 1978 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 31 1978 32 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 33 1978 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 33 1978 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 33 1978 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 33 1978 39 , srcInfoPoints = [] } "noneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 40 1978 76 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1978 40 1978 41 , SrcSpan "tests/examples/Attributes.hs" 1978 50 1978 51 , SrcSpan "tests/examples/Attributes.hs" 1978 55 1978 56 , SrcSpan "tests/examples/Attributes.hs" 1978 60 1978 61 , SrcSpan "tests/examples/Attributes.hs" 1978 65 1978 66 , SrcSpan "tests/examples/Attributes.hs" 1978 70 1978 71 , SrcSpan "tests/examples/Attributes.hs" 1978 75 1978 76 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 41 1978 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 41 1978 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 41 1978 50 , srcInfoPoints = [] } "quoteChar")) , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 52 1978 55 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 52 1978 55 , srcInfoPoints = [] } '(' "(") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 57 1978 60 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 57 1978 60 , srcInfoPoints = [] } ')' ")") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 62 1978 65 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 62 1978 65 , srcInfoPoints = [] } ',' ",") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 67 1978 70 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 67 1978 70 , srcInfoPoints = [] } ' ' " ") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 72 1978 75 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1978 72 1978 75 , srcInfoPoints = [] } ']' "]") ]))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 18 1979 78 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1979 20 1979 22 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 18 1979 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 18 1979 19 , srcInfoPoints = [] } "r")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 23 1979 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 23 1979 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 23 1979 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 23 1979 27 , srcInfoPoints = [] } "many"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 28 1979 78 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1979 28 1979 29 , SrcSpan "tests/examples/Attributes.hs" 1979 77 1979 78 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 29 1979 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 29 1979 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 29 1979 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 29 1979 36 , srcInfoPoints = [] } "orQuote"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 37 1979 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 37 1979 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 37 1979 38 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 39 1979 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 39 1979 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 39 1979 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 39 1979 45 , srcInfoPoints = [] } "noneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 46 1979 77 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1979 46 1979 47 , SrcSpan "tests/examples/Attributes.hs" 1979 56 1979 57 , SrcSpan "tests/examples/Attributes.hs" 1979 61 1979 62 , SrcSpan "tests/examples/Attributes.hs" 1979 66 1979 67 , SrcSpan "tests/examples/Attributes.hs" 1979 71 1979 72 , SrcSpan "tests/examples/Attributes.hs" 1979 76 1979 77 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 47 1979 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 47 1979 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 47 1979 56 , srcInfoPoints = [] } "quoteChar")) , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 58 1979 61 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 58 1979 61 , srcInfoPoints = [] } '(' "(") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 63 1979 66 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 63 1979 66 , srcInfoPoints = [] } ')' ")") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 68 1979 71 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 68 1979 71 , srcInfoPoints = [] } ',' ",") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 73 1979 76 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1979 73 1979 76 , srcInfoPoints = [] } ']' "]") ]))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 18 1980 30 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 18 1980 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 18 1980 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 18 1980 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 18 1980 24 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 25 1980 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 25 1980 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 25 1980 26 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 27 1980 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 27 1980 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 27 1980 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 27 1980 28 , srcInfoPoints = [] } "f"))) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 28 1980 29 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 28 1980 29 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 28 1980 29 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 29 1980 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 29 1980 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1980 29 1980 30 , srcInfoPoints = [] } "r"))))) ])))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 1 1982 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1982 13 1982 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 1 1982 8 , srcInfoPoints = [] } "checkDD" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 16 1982 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1982 23 1982 25 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 16 1982 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 16 1982 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 16 1982 22 , srcInfoPoints = [] } "String"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 26 1982 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 26 1982 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1982 26 1982 35 , srcInfoPoints = [] } "StyleName")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 1 1992 38 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 1 1992 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 1 1983 8 , srcInfoPoints = [] } "checkDD") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 9 1983 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 9 1983 12 , srcInfoPoints = [] } "str") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 13 1992 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1983 13 1983 14 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 15 1992 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1983 15 1983 19 , SrcSpan "tests/examples/Attributes.hs" 1983 36 1983 38 , SrcSpan "tests/examples/Attributes.hs" 1984 17 1984 17 , SrcSpan "tests/examples/Attributes.hs" 1985 17 1985 17 , SrcSpan "tests/examples/Attributes.hs" 1986 17 1986 17 , SrcSpan "tests/examples/Attributes.hs" 1987 17 1987 17 , SrcSpan "tests/examples/Attributes.hs" 1988 17 1988 17 , SrcSpan "tests/examples/Attributes.hs" 1989 17 1989 17 , SrcSpan "tests/examples/Attributes.hs" 1990 17 1990 17 , SrcSpan "tests/examples/Attributes.hs" 1991 17 1991 17 , SrcSpan "tests/examples/Attributes.hs" 1992 17 1992 17 , SrcSpan "tests/examples/Attributes.hs" 1994 1 1994 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 20 1983 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 20 1983 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 20 1983 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 20 1983 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 20 1983 23 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 24 1983 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 24 1983 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 24 1983 31 , srcInfoPoints = [] } "toLower")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 32 1983 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 32 1983 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1983 32 1983 35 , srcInfoPoints = [] } "str")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1984 17 1984 38 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1984 17 1984 25 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1984 17 1984 25 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1984 17 1984 25 , srcInfoPoints = [] } "dashed" "dashed")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1984 29 1984 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1984 29 1984 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1984 32 1984 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1984 32 1984 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1984 32 1984 38 , srcInfoPoints = [] } "Dashed")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1985 17 1985 38 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1985 17 1985 25 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1985 17 1985 25 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1985 17 1985 25 , srcInfoPoints = [] } "dotted" "dotted")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1985 29 1985 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1985 29 1985 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1985 32 1985 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1985 32 1985 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1985 32 1985 38 , srcInfoPoints = [] } "Dotted")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1986 17 1986 37 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1986 17 1986 24 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1986 17 1986 24 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1986 17 1986 24 , srcInfoPoints = [] } "solid" "solid")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1986 29 1986 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1986 29 1986 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1986 32 1986 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1986 32 1986 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1986 32 1986 37 , srcInfoPoints = [] } "Solid")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1987 17 1987 36 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1987 17 1987 23 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1987 17 1987 23 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1987 17 1987 23 , srcInfoPoints = [] } "bold" "bold")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1987 29 1987 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1987 29 1987 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1987 32 1987 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1987 32 1987 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1987 32 1987 36 , srcInfoPoints = [] } "Bold")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1988 17 1988 41 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1988 17 1988 24 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1988 17 1988 24 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1988 17 1988 24 , srcInfoPoints = [] } "invis" "invis")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1988 29 1988 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1988 29 1988 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1988 32 1988 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1988 32 1988 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1988 32 1988 41 , srcInfoPoints = [] } "Invisible")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1989 17 1989 38 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1989 17 1989 25 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1989 17 1989 25 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1989 17 1989 25 , srcInfoPoints = [] } "filled" "filled")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1989 29 1989 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1989 29 1989 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1989 32 1989 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1989 32 1989 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1989 32 1989 38 , srcInfoPoints = [] } "Filled")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1990 17 1990 41 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1990 17 1990 28 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1990 17 1990 28 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1990 17 1990 28 , srcInfoPoints = [] } "diagonals" "diagonals")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1990 29 1990 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1990 29 1990 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1990 32 1990 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1990 32 1990 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1990 32 1990 41 , srcInfoPoints = [] } "Diagonals")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1991 17 1991 39 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1991 17 1991 26 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1991 17 1991 26 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1991 17 1991 26 , srcInfoPoints = [] } "rounded" "rounded")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1991 29 1991 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1991 29 1991 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1991 32 1991 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1991 32 1991 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1991 32 1991 39 , srcInfoPoints = [] } "Rounded")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 17 1992 38 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 17 1992 18 , srcInfoPoints = [] }) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 29 1992 38 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1992 29 1992 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 32 1992 38 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 32 1992 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 32 1992 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 32 1992 34 , srcInfoPoints = [] } "DD"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 35 1992 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 35 1992 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1992 35 1992 38 , srcInfoPoints = [] } "str"))))) Nothing ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 1 1994 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1994 16 1994 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 1 1994 15 , srcInfoPoints = [] } "parseStyleName" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 19 1994 31 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 19 1994 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 19 1994 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 19 1994 24 , srcInfoPoints = [] } "Parse"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 25 1994 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 25 1994 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1994 25 1994 31 , srcInfoPoints = [] } "String")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 1 1997 33 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 1 1995 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 1 1995 15 , srcInfoPoints = [] } "parseStyleName")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 16 1997 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1995 16 1995 17 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 18 1997 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1995 18 1995 20 , SrcSpan "tests/examples/Attributes.hs" 1995 21 1995 21 , SrcSpan "tests/examples/Attributes.hs" 1996 21 1996 21 , SrcSpan "tests/examples/Attributes.hs" 1997 21 1997 21 , SrcSpan "tests/examples/Attributes.hs" 2001 1 2001 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 21 1995 74 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1995 23 1995 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 21 1995 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 21 1995 22 , srcInfoPoints = [] } "f")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 26 1995 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 26 1995 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 26 1995 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 26 1995 33 , srcInfoPoints = [] } "orQuote"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 34 1995 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 34 1995 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 34 1995 35 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 36 1995 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 36 1995 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 36 1995 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 36 1995 42 , srcInfoPoints = [] } "noneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 43 1995 74 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1995 43 1995 44 , SrcSpan "tests/examples/Attributes.hs" 1995 53 1995 54 , SrcSpan "tests/examples/Attributes.hs" 1995 58 1995 59 , SrcSpan "tests/examples/Attributes.hs" 1995 63 1995 64 , SrcSpan "tests/examples/Attributes.hs" 1995 68 1995 69 , SrcSpan "tests/examples/Attributes.hs" 1995 73 1995 74 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 44 1995 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 44 1995 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 44 1995 53 , srcInfoPoints = [] } "quoteChar")) , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 55 1995 58 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 55 1995 58 , srcInfoPoints = [] } '(' "(") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 60 1995 63 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 60 1995 63 , srcInfoPoints = [] } ')' ")") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 65 1995 68 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 65 1995 68 , srcInfoPoints = [] } ',' ",") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 70 1995 73 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1995 70 1995 73 , srcInfoPoints = [] } ' ' " ") ]))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 21 1996 76 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1996 23 1996 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 21 1996 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 21 1996 22 , srcInfoPoints = [] } "r")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 26 1996 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 26 1996 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 26 1996 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 26 1996 30 , srcInfoPoints = [] } "many"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 31 1996 76 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1996 31 1996 32 , SrcSpan "tests/examples/Attributes.hs" 1996 75 1996 76 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 32 1996 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 32 1996 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 32 1996 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 32 1996 39 , srcInfoPoints = [] } "orQuote"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 40 1996 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 40 1996 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 40 1996 41 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 42 1996 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 42 1996 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 42 1996 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 42 1996 48 , srcInfoPoints = [] } "noneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 49 1996 75 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 1996 49 1996 50 , SrcSpan "tests/examples/Attributes.hs" 1996 59 1996 60 , SrcSpan "tests/examples/Attributes.hs" 1996 64 1996 65 , SrcSpan "tests/examples/Attributes.hs" 1996 69 1996 70 , SrcSpan "tests/examples/Attributes.hs" 1996 74 1996 75 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 50 1996 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 50 1996 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 50 1996 59 , srcInfoPoints = [] } "quoteChar")) , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 61 1996 64 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 61 1996 64 , srcInfoPoints = [] } '(' "(") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 66 1996 69 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 66 1996 69 , srcInfoPoints = [] } ')' ")") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 71 1996 74 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1996 71 1996 74 , srcInfoPoints = [] } ',' ",") ]))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 21 1997 33 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 21 1997 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 21 1997 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 21 1997 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 21 1997 27 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 28 1997 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 28 1997 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 28 1997 29 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 30 1997 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 30 1997 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 30 1997 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 30 1997 31 , srcInfoPoints = [] } "f"))) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 31 1997 32 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 31 1997 32 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 31 1997 32 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 32 1997 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 32 1997 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 1997 32 1997 33 , srcInfoPoints = [] } "r"))))) ])) Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 1 2002 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2001 17 2001 18 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 1 2001 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 9 2001 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 9 2001 16 , srcInfoPoints = [] } "PortPos")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 19 2001 34 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 19 2001 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 19 2001 21 , srcInfoPoints = [] } "PP") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 22 2001 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 22 2001 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2001 22 2001 34 , srcInfoPoints = [] } "CompassPoint")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 5 2002 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2002 5 2002 13 , SrcSpan "tests/examples/Attributes.hs" 2002 14 2002 15 , SrcSpan "tests/examples/Attributes.hs" 2002 17 2002 18 , SrcSpan "tests/examples/Attributes.hs" 2002 22 2002 23 , SrcSpan "tests/examples/Attributes.hs" 2002 28 2002 29 , SrcSpan "tests/examples/Attributes.hs" 2002 34 2002 35 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 15 2002 17 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 15 2002 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 15 2002 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 15 2002 17 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 19 2002 22 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 19 2002 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 19 2002 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 19 2002 22 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 24 2002 28 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 24 2002 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 24 2002 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 24 2002 28 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 30 2002 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 30 2002 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 30 2002 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2002 30 2002 34 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 1 2009 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2004 1 2004 9 , SrcSpan "tests/examples/Attributes.hs" 2004 27 2004 32 , SrcSpan "tests/examples/Attributes.hs" 2005 5 2005 5 , SrcSpan "tests/examples/Attributes.hs" 2007 5 2007 5 , SrcSpan "tests/examples/Attributes.hs" 2009 1 2009 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 10 2004 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 10 2004 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 10 2004 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 10 2004 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 10 2004 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 19 2004 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 19 2004 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2004 19 2004 26 , srcInfoPoints = [] } "PortPos"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 5 2005 33 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 5 2005 33 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 5 2005 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 5 2005 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 13 2005 20 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2005 13 2005 14 , SrcSpan "tests/examples/Attributes.hs" 2005 19 2005 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 14 2005 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 14 2005 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 14 2005 16 , srcInfoPoints = [] } "PP")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 17 2005 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 17 2005 19 , srcInfoPoints = [] } "cp") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 21 2005 33 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2005 21 2005 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 23 2005 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 23 2005 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 23 2005 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 23 2005 30 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 31 2005 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 31 2005 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2005 31 2005 33 , srcInfoPoints = [] } "cp"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 5 2007 29 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 5 2007 29 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 5 2007 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 5 2007 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 11 2007 18 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2007 11 2007 12 , SrcSpan "tests/examples/Attributes.hs" 2007 17 2007 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 12 2007 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 12 2007 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 12 2007 14 , srcInfoPoints = [] } "PP")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 15 2007 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 15 2007 17 , srcInfoPoints = [] } "cp") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 19 2007 29 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2007 19 2007 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 21 2007 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 21 2007 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 21 2007 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 21 2007 26 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 27 2007 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 27 2007 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2007 27 2007 29 , srcInfoPoints = [] } "cp"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 1 2012 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2009 1 2009 9 , SrcSpan "tests/examples/Attributes.hs" 2009 27 2009 32 , SrcSpan "tests/examples/Attributes.hs" 2010 5 2010 5 , SrcSpan "tests/examples/Attributes.hs" 2012 1 2012 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 10 2009 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 10 2009 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 10 2009 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 10 2009 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 10 2009 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 19 2009 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 19 2009 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2009 19 2009 26 , srcInfoPoints = [] } "PortPos"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 5 2010 35 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 5 2010 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 5 2010 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 5 2010 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 15 2010 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2010 15 2010 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 17 2010 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 17 2010 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 17 2010 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 17 2010 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 17 2010 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 23 2010 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 23 2010 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 23 2010 25 , srcInfoPoints = [] } "PP")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 26 2010 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 26 2010 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2010 26 2010 35 , srcInfoPoints = [] } "parseUnqt"))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2012 1 2022 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2012 19 2012 20 , SrcSpan "tests/examples/Attributes.hs" 2013 19 2013 20 , SrcSpan "tests/examples/Attributes.hs" 2014 19 2014 20 , SrcSpan "tests/examples/Attributes.hs" 2015 19 2015 20 , SrcSpan "tests/examples/Attributes.hs" 2016 19 2016 20 , SrcSpan "tests/examples/Attributes.hs" 2017 19 2017 20 , SrcSpan "tests/examples/Attributes.hs" 2018 19 2018 20 , SrcSpan "tests/examples/Attributes.hs" 2019 19 2019 20 , SrcSpan "tests/examples/Attributes.hs" 2020 19 2020 20 , SrcSpan "tests/examples/Attributes.hs" 2021 19 2021 20 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2012 1 2012 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2012 6 2012 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2012 6 2012 18 , srcInfoPoints = [] } "CompassPoint")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2012 21 2012 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2012 21 2012 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2012 21 2012 26 , srcInfoPoints = [] } "North") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2013 21 2013 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2013 21 2013 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2013 21 2013 30 , srcInfoPoints = [] } "NorthEast") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2014 21 2014 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2014 21 2014 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2014 21 2014 25 , srcInfoPoints = [] } "East") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2015 21 2015 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2015 21 2015 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2015 21 2015 30 , srcInfoPoints = [] } "SouthEast") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2016 21 2016 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2016 21 2016 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2016 21 2016 26 , srcInfoPoints = [] } "South") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2017 21 2017 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2017 21 2017 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2017 21 2017 30 , srcInfoPoints = [] } "SouthWest") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2018 21 2018 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2018 21 2018 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2018 21 2018 25 , srcInfoPoints = [] } "West") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2019 21 2019 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2019 21 2019 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2019 21 2019 30 , srcInfoPoints = [] } "NorthWest") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2020 21 2020 32 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2020 21 2020 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2020 21 2020 32 , srcInfoPoints = [] } "CenterPoint") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2021 21 2021 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2021 21 2021 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2021 21 2021 25 , srcInfoPoints = [] } "NoCP") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 21 2022 66 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2022 21 2022 29 , SrcSpan "tests/examples/Attributes.hs" 2022 30 2022 31 , SrcSpan "tests/examples/Attributes.hs" 2022 33 2022 34 , SrcSpan "tests/examples/Attributes.hs" 2022 38 2022 39 , SrcSpan "tests/examples/Attributes.hs" 2022 47 2022 48 , SrcSpan "tests/examples/Attributes.hs" 2022 53 2022 54 , SrcSpan "tests/examples/Attributes.hs" 2022 59 2022 60 , SrcSpan "tests/examples/Attributes.hs" 2022 65 2022 66 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 31 2022 33 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 31 2022 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 31 2022 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 31 2022 33 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 35 2022 38 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 35 2022 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 35 2022 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 35 2022 38 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 40 2022 47 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 40 2022 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 40 2022 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 40 2022 47 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 49 2022 53 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 49 2022 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 49 2022 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 49 2022 53 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 55 2022 59 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 55 2022 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 55 2022 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 55 2022 59 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 61 2022 65 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 61 2022 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 61 2022 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2022 61 2022 65 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 1 2036 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2024 1 2024 9 , SrcSpan "tests/examples/Attributes.hs" 2024 32 2024 37 , SrcSpan "tests/examples/Attributes.hs" 2025 5 2025 5 , SrcSpan "tests/examples/Attributes.hs" 2026 5 2026 5 , SrcSpan "tests/examples/Attributes.hs" 2027 5 2027 5 , SrcSpan "tests/examples/Attributes.hs" 2028 5 2028 5 , SrcSpan "tests/examples/Attributes.hs" 2029 5 2029 5 , SrcSpan "tests/examples/Attributes.hs" 2030 5 2030 5 , SrcSpan "tests/examples/Attributes.hs" 2031 5 2031 5 , SrcSpan "tests/examples/Attributes.hs" 2032 5 2032 5 , SrcSpan "tests/examples/Attributes.hs" 2033 5 2033 5 , SrcSpan "tests/examples/Attributes.hs" 2034 5 2034 5 , SrcSpan "tests/examples/Attributes.hs" 2036 1 2036 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 10 2024 31 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 10 2024 31 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 10 2024 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 10 2024 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 10 2024 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 19 2024 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 19 2024 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2024 19 2024 31 , srcInfoPoints = [] } "CompassPoint"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 5 2034 35 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 5 2034 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 5 2025 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 5 2025 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 13 2025 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 13 2025 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 13 2025 22 , srcInfoPoints = [] } "NorthEast")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 25 2025 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2025 25 2025 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 27 2025 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 27 2025 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 27 2025 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 27 2025 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 32 2025 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2025 32 2025 36 , srcInfoPoints = [] } "ne" "ne")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 5 2026 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 5 2026 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 13 2026 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 13 2026 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 13 2026 22 , srcInfoPoints = [] } "NorthWest")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 25 2026 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2026 25 2026 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 27 2026 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 27 2026 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 27 2026 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 27 2026 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 32 2026 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2026 32 2026 36 , srcInfoPoints = [] } "nw" "nw")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 5 2027 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 5 2027 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 13 2027 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 13 2027 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 13 2027 18 , srcInfoPoints = [] } "North")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 25 2027 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2027 25 2027 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 27 2027 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 27 2027 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 27 2027 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 27 2027 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 32 2027 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2027 32 2027 35 , srcInfoPoints = [] } "n" "n")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 5 2028 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 5 2028 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 13 2028 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 13 2028 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 13 2028 17 , srcInfoPoints = [] } "East")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 25 2028 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2028 25 2028 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 27 2028 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 27 2028 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 27 2028 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 27 2028 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 32 2028 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2028 32 2028 35 , srcInfoPoints = [] } "e" "e")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 5 2029 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 5 2029 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 13 2029 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 13 2029 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 13 2029 22 , srcInfoPoints = [] } "SouthEast")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 25 2029 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2029 25 2029 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 27 2029 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 27 2029 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 27 2029 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 27 2029 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 32 2029 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2029 32 2029 36 , srcInfoPoints = [] } "se" "se")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 5 2030 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 5 2030 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 13 2030 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 13 2030 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 13 2030 22 , srcInfoPoints = [] } "SouthWest")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 25 2030 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2030 25 2030 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 27 2030 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 27 2030 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 27 2030 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 27 2030 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 32 2030 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2030 32 2030 36 , srcInfoPoints = [] } "sw" "sw")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 5 2031 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 5 2031 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 13 2031 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 13 2031 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 13 2031 18 , srcInfoPoints = [] } "South")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 25 2031 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2031 25 2031 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 27 2031 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 27 2031 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 27 2031 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 27 2031 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 32 2031 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2031 32 2031 35 , srcInfoPoints = [] } "s" "s")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 5 2032 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 5 2032 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 13 2032 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 13 2032 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 13 2032 17 , srcInfoPoints = [] } "West")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 25 2032 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2032 25 2032 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 27 2032 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 27 2032 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 27 2032 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 27 2032 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 32 2032 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2032 32 2032 35 , srcInfoPoints = [] } "w" "w")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 5 2033 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 5 2033 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 13 2033 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 13 2033 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 13 2033 24 , srcInfoPoints = [] } "CenterPoint")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 25 2033 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2033 25 2033 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 27 2033 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 27 2033 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 27 2033 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 27 2033 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 32 2033 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2033 32 2033 35 , srcInfoPoints = [] } "c" "c")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 5 2034 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 5 2034 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 13 2034 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 13 2034 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 13 2034 17 , srcInfoPoints = [] } "NoCP")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 25 2034 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2034 25 2034 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 27 2034 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 27 2034 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 27 2034 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 27 2034 31 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 32 2034 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2034 32 2034 35 , srcInfoPoints = [] } "_" "_")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 1 2052 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2036 1 2036 9 , SrcSpan "tests/examples/Attributes.hs" 2036 32 2036 37 , SrcSpan "tests/examples/Attributes.hs" 2038 5 2038 5 , SrcSpan "tests/examples/Attributes.hs" 2052 1 2052 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 10 2036 31 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 10 2036 31 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 10 2036 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 10 2036 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 10 2036 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 19 2036 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 19 2036 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2036 19 2036 31 , srcInfoPoints = [] } "CompassPoint"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 5 2048 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 5 2048 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 5 2038 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 5 2038 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 15 2048 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2038 15 2038 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 17 2048 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 17 2038 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 17 2038 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 17 2038 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 23 2048 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2038 23 2038 24 , SrcSpan "tests/examples/Attributes.hs" 2039 23 2039 24 , SrcSpan "tests/examples/Attributes.hs" 2040 23 2040 24 , SrcSpan "tests/examples/Attributes.hs" 2041 23 2041 24 , SrcSpan "tests/examples/Attributes.hs" 2042 23 2042 24 , SrcSpan "tests/examples/Attributes.hs" 2043 23 2043 24 , SrcSpan "tests/examples/Attributes.hs" 2044 23 2044 24 , SrcSpan "tests/examples/Attributes.hs" 2045 23 2045 24 , SrcSpan "tests/examples/Attributes.hs" 2046 23 2046 24 , SrcSpan "tests/examples/Attributes.hs" 2047 23 2047 24 , SrcSpan "tests/examples/Attributes.hs" 2048 23 2048 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 25 2038 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 25 2038 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 25 2038 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 25 2038 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 25 2038 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 35 2038 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 35 2038 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 35 2038 44 , srcInfoPoints = [] } "NorthEast")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 45 2038 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2038 45 2038 49 , srcInfoPoints = [] } "ne" "ne")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 25 2039 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 25 2039 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 25 2039 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 25 2039 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 25 2039 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 35 2039 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 35 2039 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 35 2039 44 , srcInfoPoints = [] } "NorthWest")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 45 2039 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2039 45 2039 49 , srcInfoPoints = [] } "nw" "nw")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 25 2040 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 25 2040 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 25 2040 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 25 2040 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 25 2040 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 35 2040 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 35 2040 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 35 2040 40 , srcInfoPoints = [] } "North")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 41 2040 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2040 41 2040 44 , srcInfoPoints = [] } "n" "n")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 25 2041 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 25 2041 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 25 2041 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 25 2041 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 25 2041 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 35 2041 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 35 2041 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 35 2041 44 , srcInfoPoints = [] } "SouthEast")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 45 2041 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2041 45 2041 49 , srcInfoPoints = [] } "se" "se")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 25 2042 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 25 2042 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 25 2042 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 25 2042 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 25 2042 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 35 2042 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 35 2042 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 35 2042 44 , srcInfoPoints = [] } "SouthWest")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 45 2042 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2042 45 2042 49 , srcInfoPoints = [] } "sw" "sw")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 25 2043 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 25 2043 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 25 2043 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 25 2043 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 25 2043 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 35 2043 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 35 2043 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 35 2043 40 , srcInfoPoints = [] } "South")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 41 2043 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2043 41 2043 44 , srcInfoPoints = [] } "s" "s")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 25 2044 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 25 2044 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 25 2044 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 25 2044 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 25 2044 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 35 2044 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 35 2044 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 35 2044 39 , srcInfoPoints = [] } "East")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 40 2044 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2044 40 2044 43 , srcInfoPoints = [] } "e" "e")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 25 2045 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 25 2045 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 25 2045 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 25 2045 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 25 2045 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 35 2045 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 35 2045 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 35 2045 39 , srcInfoPoints = [] } "West")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 40 2045 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2045 40 2045 43 , srcInfoPoints = [] } "w" "w")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 25 2046 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 25 2046 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 25 2046 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 25 2046 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 25 2046 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 35 2046 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 35 2046 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 35 2046 46 , srcInfoPoints = [] } "CenterPoint")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 47 2046 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2046 47 2046 50 , srcInfoPoints = [] } "c" "c")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 25 2047 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 25 2047 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 25 2047 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 25 2047 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 25 2047 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 35 2047 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 35 2047 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 35 2047 39 , srcInfoPoints = [] } "NoCP")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 40 2047 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2047 40 2047 43 , srcInfoPoints = [] } "_" "_")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 1 2057 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2052 15 2052 16 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 1 2052 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 6 2052 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 6 2052 14 , srcInfoPoints = [] } "ViewPort")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 17 2056 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2052 20 2052 21 , SrcSpan "tests/examples/Attributes.hs" 2053 20 2053 21 , SrcSpan "tests/examples/Attributes.hs" 2054 20 2054 21 , SrcSpan "tests/examples/Attributes.hs" 2055 20 2055 21 , SrcSpan "tests/examples/Attributes.hs" 2056 20 2056 21 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 17 2056 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2052 20 2052 21 , SrcSpan "tests/examples/Attributes.hs" 2053 20 2053 21 , SrcSpan "tests/examples/Attributes.hs" 2054 20 2054 21 , SrcSpan "tests/examples/Attributes.hs" 2055 20 2055 21 , SrcSpan "tests/examples/Attributes.hs" 2056 20 2056 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 17 2052 19 , srcInfoPoints = [] } "VP") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 22 2052 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2052 28 2052 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 22 2052 26 , srcInfoPoints = [] } "wVal" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 31 2052 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 31 2052 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2052 31 2052 37 , srcInfoPoints = [] } "Double"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2053 22 2053 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2053 28 2053 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2053 22 2053 26 , srcInfoPoints = [] } "hVal" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2053 31 2053 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2053 31 2053 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2053 31 2053 37 , srcInfoPoints = [] } "Double"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2054 22 2054 37 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2054 28 2054 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2054 22 2054 26 , srcInfoPoints = [] } "zVal" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2054 31 2054 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2054 31 2054 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2054 31 2054 37 , srcInfoPoints = [] } "Double"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 22 2055 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2055 28 2055 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 22 2055 27 , srcInfoPoints = [] } "focus" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 31 2055 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 31 2055 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 31 2055 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 31 2055 36 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 37 2055 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 37 2055 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2055 37 2055 46 , srcInfoPoints = [] } "FocusType")))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 17 2057 47 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2057 17 2057 25 , SrcSpan "tests/examples/Attributes.hs" 2057 26 2057 27 , SrcSpan "tests/examples/Attributes.hs" 2057 29 2057 30 , SrcSpan "tests/examples/Attributes.hs" 2057 34 2057 35 , SrcSpan "tests/examples/Attributes.hs" 2057 40 2057 41 , SrcSpan "tests/examples/Attributes.hs" 2057 46 2057 47 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 27 2057 29 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 27 2057 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 27 2057 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 27 2057 29 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 31 2057 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 31 2057 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 31 2057 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 31 2057 34 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 36 2057 40 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 36 2057 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 36 2057 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 36 2057 40 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 42 2057 46 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 42 2057 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 42 2057 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2057 42 2057 46 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 1 2068 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2059 1 2059 9 , SrcSpan "tests/examples/Attributes.hs" 2059 28 2059 33 , SrcSpan "tests/examples/Attributes.hs" 2060 5 2060 5 , SrcSpan "tests/examples/Attributes.hs" 2066 5 2066 5 , SrcSpan "tests/examples/Attributes.hs" 2068 1 2068 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 10 2059 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 10 2059 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 10 2059 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 10 2059 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 10 2059 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 19 2059 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 19 2059 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2059 19 2059 27 , srcInfoPoints = [] } "ViewPort"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 5 2064 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2062 9 2062 14 ] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 5 2064 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2062 9 2062 14 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 5 2064 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2062 9 2062 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 5 2060 12 , srcInfoPoints = [] } "unqtDot") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 13 2060 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 13 2060 15 , srcInfoPoints = [] } "vp") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 16 2061 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2060 16 2060 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 18 2061 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 18 2060 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 18 2060 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 18 2060 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 18 2060 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 18 2060 23 , srcInfoPoints = [] } "maybe"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 24 2060 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 24 2060 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 24 2060 26 , srcInfoPoints = [] } "vs")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 27 2060 57 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2060 27 2060 28 , SrcSpan "tests/examples/Attributes.hs" 2060 56 2060 57 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 28 2060 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 28 2060 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 28 2060 32 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2060 28 2060 29 , SrcSpan "tests/examples/Attributes.hs" 2060 29 2060 31 , SrcSpan "tests/examples/Attributes.hs" 2060 31 2060 32 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 28 2060 32 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2060 28 2060 29 , SrcSpan "tests/examples/Attributes.hs" 2060 29 2060 31 , SrcSpan "tests/examples/Attributes.hs" 2060 31 2060 32 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 29 2060 31 , srcInfoPoints = [] } "<>"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 33 2060 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2060 33 2060 34 , SrcSpan "tests/examples/Attributes.hs" 2060 45 2060 46 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 34 2060 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 34 2060 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 34 2060 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 34 2060 36 , srcInfoPoints = [] } "vs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 37 2060 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 37 2060 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 37 2060 39 , srcInfoPoints = [] } "<>"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 40 2060 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 40 2060 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 40 2060 45 , srcInfoPoints = [] } "comma")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 47 2060 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 47 2060 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 47 2060 48 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 49 2060 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 49 2060 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2060 49 2060 56 , srcInfoPoints = [] } "unqtDot")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 18 2061 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 18 2061 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 18 2061 19 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 20 2061 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 20 2061 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 20 2061 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 20 2061 25 , srcInfoPoints = [] } "focus"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 26 2061 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 26 2061 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2061 26 2061 28 , srcInfoPoints = [] } "vp")))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 11 2064 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2063 11 2063 11 , SrcSpan "tests/examples/Attributes.hs" 2066 5 2066 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 11 2064 64 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 11 2063 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 11 2063 13 , srcInfoPoints = [] } "vs")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 14 2064 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2063 14 2063 15 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 16 2064 64 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 16 2063 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 16 2063 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 16 2063 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 16 2063 20 , srcInfoPoints = [] } "hcat"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 21 2063 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 21 2063 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 21 2063 22 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 23 2063 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 23 2063 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 23 2063 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 23 2063 32 , srcInfoPoints = [] } "punctuate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 33 2063 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 33 2063 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2063 33 2063 38 , srcInfoPoints = [] } "comma"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 16 2064 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 16 2064 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 16 2064 17 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 18 2064 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 18 2064 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 18 2064 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 18 2064 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 18 2064 21 , srcInfoPoints = [] } "map"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 22 2064 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2064 22 2064 23 , SrcSpan "tests/examples/Attributes.hs" 2064 44 2064 45 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 23 2064 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 23 2064 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 23 2064 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 23 2064 30 , srcInfoPoints = [] } "unqtDot"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 31 2064 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 31 2064 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 31 2064 32 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 33 2064 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 33 2064 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 33 2064 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 33 2064 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 33 2064 37 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 38 2064 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2064 38 2064 39 , SrcSpan "tests/examples/Attributes.hs" 2064 39 2064 40 , SrcSpan "tests/examples/Attributes.hs" 2064 40 2064 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 38 2064 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2064 38 2064 39 , SrcSpan "tests/examples/Attributes.hs" 2064 39 2064 40 , SrcSpan "tests/examples/Attributes.hs" 2064 40 2064 41 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 39 2064 40 , srcInfoPoints = [] } "$")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 42 2064 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 42 2064 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 42 2064 44 , srcInfoPoints = [] } "vp"))))))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 46 2064 64 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2064 46 2064 47 , SrcSpan "tests/examples/Attributes.hs" 2064 51 2064 52 , SrcSpan "tests/examples/Attributes.hs" 2064 57 2064 58 , SrcSpan "tests/examples/Attributes.hs" 2064 63 2064 64 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 47 2064 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 47 2064 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 47 2064 51 , srcInfoPoints = [] } "wVal")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 53 2064 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 53 2064 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 53 2064 57 , srcInfoPoints = [] } "hVal")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 59 2064 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 59 2064 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2064 59 2064 63 , srcInfoPoints = [] } "zVal")) ])))) Nothing ])) ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 5 2066 35 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 5 2066 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 5 2066 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 5 2066 10 , srcInfoPoints = [] } "toDot")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 11 2066 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2066 11 2066 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 13 2066 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 13 2066 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 13 2066 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 13 2066 25 , srcInfoPoints = [] } "doubleQuotes"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 26 2066 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 26 2066 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 26 2066 27 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 28 2066 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 28 2066 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2066 28 2066 35 , srcInfoPoints = [] } "unqtDot"))))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 1 2079 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2068 1 2068 9 , SrcSpan "tests/examples/Attributes.hs" 2068 28 2068 33 , SrcSpan "tests/examples/Attributes.hs" 2069 5 2069 5 , SrcSpan "tests/examples/Attributes.hs" 2077 5 2077 5 , SrcSpan "tests/examples/Attributes.hs" 2079 1 2079 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 10 2068 27 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 10 2068 27 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 10 2068 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 10 2068 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 10 2068 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 19 2068 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 19 2068 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2068 19 2068 27 , srcInfoPoints = [] } "ViewPort"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 5 2075 43 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 5 2075 43 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 5 2069 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 5 2069 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 15 2075 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2069 15 2069 16 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 17 2075 43 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2069 17 2069 19 , SrcSpan "tests/examples/Attributes.hs" 2069 20 2069 20 , SrcSpan "tests/examples/Attributes.hs" 2070 20 2070 20 , SrcSpan "tests/examples/Attributes.hs" 2071 20 2071 20 , SrcSpan "tests/examples/Attributes.hs" 2072 20 2072 20 , SrcSpan "tests/examples/Attributes.hs" 2073 20 2073 20 , SrcSpan "tests/examples/Attributes.hs" 2074 20 2074 20 , SrcSpan "tests/examples/Attributes.hs" 2075 20 2075 20 , SrcSpan "tests/examples/Attributes.hs" 2077 5 2077 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 20 2069 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2069 23 2069 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 20 2069 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 20 2069 22 , srcInfoPoints = [] } "wv")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 26 2069 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 26 2069 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2069 26 2069 35 , srcInfoPoints = [] } "parseUnqt"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2070 20 2070 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2070 20 2070 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2070 20 2070 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2070 20 2070 30 , srcInfoPoints = [] } "parseComma"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2071 20 2071 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2071 23 2071 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2071 20 2071 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2071 20 2071 22 , srcInfoPoints = [] } "hv")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2071 26 2071 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2071 26 2071 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2071 26 2071 35 , srcInfoPoints = [] } "parseUnqt"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2072 20 2072 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2072 20 2072 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2072 20 2072 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2072 20 2072 30 , srcInfoPoints = [] } "parseComma"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2073 20 2073 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2073 23 2073 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2073 20 2073 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2073 20 2073 22 , srcInfoPoints = [] } "zv")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2073 26 2073 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2073 26 2073 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2073 26 2073 35 , srcInfoPoints = [] } "parseUnqt"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 20 2074 60 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2074 23 2074 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 20 2074 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 20 2074 22 , srcInfoPoints = [] } "mf")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 26 2074 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 26 2074 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 26 2074 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 26 2074 34 , srcInfoPoints = [] } "optional"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 35 2074 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 35 2074 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 35 2074 36 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 37 2074 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 37 2074 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 37 2074 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 37 2074 47 , srcInfoPoints = [] } "parseComma"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 48 2074 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 48 2074 50 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 48 2074 50 , srcInfoPoints = [] } ">>"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 51 2074 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 51 2074 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2074 51 2074 60 , srcInfoPoints = [] } "parseUnqt"))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 20 2075 43 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 20 2075 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 20 2075 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 20 2075 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 20 2075 26 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 27 2075 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 27 2075 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 27 2075 28 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 29 2075 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 29 2075 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 29 2075 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 29 2075 34 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 29 2075 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 29 2075 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 29 2075 31 , srcInfoPoints = [] } "VP"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 32 2075 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 32 2075 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 32 2075 34 , srcInfoPoints = [] } "wv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 35 2075 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 35 2075 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 35 2075 37 , srcInfoPoints = [] } "hv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 38 2075 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 38 2075 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 38 2075 40 , srcInfoPoints = [] } "zv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 41 2075 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 41 2075 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2075 41 2075 43 , srcInfoPoints = [] } "mf"))))) ])) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 5 2077 34 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 5 2077 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 5 2077 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 5 2077 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 11 2077 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2077 11 2077 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 13 2077 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 13 2077 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 13 2077 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 13 2077 24 , srcInfoPoints = [] } "quotedParse"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 25 2077 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 25 2077 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2077 25 2077 34 , srcInfoPoints = [] } "parseUnqt"))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 1 2081 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2079 16 2079 17 , SrcSpan "tests/examples/Attributes.hs" 2080 16 2080 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 1 2079 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 6 2079 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 6 2079 15 , srcInfoPoints = [] } "FocusType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 18 2079 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 18 2079 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 18 2079 20 , srcInfoPoints = [] } "XY") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 21 2079 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 21 2079 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2079 21 2079 26 , srcInfoPoints = [] } "Point")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2080 18 2080 34 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2080 18 2080 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2080 18 2080 27 , srcInfoPoints = [] } "NodeFocus") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2080 28 2080 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2080 28 2080 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2080 28 2080 34 , srcInfoPoints = [] } "String")) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 18 2081 48 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2081 18 2081 26 , SrcSpan "tests/examples/Attributes.hs" 2081 27 2081 28 , SrcSpan "tests/examples/Attributes.hs" 2081 30 2081 31 , SrcSpan "tests/examples/Attributes.hs" 2081 35 2081 36 , SrcSpan "tests/examples/Attributes.hs" 2081 41 2081 42 , SrcSpan "tests/examples/Attributes.hs" 2081 47 2081 48 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 28 2081 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 28 2081 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 28 2081 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 28 2081 30 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 32 2081 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 32 2081 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 32 2081 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 32 2081 35 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 37 2081 41 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 37 2081 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 37 2081 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 37 2081 41 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 43 2081 47 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 43 2081 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 43 2081 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2081 43 2081 47 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 1 2090 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2083 1 2083 9 , SrcSpan "tests/examples/Attributes.hs" 2083 29 2083 34 , SrcSpan "tests/examples/Attributes.hs" 2084 5 2084 5 , SrcSpan "tests/examples/Attributes.hs" 2085 5 2085 5 , SrcSpan "tests/examples/Attributes.hs" 2087 5 2087 5 , SrcSpan "tests/examples/Attributes.hs" 2088 5 2088 5 , SrcSpan "tests/examples/Attributes.hs" 2090 1 2090 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 10 2083 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 10 2083 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 10 2083 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 10 2083 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 10 2083 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 19 2083 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 19 2083 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2083 19 2083 28 , srcInfoPoints = [] } "FocusType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 5 2085 40 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 5 2085 40 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 5 2084 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 5 2084 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 13 2084 19 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2084 13 2084 14 , SrcSpan "tests/examples/Attributes.hs" 2084 18 2084 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 14 2084 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 14 2084 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 14 2084 16 , srcInfoPoints = [] } "XY")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 17 2084 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 17 2084 18 , srcInfoPoints = [] } "p") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 28 2084 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2084 28 2084 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 30 2084 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 30 2084 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 30 2084 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 30 2084 37 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 38 2084 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 38 2084 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2084 38 2084 39 , srcInfoPoints = [] } "p"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 5 2085 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 5 2085 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 13 2085 27 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2085 13 2085 14 , SrcSpan "tests/examples/Attributes.hs" 2085 26 2085 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 14 2085 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 14 2085 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 14 2085 23 , srcInfoPoints = [] } "NodeFocus")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 24 2085 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 24 2085 26 , srcInfoPoints = [] } "nm") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 28 2085 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2085 28 2085 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 30 2085 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 30 2085 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 30 2085 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 30 2085 37 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 38 2085 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 38 2085 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2085 38 2085 40 , srcInfoPoints = [] } "nm"))))) Nothing ]) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 5 2088 36 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 5 2088 36 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 5 2087 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 5 2087 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 11 2087 17 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2087 11 2087 12 , SrcSpan "tests/examples/Attributes.hs" 2087 16 2087 17 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 12 2087 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 12 2087 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 12 2087 14 , srcInfoPoints = [] } "XY")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 15 2087 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 15 2087 16 , srcInfoPoints = [] } "p") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 26 2087 35 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2087 26 2087 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 28 2087 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 28 2087 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 28 2087 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 28 2087 33 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 34 2087 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 34 2087 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2087 34 2087 35 , srcInfoPoints = [] } "p"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 5 2088 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 5 2088 10 , srcInfoPoints = [] } "toDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 11 2088 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2088 11 2088 12 , SrcSpan "tests/examples/Attributes.hs" 2088 24 2088 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 12 2088 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 12 2088 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 12 2088 21 , srcInfoPoints = [] } "NodeFocus")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 22 2088 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 22 2088 24 , srcInfoPoints = [] } "nm") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 26 2088 36 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2088 26 2088 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 28 2088 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 28 2088 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 28 2088 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 28 2088 33 , srcInfoPoints = [] } "toDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 34 2088 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 34 2088 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2088 34 2088 36 , srcInfoPoints = [] } "nm"))))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 1 2101 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2090 1 2090 9 , SrcSpan "tests/examples/Attributes.hs" 2090 29 2090 34 , SrcSpan "tests/examples/Attributes.hs" 2091 5 2091 5 , SrcSpan "tests/examples/Attributes.hs" 2095 5 2095 5 , SrcSpan "tests/examples/Attributes.hs" 2101 1 2101 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 10 2090 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 10 2090 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 10 2090 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 10 2090 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 10 2090 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 19 2090 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 19 2090 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2090 19 2090 28 , srcInfoPoints = [] } "FocusType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 5 2093 42 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 5 2093 42 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 5 2091 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 5 2091 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 15 2093 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2091 15 2091 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 17 2093 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 17 2091 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 17 2091 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 17 2091 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 17 2091 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 17 2091 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 23 2091 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 23 2091 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 23 2091 25 , srcInfoPoints = [] } "XY")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 26 2091 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 26 2091 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2091 26 2091 35 , srcInfoPoints = [] } "parseUnqt")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2092 17 2092 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2092 17 2092 18 , SrcSpan "tests/examples/Attributes.hs" 2092 18 2092 24 , SrcSpan "tests/examples/Attributes.hs" 2092 24 2092 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2092 17 2092 25 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2092 17 2092 18 , SrcSpan "tests/examples/Attributes.hs" 2092 18 2092 24 , SrcSpan "tests/examples/Attributes.hs" 2092 24 2092 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2092 18 2092 24 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 17 2093 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 17 2093 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 17 2093 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 17 2093 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 17 2093 22 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 23 2093 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 23 2093 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 23 2093 32 , srcInfoPoints = [] } "NodeFocus")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 33 2093 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 33 2093 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2093 33 2093 42 , srcInfoPoints = [] } "parseUnqt")))))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 5 2097 34 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 5 2097 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 5 2095 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 5 2095 10 , srcInfoPoints = [] } "parse")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 11 2097 34 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2095 11 2095 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 13 2097 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 13 2095 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 13 2095 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 13 2095 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 13 2095 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 13 2095 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 19 2095 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 19 2095 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 19 2095 21 , srcInfoPoints = [] } "XY")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 22 2095 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 22 2095 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2095 22 2095 27 , srcInfoPoints = [] } "parse")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2096 13 2096 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2096 13 2096 14 , SrcSpan "tests/examples/Attributes.hs" 2096 14 2096 20 , SrcSpan "tests/examples/Attributes.hs" 2096 20 2096 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2096 13 2096 21 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2096 13 2096 14 , SrcSpan "tests/examples/Attributes.hs" 2096 14 2096 20 , SrcSpan "tests/examples/Attributes.hs" 2096 20 2096 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2096 14 2096 20 , srcInfoPoints = [] } "onFail"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 13 2097 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 13 2097 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 13 2097 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 13 2097 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 13 2097 18 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 19 2097 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 19 2097 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 19 2097 28 , srcInfoPoints = [] } "NodeFocus")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 29 2097 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 29 2097 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2097 29 2097 34 , srcInfoPoints = [] } "parse")))))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2101 1 2104 71 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2101 24 2101 25 , SrcSpan "tests/examples/Attributes.hs" 2102 24 2102 25 , SrcSpan "tests/examples/Attributes.hs" 2103 24 2103 25 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2101 1 2101 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2101 6 2101 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2101 6 2101 23 , srcInfoPoints = [] } "VerticalPlacement")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2101 26 2101 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2101 26 2101 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2101 26 2101 30 , srcInfoPoints = [] } "VTop") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2102 26 2102 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2102 26 2102 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2102 26 2102 33 , srcInfoPoints = [] } "VCenter") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2103 26 2103 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2103 26 2103 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2103 26 2103 33 , srcInfoPoints = [] } "VBottom") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 26 2104 71 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2104 26 2104 34 , SrcSpan "tests/examples/Attributes.hs" 2104 35 2104 36 , SrcSpan "tests/examples/Attributes.hs" 2104 38 2104 39 , SrcSpan "tests/examples/Attributes.hs" 2104 43 2104 44 , SrcSpan "tests/examples/Attributes.hs" 2104 52 2104 53 , SrcSpan "tests/examples/Attributes.hs" 2104 58 2104 59 , SrcSpan "tests/examples/Attributes.hs" 2104 64 2104 65 , SrcSpan "tests/examples/Attributes.hs" 2104 70 2104 71 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 36 2104 38 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 36 2104 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 36 2104 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 36 2104 38 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 40 2104 43 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 40 2104 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 40 2104 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 40 2104 43 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 45 2104 52 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 45 2104 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 45 2104 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 45 2104 52 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 54 2104 58 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 54 2104 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 54 2104 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 54 2104 58 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 60 2104 64 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 60 2104 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 60 2104 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 60 2104 64 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 66 2104 70 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 66 2104 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 66 2104 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2104 66 2104 70 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 1 2111 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2106 1 2106 9 , SrcSpan "tests/examples/Attributes.hs" 2106 37 2106 42 , SrcSpan "tests/examples/Attributes.hs" 2107 5 2107 5 , SrcSpan "tests/examples/Attributes.hs" 2108 5 2108 5 , SrcSpan "tests/examples/Attributes.hs" 2109 5 2109 5 , SrcSpan "tests/examples/Attributes.hs" 2111 1 2111 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 10 2106 36 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 10 2106 36 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 10 2106 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 10 2106 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 10 2106 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 19 2106 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 19 2106 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2106 19 2106 36 , srcInfoPoints = [] } "VerticalPlacement"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 5 2109 31 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 5 2109 31 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 5 2107 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 5 2107 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 13 2107 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 13 2107 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 13 2107 17 , srcInfoPoints = [] } "VTop")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 21 2107 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2107 21 2107 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 23 2107 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 23 2107 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 23 2107 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 23 2107 27 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 28 2107 31 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2107 28 2107 31 , srcInfoPoints = [] } 't' "t")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 5 2108 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 5 2108 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 13 2108 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 13 2108 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 13 2108 20 , srcInfoPoints = [] } "VCenter")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 21 2108 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2108 21 2108 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 23 2108 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 23 2108 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 23 2108 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 23 2108 27 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 28 2108 31 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2108 28 2108 31 , srcInfoPoints = [] } 'c' "c")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 5 2109 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 5 2109 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 13 2109 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 13 2109 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 13 2109 20 , srcInfoPoints = [] } "VBottom")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 21 2109 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2109 21 2109 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 23 2109 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 23 2109 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 23 2109 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 23 2109 27 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 28 2109 31 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2109 28 2109 31 , srcInfoPoints = [] } 'b' "b")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 1 2119 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2111 1 2111 9 , SrcSpan "tests/examples/Attributes.hs" 2111 37 2111 42 , SrcSpan "tests/examples/Attributes.hs" 2112 5 2112 5 , SrcSpan "tests/examples/Attributes.hs" 2119 1 2119 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 10 2111 36 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 10 2111 36 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 10 2111 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 10 2111 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 10 2111 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 19 2111 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 19 2111 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2111 19 2111 36 , srcInfoPoints = [] } "VerticalPlacement"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 5 2115 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 5 2115 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 5 2112 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 5 2112 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 15 2115 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2112 15 2112 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 17 2115 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 17 2112 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 17 2112 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 17 2112 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 23 2115 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2112 23 2112 24 , SrcSpan "tests/examples/Attributes.hs" 2113 23 2113 24 , SrcSpan "tests/examples/Attributes.hs" 2114 23 2114 24 , SrcSpan "tests/examples/Attributes.hs" 2115 23 2115 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 25 2112 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 25 2112 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 25 2112 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 25 2112 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 25 2112 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 35 2112 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 35 2112 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 35 2112 39 , srcInfoPoints = [] } "VTop")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 40 2112 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2112 40 2112 43 , srcInfoPoints = [] } "t" "t")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 25 2113 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 25 2113 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 25 2113 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 25 2113 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 25 2113 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 35 2113 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 35 2113 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 35 2113 42 , srcInfoPoints = [] } "VCenter")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 43 2113 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2113 43 2113 46 , srcInfoPoints = [] } "c" "c")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 25 2114 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 25 2114 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 25 2114 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 25 2114 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 25 2114 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 35 2114 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 35 2114 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 35 2114 42 , srcInfoPoints = [] } "VBottom")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 43 2114 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2114 43 2114 46 , srcInfoPoints = [] } "b" "b")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2119 1 2124 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2119 16 2119 17 , SrcSpan "tests/examples/Attributes.hs" 2120 16 2120 17 , SrcSpan "tests/examples/Attributes.hs" 2121 16 2121 17 , SrcSpan "tests/examples/Attributes.hs" 2122 16 2122 17 , SrcSpan "tests/examples/Attributes.hs" 2123 16 2123 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2119 1 2119 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2119 6 2119 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2119 6 2119 15 , srcInfoPoints = [] } "ScaleType")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2119 18 2119 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2119 18 2119 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2119 18 2119 30 , srcInfoPoints = [] } "UniformScale") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2120 18 2120 25 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2120 18 2120 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2120 18 2120 25 , srcInfoPoints = [] } "NoScale") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2121 18 2121 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2121 18 2121 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2121 18 2121 27 , srcInfoPoints = [] } "FillWidth") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2122 18 2122 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2122 18 2122 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2122 18 2122 28 , srcInfoPoints = [] } "FillHeight") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2123 18 2123 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2123 18 2123 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2123 18 2123 26 , srcInfoPoints = [] } "FillBoth") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 18 2124 63 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2124 18 2124 26 , SrcSpan "tests/examples/Attributes.hs" 2124 27 2124 28 , SrcSpan "tests/examples/Attributes.hs" 2124 30 2124 31 , SrcSpan "tests/examples/Attributes.hs" 2124 35 2124 36 , SrcSpan "tests/examples/Attributes.hs" 2124 44 2124 45 , SrcSpan "tests/examples/Attributes.hs" 2124 50 2124 51 , SrcSpan "tests/examples/Attributes.hs" 2124 56 2124 57 , SrcSpan "tests/examples/Attributes.hs" 2124 62 2124 63 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 28 2124 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 28 2124 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 28 2124 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 28 2124 30 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 32 2124 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 32 2124 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 32 2124 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 32 2124 35 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 37 2124 44 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 37 2124 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 37 2124 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 37 2124 44 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 46 2124 50 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 46 2124 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 46 2124 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 46 2124 50 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 52 2124 56 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 52 2124 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 52 2124 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 52 2124 56 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 58 2124 62 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 58 2124 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 58 2124 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2124 58 2124 62 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 1 2133 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2126 1 2126 9 , SrcSpan "tests/examples/Attributes.hs" 2126 29 2126 34 , SrcSpan "tests/examples/Attributes.hs" 2127 5 2127 5 , SrcSpan "tests/examples/Attributes.hs" 2128 5 2128 5 , SrcSpan "tests/examples/Attributes.hs" 2129 5 2129 5 , SrcSpan "tests/examples/Attributes.hs" 2130 5 2130 5 , SrcSpan "tests/examples/Attributes.hs" 2131 5 2131 5 , SrcSpan "tests/examples/Attributes.hs" 2133 1 2133 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 10 2126 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 10 2126 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 10 2126 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 10 2126 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 10 2126 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 19 2126 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 19 2126 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2126 19 2126 28 , srcInfoPoints = [] } "ScaleType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 5 2131 39 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 5 2131 39 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 5 2127 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 5 2127 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 13 2127 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 13 2127 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 13 2127 25 , srcInfoPoints = [] } "UniformScale")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 26 2127 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2127 26 2127 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 28 2127 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 28 2127 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 28 2127 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 28 2127 35 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 36 2127 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 36 2127 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2127 36 2127 40 , srcInfoPoints = [] } "True"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 5 2128 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 5 2128 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 13 2128 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 13 2128 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 13 2128 20 , srcInfoPoints = [] } "NoScale")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 26 2128 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2128 26 2128 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 28 2128 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 28 2128 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 28 2128 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 28 2128 35 , srcInfoPoints = [] } "unqtDot"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 36 2128 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 36 2128 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2128 36 2128 41 , srcInfoPoints = [] } "False"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 5 2129 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 5 2129 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 13 2129 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 13 2129 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 13 2129 22 , srcInfoPoints = [] } "FillWidth")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 26 2129 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2129 26 2129 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 28 2129 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 28 2129 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 28 2129 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 28 2129 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 33 2129 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2129 33 2129 40 , srcInfoPoints = [] } "width" "width")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 5 2130 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 5 2130 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 13 2130 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 13 2130 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 13 2130 23 , srcInfoPoints = [] } "FillHeight")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 26 2130 41 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2130 26 2130 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 28 2130 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 28 2130 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 28 2130 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 28 2130 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 33 2130 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2130 33 2130 41 , srcInfoPoints = [] } "height" "height")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 5 2131 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 5 2131 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 13 2131 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 13 2131 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 13 2131 21 , srcInfoPoints = [] } "FillBoth")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 26 2131 39 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2131 26 2131 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 28 2131 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 28 2131 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 28 2131 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 28 2131 32 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 33 2131 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2131 33 2131 39 , srcInfoPoints = [] } "both" "both")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 1 2143 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2133 1 2133 9 , SrcSpan "tests/examples/Attributes.hs" 2133 29 2133 34 , SrcSpan "tests/examples/Attributes.hs" 2134 5 2134 5 , SrcSpan "tests/examples/Attributes.hs" 2143 1 2143 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 10 2133 28 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 10 2133 28 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 10 2133 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 10 2133 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 10 2133 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 19 2133 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 19 2133 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2133 19 2133 28 , srcInfoPoints = [] } "ScaleType"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 5 2139 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 5 2139 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 5 2134 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 5 2134 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 15 2139 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2134 15 2134 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 17 2139 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 17 2134 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 17 2134 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 17 2134 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 23 2139 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2134 23 2134 24 , SrcSpan "tests/examples/Attributes.hs" 2135 23 2135 24 , SrcSpan "tests/examples/Attributes.hs" 2136 23 2136 24 , SrcSpan "tests/examples/Attributes.hs" 2137 23 2137 24 , SrcSpan "tests/examples/Attributes.hs" 2138 23 2138 24 , SrcSpan "tests/examples/Attributes.hs" 2139 23 2139 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 25 2134 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 25 2134 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 25 2134 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 25 2134 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 25 2134 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 35 2134 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 35 2134 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 35 2134 47 , srcInfoPoints = [] } "UniformScale")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 48 2134 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2134 48 2134 54 , srcInfoPoints = [] } "true" "true")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 25 2135 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 25 2135 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 25 2135 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 25 2135 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 25 2135 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 35 2135 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 35 2135 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 35 2135 42 , srcInfoPoints = [] } "NoScale")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 43 2135 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2135 43 2135 50 , srcInfoPoints = [] } "false" "false")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 25 2136 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 25 2136 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 25 2136 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 25 2136 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 25 2136 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 35 2136 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 35 2136 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 35 2136 44 , srcInfoPoints = [] } "FillWidth")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 45 2136 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2136 45 2136 52 , srcInfoPoints = [] } "width" "width")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 25 2137 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 25 2137 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 25 2137 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 25 2137 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 25 2137 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 35 2137 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 35 2137 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 35 2137 45 , srcInfoPoints = [] } "FillHeight")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 46 2137 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2137 46 2137 54 , srcInfoPoints = [] } "height" "height")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 25 2138 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 25 2138 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 25 2138 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 25 2138 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 25 2138 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 35 2138 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 35 2138 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 35 2138 43 , srcInfoPoints = [] } "FillBoth")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 44 2138 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2138 44 2138 50 , srcInfoPoints = [] } "both" "both")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2143 1 2146 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2143 20 2143 21 , SrcSpan "tests/examples/Attributes.hs" 2144 20 2144 21 , SrcSpan "tests/examples/Attributes.hs" 2145 20 2145 21 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2143 1 2143 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2143 6 2143 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2143 6 2143 19 , srcInfoPoints = [] } "Justification")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2143 22 2143 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2143 22 2143 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2143 22 2143 27 , srcInfoPoints = [] } "JLeft") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2144 22 2144 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2144 22 2144 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2144 22 2144 28 , srcInfoPoints = [] } "JRight") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2145 22 2145 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2145 22 2145 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2145 22 2145 29 , srcInfoPoints = [] } "JCenter") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 22 2146 67 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2146 22 2146 30 , SrcSpan "tests/examples/Attributes.hs" 2146 31 2146 32 , SrcSpan "tests/examples/Attributes.hs" 2146 34 2146 35 , SrcSpan "tests/examples/Attributes.hs" 2146 39 2146 40 , SrcSpan "tests/examples/Attributes.hs" 2146 48 2146 49 , SrcSpan "tests/examples/Attributes.hs" 2146 54 2146 55 , SrcSpan "tests/examples/Attributes.hs" 2146 60 2146 61 , SrcSpan "tests/examples/Attributes.hs" 2146 66 2146 67 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 32 2146 34 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 32 2146 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 32 2146 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 32 2146 34 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 36 2146 39 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 36 2146 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 36 2146 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 36 2146 39 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 41 2146 48 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 41 2146 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 41 2146 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 41 2146 48 , srcInfoPoints = [] } "Bounded"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 50 2146 54 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 50 2146 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 50 2146 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 50 2146 54 , srcInfoPoints = [] } "Enum"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 56 2146 60 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 56 2146 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 56 2146 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 56 2146 60 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 62 2146 66 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 62 2146 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 62 2146 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2146 62 2146 66 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 1 2153 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2148 1 2148 9 , SrcSpan "tests/examples/Attributes.hs" 2148 33 2148 38 , SrcSpan "tests/examples/Attributes.hs" 2149 5 2149 5 , SrcSpan "tests/examples/Attributes.hs" 2150 5 2150 5 , SrcSpan "tests/examples/Attributes.hs" 2151 5 2151 5 , SrcSpan "tests/examples/Attributes.hs" 2153 1 2153 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 10 2148 32 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 10 2148 32 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 10 2148 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 10 2148 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 10 2148 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 19 2148 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 19 2148 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2148 19 2148 32 , srcInfoPoints = [] } "Justification"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 5 2151 31 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 5 2151 31 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 5 2149 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 5 2149 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 13 2149 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 13 2149 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 13 2149 18 , srcInfoPoints = [] } "JLeft")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 21 2149 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2149 21 2149 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 23 2149 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 23 2149 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 23 2149 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 23 2149 27 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 28 2149 31 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2149 28 2149 31 , srcInfoPoints = [] } 'l' "l")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 5 2150 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 5 2150 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 13 2150 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 13 2150 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 13 2150 19 , srcInfoPoints = [] } "JRight")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 21 2150 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2150 21 2150 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 23 2150 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 23 2150 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 23 2150 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 23 2150 27 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 28 2150 31 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2150 28 2150 31 , srcInfoPoints = [] } 'r' "r")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 5 2151 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 5 2151 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 13 2151 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 13 2151 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 13 2151 20 , srcInfoPoints = [] } "JCenter")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 21 2151 31 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2151 21 2151 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 23 2151 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 23 2151 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 23 2151 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 23 2151 27 , srcInfoPoints = [] } "char"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 28 2151 31 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2151 28 2151 31 , srcInfoPoints = [] } 'c' "c")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 1 2161 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2153 1 2153 9 , SrcSpan "tests/examples/Attributes.hs" 2153 33 2153 38 , SrcSpan "tests/examples/Attributes.hs" 2154 5 2154 5 , SrcSpan "tests/examples/Attributes.hs" 2161 1 2161 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 10 2153 32 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 10 2153 32 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 10 2153 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 10 2153 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 10 2153 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 19 2153 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 19 2153 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2153 19 2153 32 , srcInfoPoints = [] } "Justification"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 5 2157 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 5 2157 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 5 2154 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 5 2154 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 15 2157 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2154 15 2154 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 17 2157 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 17 2154 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 17 2154 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 17 2154 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 23 2157 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2154 23 2154 24 , SrcSpan "tests/examples/Attributes.hs" 2155 23 2155 24 , SrcSpan "tests/examples/Attributes.hs" 2156 23 2156 24 , SrcSpan "tests/examples/Attributes.hs" 2157 23 2157 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 25 2154 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 25 2154 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 25 2154 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 25 2154 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 25 2154 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 35 2154 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 35 2154 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 35 2154 40 , srcInfoPoints = [] } "JLeft")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 41 2154 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2154 41 2154 44 , srcInfoPoints = [] } "l" "l")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 25 2155 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 25 2155 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 25 2155 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 25 2155 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 25 2155 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 35 2155 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 35 2155 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 35 2155 41 , srcInfoPoints = [] } "JRight")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 42 2155 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2155 42 2155 45 , srcInfoPoints = [] } "r" "r")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 25 2156 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 25 2156 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 25 2156 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 25 2156 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 25 2156 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 35 2156 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 35 2156 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 35 2156 42 , srcInfoPoints = [] } "JCenter")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 43 2156 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2156 43 2156 46 , srcInfoPoints = [] } "c" "c")) ]))) Nothing) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 1 2166 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2161 13 2161 14 , SrcSpan "tests/examples/Attributes.hs" 2162 13 2162 14 , SrcSpan "tests/examples/Attributes.hs" 2163 13 2163 14 , SrcSpan "tests/examples/Attributes.hs" 2164 13 2164 14 , SrcSpan "tests/examples/Attributes.hs" 2165 13 2165 14 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 1 2161 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 6 2161 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 6 2161 12 , srcInfoPoints = [] } "Ratios")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 15 2161 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 15 2161 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 15 2161 26 , srcInfoPoints = [] } "AspectRatio") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 27 2161 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 27 2161 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2161 27 2161 33 , srcInfoPoints = [] } "Double")) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2162 15 2162 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2162 15 2162 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2162 15 2162 24 , srcInfoPoints = [] } "FillRatio") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2163 15 2163 28 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2163 15 2163 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2163 15 2163 28 , srcInfoPoints = [] } "CompressRatio") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2164 15 2164 26 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2164 15 2164 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2164 15 2164 26 , srcInfoPoints = [] } "ExpandRatio") []) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2165 15 2165 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2165 15 2165 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2165 15 2165 24 , srcInfoPoints = [] } "AutoRatio") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 15 2166 45 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2166 15 2166 23 , SrcSpan "tests/examples/Attributes.hs" 2166 24 2166 25 , SrcSpan "tests/examples/Attributes.hs" 2166 27 2166 28 , SrcSpan "tests/examples/Attributes.hs" 2166 32 2166 33 , SrcSpan "tests/examples/Attributes.hs" 2166 38 2166 39 , SrcSpan "tests/examples/Attributes.hs" 2166 44 2166 45 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 25 2166 27 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 25 2166 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 25 2166 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 25 2166 27 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 29 2166 32 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 29 2166 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 29 2166 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 29 2166 32 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 34 2166 38 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 34 2166 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 34 2166 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 34 2166 38 , srcInfoPoints = [] } "Show"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 40 2166 44 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 40 2166 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 40 2166 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2166 40 2166 44 , srcInfoPoints = [] } "Read"))) ])) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 1 2175 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2168 1 2168 9 , SrcSpan "tests/examples/Attributes.hs" 2168 26 2168 31 , SrcSpan "tests/examples/Attributes.hs" 2169 5 2169 5 , SrcSpan "tests/examples/Attributes.hs" 2170 5 2170 5 , SrcSpan "tests/examples/Attributes.hs" 2171 5 2171 5 , SrcSpan "tests/examples/Attributes.hs" 2172 5 2172 5 , SrcSpan "tests/examples/Attributes.hs" 2173 5 2173 5 , SrcSpan "tests/examples/Attributes.hs" 2175 1 2175 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 10 2168 25 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 10 2168 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 10 2168 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 10 2168 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 10 2168 18 , srcInfoPoints = [] } "PrintDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 19 2168 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 19 2168 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2168 19 2168 25 , srcInfoPoints = [] } "Ratios"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 5 2173 42 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 5 2173 42 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 5 2169 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 5 2169 12 , srcInfoPoints = [] } "unqtDot") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 13 2169 28 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2169 13 2169 14 , SrcSpan "tests/examples/Attributes.hs" 2169 27 2169 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 14 2169 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 14 2169 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 14 2169 25 , srcInfoPoints = [] } "AspectRatio")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 26 2169 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 26 2169 27 , srcInfoPoints = [] } "r") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 29 2169 40 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2169 29 2169 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 31 2169 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 31 2169 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 31 2169 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 31 2169 38 , srcInfoPoints = [] } "unqtDot"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 39 2169 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 39 2169 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2169 39 2169 40 , srcInfoPoints = [] } "r"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 5 2170 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 5 2170 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 13 2170 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 13 2170 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 13 2170 22 , srcInfoPoints = [] } "FillRatio")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 29 2170 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2170 29 2170 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 31 2170 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 31 2170 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 31 2170 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 31 2170 35 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 36 2170 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2170 36 2170 42 , srcInfoPoints = [] } "fill" "fill")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 5 2171 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 5 2171 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 13 2171 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 13 2171 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 13 2171 26 , srcInfoPoints = [] } "CompressRatio")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 29 2171 46 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2171 29 2171 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 31 2171 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 31 2171 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 31 2171 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 31 2171 35 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 36 2171 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2171 36 2171 46 , srcInfoPoints = [] } "compress" "compress")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 5 2172 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 5 2172 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 13 2172 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 13 2172 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 13 2172 24 , srcInfoPoints = [] } "ExpandRatio")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 29 2172 44 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2172 29 2172 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 31 2172 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 31 2172 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 31 2172 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 31 2172 35 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 36 2172 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2172 36 2172 44 , srcInfoPoints = [] } "expand" "expand")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 5 2173 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 5 2173 12 , srcInfoPoints = [] } "unqtDot") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 13 2173 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 13 2173 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 13 2173 22 , srcInfoPoints = [] } "AutoRatio")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 29 2173 42 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2173 29 2173 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 31 2173 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 31 2173 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 31 2173 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 31 2173 35 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 36 2173 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2173 36 2173 42 , srcInfoPoints = [] } "auto" "auto")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 1 2182 0 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2175 1 2175 9 , SrcSpan "tests/examples/Attributes.hs" 2175 26 2175 31 , SrcSpan "tests/examples/Attributes.hs" 2176 5 2176 5 , SrcSpan "tests/examples/Attributes.hs" 2182 1 2182 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 10 2175 25 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 10 2175 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 10 2175 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 10 2175 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 10 2175 18 , srcInfoPoints = [] } "ParseDot"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 19 2175 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 19 2175 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2175 19 2175 25 , srcInfoPoints = [] } "Ratios"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 5 2181 24 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 5 2181 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 5 2176 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 5 2176 14 , srcInfoPoints = [] } "parseUnqt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 15 2181 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2176 15 2176 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 17 2181 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 17 2176 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 17 2176 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 17 2176 22 , srcInfoPoints = [] } "oneOf"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 23 2181 24 , srcInfoPoints = [ SrcSpan "tests/examples/Attributes.hs" 2176 23 2176 24 , SrcSpan "tests/examples/Attributes.hs" 2177 23 2177 24 , SrcSpan "tests/examples/Attributes.hs" 2178 23 2178 24 , SrcSpan "tests/examples/Attributes.hs" 2179 23 2179 24 , SrcSpan "tests/examples/Attributes.hs" 2180 23 2180 24 , SrcSpan "tests/examples/Attributes.hs" 2181 23 2181 24 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 25 2176 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 25 2176 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 25 2176 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 25 2176 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 25 2176 30 , srcInfoPoints = [] } "liftM"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 31 2176 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 31 2176 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 31 2176 42 , srcInfoPoints = [] } "AspectRatio")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 43 2176 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 43 2176 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2176 43 2176 52 , srcInfoPoints = [] } "parseUnqt"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 25 2177 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 25 2177 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 25 2177 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 25 2177 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 25 2177 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 35 2177 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 35 2177 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 35 2177 44 , srcInfoPoints = [] } "FillRatio")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 45 2177 51 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2177 45 2177 51 , srcInfoPoints = [] } "fill" "fill")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 25 2178 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 25 2178 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 25 2178 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 25 2178 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 25 2178 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 35 2178 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 35 2178 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 35 2178 48 , srcInfoPoints = [] } "CompressRatio")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 49 2178 59 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2178 49 2178 59 , srcInfoPoints = [] } "compress" "compress")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 25 2179 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 25 2179 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 25 2179 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 25 2179 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 25 2179 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 35 2179 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 35 2179 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 35 2179 46 , srcInfoPoints = [] } "ExpandRatio")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 47 2179 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2179 47 2179 55 , srcInfoPoints = [] } "expand" "expand")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 25 2180 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 25 2180 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 25 2180 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 25 2180 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 25 2180 34 , srcInfoPoints = [] } "stringRep"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 35 2180 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 35 2180 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 35 2180 44 , srcInfoPoints = [] } "AutoRatio")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 45 2180 51 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Attributes.hs" 2180 45 2180 51 , srcInfoPoints = [] } "auto" "auto")) ]))) Nothing) ]) ] , [ Comment True (SrcSpan "tests/examples/Attributes.hs" 1 1 74 4) " |\n Module : Data.GraphViz.Attributes\n Description : Definition of the Graphviz attributes.\n Copyright : (c) Matthew Sackman, Ivan Lazar Miljenovic\n License : 3-Clause BSD-style\n Maintainer : Ivan.Miljenovic@gmail.com\n\n This module defines the various attributes that different parts of\n a Graphviz graph can have. These attributes are based on the\n documentation found at:\n \n\n For more information on usage, etc. please see that document.\n\n A summary of known current constraints\\/limitations\\/differences:\n\n * There might still be a few cases where quotes are still not\n escaped/parsed correctly; if you find such a situation, please\n let me know; however, you should be able to use 'String' values\n directly without having to worry about when quotes are required\n or extra escaping of quote characters as 'PrintDot' and\n 'ParseDot' instances for 'String' should take care of that\n for you.\n\n * Note that for an edge, in /Dot/ parlance if the edge goes from\n /A/ to /B/, then /A/ is the tail node and /B/ is the head node\n (since /A/ is at the tail end of the arrow).\n\n * ColorList and PointfList are defined as actual lists (but\n 'LayerList' is not). Note that for the Color 'Attribute' for\n node values, only a single Color is valid; edges are allowed\n multiple colors with one spline/arrow per color in the list (but\n you must have at least one 'Color' in the list). This might be\n changed in future.\n\n * Style is implemented as a list of 'StyleItem' values; note that\n empty lists are not allowed.\n\n * A lot of values have a possible value of @none@. These now\n have custom constructors. In fact, most constructors have been\n expanded upon to give an idea of what they represent rather than\n using generic terms.\n\n * @PointF@ and 'Point' have been combined, and feature support for pure\n 'Int'-based co-ordinates as well as 'Double' ones (i.e. no floating\n point-only points for Point). The optional '!' and third value\n for Point are not available.\n\n * 'Rect' uses two 'Point' values to denote the lower-left and\n top-right corners.\n\n * The two 'LabelLoc' attributes have been combined.\n\n * The defined 'LayerSep' is not used to parse 'LayerRange' or\n 'LayerList'; the default (@[' ', ':', '\\t']@) is instead used.\n\n * @SplineType@ has been replaced with @['Spline']@.\n\n * Only polygon-based 'Shape's are available.\n\n * 'PortPos' only has the 'CompassPoint' option, not\n @PortName[:CompassPoint]@ (since record shapes aren't allowed,\n and parsing HTML-like labels could be problematic).\n\n * Not every 'Attribute' is fully documented/described. However,\n all those which have specific allowed values should be covered.\n\n * Deprecated 'Overlap' algorithms are not defined.\n\n * The global @Orientation@ attribute is not defined, as it is\n difficult to distinguish from the node-based 'Orientation'\n 'Attribute'; also, its behaviour is duplicated by 'Rotate'.\n\n " , Comment False (SrcSpan "tests/examples/Attributes.hs" 76 7 76 40) " * The actual /Dot/ attributes." , Comment False (SrcSpan "tests/examples/Attributes.hs" 79 7 79 54) " ** Validity functions on @Attribute@ values." , Comment False (SrcSpan "tests/examples/Attributes.hs" 85 7 85 41) " * Value types for @Attribute@s." , Comment False (SrcSpan "tests/examples/Attributes.hs" 129 7 129 63) " * Types representing the Dot grammar for @ArrowType@." , Comment False (SrcSpan "tests/examples/Attributes.hs" 134 7 134 41) " ** Default @ArrowType@ aliases." , Comment False (SrcSpan "tests/examples/Attributes.hs" 135 7 135 44) " *** The 9 primitive @ArrowShape@s." , Comment False (SrcSpan "tests/examples/Attributes.hs" 145 7 145 31) " *** 5 derived Arrows." , Comment False (SrcSpan "tests/examples/Attributes.hs" 151 7 151 59) " *** 5 supported cases for backwards compatibility" , Comment False (SrcSpan "tests/examples/Attributes.hs" 157 7 157 38) " ** @ArrowModifier@ instances" , Comment False (SrcSpan "tests/examples/Attributes.hs" 160 7 160 44) " * Other exported functions\\/values" , Comment False (SrcSpan "tests/examples/Attributes.hs" 175 1 175 81) " -----------------------------------------------------------------------------" , Comment True (SrcSpan "tests/examples/Attributes.hs" 177 1 203 3) " |\n\n These attributes have been implemented in a /permissive/ manner:\n that is, rather than split them up based on which type of value\n they are allowed, they have all been included in the one data type,\n with functions to determine if they are indeed valid for what\n they're being applied to.\n\n To interpret the /Valid for/ listings:\n\n [@G@] Valid for Graphs.\n\n [@C@] Valid for Clusters.\n\n [@S@] Valid for Sub-Graphs (and also Clusters).\n\n [@N@] Valid for Nodes.\n\n [@E@] Valid for Edges.\n\n The /Default/ listings are those that the various Graphviz commands\n use if that 'Attribute' isn't specified (in cases where this is\n /none/, this is equivalent to a 'Nothing' value; that is, no value\n is used). The /Parsing Default/ listings represent what value is\n used (i.e. corresponds to 'True') when the 'Attribute' name is\n listed on its own in /Dot/ source code.\n" , Comment False (SrcSpan "tests/examples/Attributes.hs" 205 40 205 117) " ^ /Valid for/: G; /Default/: @0.99@; /Minimum/: @0.0@; /Notes/: neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 206 40 206 119) " ^ /Valid for/: GC; /Default/: @0.3@; /Minimum/: @0@; /Notes/: sfdp, fdp only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 207 40 207 115) " ^ /Valid for/: ENGC; /Default/: none; /Notes/: svg, postscript, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 208 40 208 82) " ^ /Valid for/: E; /Default/: @'normal'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 209 40 209 95) " ^ /Valid for/: E; /Default/: @1.0@; /Minimum/: @0.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 210 40 210 82) " ^ /Valid for/: E; /Default/: @'normal'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 211 40 211 78) " ^ /Valid for/: G; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 212 40 212 80) " ^ /Valid for/: G; /Notes/: write only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 213 40 213 95) " ^ /Valid for/: GC; /Default/: X11Color 'Transparent'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 214 40 214 108) " ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 215 40 215 83) " ^ /Valid for/: G; /Default/: @\\\"UTF-8\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 216 40 216 100) " ^ /Valid for/: G; /Default/: @'Local'@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 217 40 217 82) " ^ /Valid for/: ENCG; /Default/: @'X11'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 218 40 218 92) " ^ /Valid for/: ENC; /Default/: @X11Color 'Black'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 219 40 219 80) " ^ /Valid for/: ENG; /Default/: @\\\"\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 220 40 220 127) " ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 221 40 221 108) " ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 222 40 222 126) " ^ /Valid for/: E; /Default/: @'True'@; /Parsing Default/: 'True'; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 223 40 223 108) " ^ /Valid for/: E; /Default/: @'False'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 224 40 224 139) " ^ /Valid for/: G; /Default/: @1+(avg. len)*sqrt(|V|)@; /Minimum/: @epsilon@; /Notes/: neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 225 40 225 123) " ^ /Valid for/: G; /Default/: @2@; /Minimum/: @2@; /Notes/: sfdp, fdp, neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 226 40 226 123) " ^ /Valid for/: G; /Default/: @2@; /Minimum/: @2@; /Notes/: sfdp, fdp, neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 227 40 227 118) " ^ /Valid for/: E; /Default/: @'Forward'@ (directed), @'NoDir'@ (undirected)" , Comment False (SrcSpan "tests/examples/Attributes.hs" 228 40 228 148) " ^ /Valid for/: G; /Default/: @'NoConstraints'@; /Parsing Default/: 'EdgeConstraints'; /Notes/: neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 229 40 229 98) " ^ /Valid for/: N; /Default/: @0.0@; /Minimum/: @-100.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 230 40 230 148) " ^ /Valid for/: G; /Default/: @96.0@, @0.0@; /Notes/: svg, bitmap output only; \\\"resolution\\\" is a synonym" , Comment False (SrcSpan "tests/examples/Attributes.hs" 231 40 231 102) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 232 40 232 100) " ^ /Valid for/: E; /Default/: none; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 233 40 233 103) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: svg, cmap only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 234 40 234 156) " ^ /Valid for/: G; /Default/: @.0001 * # nodes@ (@mode == 'KK'@), @.0001@ (@mode == 'Major'@); /Notes/: neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 235 40 235 94) " ^ /Valid for/: G; /Default/: @+3@; /Notes/: not dot" , Comment False (SrcSpan "tests/examples/Attributes.hs" 236 40 236 134) " ^ /Valid for/: NC; /Default/: @X11Color 'LightGray'@ (nodes), @X11Color 'Black'@ (clusters)" , Comment False (SrcSpan "tests/examples/Attributes.hs" 237 40 237 108) " ^ /Valid for/: N; /Default/: @'False'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 238 40 238 93) " ^ /Valid for/: ENGC; /Default/: @X11Color 'Black'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 239 40 239 92) " ^ /Valid for/: ENGC; /Default/: @\\\"Times-Roman\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 240 40 240 97) " ^ /Valid for/: G; /Default/: @\\\"\\\"@; /Notes/: svg only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 241 40 241 88) " ^ /Valid for/: G; /Default/: system-dependent" , Comment False (SrcSpan "tests/examples/Attributes.hs" 242 40 242 99) " ^ /Valid for/: ENGC; /Default/: @14.0@; /Minimum/: @1.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 243 40 243 97) " ^ /Valid for/: N; /Default/: @\\\"\\\"@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 244 40 244 102) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 245 40 245 107) " ^ /Valid for/: E; /Default/: @'True'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 246 40 246 78) " ^ /Valid for/: E; /Default/: @\\\"\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 247 40 247 92) " ^ /Valid for/: E; /Default/: @'PP' 'CenterPoint'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 248 40 248 100) " ^ /Valid for/: E; /Default/: none; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 249 40 249 103) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: svg, cmap only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 250 40 250 96) " ^ /Valid for/: N; /Default/: @0.5@; /Minimum/: @0.02@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 251 40 251 116) " ^ /Valid for/: GNE; /Default/: @\\\"\\\"@; /Notes/: svg, postscript, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 252 40 252 78) " ^ /Valid for/: N; /Default/: @\\\"\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 253 40 253 118) " ^ /Valid for/: N; /Default/: @'NoScale'@; /Parsing Default/: 'UniformScale'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 254 40 254 102) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 255 40 255 100) " ^ /Valid for/: E; /Default/: @-25.0@; /Minimum/: @-180.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 256 40 256 95) " ^ /Valid for/: E; /Default/: @1.0@; /Minimum/: @0.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 257 40 257 108) " ^ /Valid for/: E; /Default/: @'False'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 258 40 258 90) " ^ /Valid for/: E; /Default/: @X11Color 'Black'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 259 40 259 89) " ^ /Valid for/: E; /Default/: @\\\"Times-Roman\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 260 40 260 96) " ^ /Valid for/: E; /Default/: @14.0@; /Minimum/: @1.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 261 40 261 84) " ^ /Valid for/: GC; /Default/: @'JCenter'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 262 40 262 141) " ^ /Valid for/: GCN; /Default/: @'VTop'@ (clusters), @'VBottom'@ (root graphs), @'VCenter'@ (nodes)" , Comment False (SrcSpan "tests/examples/Attributes.hs" 263 40 263 100) " ^ /Valid for/: E; /Default/: none; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 264 40 264 103) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: svg, cmap only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 265 40 265 133) " ^ /Valid for/: ENGC; /Default/: @'StrLabel' \\\"\\N\\\"@ (nodes), @'StrLabel' \\\"\\\"@ (otherwise)" , Comment False (SrcSpan "tests/examples/Attributes.hs" 266 40 266 108) " ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 267 40 267 82) " ^ /Valid for/: G; /Default/: @\\\" :\\t\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 268 40 268 78) " ^ /Valid for/: G; /Default/: @\\\"\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 269 40 269 79) " ^ /Valid for/: EN; /Default/: @\\\"\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 270 40 270 78) " ^ /Valid for/: G; /Default/: @\\\"\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 271 40 271 124) " ^ /Valid for/: E; /Default/: @1.0@ (neato), @0.3@ (fdp); /Notes/: fdp, neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 272 40 272 98) " ^ /Valid for/: G; /Default/: @0.0@; /Notes/: neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 273 40 273 116) " ^ /Valid for/: G; /Default/: @MAXINT@; /Minimum/: @0@; /Notes/: sfdp only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 274 40 274 97) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 275 40 275 82) " ^ /Valid for/: EGC; /Notes/: write only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 276 40 276 97) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 277 40 277 89) " ^ /Valid for/: NG; /Default/: device-dependent" , Comment False (SrcSpan "tests/examples/Attributes.hs" 278 40 278 170) " ^ /Valid for/: G; /Default/: @100 * # nodes@ (@mode == 'KK'@), @200@ (@mode == 'Major'@), @600@ (fdp); /Notes/: fdp, neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 279 40 279 96) " ^ /Valid for/: G; /Default/: @1.0@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 280 40 280 116) " ^ /Valid for/: G; /Default/: @1.0@; /Minimum/: @0.0@; /Notes/: circo only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 281 40 281 110) " ^ /Valid for/: E; /Default/: @1@; /Minimum/: @0@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 282 40 282 106) " ^ /Valid for/: G; /Default/: @'ShortPath'@; /Notes/: neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 283 40 283 102) " ^ /Valid for/: G; /Default/: @'Major'@; /Notes/: neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 284 40 284 158) " ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: neato only; requires the Mosek software" , Comment False (SrcSpan "tests/examples/Attributes.hs" 285 40 285 116) " ^ /Valid for/: G; /Default/: @0.25@; /Minimum/: @0.02@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 286 40 286 111) " ^ /Valid for/: GCNE; /Default/: @'False'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 287 40 287 126) " ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: not dot" , Comment False (SrcSpan "tests/examples/Attributes.hs" 288 40 288 78) " ^ /Valid for/: G; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 289 40 289 78) " ^ /Valid for/: G; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 290 40 290 97) " ^ /Valid for/: G; /Default/: @\\\"\\\"@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 291 40 291 97) " ^ /Valid for/: N; /Default/: @0.0@; /Minimum/: @360.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 292 40 292 88) " ^ /Valid for/: G; /Default/: @'BreadthFirst'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 293 40 293 119) " ^ /Valid for/: G; /Default/: @-4@; /Minimum/: @-1.0e10@; /Notes/: prism only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 294 40 294 141) " ^ /Valid for/: G; /Default/: @'KeepOverlaps'@; /Parsing Default/: 'KeepOverlaps'; /Notes/: not dot" , Comment False (SrcSpan "tests/examples/Attributes.hs" 295 40 295 102) " ^ /Valid for/: G; /Default/: @'PackNode'@; /Notes/: not dot" , Comment False (SrcSpan "tests/examples/Attributes.hs" 296 40 296 128) " ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'DoPack'; /Notes/: not dot" , Comment False (SrcSpan "tests/examples/Attributes.hs" 297 40 297 98) " ^ /Valid for/: G; /Default/: @'DVal' 0.0555@ (4 points)" , Comment False (SrcSpan "tests/examples/Attributes.hs" 298 40 298 78) " ^ /Valid for/: G; /Default/: @'BL'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 299 40 299 59) " ^ /Valid for/: G" , Comment False (SrcSpan "tests/examples/Attributes.hs" 300 40 300 90) " ^ /Valid for/: C; /Default/: @X11Color 'Black'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 301 40 301 97) " ^ /Valid for/: CNE; /Default/: @1.0@; /Minimum/: @0.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 302 40 302 124) " ^ /Valid for/: NC; /Default/: shape default (nodes), @1@ (clusters); /Minimum/: 0" , Comment False (SrcSpan "tests/examples/Attributes.hs" 303 40 303 134) " ^ /Valid for/: N; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: fdp, neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 304 40 304 60) " ^ /Valid for/: EN" , Comment False (SrcSpan "tests/examples/Attributes.hs" 305 40 305 135) " ^ /Valid for/: G; /Default/: @'NormalQT'@; /Parsing Default/: 'NormalQT'; /Notes/: sfdp only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 306 40 306 95) " ^ /Valid for/: G; /Default/: @0.0@; /Minimum/: @0.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 307 40 307 97) " ^ /Valid for/: G; /Default/: @'TB'@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 308 40 308 141) " ^ /Valid for/: G; /Default/: @0.5@ (dot), @1.0@ (twopi); /Minimum/: 0.02; /Notes/: twopi, dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 309 40 309 78) " ^ /Valid for/: S; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 310 40 310 59) " ^ /Valid for/: G" , Comment False (SrcSpan "tests/examples/Attributes.hs" 311 40 311 80) " ^ /Valid for/: N; /Notes/: write only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 312 40 312 108) " ^ /Valid for/: N; /Default/: @'False'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 313 40 313 127) " ^ /Valid for/: G; /Default/: @'False'@; /Parsing Default/: 'True'; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 314 40 314 115) " ^ /Valid for/: G; /Default/: @1.0@; /Minimum/: @0.0@; /Notes/: sfdp only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 315 40 315 183) " ^ /Valid for/: GN; /Default/: @'NodeName' \\\"\\\"@ (graphs), @'NotCentral'@ (nodes); /Parsing Default/: 'IsCentral'; /Notes/: circo, twopi only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 316 40 316 75) " ^ /Valid for/: G; /Default/: @0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 317 40 317 97) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 318 40 318 97) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 319 40 319 115) " ^ /Valid for/: N; /Default/: @8@ (output), @20@ (overlap and image maps)" , Comment False (SrcSpan "tests/examples/Attributes.hs" 320 40 320 95) " ^ /Valid for/: G; /Default/: @30@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 321 40 321 94) " ^ /Valid for/: G; /Default/: @+4@; /Notes/: not dot" , Comment False (SrcSpan "tests/examples/Attributes.hs" 322 40 322 78) " ^ /Valid for/: N; /Default/: @\\\"\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 323 40 323 83) " ^ /Valid for/: N; /Default/: @'Ellipse'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 324 40 324 112) " ^ /Valid for/: ENG; /Default/: @0@; /Minimum/: @0@; /Notes/: dot only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 325 40 325 91) " ^ /Valid for/: N; /Default/: @4@; /Minimum/: @0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 326 40 326 59) " ^ /Valid for/: G" , Comment False (SrcSpan "tests/examples/Attributes.hs" 327 40 327 98) " ^ /Valid for/: N; /Default/: @0.0@; /Minimum/: @-100.0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 328 40 328 104) " ^ /Valid for/: G; /Default/: @'NoSmooth'@; /Notes/: sfdp only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 329 40 329 93) " ^ /Valid for/: GCN; /Default/: @0@; /Minimum/: @0@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 330 40 330 93) " ^ /Valid for/: G; /Parsing Default/: 'SplineEdges'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 331 40 331 104) " ^ /Valid for/: G; /Default/: @\\\"\\\"@; /Notes/: fdp, neato only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 332 40 332 97) " ^ /Valid for/: G; /Default/: @\\\"\\\"@; /Notes/: svg only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 333 40 333 61) " ^ /Valid for/: ENC" , Comment False (SrcSpan "tests/examples/Attributes.hs" 334 40 334 102) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 335 40 335 107) " ^ /Valid for/: E; /Default/: @'True'@; /Parsing Default/: 'True'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 336 40 336 78) " ^ /Valid for/: E; /Default/: @\\\"\\\"@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 337 40 337 78) " ^ /Valid for/: E; /Default/: center" , Comment False (SrcSpan "tests/examples/Attributes.hs" 338 40 338 100) " ^ /Valid for/: E; /Default/: none; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 339 40 339 103) " ^ /Valid for/: E; /Default/: @\\\"\\\"@; /Notes/: svg, cmap only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 340 40 340 103) " ^ /Valid for/: ENGC; /Default/: none; /Notes/: svg, map only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 341 40 341 105) " ^ /Valid for/: NEC; /Default/: @\\\"\\\"@; /Notes/: svg, cmap only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 342 40 342 115) " ^ /Valid for/: G; /Parsing Default/: 'True'; /Notes/: bitmap output only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 343 40 343 80) " ^ /Valid for/: N; /Notes/: write only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 344 40 344 76) " ^ /Valid for/: G; /Default/: none" , Comment False (SrcSpan "tests/examples/Attributes.hs" 345 40 345 114) " ^ /Valid for/: G; /Default/: @0.05@; /Minimum/: @0.0@; /Notes/: not dot" , Comment False (SrcSpan "tests/examples/Attributes.hs" 346 40 346 121) " ^ /Valid for/: E; /Default/: @1.0@; /Minimum/: @0@ (dot), @1@ (neato,fdp,sfdp)" , Comment False (SrcSpan "tests/examples/Attributes.hs" 347 40 347 97) " ^ /Valid for/: N; /Default/: @0.75@; /Minimum/: @0.01@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 348 40 348 110) " ^ /Valid for/: N; /Default/: @0.0@; /Minimum/: @-MAXFLOAT@, @-1000@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 652 1 652 63) " | Determine if this Attribute is valid for use with Graphs." , Comment False (SrcSpan "tests/examples/Attributes.hs" 735 1 735 65) " | Determine if this Attribute is valid for use with Clusters." , Comment False (SrcSpan "tests/examples/Attributes.hs" 761 1 761 66) " | Determine if this Attribute is valid for use with SubGraphs." , Comment False (SrcSpan "tests/examples/Attributes.hs" 766 1 766 62) " | Determine if this Attribute is valid for use with Nodes." , Comment False (SrcSpan "tests/examples/Attributes.hs" 811 1 811 62) " | Determine if this Attribute is valid for use with Edges." , Comment True (SrcSpan "tests/examples/Attributes.hs" 870 1 870 21) " Delete to here " , Comment False (SrcSpan "tests/examples/Attributes.hs" 871 1 871 81) " -----------------------------------------------------------------------------" , Comment True (SrcSpan "tests/examples/Attributes.hs" 873 1 905 4) " |\n\n Some 'Attribute's (mainly label-like ones) take a 'String' argument\n that allows for extra escape codes. This library doesn't do any\n extra checks or special parsing for these escape codes, but usage\n of 'EscString' rather than 'String' indicates that the Graphviz\n tools will recognise these extra escape codes for these\n 'Attribute's.\n\n The extra escape codes include (note that these are all 'String's):\n\n [@\\\\N@] Replace with the name of the node (for Node 'Attribute's).\n\n [@\\\\G@] Replace with the name of the graph (for Node 'Attribute's)\n or the name of the graph or cluster, whichever is\n applicable (for Graph, Cluster and Edge 'Attribute's).\n\n [@\\\\E@] Replace with the name of the edge, formed by the two\n adjoining nodes and the edge type (for Edge 'Attribute's).\n\n [@\\\\T@] Replace with the name of the tail node (for Edge\n 'Attribute's).\n\n [@\\\\H@] Replace with the name of the head node (for Edge\n 'Attribute's).\n\n [@\\\\L@] Replace with the object's label (for all 'Attribute's).\n\n Also, if the 'Attribute' in question is 'Label', 'HeadLabel' or\n 'TailLabel', then @\\\\n@, @\\\\l@ and @\\\\r@ split the label into lines\n centered, left-justified and right-justified respectively.\n\n " , Comment False (SrcSpan "tests/examples/Attributes.hs" 908 1 908 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 910 1 910 68) " | No checks are placed on the content of a 'URL' value; however," , Comment False (SrcSpan "tests/examples/Attributes.hs" 911 1 911 71) " you should ensure that it does not contain any \\'@>@\\' or \\'@<@\\'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 912 1 912 69) " characters; Graphviz might care about escaping other characters" , Comment False (SrcSpan "tests/examples/Attributes.hs" 913 1 913 68) " properly, but for the purposes of this library the presence of" , Comment False (SrcSpan "tests/examples/Attributes.hs" 914 1 914 57) " these characters will make it harder to parse URLs." , Comment False (SrcSpan "tests/examples/Attributes.hs" 920 15 920 56) " Explicitly use text here... no quotes!" , Comment False (SrcSpan "tests/examples/Attributes.hs" 932 5 932 17) " No quotes" , Comment False (SrcSpan "tests/examples/Attributes.hs" 935 1 935 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 937 1 937 69) " | /Dot/ has a basic grammar of arrow shapes which allows usage of" , Comment False (SrcSpan "tests/examples/Attributes.hs" 938 1 938 61) " up to 1,544,761 different shapes from 9 different basic" , Comment False (SrcSpan "tests/examples/Attributes.hs" 939 1 939 70) " 'ArrowShape's. Note that whilst an explicit list is used in the" , Comment False (SrcSpan "tests/examples/Attributes.hs" 940 1 940 71) " definition of 'ArrowType', there must be at least one tuple and a" , Comment False (SrcSpan "tests/examples/Attributes.hs" 941 1 941 69) " maximum of 4 (since that is what is required by Dot). For more" , Comment False (SrcSpan "tests/examples/Attributes.hs" 942 1 942 66) " information, see: " , Comment False (SrcSpan "tests/examples/Attributes.hs" 943 1 943 3) "" , Comment False (SrcSpan "tests/examples/Attributes.hs" 944 1 944 67) " The 19 basic arrows shown on the overall attributes page have" , Comment False (SrcSpan "tests/examples/Attributes.hs" 945 1 945 60) " been defined below as a convenience. Parsing of the 5" , Comment False (SrcSpan "tests/examples/Attributes.hs" 946 1 946 58) " backward-compatible special cases is also supported." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1032 1 1032 53) " | What modifications to apply to an 'ArrowShape'." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1038 1 1038 48) " | Apply no modifications to an 'ArrowShape'." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1042 1 1042 33) " | 'OpenArrow' and 'BothSides'" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1066 5 1066 29) " Not used individually" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1069 1 1069 71) " | Represents which side (when looking towards the node the arrow is" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1070 1 1070 28) " pointing to) is drawn." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1088 5 1088 29) " Not used individually" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1091 1 1091 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1114 1 1114 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1129 1 1129 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1149 1 1149 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1167 1 1167 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1169 1 1169 34) " | Only when @mode == 'IpSep'@." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1185 1 1185 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1187 1 1187 37) " | Either a 'Double' or a 'Point'." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1208 1 1208 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1229 1 1229 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1247 1 1247 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1269 1 1269 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1286 5 1286 71) " Need to take into account the situation where first value is an" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1287 5 1287 71) " integer, second a double: if Point parsing first, then it won't" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1288 5 1288 69) " parse the second number properly; but if PointD first then it" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1289 5 1289 44) " will treat Int/Int as Double/Double." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1305 1 1305 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1311 41 1311 96) " ^ Only when sfdp is available, 'Int' is non-negative" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1314 29 1314 61) " ^ Only when @mode == 'IpSep'@" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1338 1 1338 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1387 1 1387 71) " | You should not have any quote characters for the 'LRName' option," , Comment False (SrcSpan "tests/examples/Attributes.hs" 1388 1 1388 31) " as it won't be parseable." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1400 5 1400 35) " Other two don't need quotes" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1404 53 1404 77) " tests for Int and All" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1407 39 1407 67) " Mainly for unquoted case." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1417 1 1417 68) " | The list represent (Separator, Name). You should not have any" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1418 1 1418 64) " quote characters for any of the 'String's, since there are" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1419 1 1419 33) " parsing problems with them." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1429 5 1429 49) " Might not need quotes, but probably will." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1443 1 1443 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1459 1 1459 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1463 28 1463 80) " ^ If non-negative, then packs; otherwise doesn't." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1472 5 1472 76) " What happens if it parses 0? It's non-negative, but parses as False" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1477 1 1477 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1482 49 1482 72) " ^ Sort by cols, sort" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1483 49 1483 70) " by user, number of" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1484 49 1484 61) " rows/cols" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1519 11 1519 54) " Also checks and removes quote characters" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1522 1 1522 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1536 5 1536 70) " Have to be careful with this: if we try to parse points first," , Comment False (SrcSpan "tests/examples/Attributes.hs" 1537 5 1537 71) " then a spline with no start and end points will erroneously get" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1538 5 1538 70) " parsed as a point and then the parser will crash as it expects" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1539 5 1539 36) " a closing quote character..." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1547 1 1547 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1549 1 1549 50) " | Controls how (and if) edges are represented." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1554 30 1554 43) " ^ fdp only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1568 5 1568 43) " Can't parse NoEdges without quotes." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1580 1 1580 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1582 1 1582 48) " | Upper-case first character is major order;" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1583 1 1583 49) " lower-case second character is minor order." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1608 1 1608 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1610 1 1610 69) " | The number of points in the list must be equivalent to 1 mod 3;" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1611 1 1611 36) " note that this is not checked." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1644 1 1644 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1657 5 1657 71) " Have to take into account the slightly different interpretation" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1658 5 1658 54) " of Bool used as an option for parsing QuadType" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1662 58 1662 71) " weird bool" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1666 1 1666 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1668 1 1668 76) " | Specify the root node either as a Node attribute or a Graph attribute." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1669 29 1669 48) " ^ For Nodes only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1670 29 1670 48) " ^ For Nodes only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1671 29 1671 49) " ^ For Graphs only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1691 1 1691 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1715 1 1715 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1736 1 1736 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1739 16 1739 60) " ^ Has synonyms of /rect/ and /rectangle/." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1746 17 1746 44) " ^ Has synonym of /none/." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1804 49 1804 75) " Parse this before \"box\"" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1836 1 1836 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1866 1 1866 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1902 1 1902 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1937 17 1937 77) " Might not necessarily need to be quoted if a singleton..." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1946 28 1946 48) " ^ Nodes and Edges" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1947 28 1947 48) " ^ Nodes and Edges" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1948 28 1948 48) " ^ Nodes and Edges" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1949 28 1949 48) " ^ Nodes and Edges" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1950 28 1950 48) " ^ Nodes and Edges" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1951 28 1951 51) " ^ Nodes and Clusters" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1952 28 1952 43) " ^ Nodes only" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1953 28 1953 51) " ^ Nodes and Clusters" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1954 28 1954 49) " ^ Device Dependent" , Comment False (SrcSpan "tests/examples/Attributes.hs" 1977 15 1977 76) " In case a singleton DD is at the end of an attribute list." , Comment False (SrcSpan "tests/examples/Attributes.hs" 1999 1 1999 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 2037 5 2037 57) " Have to take care of longer parsing values first." , Comment False (SrcSpan "tests/examples/Attributes.hs" 2050 1 2050 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 2099 1 2099 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 2102 34 2102 60) " ^ Only valid for Nodes." , Comment False (SrcSpan "tests/examples/Attributes.hs" 2117 1 2117 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 2141 1 2141 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Attributes.hs" 2159 1 2159 81) " -----------------------------------------------------------------------------" ] ) haskell-src-exts-1.18.2/tests/examples/Attributes.hs.prettyparser.golden0000644000000000000000000000000612746233113024634 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Attributes.hs.prettyprinter.golden0000644000000000000000000017236212746233113025042 0ustar0000000000000000module Data.GraphViz.Attributes (Attribute(..), Attributes, usedByGraphs, usedBySubGraphs, usedByClusters, usedByNodes, usedByEdges, EscString, URL(..), ArrowType(..), AspectType(..), Rect(..), ClusterMode(..), DirType(..), DEConstraints(..), DPoint(..), ModeType(..), Model(..), Label(..), Point(..), Overlap(..), LayerRange(..), LayerID(..), LayerList(..), OutputMode(..), Pack(..), PackMode(..), Pos(..), EdgeType(..), PageDir(..), Spline(..), QuadType(..), Root(..), RankType(..), RankDir(..), Shape(..), SmoothType(..), StartType(..), STStyle(..), StyleItem(..), StyleName(..), PortPos(..), CompassPoint(..), ViewPort(..), FocusType(..), VerticalPlacement(..), ScaleType(..), Justification(..), Ratios(..), module Data.GraphViz.Attributes.Colors, ArrowShape(..), ArrowModifier(..), ArrowFill(..), ArrowSide(..), box, crow, diamond, dotArrow, inv, noArrow, normal, tee, vee, oDot, invDot, invODot, oBox, oDiamond, eDiamond, openArr, halfOpen, emptyArr, invEmpty, noMods, openMod, defLayerSep, notLayerSep) where import Data.GraphViz.Attributes.Colors import Data.GraphViz.Util import Data.GraphViz.Parsing import Data.GraphViz.Printing import Data.Char (toLower) import Data.Maybe (isJust) import Control.Arrow (first) import Control.Monad (liftM, liftM2) data Attribute = Damping Double | K Double | URL URL | ArrowHead ArrowType | ArrowSize Double | ArrowTail ArrowType | Aspect AspectType | Bb Rect | BgColor Color | Center Bool | Charset String | ClusterRank ClusterMode | ColorScheme ColorScheme | Color [Color] | Comment String | Compound Bool | Concentrate Bool | Constraint Bool | Decorate Bool | DefaultDist Double | Dimen Int | Dim Int | Dir DirType | DirEdgeConstraints DEConstraints | Distortion Double | DPI Double | EdgeURL URL | EdgeTarget EscString | EdgeTooltip EscString | Epsilon Double | ESep DPoint | FillColor Color | FixedSize Bool | FontColor Color | FontName String | FontNames String | FontPath String | FontSize Double | Group String | HeadURL URL | HeadClip Bool | HeadLabel Label | HeadPort PortPos | HeadTarget EscString | HeadTooltip EscString | Height Double | ID Label | Image String | ImageScale ScaleType | LabelURL URL | LabelAngle Double | LabelDistance Double | LabelFloat Bool | LabelFontColor Color | LabelFontName String | LabelFontSize Double | LabelJust Justification | LabelLoc VerticalPlacement | LabelTarget EscString | LabelTooltip EscString | Label Label | Landscape Bool | LayerSep String | Layers LayerList | Layer LayerRange | Layout String | Len Double | LevelsGap Double | Levels Int | LHead String | LPos Point | LTail String | Margin DPoint | MaxIter Int | MCLimit Double | MinDist Double | MinLen Int | Model Model | Mode ModeType | Mosek Bool | NodeSep Double | NoJustify Bool | Normalize Bool | Nslimit1 Double | Nslimit Double | Ordering String | Orientation Double | OutputOrder OutputMode | OverlapScaling Double | Overlap Overlap | PackMode PackMode | Pack Pack | Pad DPoint | PageDir PageDir | Page Point | PenColor Color | PenWidth Double | Peripheries Int | Pin Bool | Pos Pos | QuadTree QuadType | Quantum Double | RankDir RankDir | RankSep Double | Rank RankType | Ratio Ratios | Rects Rect | Regular Bool | ReMinCross Bool | RepulsiveForce Double | Root Root | Rotate Int | SameHead String | SameTail String | SamplePoints Int | SearchSize Int | Sep DPoint | ShapeFile String | Shape Shape | ShowBoxes Int | Sides Int | Size Point | Skew Double | Smoothing SmoothType | SortV Int | Splines EdgeType | Start StartType | StyleSheet String | Style [StyleItem] | TailURL URL | TailClip Bool | TailLabel Label | TailPort PortPos | TailTarget EscString | TailTooltip EscString | Target EscString | Tooltip EscString | TrueColor Bool | Vertices [Point] | ViewPort ViewPort | VoroMargin Double | Weight Double | Width Double | Z Double deriving (Eq, Ord, Show, Read) type Attributes = [Attribute] instance PrintDot Attribute where unqtDot (Damping v) = printField "Damping" v unqtDot (K v) = printField "K" v unqtDot (URL v) = printField "URL" v unqtDot (ArrowHead v) = printField "arrowhead" v unqtDot (ArrowSize v) = printField "arrowsize" v unqtDot (ArrowTail v) = printField "arrowtail" v unqtDot (Aspect v) = printField "aspect" v unqtDot (Bb v) = printField "bb" v unqtDot (BgColor v) = printField "bgcolor" v unqtDot (Center v) = printField "center" v unqtDot (Charset v) = printField "charset" v unqtDot (ClusterRank v) = printField "clusterrank" v unqtDot (ColorScheme v) = printField "colorscheme" v unqtDot (Color v) = printField "color" v unqtDot (Comment v) = printField "comment" v unqtDot (Compound v) = printField "compound" v unqtDot (Concentrate v) = printField "concentrate" v unqtDot (Constraint v) = printField "constraint" v unqtDot (Decorate v) = printField "decorate" v unqtDot (DefaultDist v) = printField "defaultdist" v unqtDot (Dimen v) = printField "dimen" v unqtDot (Dim v) = printField "dim" v unqtDot (Dir v) = printField "dir" v unqtDot (DirEdgeConstraints v) = printField "diredgeconstraints" v unqtDot (Distortion v) = printField "distortion" v unqtDot (DPI v) = printField "dpi" v unqtDot (EdgeURL v) = printField "edgeURL" v unqtDot (EdgeTarget v) = printField "edgetarget" v unqtDot (EdgeTooltip v) = printField "edgetooltip" v unqtDot (Epsilon v) = printField "epsilon" v unqtDot (ESep v) = printField "esep" v unqtDot (FillColor v) = printField "fillcolor" v unqtDot (FixedSize v) = printField "fixedsize" v unqtDot (FontColor v) = printField "fontcolor" v unqtDot (FontName v) = printField "fontname" v unqtDot (FontNames v) = printField "fontnames" v unqtDot (FontPath v) = printField "fontpath" v unqtDot (FontSize v) = printField "fontsize" v unqtDot (Group v) = printField "group" v unqtDot (HeadURL v) = printField "headURL" v unqtDot (HeadClip v) = printField "headclip" v unqtDot (HeadLabel v) = printField "headlabel" v unqtDot (HeadPort v) = printField "headport" v unqtDot (HeadTarget v) = printField "headtarget" v unqtDot (HeadTooltip v) = printField "headtooltip" v unqtDot (Height v) = printField "height" v unqtDot (ID v) = printField "id" v unqtDot (Image v) = printField "image" v unqtDot (ImageScale v) = printField "imagescale" v unqtDot (LabelURL v) = printField "labelURL" v unqtDot (LabelAngle v) = printField "labelangle" v unqtDot (LabelDistance v) = printField "labeldistance" v unqtDot (LabelFloat v) = printField "labelfloat" v unqtDot (LabelFontColor v) = printField "labelfontcolor" v unqtDot (LabelFontName v) = printField "labelfontname" v unqtDot (LabelFontSize v) = printField "labelfontsize" v unqtDot (LabelJust v) = printField "labeljust" v unqtDot (LabelLoc v) = printField "labelloc" v unqtDot (LabelTarget v) = printField "labeltarget" v unqtDot (LabelTooltip v) = printField "labeltooltip" v unqtDot (Label v) = printField "label" v unqtDot (Landscape v) = printField "landscape" v unqtDot (LayerSep v) = printField "layersep" v unqtDot (Layers v) = printField "layers" v unqtDot (Layer v) = printField "layer" v unqtDot (Layout v) = printField "layout" v unqtDot (Len v) = printField "len" v unqtDot (LevelsGap v) = printField "levelsgap" v unqtDot (Levels v) = printField "levels" v unqtDot (LHead v) = printField "lhead" v unqtDot (LPos v) = printField "lp" v unqtDot (LTail v) = printField "ltail" v unqtDot (Margin v) = printField "margin" v unqtDot (MaxIter v) = printField "maxiter" v unqtDot (MCLimit v) = printField "mclimit" v unqtDot (MinDist v) = printField "mindist" v unqtDot (MinLen v) = printField "minlen" v unqtDot (Model v) = printField "model" v unqtDot (Mode v) = printField "mode" v unqtDot (Mosek v) = printField "mosek" v unqtDot (NodeSep v) = printField "nodesep" v unqtDot (NoJustify v) = printField "nojustify" v unqtDot (Normalize v) = printField "normalize" v unqtDot (Nslimit1 v) = printField "nslimit1" v unqtDot (Nslimit v) = printField "nslimit" v unqtDot (Ordering v) = printField "ordering" v unqtDot (Orientation v) = printField "orientation" v unqtDot (OutputOrder v) = printField "outputorder" v unqtDot (OverlapScaling v) = printField "overlap_scaling" v unqtDot (Overlap v) = printField "overlap" v unqtDot (PackMode v) = printField "packmode" v unqtDot (Pack v) = printField "pack" v unqtDot (Pad v) = printField "pad" v unqtDot (PageDir v) = printField "pagedir" v unqtDot (Page v) = printField "page" v unqtDot (PenColor v) = printField "pencolor" v unqtDot (PenWidth v) = printField "penwidth" v unqtDot (Peripheries v) = printField "peripheries" v unqtDot (Pin v) = printField "pin" v unqtDot (Pos v) = printField "pos" v unqtDot (QuadTree v) = printField "quadtree" v unqtDot (Quantum v) = printField "quantum" v unqtDot (RankDir v) = printField "rankdir" v unqtDot (RankSep v) = printField "ranksep" v unqtDot (Rank v) = printField "rank" v unqtDot (Ratio v) = printField "ratio" v unqtDot (Rects v) = printField "rects" v unqtDot (Regular v) = printField "regular" v unqtDot (ReMinCross v) = printField "remincross" v unqtDot (RepulsiveForce v) = printField "repulsiveforce" v unqtDot (Root v) = printField "root" v unqtDot (Rotate v) = printField "rotate" v unqtDot (SameHead v) = printField "samehead" v unqtDot (SameTail v) = printField "sametail" v unqtDot (SamplePoints v) = printField "samplepoints" v unqtDot (SearchSize v) = printField "searchsize" v unqtDot (Sep v) = printField "sep" v unqtDot (ShapeFile v) = printField "shapefile" v unqtDot (Shape v) = printField "shape" v unqtDot (ShowBoxes v) = printField "showboxes" v unqtDot (Sides v) = printField "sides" v unqtDot (Size v) = printField "size" v unqtDot (Skew v) = printField "skew" v unqtDot (Smoothing v) = printField "smoothing" v unqtDot (SortV v) = printField "sortv" v unqtDot (Splines v) = printField "splines" v unqtDot (Start v) = printField "start" v unqtDot (StyleSheet v) = printField "stylesheet" v unqtDot (Style v) = printField "style" v unqtDot (TailURL v) = printField "tailURL" v unqtDot (TailClip v) = printField "tailclip" v unqtDot (TailLabel v) = printField "taillabel" v unqtDot (TailPort v) = printField "tailport" v unqtDot (TailTarget v) = printField "tailtarget" v unqtDot (TailTooltip v) = printField "tailtooltip" v unqtDot (Target v) = printField "target" v unqtDot (Tooltip v) = printField "tooltip" v unqtDot (TrueColor v) = printField "truecolor" v unqtDot (Vertices v) = printField "vertices" v unqtDot (ViewPort v) = printField "viewport" v unqtDot (VoroMargin v) = printField "voro_margin" v unqtDot (Weight v) = printField "weight" v unqtDot (Width v) = printField "width" v unqtDot (Z v) = printField "z" v listToDot = unqtListToDot instance ParseDot Attribute where parseUnqt = oneOf [liftM Damping $ parseField "Damping", liftM K $ parseField "K", liftM URL $ parseFields ["URL", "href"], liftM ArrowHead $ parseField "arrowhead", liftM ArrowSize $ parseField "arrowsize", liftM ArrowTail $ parseField "arrowtail", liftM Aspect $ parseField "aspect", liftM Bb $ parseField "bb", liftM BgColor $ parseField "bgcolor", liftM Center $ parseFieldBool "center", liftM Charset $ parseField "charset", liftM ClusterRank $ parseField "clusterrank", liftM ColorScheme $ parseField "colorscheme", liftM Color $ parseField "color", liftM Comment $ parseField "comment", liftM Compound $ parseFieldBool "compound", liftM Concentrate $ parseFieldBool "concentrate", liftM Constraint $ parseFieldBool "constraint", liftM Decorate $ parseFieldBool "decorate", liftM DefaultDist $ parseField "defaultdist", liftM Dimen $ parseField "dimen", liftM Dim $ parseField "dim", liftM Dir $ parseField "dir", liftM DirEdgeConstraints $ parseFieldDef EdgeConstraints "diredgeconstraints", liftM Distortion $ parseField "distortion", liftM DPI $ parseFields ["dpi", "resolution"], liftM EdgeURL $ parseFields ["edgeURL", "edgehref"], liftM EdgeTarget $ parseField "edgetarget", liftM EdgeTooltip $ parseField "edgetooltip", liftM Epsilon $ parseField "epsilon", liftM ESep $ parseField "esep", liftM FillColor $ parseField "fillcolor", liftM FixedSize $ parseFieldBool "fixedsize", liftM FontColor $ parseField "fontcolor", liftM FontName $ parseField "fontname", liftM FontNames $ parseField "fontnames", liftM FontPath $ parseField "fontpath", liftM FontSize $ parseField "fontsize", liftM Group $ parseField "group", liftM HeadURL $ parseFields ["headURL", "headhref"], liftM HeadClip $ parseFieldBool "headclip", liftM HeadLabel $ parseField "headlabel", liftM HeadPort $ parseField "headport", liftM HeadTarget $ parseField "headtarget", liftM HeadTooltip $ parseField "headtooltip", liftM Height $ parseField "height", liftM ID $ parseField "id", liftM Image $ parseField "image", liftM ImageScale $ parseFieldDef UniformScale "imagescale", liftM LabelURL $ parseFields ["labelURL", "labelhref"], liftM LabelAngle $ parseField "labelangle", liftM LabelDistance $ parseField "labeldistance", liftM LabelFloat $ parseFieldBool "labelfloat", liftM LabelFontColor $ parseField "labelfontcolor", liftM LabelFontName $ parseField "labelfontname", liftM LabelFontSize $ parseField "labelfontsize", liftM LabelJust $ parseField "labeljust", liftM LabelLoc $ parseField "labelloc", liftM LabelTarget $ parseField "labeltarget", liftM LabelTooltip $ parseField "labeltooltip", liftM Label $ parseField "label", liftM Landscape $ parseFieldBool "landscape", liftM LayerSep $ parseField "layersep", liftM Layers $ parseField "layers", liftM Layer $ parseField "layer", liftM Layout $ parseField "layout", liftM Len $ parseField "len", liftM LevelsGap $ parseField "levelsgap", liftM Levels $ parseField "levels", liftM LHead $ parseField "lhead", liftM LPos $ parseField "lp", liftM LTail $ parseField "ltail", liftM Margin $ parseField "margin", liftM MaxIter $ parseField "maxiter", liftM MCLimit $ parseField "mclimit", liftM MinDist $ parseField "mindist", liftM MinLen $ parseField "minlen", liftM Model $ parseField "model", liftM Mode $ parseField "mode", liftM Mosek $ parseFieldBool "mosek", liftM NodeSep $ parseField "nodesep", liftM NoJustify $ parseFieldBool "nojustify", liftM Normalize $ parseFieldBool "normalize", liftM Nslimit1 $ parseField "nslimit1", liftM Nslimit $ parseField "nslimit", liftM Ordering $ parseField "ordering", liftM Orientation $ parseField "orientation", liftM OutputOrder $ parseField "outputorder", liftM OverlapScaling $ parseField "overlap_scaling", liftM Overlap $ parseFieldDef KeepOverlaps "overlap", liftM PackMode $ parseField "packmode", liftM Pack $ parseFieldDef DoPack "pack", liftM Pad $ parseField "pad", liftM PageDir $ parseField "pagedir", liftM Page $ parseField "page", liftM PenColor $ parseField "pencolor", liftM PenWidth $ parseField "penwidth", liftM Peripheries $ parseField "peripheries", liftM Pin $ parseFieldBool "pin", liftM Pos $ parseField "pos", liftM QuadTree $ parseFieldDef NormalQT "quadtree", liftM Quantum $ parseField "quantum", liftM RankDir $ parseField "rankdir", liftM RankSep $ parseField "ranksep", liftM Rank $ parseField "rank", liftM Ratio $ parseField "ratio", liftM Rects $ parseField "rects", liftM Regular $ parseFieldBool "regular", liftM ReMinCross $ parseFieldBool "remincross", liftM RepulsiveForce $ parseField "repulsiveforce", liftM Root $ parseFieldDef IsCentral "root", liftM Rotate $ parseField "rotate", liftM SameHead $ parseField "samehead", liftM SameTail $ parseField "sametail", liftM SamplePoints $ parseField "samplepoints", liftM SearchSize $ parseField "searchsize", liftM Sep $ parseField "sep", liftM ShapeFile $ parseField "shapefile", liftM Shape $ parseField "shape", liftM ShowBoxes $ parseField "showboxes", liftM Sides $ parseField "sides", liftM Size $ parseField "size", liftM Skew $ parseField "skew", liftM Smoothing $ parseField "smoothing", liftM SortV $ parseField "sortv", liftM Splines $ parseFieldDef SplineEdges "splines", liftM Start $ parseField "start", liftM StyleSheet $ parseField "stylesheet", liftM Style $ parseField "style", liftM TailURL $ parseFields ["tailURL", "tailhref"], liftM TailClip $ parseFieldBool "tailclip", liftM TailLabel $ parseField "taillabel", liftM TailPort $ parseField "tailport", liftM TailTarget $ parseField "tailtarget", liftM TailTooltip $ parseField "tailtooltip", liftM Target $ parseField "target", liftM Tooltip $ parseField "tooltip", liftM TrueColor $ parseFieldBool "truecolor", liftM Vertices $ parseField "vertices", liftM ViewPort $ parseField "viewport", liftM VoroMargin $ parseField "voro_margin", liftM Weight $ parseField "weight", liftM Width $ parseField "width", liftM Z $ parseField "z"] parse = parseUnqt parseList = parseUnqtList usedByGraphs :: Attribute -> Bool usedByGraphs Damping{} = True usedByGraphs K{} = True usedByGraphs URL{} = True usedByGraphs Aspect{} = True usedByGraphs Bb{} = True usedByGraphs BgColor{} = True usedByGraphs Center{} = True usedByGraphs Charset{} = True usedByGraphs ClusterRank{} = True usedByGraphs ColorScheme{} = True usedByGraphs Comment{} = True usedByGraphs Compound{} = True usedByGraphs Concentrate{} = True usedByGraphs DefaultDist{} = True usedByGraphs Dimen{} = True usedByGraphs Dim{} = True usedByGraphs DirEdgeConstraints{} = True usedByGraphs DPI{} = True usedByGraphs Epsilon{} = True usedByGraphs ESep{} = True usedByGraphs FontColor{} = True usedByGraphs FontName{} = True usedByGraphs FontNames{} = True usedByGraphs FontPath{} = True usedByGraphs FontSize{} = True usedByGraphs ID{} = True usedByGraphs LabelJust{} = True usedByGraphs LabelLoc{} = True usedByGraphs Label{} = True usedByGraphs Landscape{} = True usedByGraphs LayerSep{} = True usedByGraphs Layers{} = True usedByGraphs Layout{} = True usedByGraphs LevelsGap{} = True usedByGraphs Levels{} = True usedByGraphs LPos{} = True usedByGraphs Margin{} = True usedByGraphs MaxIter{} = True usedByGraphs MCLimit{} = True usedByGraphs MinDist{} = True usedByGraphs Model{} = True usedByGraphs Mode{} = True usedByGraphs Mosek{} = True usedByGraphs NodeSep{} = True usedByGraphs NoJustify{} = True usedByGraphs Normalize{} = True usedByGraphs Nslimit1{} = True usedByGraphs Nslimit{} = True usedByGraphs Ordering{} = True usedByGraphs OutputOrder{} = True usedByGraphs OverlapScaling{} = True usedByGraphs Overlap{} = True usedByGraphs PackMode{} = True usedByGraphs Pack{} = True usedByGraphs Pad{} = True usedByGraphs PageDir{} = True usedByGraphs Page{} = True usedByGraphs QuadTree{} = True usedByGraphs Quantum{} = True usedByGraphs RankDir{} = True usedByGraphs RankSep{} = True usedByGraphs Ratio{} = True usedByGraphs ReMinCross{} = True usedByGraphs RepulsiveForce{} = True usedByGraphs Root{} = True usedByGraphs Rotate{} = True usedByGraphs SearchSize{} = True usedByGraphs Sep{} = True usedByGraphs ShowBoxes{} = True usedByGraphs Size{} = True usedByGraphs Smoothing{} = True usedByGraphs SortV{} = True usedByGraphs Splines{} = True usedByGraphs Start{} = True usedByGraphs StyleSheet{} = True usedByGraphs Target{} = True usedByGraphs TrueColor{} = True usedByGraphs ViewPort{} = True usedByGraphs VoroMargin{} = True usedByGraphs _ = False usedByClusters :: Attribute -> Bool usedByClusters K{} = True usedByClusters URL{} = True usedByClusters BgColor{} = True usedByClusters ColorScheme{} = True usedByClusters Color{} = True usedByClusters FillColor{} = True usedByClusters FontColor{} = True usedByClusters FontName{} = True usedByClusters FontSize{} = True usedByClusters LabelJust{} = True usedByClusters LabelLoc{} = True usedByClusters Label{} = True usedByClusters LPos{} = True usedByClusters NoJustify{} = True usedByClusters PenColor{} = True usedByClusters PenWidth{} = True usedByClusters Peripheries{} = True usedByClusters Rank{} = True usedByClusters SortV{} = True usedByClusters Style{} = True usedByClusters Target{} = True usedByClusters Tooltip{} = True usedByClusters _ = False usedBySubGraphs :: Attribute -> Bool usedBySubGraphs Rank{} = True usedBySubGraphs _ = False usedByNodes :: Attribute -> Bool usedByNodes URL{} = True usedByNodes ColorScheme{} = True usedByNodes Color{} = True usedByNodes Comment{} = True usedByNodes Distortion{} = True usedByNodes FillColor{} = True usedByNodes FixedSize{} = True usedByNodes FontColor{} = True usedByNodes FontName{} = True usedByNodes FontSize{} = True usedByNodes Group{} = True usedByNodes Height{} = True usedByNodes ID{} = True usedByNodes Image{} = True usedByNodes ImageScale{} = True usedByNodes LabelLoc{} = True usedByNodes Label{} = True usedByNodes Layer{} = True usedByNodes Margin{} = True usedByNodes NoJustify{} = True usedByNodes Orientation{} = True usedByNodes PenWidth{} = True usedByNodes Peripheries{} = True usedByNodes Pin{} = True usedByNodes Pos{} = True usedByNodes Rects{} = True usedByNodes Regular{} = True usedByNodes Root{} = True usedByNodes SamplePoints{} = True usedByNodes ShapeFile{} = True usedByNodes Shape{} = True usedByNodes ShowBoxes{} = True usedByNodes Sides{} = True usedByNodes Skew{} = True usedByNodes SortV{} = True usedByNodes Style{} = True usedByNodes Target{} = True usedByNodes Tooltip{} = True usedByNodes Vertices{} = True usedByNodes Width{} = True usedByNodes Z{} = True usedByNodes _ = False usedByEdges :: Attribute -> Bool usedByEdges URL{} = True usedByEdges ArrowHead{} = True usedByEdges ArrowSize{} = True usedByEdges ArrowTail{} = True usedByEdges ColorScheme{} = True usedByEdges Color{} = True usedByEdges Comment{} = True usedByEdges Constraint{} = True usedByEdges Decorate{} = True usedByEdges Dir{} = True usedByEdges EdgeURL{} = True usedByEdges EdgeTarget{} = True usedByEdges EdgeTooltip{} = True usedByEdges FontColor{} = True usedByEdges FontName{} = True usedByEdges FontSize{} = True usedByEdges HeadURL{} = True usedByEdges HeadClip{} = True usedByEdges HeadLabel{} = True usedByEdges HeadPort{} = True usedByEdges HeadTarget{} = True usedByEdges HeadTooltip{} = True usedByEdges ID{} = True usedByEdges LabelURL{} = True usedByEdges LabelAngle{} = True usedByEdges LabelDistance{} = True usedByEdges LabelFloat{} = True usedByEdges LabelFontColor{} = True usedByEdges LabelFontName{} = True usedByEdges LabelFontSize{} = True usedByEdges LabelTarget{} = True usedByEdges LabelTooltip{} = True usedByEdges Label{} = True usedByEdges Layer{} = True usedByEdges Len{} = True usedByEdges LHead{} = True usedByEdges LPos{} = True usedByEdges LTail{} = True usedByEdges MinLen{} = True usedByEdges NoJustify{} = True usedByEdges PenWidth{} = True usedByEdges Pos{} = True usedByEdges SameHead{} = True usedByEdges SameTail{} = True usedByEdges ShowBoxes{} = True usedByEdges Style{} = True usedByEdges TailURL{} = True usedByEdges TailClip{} = True usedByEdges TailLabel{} = True usedByEdges TailPort{} = True usedByEdges TailTarget{} = True usedByEdges TailTooltip{} = True usedByEdges Target{} = True usedByEdges Tooltip{} = True usedByEdges Weight{} = True usedByEdges _ = False type EscString = String newtype URL = UStr{urlString :: EscString} deriving (Eq, Ord, Show, Read) instance PrintDot URL where unqtDot = wrap (char '<') (char '>') . text . urlString instance ParseDot URL where parseUnqt = liftM UStr $ bracket (character open) (character close) (many1 $ satisfy ((/=) close)) where open = '<' close = '>' parse = parseUnqt newtype ArrowType = AType [(ArrowModifier, ArrowShape)] deriving (Eq, Ord, Show, Read) box, crow, diamond, dotArrow, inv, noArrow, normal, tee, vee :: ArrowType oDot, invDot, invODot, oBox, oDiamond :: ArrowType eDiamond, openArr, halfOpen, emptyArr, invEmpty :: ArrowType normal = AType [(noMods, Normal)] inv = AType [(noMods, Inv)] dotArrow = AType [(noMods, DotArrow)] invDot = AType [(noMods, Inv), (noMods, DotArrow)] oDot = AType [(ArrMod OpenArrow BothSides, DotArrow)] invODot = AType [(noMods, Inv), (openMod, DotArrow)] noArrow = AType [(noMods, NoArrow)] tee = AType [(noMods, Tee)] emptyArr = AType [(openMod, Normal)] invEmpty = AType [(noMods, Inv), (openMod, Normal)] diamond = AType [(noMods, Diamond)] oDiamond = AType [(openMod, Diamond)] eDiamond = oDiamond crow = AType [(noMods, Crow)] box = AType [(noMods, Box)] oBox = AType [(openMod, Box)] openArr = vee halfOpen = AType [(ArrMod FilledArrow LeftSide, Vee)] vee = AType [(noMods, Vee)] instance PrintDot ArrowType where unqtDot (AType mas) = hcat $ map appMod mas where appMod (m, a) = unqtDot m <> unqtDot a instance ParseDot ArrowType where parseUnqt = do mas <- many1 $ do m <- parseUnqt a <- parseUnqt return (m, a) return $ AType mas `onFail` specialArrowParse specialArrowParse :: Parse ArrowType specialArrowParse = oneOf [stringRep eDiamond "ediamond", stringRep openArr "open", stringRep halfOpen "halfopen", stringRep emptyArr "empty", stringRep invEmpty "invempty"] data ArrowShape = Box | Crow | Diamond | DotArrow | Inv | NoArrow | Normal | Tee | Vee deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ArrowShape where unqtDot Box = unqtDot "box" unqtDot Crow = unqtDot "crow" unqtDot Diamond = unqtDot "diamond" unqtDot DotArrow = unqtDot "dot" unqtDot Inv = unqtDot "inv" unqtDot NoArrow = unqtDot "none" unqtDot Normal = unqtDot "normal" unqtDot Tee = unqtDot "tee" unqtDot Vee = unqtDot "vee" instance ParseDot ArrowShape where parseUnqt = oneOf [stringRep Box "box", stringRep Crow "crow", stringRep Diamond "diamond", stringRep DotArrow "dot", stringRep Inv "inv", stringRep NoArrow "none", stringRep Normal "normal", stringRep Tee "tee", stringRep Vee "vee"] data ArrowModifier = ArrMod{arrowFill :: ArrowFill, arrowSide :: ArrowSide} deriving (Eq, Ord, Show, Read) noMods :: ArrowModifier noMods = ArrMod FilledArrow BothSides openMod :: ArrowModifier openMod = ArrMod OpenArrow BothSides instance PrintDot ArrowModifier where unqtDot (ArrMod f s) = unqtDot f <> unqtDot s instance ParseDot ArrowModifier where parseUnqt = do f <- parseUnqt s <- parseUnqt return $ ArrMod f s data ArrowFill = OpenArrow | FilledArrow deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ArrowFill where unqtDot OpenArrow = char 'o' unqtDot FilledArrow = empty instance ParseDot ArrowFill where parseUnqt = liftM (bool FilledArrow OpenArrow . isJust) $ optional (character 'o') parse = parseUnqt data ArrowSide = LeftSide | RightSide | BothSides deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ArrowSide where unqtDot LeftSide = char 'l' unqtDot RightSide = char 'r' unqtDot BothSides = empty instance ParseDot ArrowSide where parseUnqt = liftM getSideType $ optional (oneOf $ map character ['l', 'r']) where getSideType = maybe BothSides (bool RightSide LeftSide . (==) 'l') parse = parseUnqt data AspectType = RatioOnly Double | RatioPassCount Double Int deriving (Eq, Ord, Show, Read) instance PrintDot AspectType where unqtDot (RatioOnly r) = unqtDot r unqtDot (RatioPassCount r p) = commaDel r p toDot at@RatioOnly{} = unqtDot at toDot at@RatioPassCount{} = doubleQuotes $ unqtDot at instance ParseDot AspectType where parseUnqt = liftM (uncurry RatioPassCount) commaSepUnqt `onFail` liftM RatioOnly parseUnqt parse = quotedParse (liftM (uncurry RatioPassCount) commaSepUnqt) `onFail` liftM RatioOnly parse data Rect = Rect Point Point deriving (Eq, Ord, Show, Read) instance PrintDot Rect where unqtDot (Rect p1 p2) = commaDel p1 p2 toDot = doubleQuotes . unqtDot instance ParseDot Rect where parseUnqt = liftM (uncurry Rect) commaSepUnqt parse = quotedParse parseUnqt data ClusterMode = Local | Global | NoCluster deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ClusterMode where unqtDot Local = unqtDot "local" unqtDot Global = unqtDot "global" unqtDot NoCluster = unqtDot "none" instance ParseDot ClusterMode where parseUnqt = oneOf [stringRep Local "local", stringRep Global "global", stringRep NoCluster "none"] data DirType = Forward | Back | Both | NoDir deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot DirType where unqtDot Forward = unqtDot "forward" unqtDot Back = unqtDot "back" unqtDot Both = unqtDot "both" unqtDot NoDir = unqtDot "none" instance ParseDot DirType where parseUnqt = oneOf [stringRep Forward "forward", stringRep Back "back", stringRep Both "both", stringRep NoDir "none"] data DEConstraints = EdgeConstraints | NoConstraints | HierConstraints deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot DEConstraints where unqtDot EdgeConstraints = unqtDot True unqtDot NoConstraints = unqtDot False unqtDot HierConstraints = text "hier" instance ParseDot DEConstraints where parseUnqt = liftM (bool NoConstraints EdgeConstraints) parse `onFail` stringRep HierConstraints "hier" data DPoint = DVal Double | PVal Point deriving (Eq, Ord, Show, Read) instance PrintDot DPoint where unqtDot (DVal d) = unqtDot d unqtDot (PVal p) = unqtDot p toDot (DVal d) = toDot d toDot (PVal p) = toDot p instance ParseDot DPoint where parseUnqt = liftM PVal parseUnqt `onFail` liftM DVal parseUnqt parse = liftM PVal parse `onFail` liftM DVal parse data ModeType = Major | KK | Hier | IpSep deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ModeType where unqtDot Major = text "major" unqtDot KK = text "KK" unqtDot Hier = text "hier" unqtDot IpSep = text "ipsep" instance ParseDot ModeType where parseUnqt = oneOf [stringRep Major "major", stringRep KK "KK", stringRep Hier "hier", stringRep IpSep "ipsep"] data Model = ShortPath | SubSet | Circuit deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot Model where unqtDot ShortPath = text "shortpath" unqtDot SubSet = text "subset" unqtDot Circuit = text "circuit" instance ParseDot Model where parseUnqt = oneOf [stringRep ShortPath "shortpath", stringRep SubSet "subset", stringRep Circuit "circuit"] data Label = StrLabel EscString | URLLabel URL deriving (Eq, Ord, Show, Read) instance PrintDot Label where unqtDot (StrLabel s) = unqtDot s unqtDot (URLLabel u) = unqtDot u toDot (StrLabel s) = toDot s toDot (URLLabel u) = toDot u instance ParseDot Label where parseUnqt = liftM StrLabel parseUnqt `onFail` liftM URLLabel parseUnqt parse = liftM StrLabel parse `onFail` liftM URLLabel parse data Point = Point Int Int | PointD Double Double deriving (Eq, Ord, Show, Read) instance PrintDot Point where unqtDot (Point x y) = commaDel x y unqtDot (PointD x y) = commaDel x y toDot = doubleQuotes . unqtDot unqtListToDot = hsep . map unqtDot listToDot = doubleQuotes . unqtListToDot instance ParseDot Point where parseUnqt = intDblPoint `onFail` liftM (uncurry Point) commaSepUnqt `onFail` liftM (uncurry PointD) commaSepUnqt where intDblPoint = liftM (uncurry PointD . first fI) $ commaSep' parseUnqt parseStrictFloat fI :: Int -> Double fI = fromIntegral parse = quotedParse parseUnqt parseUnqtList = sepBy1 parseUnqt whitespace data Overlap = KeepOverlaps | RemoveOverlaps | ScaleOverlaps | ScaleXYOverlaps | PrismOverlap (Maybe Int) | CompressOverlap | VpscOverlap | IpsepOverlap deriving (Eq, Ord, Show, Read) instance PrintDot Overlap where unqtDot KeepOverlaps = unqtDot True unqtDot RemoveOverlaps = unqtDot False unqtDot ScaleOverlaps = text "scale" unqtDot ScaleXYOverlaps = text "scalexy" unqtDot (PrismOverlap i) = maybe id (flip (<>) . unqtDot) i $ text "prism" unqtDot CompressOverlap = text "compress" unqtDot VpscOverlap = text "vpsc" unqtDot IpsepOverlap = text "ipsep" instance ParseDot Overlap where parseUnqt = oneOf [stringRep KeepOverlaps "true", stringRep RemoveOverlaps "false", stringRep ScaleXYOverlaps "scalexy", stringRep ScaleOverlaps "scale", string "prism" >> liftM PrismOverlap (optional parse), stringRep CompressOverlap "compress", stringRep VpscOverlap "vpsc", stringRep IpsepOverlap "ipsep"] data LayerRange = LRID LayerID | LRS LayerID String LayerID deriving (Eq, Ord, Show, Read) instance PrintDot LayerRange where unqtDot (LRID lid) = unqtDot lid unqtDot (LRS id1 s id2) = unqtDot id1 <> unqtDot s <> unqtDot id2 toDot (LRID lid) = toDot lid toDot lrs = doubleQuotes $ unqtDot lrs instance ParseDot LayerRange where parseUnqt = do id1 <- parseUnqt s <- parseLayerSep id2 <- parseUnqt return $ LRS id1 s id2 `onFail` liftM LRID parseUnqt parse = quotedParse (do id1 <- parseUnqt s <- parseLayerSep id2 <- parseUnqt return $ LRS id1 s id2) `onFail` liftM LRID parse parseLayerSep :: Parse String parseLayerSep = many1 . oneOf $ map character defLayerSep defLayerSep :: [Char] defLayerSep = [' ', ':', '\t'] parseLayerName :: Parse String parseLayerName = many1 . orQuote $ satisfy (liftM2 (&&) notLayerSep ((/=) quoteChar)) parseLayerName' :: Parse String parseLayerName' = stringBlock `onFail` quotedParse parseLayerName notLayerSep :: Char -> Bool notLayerSep = flip notElem defLayerSep data LayerID = AllLayers | LRInt Int | LRName String deriving (Eq, Ord, Show, Read) instance PrintDot LayerID where unqtDot AllLayers = text "all" unqtDot (LRInt n) = unqtDot n unqtDot (LRName nm) = unqtDot nm toDot (LRName nm) = toDot nm toDot li = unqtDot li instance ParseDot LayerID where parseUnqt = liftM checkLayerName parseLayerName parse = oneOf [liftM checkLayerName parseLayerName', liftM LRInt parse] checkLayerName :: String -> LayerID checkLayerName str = maybe checkAll LRInt $ stringToInt str where checkAll = if map toLower str == "all" then AllLayers else LRName str data LayerList = LL String [(String, String)] deriving (Eq, Ord, Show, Read) instance PrintDot LayerList where unqtDot (LL l1 ols) = unqtDot l1 <> hcat (map subLL ols) where subLL (s, l) = unqtDot s <> unqtDot l toDot (LL l1 []) = toDot l1 toDot ll = doubleQuotes $ unqtDot ll instance ParseDot LayerList where parseUnqt = do l1 <- parseLayerName ols <- many $ do s <- parseLayerSep lnm <- parseLayerName return (s, lnm) return $ LL l1 ols parse = quotedParse parseUnqt `onFail` liftM (flip LL []) (parseLayerName' `onFail` numString) data OutputMode = BreadthFirst | NodesFirst | EdgesFirst deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot OutputMode where unqtDot BreadthFirst = text "breadthfirst" unqtDot NodesFirst = text "nodesfirst" unqtDot EdgesFirst = text "edgesfirst" instance ParseDot OutputMode where parseUnqt = oneOf [stringRep BreadthFirst "breadthfirst", stringRep NodesFirst "nodesfirst", stringRep EdgesFirst "edgesfirst"] data Pack = DoPack | DontPack | PackMargin Int deriving (Eq, Ord, Show, Read) instance PrintDot Pack where unqtDot DoPack = unqtDot True unqtDot DontPack = unqtDot False unqtDot (PackMargin m) = unqtDot m instance ParseDot Pack where parseUnqt = oneOf [liftM PackMargin parseUnqt, liftM (bool DontPack DoPack) onlyBool] data PackMode = PackNode | PackClust | PackGraph | PackArray Bool Bool (Maybe Int) deriving (Eq, Ord, Show, Read) instance PrintDot PackMode where unqtDot PackNode = text "node" unqtDot PackClust = text "clust" unqtDot PackGraph = text "graph" unqtDot (PackArray c u mi) = addNum . isU . isC . isUnder $ text "array" where addNum = maybe id (flip (<>) . unqtDot) mi isUnder = if c || u then flip (<>) $ char '_' else id isC = if c then flip (<>) $ char 'c' else id isU = if u then flip (<>) $ char 'u' else id instance ParseDot PackMode where parseUnqt = oneOf [stringRep PackNode "node", stringRep PackClust "clust", stringRep PackGraph "graph", do string "array" mcu <- optional $ do character '_' many1 $ satisfy isCU let c = hasCharacter mcu 'c' u = hasCharacter mcu 'u' mi <- optional parseUnqt return $ PackArray c u mi] where hasCharacter ms c = maybe False (elem c) ms isCU = flip elem ['c', 'u'] data Pos = PointPos Point | SplinePos [Spline] deriving (Eq, Ord, Show, Read) instance PrintDot Pos where unqtDot (PointPos p) = unqtDot p unqtDot (SplinePos ss) = unqtDot ss toDot (PointPos p) = toDot p toDot (SplinePos ss) = toDot ss instance ParseDot Pos where parseUnqt = do splns <- parseUnqt case splns of [Spline Nothing Nothing [p]] -> return $ PointPos p _ -> return $ SplinePos splns parse = quotedParse parseUnqt data EdgeType = SplineEdges | LineEdges | NoEdges | PolyLine | CompoundEdge deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot EdgeType where unqtDot SplineEdges = toDot True unqtDot LineEdges = toDot False unqtDot NoEdges = empty unqtDot PolyLine = text "polyline" unqtDot CompoundEdge = text "compound" toDot NoEdges = doubleQuotes empty toDot et = unqtDot et instance ParseDot EdgeType where parseUnqt = oneOf [liftM (bool LineEdges SplineEdges) parse, stringRep SplineEdges "spline", stringRep LineEdges "line", stringRep PolyLine "polyline", stringRep CompoundEdge "compound"] parse = stringRep NoEdges "\"\"" `onFail` optionalQuoted parseUnqt data PageDir = Bl | Br | Tl | Tr | Rb | Rt | Lb | Lt deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot PageDir where unqtDot Bl = text "BL" unqtDot Br = text "BR" unqtDot Tl = text "TL" unqtDot Tr = text "TR" unqtDot Rb = text "RB" unqtDot Rt = text "RT" unqtDot Lb = text "LB" unqtDot Lt = text "LT" instance ParseDot PageDir where parseUnqt = oneOf [stringRep Bl "BL", stringRep Br "BR", stringRep Tl "TL", stringRep Tr "TR", stringRep Rb "RB", stringRep Rt "RT", stringRep Lb "LB", stringRep Lt "LT"] data Spline = Spline (Maybe Point) (Maybe Point) [Point] deriving (Eq, Ord, Show, Read) instance PrintDot Spline where unqtDot (Spline ms me ps) = addS . addE . hsep $ map unqtDot ps where addP t = maybe id ((<+>) . commaDel t) addS = addP 's' ms addE = addP 'e' me toDot = doubleQuotes . unqtDot unqtListToDot = hcat . punctuate semi . map unqtDot listToDot = doubleQuotes . unqtListToDot instance ParseDot Spline where parseUnqt = do ms <- parseP 's' me <- parseP 'e' ps <- sepBy1 parseUnqt whitespace return $ Spline ms me ps where parseP t = optional $ do character t parseComma parseUnqt `discard` whitespace parse = quotedParse parseUnqt parseUnqtList = sepBy1 parseUnqt (character ';') data QuadType = NormalQT | FastQT | NoQT deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot QuadType where unqtDot NormalQT = text "normal" unqtDot FastQT = text "fast" unqtDot NoQT = text "none" instance ParseDot QuadType where parseUnqt = oneOf [stringRep NormalQT "normal", stringRep FastQT "fast", stringRep NoQT "none", character '2' >> return FastQT, liftM (bool NoQT NormalQT) parse] data Root = IsCentral | NotCentral | NodeName String deriving (Eq, Ord, Show, Read) instance PrintDot Root where unqtDot IsCentral = unqtDot True unqtDot NotCentral = unqtDot False unqtDot (NodeName n) = unqtDot n toDot (NodeName n) = toDot n toDot r = unqtDot r instance ParseDot Root where parseUnqt = liftM (bool NotCentral IsCentral) onlyBool `onFail` liftM NodeName parseUnqt parse = optionalQuoted (liftM (bool NotCentral IsCentral) onlyBool) `onFail` liftM NodeName parse data RankType = SameRank | MinRank | SourceRank | MaxRank | SinkRank deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot RankType where unqtDot SameRank = text "same" unqtDot MinRank = text "min" unqtDot SourceRank = text "source" unqtDot MaxRank = text "max" unqtDot SinkRank = text "sink" instance ParseDot RankType where parseUnqt = oneOf [stringRep SameRank "same", stringRep MinRank "min", stringRep SourceRank "source", stringRep MaxRank "max", stringRep SinkRank "sink"] data RankDir = FromTop | FromLeft | FromBottom | FromRight deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot RankDir where unqtDot FromTop = text "TB" unqtDot FromLeft = text "LR" unqtDot FromBottom = text "BT" unqtDot FromRight = text "RL" instance ParseDot RankDir where parseUnqt = oneOf [stringRep FromTop "TB", stringRep FromLeft "LR", stringRep FromBottom "BT", stringRep FromRight "RL"] data Shape = BoxShape | Polygon | Ellipse | Circle | PointShape | Egg | Triangle | PlainText | DiamondShape | Trapezium | Parallelogram | House | Pentagon | Hexagon | Septagon | Octagon | DoubleCircle | DoubleOctagon | TripleOctagon | InvTriangle | InvTrapezium | InvHouse | MDiamond | MSquare | MCircle | Note | Tab | Folder | Box3D | Component deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot Shape where unqtDot BoxShape = text "box" unqtDot Polygon = text "polygon" unqtDot Ellipse = text "ellipse" unqtDot Circle = text "circle" unqtDot PointShape = text "point" unqtDot Egg = text "egg" unqtDot Triangle = text "triangle" unqtDot PlainText = text "plaintext" unqtDot DiamondShape = text "diamond" unqtDot Trapezium = text "trapezium" unqtDot Parallelogram = text "parallelogram" unqtDot House = text "house" unqtDot Pentagon = text "pentagon" unqtDot Hexagon = text "hexagon" unqtDot Septagon = text "septagon" unqtDot Octagon = text "octagon" unqtDot DoubleCircle = text "doublecircle" unqtDot DoubleOctagon = text "doubleoctagon" unqtDot TripleOctagon = text "tripleoctagon" unqtDot InvTriangle = text "invtriangle" unqtDot InvTrapezium = text "invtrapezium" unqtDot InvHouse = text "invhouse" unqtDot MDiamond = text "Mdiamond" unqtDot MSquare = text "Msquare" unqtDot MCircle = text "Mcircle" unqtDot Note = text "note" unqtDot Tab = text "tab" unqtDot Folder = text "folder" unqtDot Box3D = text "box3d" unqtDot Component = text "component" instance ParseDot Shape where parseUnqt = oneOf [stringRep Box3D "box3d", stringReps BoxShape ["box", "rectangle", "rect"], stringRep Polygon "polygon", stringRep Ellipse "ellipse", stringRep Circle "circle", stringRep PointShape "point", stringRep Egg "egg", stringRep Triangle "triangle", stringReps PlainText ["plaintext", "none"], stringRep DiamondShape "diamond", stringRep Trapezium "trapezium", stringRep Parallelogram "parallelogram", stringRep House "house", stringRep Pentagon "pentagon", stringRep Hexagon "hexagon", stringRep Septagon "septagon", stringRep Octagon "octagon", stringRep DoubleCircle "doublecircle", stringRep DoubleOctagon "doubleoctagon", stringRep TripleOctagon "tripleoctagon", stringRep InvTriangle "invtriangle", stringRep InvTrapezium "invtrapezium", stringRep InvHouse "invhouse", stringRep MDiamond "Mdiamond", stringRep MSquare "Msquare", stringRep MCircle "Mcircle", stringRep Note "note", stringRep Tab "tab", stringRep Folder "folder", stringRep Component "component"] data SmoothType = NoSmooth | AvgDist | GraphDist | PowerDist | RNG | Spring | TriangleSmooth deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot SmoothType where unqtDot NoSmooth = text "none" unqtDot AvgDist = text "avg_dist" unqtDot GraphDist = text "graph_dist" unqtDot PowerDist = text "power_dist" unqtDot RNG = text "rng" unqtDot Spring = text "spring" unqtDot TriangleSmooth = text "triangle" instance ParseDot SmoothType where parseUnqt = oneOf [stringRep NoSmooth "none", stringRep AvgDist "avg_dist", stringRep GraphDist "graph_dist", stringRep PowerDist "power_dist", stringRep RNG "rng", stringRep Spring "spring", stringRep TriangleSmooth "triangle"] data StartType = StartStyle STStyle | StartSeed Int | StartStyleSeed STStyle Int deriving (Eq, Ord, Show, Read) instance PrintDot StartType where unqtDot (StartStyle ss) = unqtDot ss unqtDot (StartSeed s) = unqtDot s unqtDot (StartStyleSeed ss s) = unqtDot ss <> unqtDot s instance ParseDot StartType where parseUnqt = oneOf [do ss <- parseUnqt s <- parseUnqt return $ StartStyleSeed ss s, liftM StartStyle parseUnqt, liftM StartSeed parseUnqt] data STStyle = RegularStyle | SelfStyle | RandomStyle deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot STStyle where unqtDot RegularStyle = text "regular" unqtDot SelfStyle = text "self" unqtDot RandomStyle = text "random" instance ParseDot STStyle where parseUnqt = oneOf [stringRep RegularStyle "regular", stringRep SelfStyle "self", stringRep RandomStyle "random"] data StyleItem = SItem StyleName [String] deriving (Eq, Ord, Show, Read) instance PrintDot StyleItem where unqtDot (SItem nm args) | null args = dnm | otherwise = dnm <> parens args' where dnm = unqtDot nm args' = hcat . punctuate comma $ map unqtDot args toDot si@(SItem nm args) | null args = toDot nm | otherwise = doubleQuotes $ unqtDot si unqtListToDot = hcat . punctuate comma . map unqtDot listToDot [SItem nm []] = toDot nm listToDot sis = doubleQuotes $ unqtListToDot sis instance ParseDot StyleItem where parseUnqt = do nm <- parseUnqt args <- tryParseList' parseArgs return $ SItem nm args parse = quotedParse (liftM2 SItem parseUnqt parseArgs) `onFail` liftM (flip SItem []) parse parseUnqtList = sepBy1 parseUnqt parseComma parseList = quotedParse parseUnqtList `onFail` liftM return parse parseArgs :: Parse [String] parseArgs = bracketSep (character '(') parseComma (character ')') parseStyleName data StyleName = Dashed | Dotted | Solid | Bold | Invisible | Filled | Diagonals | Rounded | DD String deriving (Eq, Ord, Show, Read) instance PrintDot StyleName where unqtDot Dashed = text "dashed" unqtDot Dotted = text "dotted" unqtDot Solid = text "solid" unqtDot Bold = text "bold" unqtDot Invisible = text "invis" unqtDot Filled = text "filled" unqtDot Diagonals = text "diagonals" unqtDot Rounded = text "rounded" unqtDot (DD nm) = unqtDot nm toDot (DD nm) = toDot nm toDot sn = unqtDot sn instance ParseDot StyleName where parseUnqt = liftM checkDD parseStyleName parse = liftM checkDD $ quotedParse parseStyleName `onFail` do f <- orQuote $ noneOf [quoteChar, '(', ')', ',', ' ', ']'] r <- many (orQuote $ noneOf [quoteChar, '(', ')', ',', ']']) return $ f : r checkDD :: String -> StyleName checkDD str = case map toLower str of "dashed" -> Dashed "dotted" -> Dotted "solid" -> Solid "bold" -> Bold "invis" -> Invisible "filled" -> Filled "diagonals" -> Diagonals "rounded" -> Rounded _ -> DD str parseStyleName :: Parse String parseStyleName = do f <- orQuote $ noneOf [quoteChar, '(', ')', ',', ' '] r <- many (orQuote $ noneOf [quoteChar, '(', ')', ',']) return $ f : r newtype PortPos = PP CompassPoint deriving (Eq, Ord, Show, Read) instance PrintDot PortPos where unqtDot (PP cp) = unqtDot cp toDot (PP cp) = toDot cp instance ParseDot PortPos where parseUnqt = liftM PP parseUnqt data CompassPoint = North | NorthEast | East | SouthEast | South | SouthWest | West | NorthWest | CenterPoint | NoCP deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot CompassPoint where unqtDot NorthEast = text "ne" unqtDot NorthWest = text "nw" unqtDot North = text "n" unqtDot East = text "e" unqtDot SouthEast = text "se" unqtDot SouthWest = text "sw" unqtDot South = text "s" unqtDot West = text "w" unqtDot CenterPoint = text "c" unqtDot NoCP = text "_" instance ParseDot CompassPoint where parseUnqt = oneOf [stringRep NorthEast "ne", stringRep NorthWest "nw", stringRep North "n", stringRep SouthEast "se", stringRep SouthWest "sw", stringRep South "s", stringRep East "e", stringRep West "w", stringRep CenterPoint "c", stringRep NoCP "_"] data ViewPort = VP{wVal :: Double, hVal :: Double, zVal :: Double, focus :: Maybe FocusType} deriving (Eq, Ord, Show, Read) instance PrintDot ViewPort where unqtDot vp = maybe vs ((<>) (vs <> comma) . unqtDot) $ focus vp where vs = hcat . punctuate comma $ map (unqtDot . flip ($) vp) [wVal, hVal, zVal] toDot = doubleQuotes . unqtDot instance ParseDot ViewPort where parseUnqt = do wv <- parseUnqt parseComma hv <- parseUnqt parseComma zv <- parseUnqt mf <- optional $ parseComma >> parseUnqt return $ VP wv hv zv mf parse = quotedParse parseUnqt data FocusType = XY Point | NodeFocus String deriving (Eq, Ord, Show, Read) instance PrintDot FocusType where unqtDot (XY p) = unqtDot p unqtDot (NodeFocus nm) = unqtDot nm toDot (XY p) = toDot p toDot (NodeFocus nm) = toDot nm instance ParseDot FocusType where parseUnqt = liftM XY parseUnqt `onFail` liftM NodeFocus parseUnqt parse = liftM XY parse `onFail` liftM NodeFocus parse data VerticalPlacement = VTop | VCenter | VBottom deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot VerticalPlacement where unqtDot VTop = char 't' unqtDot VCenter = char 'c' unqtDot VBottom = char 'b' instance ParseDot VerticalPlacement where parseUnqt = oneOf [stringRep VTop "t", stringRep VCenter "c", stringRep VBottom "b"] data ScaleType = UniformScale | NoScale | FillWidth | FillHeight | FillBoth deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot ScaleType where unqtDot UniformScale = unqtDot True unqtDot NoScale = unqtDot False unqtDot FillWidth = text "width" unqtDot FillHeight = text "height" unqtDot FillBoth = text "both" instance ParseDot ScaleType where parseUnqt = oneOf [stringRep UniformScale "true", stringRep NoScale "false", stringRep FillWidth "width", stringRep FillHeight "height", stringRep FillBoth "both"] data Justification = JLeft | JRight | JCenter deriving (Eq, Ord, Bounded, Enum, Show, Read) instance PrintDot Justification where unqtDot JLeft = char 'l' unqtDot JRight = char 'r' unqtDot JCenter = char 'c' instance ParseDot Justification where parseUnqt = oneOf [stringRep JLeft "l", stringRep JRight "r", stringRep JCenter "c"] data Ratios = AspectRatio Double | FillRatio | CompressRatio | ExpandRatio | AutoRatio deriving (Eq, Ord, Show, Read) instance PrintDot Ratios where unqtDot (AspectRatio r) = unqtDot r unqtDot FillRatio = text "fill" unqtDot CompressRatio = text "compress" unqtDot ExpandRatio = text "expand" unqtDot AutoRatio = text "auto" instance ParseDot Ratios where parseUnqt = oneOf [liftM AspectRatio parseUnqt, stringRep FillRatio "fill", stringRep CompressRatio "compress", stringRep ExpandRatio "expand", stringRep AutoRatio "auto"] haskell-src-exts-1.18.2/tests/examples/BadStringLineBreak.hs0000644000000000000000000000026512746233113022135 0ustar0000000000000000module BadStringLineBreak where main = print $ "hello" ++ "world -- any random junk that goes here gets added onto the character count -- and the quote ends it with some garbage " haskell-src-exts-1.18.2/tests/examples/BadStringLineBreak.hs.exactprinter.golden0000644000000000000000000000014012746233113026103 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/BadStringLineBreak.hs" 3 27) "Improperly terminated string" haskell-src-exts-1.18.2/tests/examples/BadStringLineBreak.hs.parser.golden0000644000000000000000000000014412746233113024673 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/BadStringLineBreak.hs" 3 27) "Improperly terminated string" haskell-src-exts-1.18.2/tests/examples/BadStringLineBreak.hs.prettyparser.golden0000644000000000000000000000014012746233113026137 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/BadStringLineBreak.hs" 3 27) "Improperly terminated string" haskell-src-exts-1.18.2/tests/examples/BadStringLineBreak.hs.prettyprinter.golden0000644000000000000000000000014012746233113026326 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/BadStringLineBreak.hs" 3 27) "Improperly terminated string" haskell-src-exts-1.18.2/tests/examples/BangPatterns.hs0000644000000000000000000000044012746233113021066 0ustar0000000000000000{-# LANGUAGE BangPatterns #-} module BangPatterns where firstnonspace :: Ptr Word8 -> Int -> Int -> IO Int firstnonspace !ptr !n !m | n >= m = return n | otherwise = do w <- peekElemOff ptr n if isSpaceWord8 w then firstnonspace ptr (n+1) m else return n haskell-src-exts-1.18.2/tests/examples/BangPatterns.hs.exactprinter.golden0000644000000000000000000000000612746233113025042 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/BangPatterns.hs.parser.golden0000644000000000000000000011632712746233113023644 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 1 1 1 1 , SrcSpan "tests/examples/BangPatterns.hs" 2 1 2 1 , SrcSpan "tests/examples/BangPatterns.hs" 2 1 2 1 , SrcSpan "tests/examples/BangPatterns.hs" 4 1 4 1 , SrcSpan "tests/examples/BangPatterns.hs" 5 1 5 1 , SrcSpan "tests/examples/BangPatterns.hs" 9 1 9 1 , SrcSpan "tests/examples/BangPatterns.hs" 9 1 9 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 2 1 2 26 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 2 1 2 7 , SrcSpan "tests/examples/BangPatterns.hs" 2 21 2 26 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 2 8 2 20 , srcInfoPoints = [] } "BangPatterns") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 1 1 1 13 , SrcSpan "tests/examples/BangPatterns.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 1 14 1 26 , srcInfoPoints = [] } "BangPatterns" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 1 4 51 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 4 15 4 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 1 4 14 , srcInfoPoints = [] } "firstnonspace" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 18 4 51 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 4 28 4 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 18 4 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 18 4 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 18 4 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 18 4 21 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 22 4 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 22 4 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 22 4 27 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 31 4 51 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 4 35 4 37 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 31 4 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 31 4 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 31 4 34 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 38 4 51 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 4 42 4 44 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 38 4 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 38 4 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 38 4 41 , srcInfoPoints = [] } "Int"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 45 4 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 45 4 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 45 4 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 45 4 47 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 48 4 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 48 4 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 4 48 4 51 , srcInfoPoints = [] } "Int"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 1 8 84 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 1 8 84 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 1 5 14 , srcInfoPoints = [] } "firstnonspace") [ PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 15 5 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 16 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 16 5 19 , srcInfoPoints = [] } "ptr")) , PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 20 5 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 21 5 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 21 5 22 , srcInfoPoints = [] } "n")) , PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 23 5 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 24 5 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 5 24 5 25 , srcInfoPoints = [] } "m")) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 5 8 84 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 5 6 27 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 6 5 6 6 , SrcSpan "tests/examples/BangPatterns.hs" 6 17 6 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 7 6 13 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 7 6 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 7 6 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 7 6 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 7 6 8 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 9 6 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 9 6 11 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 9 6 11 , srcInfoPoints = [] } ">="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 12 6 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 12 6 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 12 6 13 , srcInfoPoints = [] } "m")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 19 6 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 19 6 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 19 6 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 19 6 25 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 26 6 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 26 6 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 6 26 6 27 , srcInfoPoints = [] } "n")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 5 8 84 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 7 5 7 6 , SrcSpan "tests/examples/BangPatterns.hs" 7 17 7 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 7 7 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 7 7 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 7 7 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 7 7 16 , srcInfoPoints = [] } "otherwise"))) ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 19 8 84 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 7 19 7 21 , SrcSpan "tests/examples/BangPatterns.hs" 7 22 7 22 , SrcSpan "tests/examples/BangPatterns.hs" 8 22 8 22 , SrcSpan "tests/examples/BangPatterns.hs" 9 1 9 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 22 7 44 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 7 24 7 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 22 7 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 22 7 23 , srcInfoPoints = [] } "w")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 27 7 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 27 7 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 27 7 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 27 7 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 27 7 38 , srcInfoPoints = [] } "peekElemOff"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 39 7 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 39 7 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 39 7 42 , srcInfoPoints = [] } "ptr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 43 7 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 43 7 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 7 43 7 44 , srcInfoPoints = [] } "n")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 22 8 84 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 8 22 8 24 , SrcSpan "tests/examples/BangPatterns.hs" 8 40 8 44 , SrcSpan "tests/examples/BangPatterns.hs" 8 71 8 75 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 22 8 84 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 8 22 8 24 , SrcSpan "tests/examples/BangPatterns.hs" 8 40 8 44 , SrcSpan "tests/examples/BangPatterns.hs" 8 71 8 75 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 25 8 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 25 8 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 25 8 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 25 8 37 , srcInfoPoints = [] } "isSpaceWord8"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 38 8 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 38 8 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 38 8 39 , srcInfoPoints = [] } "w")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 45 8 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 45 8 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 45 8 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 45 8 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 45 8 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 45 8 58 , srcInfoPoints = [] } "firstnonspace"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 59 8 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 59 8 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 59 8 62 , srcInfoPoints = [] } "ptr")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 63 8 68 , srcInfoPoints = [ SrcSpan "tests/examples/BangPatterns.hs" 8 63 8 64 , SrcSpan "tests/examples/BangPatterns.hs" 8 67 8 68 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 64 8 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 64 8 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 64 8 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 64 8 65 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 65 8 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 65 8 66 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 65 8 66 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 66 8 67 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 66 8 67 , srcInfoPoints = [] } 1 "1"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 69 8 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 69 8 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 69 8 70 , srcInfoPoints = [] } "m")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 76 8 84 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 76 8 82 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 76 8 82 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 76 8 82 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 83 8 84 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 83 8 84 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangPatterns.hs" 8 83 8 84 , srcInfoPoints = [] } "n"))))) ]) ]) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/BangPatterns.hs.prettyparser.golden0000644000000000000000000000000612746233113025076 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/BangPatterns.hs.prettyprinter.golden0000644000000000000000000000042112746233113025266 0ustar0000000000000000{-# LANGUAGE BangPatterns #-} module BangPatterns where firstnonspace :: Ptr Word8 -> Int -> Int -> IO Int firstnonspace !ptr !n !m | n >= m = return n | otherwise = do w <- peekElemOff ptr n if isSpaceWord8 w then firstnonspace ptr (n + 1) m else return n haskell-src-exts-1.18.2/tests/examples/BangViewPat.hs0000644000000000000000000000011512746233113020644 0ustar0000000000000000{-# LANGUAGE BangPatterns, ViewPatterns #-} someFun (id -> !arg) = undefined haskell-src-exts-1.18.2/tests/examples/BangViewPat.hs.exactprinter.golden0000644000000000000000000000000612746233113024621 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/BangViewPat.hs.parser.golden0000644000000000000000000001230612746233113023413 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/BangViewPat.hs" 1 1 1 1 , SrcSpan "tests/examples/BangViewPat.hs" 2 1 2 1 , SrcSpan "tests/examples/BangViewPat.hs" 2 1 2 1 , SrcSpan "tests/examples/BangViewPat.hs" 2 1 2 1 , SrcSpan "tests/examples/BangViewPat.hs" 3 1 3 1 , SrcSpan "tests/examples/BangViewPat.hs" 3 1 3 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 1 1 1 44 , srcInfoPoints = [ SrcSpan "tests/examples/BangViewPat.hs" 1 1 1 13 , SrcSpan "tests/examples/BangViewPat.hs" 1 26 1 27 , SrcSpan "tests/examples/BangViewPat.hs" 1 41 1 44 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 1 14 1 26 , srcInfoPoints = [] } "BangPatterns" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 1 28 1 40 , srcInfoPoints = [] } "ViewPatterns" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 1 2 33 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 1 2 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 1 2 8 , srcInfoPoints = [] } "someFun") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 9 2 21 , srcInfoPoints = [ SrcSpan "tests/examples/BangViewPat.hs" 2 9 2 10 , SrcSpan "tests/examples/BangViewPat.hs" 2 20 2 21 ] } (PViewPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 10 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/BangViewPat.hs" 2 13 2 15 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 10 2 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 10 2 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 10 2 12 , srcInfoPoints = [] } "id"))) (PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 16 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/BangViewPat.hs" 2 16 2 17 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 17 2 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 17 2 20 , srcInfoPoints = [] } "arg")))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 22 2 33 , srcInfoPoints = [ SrcSpan "tests/examples/BangViewPat.hs" 2 22 2 23 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 24 2 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 24 2 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BangViewPat.hs" 2 24 2 33 , srcInfoPoints = [] } "undefined")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/BangViewPat.hs.prettyparser.golden0000644000000000000000000000000612746233113024655 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/BangViewPat.hs.prettyprinter.golden0000644000000000000000000000011512746233113025045 0ustar0000000000000000{-# LANGUAGE BangPatterns, ViewPatterns #-} someFun (id -> !arg) = undefined haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsBad.hs0000644000000000000000000000013012746233113022025 0ustar0000000000000000-- Missing binary literals extension. Should fail. f :: Int -> () f 0b0 = () f _ = () haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsBad.hs.exactprinter.golden0000644000000000000000000000013012746233113026003 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/BinaryLiteralsBad.hs" 3 1) "arity mismatch for 'f'" haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsBad.hs.parser.golden0000644000000000000000000000013412746233113024573 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/BinaryLiteralsBad.hs" 3 1) "arity mismatch for 'f'" haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsBad.hs.prettyparser.golden0000644000000000000000000000013012746233113026037 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/BinaryLiteralsBad.hs" 3 1) "arity mismatch for 'f'" haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsBad.hs.prettyprinter.golden0000644000000000000000000000013012746233113026226 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/BinaryLiteralsBad.hs" 3 1) "arity mismatch for 'f'" haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsGood.hs0000644000000000000000000000212212746233113022232 0ustar0000000000000000{-# LANGUAGE BinaryLiterals #-} {-# LANGUAGE MagicHash #-} import GHC.Types main = do print [ I# 0b0#, I# -0b0#, I# 0b1#, I# -0b1# , I# 0b00000000000000000000000000000000000000000000000000000000000000000000000000001# , I# -0b00000000000000000000000000000000000000000000000000000000000000000000000000001# , I# -0b11001001#, I# -0b11001001# , I# -0b11111111#, I# -0b11111111# ] print [ W# 0b0##, W# 0b1##, W# 0b11001001##, W# 0b11##, W# 0b11111111## , W# 0b00000000000000000000000000000000000000000000000000000000000000000000000000001## ] print [ 0b0, 0b1, 0b10, 0b11, 0b100, 0b101, 0b110, 0b111 :: Integer , -0b0, -0b1, -0b10, -0b11, -0b100, -0b101, -0b110, -0b111 , 0b11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 , -0b11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111 ] print [ I8# -0B10000000#, I8# 0B1111111# ] haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsGood.hs.exactprinter.golden0000644000000000000000000000000612746233113026207 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsGood.hs.parser.golden0000644000000000000000000024047712746233113025015 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 1 1 24 1 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 1 1 1 1 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 2 1 2 1 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 4 1 4 1 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 4 1 4 1 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 4 1 4 1 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 6 1 6 1 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 24 1 24 1 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 24 1 24 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 1 1 1 13 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 1 14 1 28 , srcInfoPoints = [] } "BinaryLiterals" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 2 1 2 13 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 2 24 2 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 2 14 2 23 , srcInfoPoints = [] } "MagicHash" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 4 1 4 17 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 4 8 4 17 , srcInfoPoints = [] } "GHC.Types" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 6 1 23 47 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 6 1 6 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 6 1 6 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 6 6 23 47 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 6 6 6 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 6 8 23 47 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 6 8 6 10 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 5 7 5 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 5 13 5 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 5 17 5 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 5 23 5 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 24 1 24 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 5 12 12 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 5 12 12 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 5 7 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 5 7 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 5 7 10 , srcInfoPoints = [] } "print"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 11 12 12 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 11 7 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 20 7 21 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 30 7 31 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 39 7 40 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 8 11 8 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 11 9 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 11 10 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 28 10 29 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 11 11 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 28 11 29 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 12 11 12 12 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 13 7 20 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 13 7 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 13 7 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 13 7 15 , srcInfoPoints = [] } "I#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 16 7 20 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 16 7 20 , srcInfoPoints = [] } 0 "0b0")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 22 7 30 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 22 7 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 22 7 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 22 7 24 , srcInfoPoints = [] } "I#"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 25 7 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 25 7 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 25 7 26 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 26 7 30 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 26 7 30 , srcInfoPoints = [] } 0 "0b0")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 32 7 39 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 32 7 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 32 7 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 32 7 34 , srcInfoPoints = [] } "I#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 35 7 39 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 35 7 39 , srcInfoPoints = [] } 1 "0b1")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 41 7 49 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 41 7 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 41 7 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 41 7 43 , srcInfoPoints = [] } "I#"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 44 7 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 44 7 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 44 7 45 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 45 7 49 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 7 45 7 49 , srcInfoPoints = [] } 1 "0b1")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 8 13 8 96 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 8 13 8 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 8 13 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 8 13 8 15 , srcInfoPoints = [] } "I#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 8 16 8 96 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 8 16 8 96 , srcInfoPoints = [] } 1 "0b00000000000000000000000000000000000000000000000000000000000000000000000000001")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 13 9 97 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 13 9 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 13 9 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 13 9 15 , srcInfoPoints = [] } "I#"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 16 9 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 16 9 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 16 9 17 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 17 9 97 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 9 17 9 97 , srcInfoPoints = [] } 1 "0b00000000000000000000000000000000000000000000000000000000000000000000000000001")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 13 10 28 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 13 10 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 13 10 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 13 10 15 , srcInfoPoints = [] } "I#"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 16 10 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 16 10 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 16 10 17 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 17 10 28 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 17 10 28 , srcInfoPoints = [] } 201 "0b11001001")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 30 10 45 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 30 10 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 30 10 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 30 10 32 , srcInfoPoints = [] } "I#"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 33 10 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 33 10 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 33 10 34 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 34 10 45 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 10 34 10 45 , srcInfoPoints = [] } 201 "0b11001001")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 13 11 28 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 13 11 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 13 11 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 13 11 15 , srcInfoPoints = [] } "I#"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 16 11 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 16 11 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 16 11 17 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 17 11 28 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 17 11 28 , srcInfoPoints = [] } 255 "0b11111111")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 30 11 45 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 30 11 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 30 11 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 30 11 32 , srcInfoPoints = [] } "I#"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 33 11 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 33 11 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 33 11 34 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 34 11 45 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 11 34 11 45 , srcInfoPoints = [] } 255 "0b11111111")) ])) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 5 15 12 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 5 15 12 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 5 13 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 5 13 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 5 13 10 , srcInfoPoints = [] } "print"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 11 15 12 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 11 13 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 21 13 22 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 31 13 32 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 48 13 49 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 59 13 60 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 14 11 14 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 15 11 15 12 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 13 13 21 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 13 13 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 13 13 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 13 13 15 , srcInfoPoints = [] } "W#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 16 13 21 , srcInfoPoints = [] } (PrimWord SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 16 13 21 , srcInfoPoints = [] } 0 "0b0")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 23 13 31 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 23 13 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 23 13 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 23 13 25 , srcInfoPoints = [] } "W#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 26 13 31 , srcInfoPoints = [] } (PrimWord SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 26 13 31 , srcInfoPoints = [] } 1 "0b1")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 33 13 48 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 33 13 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 33 13 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 33 13 35 , srcInfoPoints = [] } "W#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 36 13 48 , srcInfoPoints = [] } (PrimWord SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 36 13 48 , srcInfoPoints = [] } 201 "0b11001001")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 50 13 59 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 50 13 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 50 13 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 50 13 52 , srcInfoPoints = [] } "W#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 53 13 59 , srcInfoPoints = [] } (PrimWord SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 53 13 59 , srcInfoPoints = [] } 3 "0b11")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 61 13 76 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 61 13 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 61 13 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 61 13 63 , srcInfoPoints = [] } "W#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 64 13 76 , srcInfoPoints = [] } (PrimWord SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 13 64 13 76 , srcInfoPoints = [] } 255 "0b11111111")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 14 13 14 97 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 14 13 14 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 14 13 14 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 14 13 14 15 , srcInfoPoints = [] } "W#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 14 16 14 97 , srcInfoPoints = [] } (PrimWord SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 14 16 14 97 , srcInfoPoints = [] } 1 "0b00000000000000000000000000000000000000000000000000000000000000000000000000001")) ])) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 5 21 12 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 5 21 12 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 5 17 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 5 17 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 5 17 10 , srcInfoPoints = [] } "print"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 11 21 12 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 11 17 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 16 17 17 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 21 17 22 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 27 17 28 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 33 17 34 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 40 17 41 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 47 17 48 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 54 17 55 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 11 18 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 17 18 18 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 23 18 24 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 30 18 31 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 37 18 38 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 45 18 46 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 53 18 54 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 61 18 62 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 19 11 19 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 20 11 20 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 21 11 21 12 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 13 17 16 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 13 17 16 , srcInfoPoints = [] } 0 "0b0") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 18 17 21 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 18 17 21 , srcInfoPoints = [] } 1 "0b1") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 23 17 27 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 23 17 27 , srcInfoPoints = [] } 2 "0b10") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 29 17 33 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 29 17 33 , srcInfoPoints = [] } 3 "0b11") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 35 17 40 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 35 17 40 , srcInfoPoints = [] } 4 "0b100") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 42 17 47 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 42 17 47 , srcInfoPoints = [] } 5 "0b101") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 49 17 54 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 49 17 54 , srcInfoPoints = [] } 6 "0b110") , ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 56 17 72 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 62 17 64 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 56 17 61 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 56 17 61 , srcInfoPoints = [] } 7 "0b111")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 65 17 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 65 17 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 17 65 17 72 , srcInfoPoints = [] } "Integer"))) , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 13 18 17 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 13 18 14 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 14 18 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 14 18 17 , srcInfoPoints = [] } 0 "0b0")) , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 19 18 23 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 19 18 20 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 20 18 23 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 20 18 23 , srcInfoPoints = [] } 1 "0b1")) , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 25 18 30 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 25 18 26 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 26 18 30 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 26 18 30 , srcInfoPoints = [] } 2 "0b10")) , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 32 18 37 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 32 18 33 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 33 18 37 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 33 18 37 , srcInfoPoints = [] } 3 "0b11")) , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 39 18 45 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 39 18 40 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 40 18 45 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 40 18 45 , srcInfoPoints = [] } 4 "0b100")) , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 47 18 53 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 47 18 48 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 48 18 53 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 48 18 53 , srcInfoPoints = [] } 5 "0b101")) , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 55 18 61 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 55 18 56 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 56 18 61 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 56 18 61 , srcInfoPoints = [] } 6 "0b110")) , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 63 18 69 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 63 18 64 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 64 18 69 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 18 64 18 69 , srcInfoPoints = [] } 7 "0b111")) , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 19 13 19 143 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 19 13 19 143 , srcInfoPoints = [] } 340282366920938463463374607431768211455 "0b11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111") , NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 20 13 20 144 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 20 13 20 14 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 20 14 20 144 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 20 14 20 144 , srcInfoPoints = [] } 340282366920938463463374607431768211455 "0b11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111")) ])) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 5 23 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 5 23 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 5 23 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 5 23 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 5 23 10 , srcInfoPoints = [] } "print"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 11 23 47 , srcInfoPoints = [ SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 11 23 12 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 29 23 30 , SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 46 23 47 ] } [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 13 23 29 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 13 23 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 13 23 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 13 23 16 , srcInfoPoints = [] } "I8#"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 17 23 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 17 23 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 17 23 18 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 18 23 29 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 18 23 29 , srcInfoPoints = [] } 128 "0B10000000")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 31 23 45 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 31 23 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 31 23 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 31 23 34 , srcInfoPoints = [] } "I8#"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 35 23 45 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BinaryLiteralsGood.hs" 23 35 23 45 , srcInfoPoints = [] } 127 "0B1111111")) ])) ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsGood.hs.prettyparser.golden0000644000000000000000000001515312746233113026254 0ustar0000000000000000Roundtrip test failed AST 1: Module () Nothing [LanguagePragma () [Ident () "BinaryLiterals"],LanguagePragma () [Ident () "MagicHash"]] [ImportDecl {importAnn = (), importModule = ModuleName () "GHC.Types", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Nothing}] [PatBind () (PVar () (Ident () "main")) (UnGuardedRhs () (Do () [Qualifier () (App () (Var () (UnQual () (Ident () "print"))) (List () [App () (Con () (UnQual () (Ident () "I#"))) (Lit () (PrimInt () 0 "0b0")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 0 "0b0")),App () (Con () (UnQual () (Ident () "I#"))) (Lit () (PrimInt () 1 "0b1")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 1 "0b1")),App () (Con () (UnQual () (Ident () "I#"))) (Lit () (PrimInt () 1 "0b00000000000000000000000000000000000000000000000000000000000000000000000000001")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 1 "0b00000000000000000000000000000000000000000000000000000000000000000000000000001")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 201 "0b11001001")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 201 "0b11001001")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 255 "0b11111111")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 255 "0b11111111"))])),Qualifier () (App () (Var () (UnQual () (Ident () "print"))) (List () [App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 0 "0b0")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 1 "0b1")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 201 "0b11001001")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 3 "0b11")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 255 "0b11111111")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 1 "0b00000000000000000000000000000000000000000000000000000000000000000000000000001"))])),Qualifier () (App () (Var () (UnQual () (Ident () "print"))) (List () [Lit () (Int () 0 "0b0"),Lit () (Int () 1 "0b1"),Lit () (Int () 2 "0b10"),Lit () (Int () 3 "0b11"),Lit () (Int () 4 "0b100"),Lit () (Int () 5 "0b101"),Lit () (Int () 6 "0b110"),ExpTypeSig () (Lit () (Int () 7 "0b111")) (TyCon () (UnQual () (Ident () "Integer"))),NegApp () (Lit () (Int () 0 "0b0")),NegApp () (Lit () (Int () 1 "0b1")),NegApp () (Lit () (Int () 2 "0b10")),NegApp () (Lit () (Int () 3 "0b11")),NegApp () (Lit () (Int () 4 "0b100")),NegApp () (Lit () (Int () 5 "0b101")),NegApp () (Lit () (Int () 6 "0b110")),NegApp () (Lit () (Int () 7 "0b111")),Lit () (Int () 340282366920938463463374607431768211455 "0b11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111"),NegApp () (Lit () (Int () 340282366920938463463374607431768211455 "0b11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111"))])),Qualifier () (App () (Var () (UnQual () (Ident () "print"))) (List () [InfixApp () (Con () (UnQual () (Ident () "I8#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 128 "0B10000000")),App () (Con () (UnQual () (Ident () "I8#"))) (Lit () (PrimInt () 127 "0B1111111"))]))])) Nothing] AST 2: Module () Nothing [LanguagePragma () [Ident () "BinaryLiterals"],LanguagePragma () [Ident () "MagicHash"]] [ImportDecl {importAnn = (), importModule = ModuleName () "GHC.Types", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Nothing}] [PatBind () (PVar () (Ident () "main")) (UnGuardedRhs () (Do () [Qualifier () (App () (Var () (UnQual () (Ident () "print"))) (List () [App () (Con () (UnQual () (Ident () "I#"))) (Lit () (PrimInt () 0 "0")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 0 "0")),App () (Con () (UnQual () (Ident () "I#"))) (Lit () (PrimInt () 1 "1")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 1 "1")),App () (Con () (UnQual () (Ident () "I#"))) (Lit () (PrimInt () 1 "1")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 1 "1")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 201 "201")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 201 "201")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 255 "255")),InfixApp () (Con () (UnQual () (Ident () "I#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 255 "255"))])),Qualifier () (App () (Var () (UnQual () (Ident () "print"))) (List () [App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 0 "0")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 1 "1")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 201 "201")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 3 "3")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 255 "255")),App () (Con () (UnQual () (Ident () "W#"))) (Lit () (PrimWord () 1 "1"))])),Qualifier () (App () (Var () (UnQual () (Ident () "print"))) (List () [Lit () (Int () 0 "0"),Lit () (Int () 1 "1"),Lit () (Int () 2 "2"),Lit () (Int () 3 "3"),Lit () (Int () 4 "4"),Lit () (Int () 5 "5"),Lit () (Int () 6 "6"),ExpTypeSig () (Lit () (Int () 7 "7")) (TyCon () (UnQual () (Ident () "Integer"))),NegApp () (Lit () (Int () 0 "0")),NegApp () (Lit () (Int () 1 "1")),NegApp () (Lit () (Int () 2 "2")),NegApp () (Lit () (Int () 3 "3")),NegApp () (Lit () (Int () 4 "4")),NegApp () (Lit () (Int () 5 "5")),NegApp () (Lit () (Int () 6 "6")),NegApp () (Lit () (Int () 7 "7")),Lit () (Int () 340282366920938463463374607431768211455 "340282366920938463463374607431768211455"),NegApp () (Lit () (Int () 340282366920938463463374607431768211455 "340282366920938463463374607431768211455"))])),Qualifier () (App () (Var () (UnQual () (Ident () "print"))) (List () [InfixApp () (Con () (UnQual () (Ident () "I8#"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (PrimInt () 128 "128")),App () (Con () (UnQual () (Ident () "I8#"))) (Lit () (PrimInt () 127 "127"))]))])) Nothing] haskell-src-exts-1.18.2/tests/examples/BinaryLiteralsGood.hs.prettyprinter.golden0000644000000000000000000000076512746233113026446 0ustar0000000000000000{-# LANGUAGE BinaryLiterals #-} {-# LANGUAGE MagicHash #-} import GHC.Types main = do print [I# 0#, I# - 0#, I# 1#, I# - 1#, I# 1#, I# - 1#, I# - 201#, I# - 201#, I# - 255#, I# - 255#] print [W# 0##, W# 1##, W# 201##, W# 3##, W# 255##, W# 1##] print [0, 1, 2, 3, 4, 5, 6, 7 :: Integer, -0, -1, -2, -3, -4, -5, -6, -7, 340282366920938463463374607431768211455, -340282366920938463463374607431768211455] print [I8# - 128#, I8# 127#] haskell-src-exts-1.18.2/tests/examples/BracketInstanceHead.hs0000644000000000000000000000005212746233113022317 0ustar0000000000000000instance (Bounded a => Bounded [a]) where haskell-src-exts-1.18.2/tests/examples/BracketInstanceHead.hs.exactprinter.golden0000644000000000000000000000000612746233113026274 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/BracketInstanceHead.hs.parser.golden0000644000000000000000000001364712746233113025077 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/BracketInstanceHead.hs" 1 1 1 1 , SrcSpan "tests/examples/BracketInstanceHead.hs" 1 1 1 1 , SrcSpan "tests/examples/BracketInstanceHead.hs" 1 1 1 1 , SrcSpan "tests/examples/BracketInstanceHead.hs" 2 1 2 1 , SrcSpan "tests/examples/BracketInstanceHead.hs" 2 1 2 1 ] } Nothing [] [] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 1 2 0 , srcInfoPoints = [ SrcSpan "tests/examples/BracketInstanceHead.hs" 1 1 1 9 , SrcSpan "tests/examples/BracketInstanceHead.hs" 1 37 1 42 , SrcSpan "tests/examples/BracketInstanceHead.hs" 2 1 2 1 , SrcSpan "tests/examples/BracketInstanceHead.hs" 2 1 2 1 , SrcSpan "tests/examples/BracketInstanceHead.hs" 2 0 2 0 ] } Nothing (IParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 10 1 36 , srcInfoPoints = [ SrcSpan "tests/examples/BracketInstanceHead.hs" 1 10 1 11 , SrcSpan "tests/examples/BracketInstanceHead.hs" 1 35 1 36 ] } (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 11 1 35 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 11 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/BracketInstanceHead.hs" 1 21 1 23 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 11 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/BracketInstanceHead.hs" 1 21 1 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 11 1 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 11 1 18 , srcInfoPoints = [] } "Bounded")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 19 1 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 19 1 20 , srcInfoPoints = [] } "a") ]))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 24 1 35 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 24 1 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 24 1 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 24 1 31 , srcInfoPoints = [] } "Bounded"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 32 1 35 , srcInfoPoints = [ SrcSpan "tests/examples/BracketInstanceHead.hs" 1 32 1 33 , SrcSpan "tests/examples/BracketInstanceHead.hs" 1 34 1 35 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 33 1 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/BracketInstanceHead.hs" 1 33 1 34 , srcInfoPoints = [] } "a")))))) (Just []) ] , [] ) haskell-src-exts-1.18.2/tests/examples/BracketInstanceHead.hs.prettyparser.golden0000644000000000000000000000000612746233113026330 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/BracketInstanceHead.hs.prettyprinter.golden0000644000000000000000000000005212746233113026520 0ustar0000000000000000instance (Bounded a => Bounded [a]) where haskell-src-exts-1.18.2/tests/examples/Bug.hs0000644000000000000000000000007612746233113017220 0ustar0000000000000000import Test.QuickCheck -- prop_susShortest = 2 > 1 ==> 1 /= 2 haskell-src-exts-1.18.2/tests/examples/Bug.hs.exactprinter.golden0000644000000000000000000000000612746233113023167 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Bug.hs.parser.golden0000644000000000000000000000241112746233113021755 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bug.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/Bug.hs" 1 1 1 1 , SrcSpan "tests/examples/Bug.hs" 1 1 1 1 , SrcSpan "tests/examples/Bug.hs" 1 1 1 1 , SrcSpan "tests/examples/Bug.hs" 3 1 3 1 , SrcSpan "tests/examples/Bug.hs" 3 1 3 1 ] } Nothing [] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bug.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/Bug.hs" 1 1 1 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bug.hs" 1 8 1 23 , srcInfoPoints = [] } "Test.QuickCheck" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [] , [ Comment False (SrcSpan "tests/examples/Bug.hs" 2 1 2 39) " prop_susShortest = 2 > 1 ==> 1 /= 2" ] ) haskell-src-exts-1.18.2/tests/examples/Bug.hs.prettyparser.golden0000644000000000000000000000000612746233113023223 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Bug.hs.prettyprinter.golden0000644000000000000000000000002712746233113023415 0ustar0000000000000000import Test.QuickCheck haskell-src-exts-1.18.2/tests/examples/Bundles.hs0000644000000000000000000000015712746233113020077 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} module Bundles(Foo(..), Baz(..,Q), Qux(F,..), Tux(Q,..,F)) where main = main haskell-src-exts-1.18.2/tests/examples/Bundles.hs.exactprinter.golden0000644000000000000000000000000612746233113024046 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Bundles.hs.parser.golden0000644000000000000000000002522212746233113022641 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 1 1 1 1 , SrcSpan "tests/examples/Bundles.hs" 2 1 2 1 , SrcSpan "tests/examples/Bundles.hs" 2 1 2 1 , SrcSpan "tests/examples/Bundles.hs" 4 1 4 1 , SrcSpan "tests/examples/Bundles.hs" 5 1 5 1 , SrcSpan "tests/examples/Bundles.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 1 2 65 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 2 1 2 7 , SrcSpan "tests/examples/Bundles.hs" 2 60 2 65 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 8 2 15 , srcInfoPoints = [] } "Bundles") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 15 2 59 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 2 15 2 16 , SrcSpan "tests/examples/Bundles.hs" 2 23 2 24 , SrcSpan "tests/examples/Bundles.hs" 2 34 2 35 , SrcSpan "tests/examples/Bundles.hs" 2 45 2 46 , SrcSpan "tests/examples/Bundles.hs" 2 58 2 59 ] } [ EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 16 2 23 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 2 19 2 20 , SrcSpan "tests/examples/Bundles.hs" 2 22 2 23 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 20 2 22 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 16 2 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 16 2 19 , srcInfoPoints = [] } "Foo")) [] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 25 2 34 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 2 28 2 29 , SrcSpan "tests/examples/Bundles.hs" 2 31 2 32 , SrcSpan "tests/examples/Bundles.hs" 2 33 2 34 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 29 2 31 , srcInfoPoints = [] } 0) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 25 2 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 25 2 28 , srcInfoPoints = [] } "Baz")) [ ConName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 32 2 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 32 2 33 , srcInfoPoints = [] } "Q") ] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 36 2 45 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 2 39 2 40 , SrcSpan "tests/examples/Bundles.hs" 2 41 2 42 , SrcSpan "tests/examples/Bundles.hs" 2 44 2 45 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 42 2 44 , srcInfoPoints = [] } 1) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 36 2 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 36 2 39 , srcInfoPoints = [] } "Qux")) [ ConName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 40 2 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 40 2 41 , srcInfoPoints = [] } "F") ] , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 47 2 58 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 2 50 2 51 , SrcSpan "tests/examples/Bundles.hs" 2 52 2 53 , SrcSpan "tests/examples/Bundles.hs" 2 55 2 56 , SrcSpan "tests/examples/Bundles.hs" 2 57 2 58 ] } (EWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 53 2 55 , srcInfoPoints = [] } 1) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 47 2 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 47 2 50 , srcInfoPoints = [] } "Tux")) [ ConName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 51 2 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 51 2 52 , srcInfoPoints = [] } "Q") , ConName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 56 2 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 2 56 2 57 , srcInfoPoints = [] } "F") ] ])))) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 1 1 1 13 , SrcSpan "tests/examples/Bundles.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 4 1 4 12 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 4 1 4 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 4 1 4 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 4 6 4 12 , srcInfoPoints = [ SrcSpan "tests/examples/Bundles.hs" 4 6 4 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 4 8 4 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 4 8 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Bundles.hs" 4 8 4 12 , srcInfoPoints = [] } "main")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/Bundles.hs.prettyparser.golden0000644000000000000000000000000612746233113024102 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Bundles.hs.prettyprinter.golden0000644000000000000000000000017212746233113024275 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} module Bundles (Foo(..), Baz(.., Q), Qux(F, ..), Tux(Q, .., F)) where main = main haskell-src-exts-1.18.2/tests/examples/ByteStringUtils.hs0000644000000000000000000004715012746233113021622 0ustar0000000000000000{-# LANGUAGE BangPatterns, ForeignFunctionInterface, CPP #-} ----------------------------------------------------------------------------- -- | -- Module : ByteStringUtils -- Copyright : (c) The University of Glasgow 2001, -- David Roundy 2003-2005 -- License : GPL (I'm happy to also license this file BSD style but don't -- want to bother distributing two license files with darcs. -- -- Maintainer : droundy@abridgegame.org -- Stability : experimental -- Portability : portable -- -- GZIp and MMap IO for ByteStrings, and miscellaneous functions for Data.ByteString -- module ByteStringUtils ( unsafeWithInternals, unpackPSfromUTF8, -- IO with mmap or gzip gzReadFilePS, mmapFilePS, gzWriteFilePS, gzWriteFilePSs, -- list utilities ifHeadThenTail, dropSpace, breakSpace, linesPS, unlinesPS, hashPS, breakFirstPS, breakLastPS, substrPS, readIntPS, is_funky, fromHex2PS, fromPS2Hex, betweenLinesPS, break_after_nth_newline, break_before_nth_newline, intercalate ) where import Prelude hiding ( catch ) import qualified Data.ByteString as B import qualified Data.ByteString.Char8 as BC import qualified Data.ByteString.Internal as BI import Data.ByteString (intercalate, uncons) import Data.ByteString.Internal (fromForeignPtr) -- #if defined (HAVE_MMAP) || ! defined (HAVE_HASKELL_ZLIB) import Control.Exception ( catch ) -- #endif import System.IO import System.IO.Unsafe ( unsafePerformIO ) import Foreign.Storable ( peekElemOff, peek ) import Foreign.Marshal.Alloc ( free ) import Foreign.Marshal.Array ( mallocArray, peekArray, advancePtr ) import Foreign.C.Types ( CInt ) import Data.Bits ( rotateL ) import Data.Char ( chr, ord, isSpace ) import Data.Word ( Word8 ) import Data.Int ( Int32 ) import Control.Monad ( when ) -- #ifndef HAVE_HASKELL_ZLIB import Foreign.Ptr ( nullPtr ) import Foreign.ForeignPtr ( ForeignPtr ) -- #endif import Foreign.Ptr ( plusPtr, Ptr ) import Foreign.ForeignPtr ( withForeignPtr ) -- #ifdef DEBUG_PS import Foreign.ForeignPtr ( addForeignPtrFinalizer ) import Foreign.Ptr ( FunPtr ) -- #endif -- #if HAVE_HASKELL_ZLIB import qualified Data.ByteString.Lazy as BL import qualified Codec.Compression.GZip as GZ -- #else import Foreign.C.String ( CString, withCString ) -- #endif -- #ifdef HAVE_MMAP import System.IO.MMap( mmapFileByteString ) import System.Mem( performGC ) import System.Posix.Files( fileSize, getSymbolicLinkStatus ) -- #endif -- ----------------------------------------------------------------------------- -- obsolete debugging code -- # ifndef HAVE_HASKELL_ZLIB debugForeignPtr :: ForeignPtr a -> String -> IO () -- #ifdef DEBUG_PS foreign import ccall unsafe "static fpstring.h debug_alloc" debug_alloc :: Ptr a -> CString -> IO () foreign import ccall unsafe "static fpstring.h & debug_free" debug_free :: FunPtr (Ptr a -> IO ()) debugForeignPtr fp n = withCString n $ \cname-> withForeignPtr fp $ \p-> do debug_alloc p cname addForeignPtrFinalizer debug_free fp -- #else debugForeignPtr _ _ = return () -- #endif -- #endif -- ----------------------------------------------------------------------------- -- unsafeWithInternals -- | Do something with the internals of a PackedString. Beware of -- altering the contents! unsafeWithInternals :: B.ByteString -> (Ptr Word8 -> Int -> IO a) -> IO a unsafeWithInternals ps f = case BI.toForeignPtr ps of (fp,s,l) -> withForeignPtr fp $ \p -> f (p `plusPtr` s) l -- | readIntPS skips any whitespace at the beginning of its argument, and -- reads an Int from the beginning of the PackedString. If there is no -- integer at the beginning of the string, it returns Nothing, otherwise it -- just returns the int read, along with a B.ByteString containing the -- remainder of its input. readIntPS :: B.ByteString -> Maybe (Int, B.ByteString) readIntPS = BC.readInt . BC.dropWhile isSpace -- ----------------------------------------------------------------------------- -- Destructor functions (taking PackedStrings apart) unpackPSfromUTF8 :: B.ByteString -> String unpackPSfromUTF8 ps = case BI.toForeignPtr ps of (_,_, 0) -> "" (x,s,l) -> unsafePerformIO $ withForeignPtr x $ \p-> do outbuf <- mallocArray l lout <- fromIntegral `fmap` utf8_to_ints outbuf (p `plusPtr` s) (fromIntegral l) when (lout < 0) $ error "Bad UTF8!" str <- (map (chr . fromIntegral)) `fmap` peekArray lout outbuf free outbuf return str foreign import ccall unsafe "static fpstring.h utf8_to_ints" utf8_to_ints :: Ptr Int -> Ptr Word8 -> CInt -> IO CInt -- ----------------------------------------------------------------------------- -- List-mimicking functions for PackedStrings {-# INLINE ifHeadThenTail #-} ifHeadThenTail :: Word8 -> B.ByteString -> Maybe B.ByteString ifHeadThenTail c s = case uncons s of Just (w, t) | w == c -> Just t _ -> Nothing ------------------------------------------------------------------------ -- A reimplementation of Data.ByteString.Char8.dropSpace, but -- specialised to darcs' need for a 4 way isspace. -- -- TODO: if it is safe to use the expanded definition of isSpaceWord8 -- provided by Data.ByteString.Char8, then all this can go. -- A locale-independent isspace(3) so patches are interpreted the same everywhere. -- ((c) == ' ' || (c) == '\t' || (c) == '\n' || (c) == '\r') isSpaceWord8 :: Word8 -> Bool isSpaceWord8 w = w == 0x20 || -- ' ' w == 0x09 || -- '\t' w == 0x0A || -- '\n' w == 0x0D -- '\r' {-# INLINE isSpaceWord8 #-} firstnonspace :: Ptr Word8 -> Int -> Int -> IO Int firstnonspace !ptr !n !m | n >= m = return n | otherwise = do w <- peekElemOff ptr n if isSpaceWord8 w then firstnonspace ptr (n+1) m else return n firstspace :: Ptr Word8 -> Int -> Int -> IO Int firstspace !ptr !n !m | n >= m = return n | otherwise = do w <- peekElemOff ptr n if (not . isSpaceWord8) w then firstspace ptr (n+1) m else return n -- | 'dropSpace' efficiently returns the 'ByteString' argument with -- white space Chars removed from the front. It is more efficient than -- calling dropWhile for removing whitespace. I.e. -- -- > dropWhile isSpace == dropSpace -- dropSpace :: B.ByteString -> B.ByteString dropSpace (BI.PS x s l) = BI.inlinePerformIO $ withForeignPtr x $ \p -> do i <- firstnonspace (p `plusPtr` s) 0 l return $! if i == l then B.empty else BI.PS x (s+i) (l-i) {-# INLINE dropSpace #-} -- | 'breakSpace' returns the pair of ByteStrings when the argument is -- broken at the first whitespace byte. I.e. -- -- > break isSpace == breakSpace -- breakSpace :: B.ByteString -> (B.ByteString,B.ByteString) breakSpace (BI.PS x s l) = BI.inlinePerformIO $ withForeignPtr x $ \p -> do i <- firstspace (p `plusPtr` s) 0 l return $! case () of {_ | i == 0 -> (B.empty, BI.PS x s l) | i == l -> (BI.PS x s l, B.empty) | otherwise -> (BI.PS x s i, BI.PS x (s+i) (l-i)) } {-# INLINE breakSpace #-} ------------------------------------------------------------------------ {-# INLINE is_funky #-} is_funky :: B.ByteString -> Bool is_funky ps = case BI.toForeignPtr ps of (x,s,l) -> unsafePerformIO $ withForeignPtr x $ \p-> (/=0) `fmap` has_funky_char (p `plusPtr` s) (fromIntegral l) foreign import ccall unsafe "fpstring.h has_funky_char" has_funky_char :: Ptr Word8 -> CInt -> IO CInt ------------------------------------------------------------------------ -- ByteString rewrites break (=='x') to breakByte 'x' -- break ((==) x) = breakChar x -- break (==x) = breakChar x -- {- {-# INLINE breakOnPS #-} breakOnPS :: Char -> B.ByteString -> (B.ByteString, B.ByteString) breakOnPS c p = case BC.elemIndex c p of Nothing -> (p, BC.empty) Just n -> (B.take n p, B.drop n p) -} {-# INLINE hashPS #-} hashPS :: B.ByteString -> Int32 hashPS ps = case BI.toForeignPtr ps of (x,s,l) -> unsafePerformIO $ withForeignPtr x $ \p-> do hash (p `plusPtr` s) l hash :: Ptr Word8 -> Int -> IO Int32 hash ptr len = f (0 :: Int32) ptr len where f h _ 0 = return h f h p n = do x <- peek p let !h' = (fromIntegral x) + (rotateL h 8) f h' (p `advancePtr` 1) (n-1) {-# INLINE substrPS #-} substrPS :: B.ByteString -> B.ByteString -> Maybe Int substrPS tok str | B.null tok = Just 0 | B.length tok > B.length str = Nothing | otherwise = do n <- BC.elemIndex (BC.head tok) str let ttok = B.tail tok reststr = B.drop (n+1) str if ttok == B.take (B.length ttok) reststr then Just n else ((n+1)+) `fmap` substrPS tok reststr ------------------------------------------------------------------------ -- TODO: replace breakFirstPS and breakLastPS with definitions based on -- ByteString's break/breakEnd {-# INLINE breakFirstPS #-} breakFirstPS :: Char -> B.ByteString -> Maybe (B.ByteString,B.ByteString) breakFirstPS c p = case BC.elemIndex c p of Nothing -> Nothing Just n -> Just (B.take n p, B.drop (n+1) p) {-# INLINE breakLastPS #-} breakLastPS :: Char -> B.ByteString -> Maybe (B.ByteString,B.ByteString) breakLastPS c p = case BC.elemIndexEnd c p of Nothing -> Nothing Just n -> Just (B.take n p, B.drop (n+1) p) -- TODO: rename {-# INLINE linesPS #-} linesPS :: B.ByteString -> [B.ByteString] linesPS ps | B.null ps = [B.empty] | otherwise = BC.split '\n' ps {- QuickCheck property: import Test.QuickCheck import qualified Data.ByteString.Char8 as BC import Data.Char instance Arbitrary BC.ByteString where arbitrary = fmap BC.pack arbitrary instance Arbitrary Char where arbitrary = chr `fmap` choose (32,127) deepCheck = check (defaultConfig { configMaxTest = 10000}) testLines = deepCheck (\x -> (linesPS x == linesPSOld x)) linesPSOld ps = case BC.elemIndex '\n' ps of Nothing -> [ps] Just n -> B.take n ps : linesPS (B.drop (n+1) ps) -} {-| This function acts exactly like the "Prelude" unlines function, or like "Data.ByteString.Char8" 'unlines', but with one important difference: it will produce a string which may not end with a newline! That is: > unlinesPS ["foo", "bar"] evaluates to \"foo\\nbar\", not \"foo\\nbar\\n\"! This point should hold true for 'linesPS' as well. TODO: rename this function. -} unlinesPS :: [B.ByteString] -> B.ByteString unlinesPS [] = BC.empty unlinesPS x = BC.init $ BC.unlines x {-# INLINE unlinesPS #-} {- QuickCheck property: testUnlines = deepCheck (\x -> (unlinesPS x == unlinesPSOld x)) unlinesPSOld ss = BC.concat $ intersperse_newlines ss where intersperse_newlines (a:b:s) = a : newline : intersperse_newlines (b:s) intersperse_newlines s = s newline = BC.pack "\n" -} -- ----------------------------------------------------------------------------- -- gzReadFilePS -- | Read an entire file, which may or may not be gzip compressed, directly -- into a 'B.ByteString'. -- #ifndef HAVE_HASKELL_ZLIB foreign import ccall unsafe "static zlib.h gzopen" c_gzopen :: CString -> CString -> IO (Ptr ()) foreign import ccall unsafe "static zlib.h gzclose" c_gzclose :: Ptr () -> IO () foreign import ccall unsafe "static zlib.h gzread" c_gzread :: Ptr () -> Ptr Word8 -> CInt -> IO CInt foreign import ccall unsafe "static zlib.h gzwrite" c_gzwrite :: Ptr () -> Ptr Word8 -> CInt -> IO CInt -- #endif gzReadFilePS :: FilePath -> IO B.ByteString gzReadFilePS f = do h <- openBinaryFile f ReadMode header <- B.hGet h 2 if header /= BC.pack "\31\139" then do hClose h mmapFilePS f else do hSeek h SeekFromEnd (-4) len <- hGetLittleEndInt h hClose h -- #ifdef HAVE_HASKELL_ZLIB -- Passing the length to GZ.decompressWith means -- that BL.toChunks only produces one chunk, which in turn -- means that B.concat won't need to copy data. -- If the length is wrong this will just affect efficiency, not correctness let decompress = GZ.decompressWith GZ.defaultDecompressParams { GZ.decompressBufferSize = len } fmap (B.concat . BL.toChunks . decompress) $ -- #ifdef HAVE_OLD_BYTESTRING -- bytestring < 0.9.1 had a bug where it did not know to close handles upon EOF -- performance would be better with a newer bytestring and lazy -- readFile below -- ratify readFile: comment fmap (BL.fromChunks . (:[])) $ B.readFile f -- ratify readFile: immediately consumed -- #else BL.readFile f -- ratify readFile: immediately consumed by the conversion to a strict bytestring -- #endif -- #else withCString f $ \fstr-> withCString "rb" $ \rb-> do gzf <- c_gzopen fstr rb when (gzf == nullPtr) $ fail $ "problem opening file "++f fp <- BI.mallocByteString len debugForeignPtr fp $ "gzReadFilePS "++f lread <- withForeignPtr fp $ \p -> c_gzread gzf p (fromIntegral len) c_gzclose gzf when (fromIntegral lread /= len) $ fail $ "problem gzreading file "++f return $ fromForeignPtr fp 0 len -- #endif hGetLittleEndInt :: Handle -> IO Int hGetLittleEndInt h = do b1 <- ord `fmap` hGetChar h b2 <- ord `fmap` hGetChar h b3 <- ord `fmap` hGetChar h b4 <- ord `fmap` hGetChar h return $ b1 + 256*b2 + 65536*b3 + 16777216*b4 gzWriteFilePS :: FilePath -> B.ByteString -> IO () gzWriteFilePS f ps = gzWriteFilePSs f [ps] gzWriteFilePSs :: FilePath -> [B.ByteString] -> IO () gzWriteFilePSs f pss = -- #ifdef HAVE_HASKELL_ZLIB BL.writeFile f $ GZ.compress $ BL.fromChunks pss -- #else withCString f $ \fstr -> withCString "wb" $ \wb -> do gzf <- c_gzopen fstr wb when (gzf == nullPtr) $ fail $ "problem gzopening file for write: "++f mapM_ (gzWriteToGzf gzf) pss `catch` \_ -> fail $ "problem gzwriting file: "++f c_gzclose gzf gzWriteToGzf :: Ptr () -> B.ByteString -> IO () gzWriteToGzf gzf ps = case BI.toForeignPtr ps of (_,_,0) -> return () -- avoid calling gzwrite with 0 length this would -- trouble on some versions of zlib, and is always -- unnecessary. (x,s,l) -> do lw <- withForeignPtr x $ \p -> c_gzwrite gzf (p `plusPtr` s) (fromIntegral l) when (fromIntegral lw /= l) $ fail $ "problem in gzWriteToGzf" -- #endif -- ----------------------------------------------------------------------------- -- mmapFilePS -- | Like readFilePS, this reads an entire file directly into a -- 'B.ByteString', but it is even more efficient. It involves directly -- mapping the file to memory. This has the advantage that the contents of -- the file never need to be copied. Also, under memory pressure the page -- may simply be discarded, wile in the case of readFilePS it would need to -- be written to swap. If you read many small files, mmapFilePS will be -- less memory-efficient than readFilePS, since each mmapFilePS takes up a -- separate page of memory. Also, you can run into bus errors if the file -- is modified. NOTE: as with 'readFilePS', the string representation in -- the file is assumed to be ISO-8859-1. mmapFilePS :: FilePath -> IO B.ByteString -- #ifdef HAVE_MMAP mmapFilePS f = do x <- mmapFileByteString f Nothing `catch` (\_ -> do size <- fileSize `fmap` getSymbolicLinkStatus f if size == 0 then return B.empty else performGC >> mmapFileByteString f Nothing) return x -- #else mmapFilePS = B.readFile -- #endif -- ------------------------------------------------------------------------- -- fromPS2Hex foreign import ccall unsafe "static fpstring.h conv_to_hex" conv_to_hex :: Ptr Word8 -> Ptr Word8 -> CInt -> IO () fromPS2Hex :: B.ByteString -> B.ByteString fromPS2Hex ps = case BI.toForeignPtr ps of (x,s,l) -> BI.unsafeCreate (2*l) $ \p -> withForeignPtr x $ \f -> conv_to_hex p (f `plusPtr` s) $ fromIntegral l -- ------------------------------------------------------------------------- -- fromHex2PS foreign import ccall unsafe "static fpstring.h conv_from_hex" conv_from_hex :: Ptr Word8 -> Ptr Word8 -> CInt -> IO () fromHex2PS :: B.ByteString -> B.ByteString fromHex2PS ps = case BI.toForeignPtr ps of (x,s,l) -> BI.unsafeCreate (l `div` 2) $ \p -> withForeignPtr x $ \f -> conv_from_hex p (f `plusPtr` s) (fromIntegral $ l `div` 2) -- ------------------------------------------------------------------------- -- betweenLinesPS -- | betweenLinesPS returns the B.ByteString between the two lines given, -- or Nothing if they do not appear. betweenLinesPS :: B.ByteString -> B.ByteString -> B.ByteString -> Maybe (B.ByteString) betweenLinesPS start end ps = case break (start ==) (linesPS ps) of (_, _:rest@(bs1:_)) -> case BI.toForeignPtr bs1 of (ps1,s1,_) -> case break (end ==) rest of (_, bs2:_) -> case BI.toForeignPtr bs2 of (_,s2,_) -> Just $ fromForeignPtr ps1 s1 (s2 - s1) _ -> Nothing _ -> Nothing -- ------------------------------------------------------------------------- -- break_after_nth_newline break_after_nth_newline :: Int -> B.ByteString -> Maybe (B.ByteString, B.ByteString) break_after_nth_newline 0 the_ps | B.null the_ps = Just (B.empty, B.empty) break_after_nth_newline n the_ps = case BI.toForeignPtr the_ps of (fp,the_s,l) -> unsafePerformIO $ withForeignPtr fp $ \p -> do let findit 0 s | s == end = return $ Just (the_ps, B.empty) findit _ s | s == end = return Nothing findit 0 s = let left_l = s - the_s in return $ Just (fromForeignPtr fp the_s left_l, fromForeignPtr fp s (l - left_l)) findit i s = do w <- peekElemOff p s if w == nl then findit (i-1) (s+1) else findit i (s+1) nl = BI.c2w '\n' end = the_s + l findit n the_s -- ------------------------------------------------------------------------- -- break_before_nth_newline break_before_nth_newline :: Int -> B.ByteString -> (B.ByteString, B.ByteString) break_before_nth_newline 0 the_ps | B.null the_ps = (B.empty, B.empty) break_before_nth_newline n the_ps = case BI.toForeignPtr the_ps of (fp,the_s,l) -> unsafePerformIO $ withForeignPtr fp $ \p -> do let findit _ s | s == end = return (the_ps, B.empty) findit i s = do w <- peekElemOff p s if w == nl then if i == 0 then let left_l = s - the_s in return (fromForeignPtr fp the_s left_l, fromForeignPtr fp s (l - left_l)) else findit (i-1) (s+1) else findit i (s+1) nl = BI.c2w '\n' end = the_s + l findit n the_s haskell-src-exts-1.18.2/tests/examples/ByteStringUtils.hs.exactprinter.golden0000644000000000000000000000000612746233113025565 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ByteStringUtils.hs.parser.golden0000644000000000000000001214371412746233113024372 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 1 1 542 1 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 1 1 1 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 18 1 18 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 18 1 18 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 49 1 49 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 50 1 50 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 51 1 51 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 52 1 52 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 53 1 53 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 54 1 54 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 57 1 57 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 59 1 59 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 60 1 60 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 62 1 62 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 63 1 63 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 64 1 64 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 65 1 65 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 67 1 67 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 68 1 68 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 69 1 69 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 70 1 70 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 71 1 71 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 74 1 74 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 75 1 75 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 77 1 77 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 78 1 78 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 81 1 81 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 82 1 82 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 86 1 86 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 87 1 87 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 89 1 89 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 93 1 93 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 94 1 94 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 95 1 95 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 102 1 102 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 104 1 104 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 106 1 106 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 108 1 108 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 113 1 113 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 122 1 122 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 123 1 123 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 133 1 133 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 134 1 134 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 139 1 139 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 140 1 140 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 153 1 153 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 159 1 159 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 160 1 160 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 161 1 161 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 174 1 174 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 175 1 175 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 180 1 180 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 182 1 182 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 183 1 183 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 188 1 188 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 189 1 189 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 200 1 200 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 201 1 201 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 204 1 204 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 211 1 211 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 212 1 212 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 219 1 219 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 223 1 223 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 224 1 224 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 225 1 225 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 230 1 230 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 248 1 248 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 249 1 249 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 250 1 250 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 256 1 256 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 257 1 257 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 263 1 263 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 264 1 264 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 265 1 265 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 279 1 279 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 280 1 280 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 281 1 281 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 285 1 285 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 286 1 286 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 287 1 287 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 292 1 292 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 293 1 293 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 294 1 294 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 323 1 323 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 324 1 324 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 325 1 325 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 326 1 326 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 342 1 342 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 344 1 344 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 346 1 346 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 348 1 348 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 352 1 352 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 353 1 353 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 394 1 394 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 395 1 395 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 402 1 402 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 403 1 403 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 405 1 405 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 406 1 406 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 417 1 417 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 418 1 418 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 442 1 442 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 444 1 444 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 453 1 453 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 459 1 459 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 462 1 462 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 463 1 463 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 471 1 471 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 474 1 474 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 475 1 475 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 486 1 486 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 488 1 488 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 501 1 501 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 503 1 503 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 504 1 504 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 523 1 523 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 524 1 524 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 526 1 526 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 542 1 542 1 , SrcSpan "tests/examples/ByteStringUtils.hs" 542 1 542 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 18 1 47 12 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 18 1 18 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 47 7 47 12 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 18 8 18 23 , srcInfoPoints = [] } "ByteStringUtils") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 18 24 47 6 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 18 24 18 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 20 28 20 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 21 25 21 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 24 21 24 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 25 19 25 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 26 22 26 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 27 23 27 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 30 23 30 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 31 18 31 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 32 19 32 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 33 16 33 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 34 18 34 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 35 15 35 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 36 21 36 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 37 20 37 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 38 17 38 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 39 18 39 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 40 17 40 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 41 19 41 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 42 19 42 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 43 23 43 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 44 32 44 33 , SrcSpan "tests/examples/ByteStringUtils.hs" 45 33 45 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 47 5 47 6 ] } [ EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 20 9 20 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 20 9 20 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 20 9 20 28 , srcInfoPoints = [] } "unsafeWithInternals")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 21 9 21 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 21 9 21 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 21 9 21 25 , srcInfoPoints = [] } "unpackPSfromUTF8")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 24 9 24 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 24 9 24 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 24 9 24 21 , srcInfoPoints = [] } "gzReadFilePS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 25 9 25 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 25 9 25 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 25 9 25 19 , srcInfoPoints = [] } "mmapFilePS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 26 9 26 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 26 9 26 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 26 9 26 22 , srcInfoPoints = [] } "gzWriteFilePS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 27 9 27 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 27 9 27 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 27 9 27 23 , srcInfoPoints = [] } "gzWriteFilePSs")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 30 9 30 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 30 9 30 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 30 9 30 23 , srcInfoPoints = [] } "ifHeadThenTail")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 31 9 31 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 31 9 31 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 31 9 31 18 , srcInfoPoints = [] } "dropSpace")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 32 9 32 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 32 9 32 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 32 9 32 19 , srcInfoPoints = [] } "breakSpace")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 33 9 33 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 33 9 33 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 33 9 33 16 , srcInfoPoints = [] } "linesPS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 34 9 34 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 34 9 34 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 34 9 34 18 , srcInfoPoints = [] } "unlinesPS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 35 9 35 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 35 9 35 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 35 9 35 15 , srcInfoPoints = [] } "hashPS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 36 9 36 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 36 9 36 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 36 9 36 21 , srcInfoPoints = [] } "breakFirstPS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 37 9 37 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 37 9 37 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 37 9 37 20 , srcInfoPoints = [] } "breakLastPS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 38 9 38 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 38 9 38 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 38 9 38 17 , srcInfoPoints = [] } "substrPS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 39 9 39 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 39 9 39 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 39 9 39 18 , srcInfoPoints = [] } "readIntPS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 40 9 40 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 40 9 40 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 40 9 40 17 , srcInfoPoints = [] } "is_funky")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 41 9 41 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 41 9 41 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 41 9 41 19 , srcInfoPoints = [] } "fromHex2PS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 42 9 42 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 42 9 42 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 42 9 42 19 , srcInfoPoints = [] } "fromPS2Hex")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 43 9 43 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 43 9 43 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 43 9 43 23 , srcInfoPoints = [] } "betweenLinesPS")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 44 9 44 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 44 9 44 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 44 9 44 32 , srcInfoPoints = [] } "break_after_nth_newline")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 45 9 45 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 45 9 45 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 45 9 45 33 , srcInfoPoints = [] } "break_before_nth_newline")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 46 9 46 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 46 9 46 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 46 9 46 20 , srcInfoPoints = [] } "intercalate")) ])))) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 1 1 1 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 1 1 1 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 1 26 1 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 1 52 1 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 1 58 1 61 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 1 14 1 26 , srcInfoPoints = [] } "BangPatterns" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 1 28 1 52 , srcInfoPoints = [] } "ForeignFunctionInterface" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 1 54 1 57 , srcInfoPoints = [] } "CPP" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 49 1 49 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 49 1 49 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 49 8 49 15 , srcInfoPoints = [] } "Prelude" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 49 16 49 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 49 16 49 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 49 23 49 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 49 31 49 32 ] } True [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 49 25 49 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 49 25 49 30 , srcInfoPoints = [] } "catch") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 50 1 50 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 50 1 50 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 50 8 50 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 50 45 50 47 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 50 18 50 33 , srcInfoPoints = [] } "Data.ByteString" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 50 48 50 49 , srcInfoPoints = [] } "B") , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 51 1 51 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 51 1 51 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 51 8 51 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 51 45 51 47 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 51 18 51 39 , srcInfoPoints = [] } "Data.ByteString.Char8" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 51 48 51 50 , srcInfoPoints = [] } "BC") , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 52 1 52 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 52 1 52 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 52 8 52 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 52 45 52 47 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 52 18 52 42 , srcInfoPoints = [] } "Data.ByteString.Internal" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 52 48 52 50 , srcInfoPoints = [] } "BI") , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 53 1 53 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 53 1 53 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 53 8 53 23 , srcInfoPoints = [] } "Data.ByteString" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 53 24 53 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 53 24 53 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 53 36 53 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 53 44 53 45 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 53 25 53 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 53 25 53 36 , srcInfoPoints = [] } "intercalate") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 53 38 53 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 53 38 53 44 , srcInfoPoints = [] } "uncons") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 54 1 54 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 54 1 54 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 54 8 54 32 , srcInfoPoints = [] } "Data.ByteString.Internal" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 54 33 54 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 54 33 54 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 54 48 54 49 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 54 34 54 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 54 34 54 48 , srcInfoPoints = [] } "fromForeignPtr") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 57 1 57 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 57 1 57 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 57 8 57 25 , srcInfoPoints = [] } "Control.Exception" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 57 33 57 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 57 33 57 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 57 41 57 42 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 57 35 57 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 57 35 57 40 , srcInfoPoints = [] } "catch") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 59 1 59 17 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 59 1 59 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 59 8 59 17 , srcInfoPoints = [] } "System.IO" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 60 1 60 52 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 60 1 60 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 60 8 60 24 , srcInfoPoints = [] } "System.IO.Unsafe" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 60 33 60 52 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 60 33 60 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 60 51 60 52 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 60 35 60 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 60 35 60 50 , srcInfoPoints = [] } "unsafePerformIO") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 62 1 62 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 62 1 62 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 62 8 62 24 , srcInfoPoints = [] } "Foreign.Storable" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 62 33 62 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 62 33 62 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 62 46 62 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 62 53 62 54 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 62 35 62 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 62 35 62 46 , srcInfoPoints = [] } "peekElemOff") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 62 48 62 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 62 48 62 52 , srcInfoPoints = [] } "peek") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 63 1 63 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 63 1 63 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 63 8 63 29 , srcInfoPoints = [] } "Foreign.Marshal.Alloc" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 63 33 63 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 63 33 63 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 63 40 63 41 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 63 35 63 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 63 35 63 39 , srcInfoPoints = [] } "free") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 1 64 71 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 64 1 64 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 8 64 29 , srcInfoPoints = [] } "Foreign.Marshal.Array" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 33 64 71 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 64 33 64 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 64 46 64 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 64 57 64 58 , SrcSpan "tests/examples/ByteStringUtils.hs" 64 70 64 71 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 35 64 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 35 64 46 , srcInfoPoints = [] } "mallocArray") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 48 64 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 48 64 57 , srcInfoPoints = [] } "peekArray") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 59 64 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 64 59 64 69 , srcInfoPoints = [] } "advancePtr") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 65 1 65 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 65 1 65 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 65 8 65 23 , srcInfoPoints = [] } "Foreign.C.Types" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 65 33 65 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 65 33 65 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 65 40 65 41 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 65 35 65 39 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 65 35 65 39 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 65 35 65 39 , srcInfoPoints = [] } "CInt") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 67 1 67 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 67 1 67 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 67 8 67 17 , srcInfoPoints = [] } "Data.Bits" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 67 33 67 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 67 33 67 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 67 43 67 44 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 67 35 67 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 67 35 67 42 , srcInfoPoints = [] } "rotateL") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 1 68 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 68 1 68 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 8 68 17 , srcInfoPoints = [] } "Data.Char" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 33 68 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 68 33 68 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 68 38 68 39 , SrcSpan "tests/examples/ByteStringUtils.hs" 68 43 68 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 68 53 68 54 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 35 68 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 35 68 38 , srcInfoPoints = [] } "chr") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 40 68 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 40 68 43 , srcInfoPoints = [] } "ord") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 45 68 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 68 45 68 52 , srcInfoPoints = [] } "isSpace") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 69 1 69 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 69 1 69 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 69 8 69 17 , srcInfoPoints = [] } "Data.Word" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 69 33 69 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 69 33 69 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 69 41 69 42 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 69 35 69 40 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 69 35 69 40 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 69 35 69 40 , srcInfoPoints = [] } "Word8") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 70 1 70 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 70 1 70 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 70 8 70 16 , srcInfoPoints = [] } "Data.Int" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 70 33 70 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 70 33 70 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 70 41 70 42 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 70 35 70 40 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 70 35 70 40 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 70 35 70 40 , srcInfoPoints = [] } "Int32") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 71 1 71 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 71 1 71 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 71 8 71 21 , srcInfoPoints = [] } "Control.Monad" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 71 33 71 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 71 33 71 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 71 40 71 41 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 71 35 71 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 71 35 71 39 , srcInfoPoints = [] } "when") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 74 1 74 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 74 1 74 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 74 8 74 19 , srcInfoPoints = [] } "Foreign.Ptr" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 74 33 74 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 74 33 74 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 74 43 74 44 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 74 35 74 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 74 35 74 42 , srcInfoPoints = [] } "nullPtr") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 75 1 75 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 75 1 75 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 75 8 75 26 , srcInfoPoints = [] } "Foreign.ForeignPtr" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 75 33 75 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 75 33 75 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 75 46 75 47 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 75 35 75 45 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 75 35 75 45 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 75 35 75 45 , srcInfoPoints = [] } "ForeignPtr") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 77 1 77 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 77 1 77 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 77 8 77 19 , srcInfoPoints = [] } "Foreign.Ptr" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 77 33 77 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 77 33 77 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 77 42 77 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 77 48 77 49 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 77 35 77 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 77 35 77 42 , srcInfoPoints = [] } "plusPtr") , IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 77 44 77 47 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 77 44 77 47 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 77 44 77 47 , srcInfoPoints = [] } "Ptr") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 78 1 78 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 78 1 78 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 78 8 78 26 , srcInfoPoints = [] } "Foreign.ForeignPtr" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 78 33 78 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 78 33 78 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 78 50 78 51 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 78 35 78 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 78 35 78 49 , srcInfoPoints = [] } "withForeignPtr") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 81 1 81 59 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 81 1 81 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 81 8 81 26 , srcInfoPoints = [] } "Foreign.ForeignPtr" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 81 33 81 59 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 81 33 81 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 81 58 81 59 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 81 35 81 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 81 35 81 57 , srcInfoPoints = [] } "addForeignPtrFinalizer") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 82 1 82 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 82 1 82 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 82 8 82 19 , srcInfoPoints = [] } "Foreign.Ptr" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 82 33 82 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 82 33 82 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 82 42 82 43 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 82 35 82 41 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 82 35 82 41 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 82 35 82 41 , srcInfoPoints = [] } "FunPtr") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 86 1 86 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 86 1 86 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 86 8 86 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 86 39 86 41 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 86 18 86 38 , srcInfoPoints = [] } "Data.ByteString.Lazy" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 86 42 86 44 , srcInfoPoints = [] } "BL") , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 87 1 87 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 87 1 87 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 87 8 87 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 87 41 87 43 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 87 18 87 40 , srcInfoPoints = [] } "Codec.Compression.GZip" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 87 44 87 46 , srcInfoPoints = [] } "GZ") , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 89 1 89 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 89 1 89 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 89 8 89 24 , srcInfoPoints = [] } "Foreign.C.String" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 89 25 89 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 89 25 89 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 89 34 89 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 89 48 89 49 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 89 27 89 34 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 89 27 89 34 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 89 27 89 34 , srcInfoPoints = [] } "CString") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 89 36 89 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 89 36 89 47 , srcInfoPoints = [] } "withCString") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 93 1 93 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 93 1 93 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 93 8 93 22 , srcInfoPoints = [] } "System.IO.MMap" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 93 22 93 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 93 22 93 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 93 43 93 44 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 93 24 93 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 93 24 93 42 , srcInfoPoints = [] } "mmapFileByteString") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 94 1 94 31 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 94 1 94 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 94 8 94 18 , srcInfoPoints = [] } "System.Mem" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 94 18 94 31 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 94 18 94 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 94 30 94 31 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 94 20 94 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 94 20 94 29 , srcInfoPoints = [] } "performGC") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 95 1 95 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 95 1 95 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 95 8 95 26 , srcInfoPoints = [] } "System.Posix.Files" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 95 26 95 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 95 26 95 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 95 36 95 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 95 60 95 61 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 95 28 95 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 95 28 95 36 , srcInfoPoints = [] } "fileSize") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 95 38 95 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 95 38 95 59 , srcInfoPoints = [] } "getSymbolicLinkStatus") ]) } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 1 102 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 102 17 102 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 1 102 16 , srcInfoPoints = [] } "debugForeignPtr" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 20 102 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 102 33 102 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 20 102 32 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 20 102 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 20 102 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 20 102 30 , srcInfoPoints = [] } "ForeignPtr"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 31 102 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 31 102 32 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 36 102 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 102 43 102 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 36 102 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 36 102 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 36 102 42 , srcInfoPoints = [] } "String"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 46 102 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 46 102 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 46 102 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 46 102 48 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 49 102 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 102 49 102 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 102 50 102 51 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 49 102 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 102 49 102 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 102 50 102 51 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 102 49 102 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 102 49 102 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 102 50 102 51 ] })))))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 104 1 105 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 104 1 104 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 104 9 104 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 104 29 104 60 , SrcSpan "tests/examples/ByteStringUtils.hs" 105 5 105 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 104 16 104 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 104 22 104 28 , srcInfoPoints = [] })) (Just "static fpstring.h debug_alloc") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 104 61 104 72 , srcInfoPoints = [] } "debug_alloc") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 8 105 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 105 14 105 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 8 105 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 8 105 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 8 105 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 8 105 11 , srcInfoPoints = [] } "Ptr"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 12 105 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 12 105 13 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 17 105 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 105 25 105 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 17 105 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 17 105 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 17 105 24 , srcInfoPoints = [] } "CString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 28 105 33 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 28 105 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 28 105 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 28 105 30 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 31 105 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 105 31 105 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 105 32 105 33 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 31 105 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 105 31 105 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 105 32 105 33 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 105 31 105 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 105 31 105 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 105 32 105 33 ] })))))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 106 1 107 31 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 106 1 106 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 106 9 106 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 106 29 106 61 , SrcSpan "tests/examples/ByteStringUtils.hs" 107 5 107 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 106 16 106 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 106 22 106 28 , srcInfoPoints = [] })) (Just "static fpstring.h & debug_free") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 106 62 106 72 , srcInfoPoints = [] } "debug_free") (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 8 107 31 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 8 107 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 8 107 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 8 107 14 , srcInfoPoints = [] } "FunPtr"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 15 107 31 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 107 15 107 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 107 30 107 31 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 16 107 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 107 22 107 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 16 107 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 16 107 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 16 107 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 16 107 19 , srcInfoPoints = [] } "Ptr"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 20 107 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 20 107 21 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 25 107 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 25 107 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 25 107 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 25 107 27 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 28 107 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 107 28 107 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 107 29 107 30 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 28 107 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 107 28 107 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 107 29 107 30 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 107 28 107 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 107 28 107 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 107 29 107 30 ] }))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 108 1 113 32 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 108 1 111 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 108 1 108 16 , srcInfoPoints = [] } "debugForeignPtr") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 108 17 108 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 108 17 108 19 , srcInfoPoints = [] } "fp") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 108 20 108 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 108 20 108 21 , srcInfoPoints = [] } "n") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 108 22 111 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 108 22 108 23 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 5 111 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 5 109 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 5 109 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 5 109 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 5 109 16 , srcInfoPoints = [] } "withCString"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 17 109 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 17 109 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 17 109 18 , srcInfoPoints = [] } "n")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 19 109 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 19 109 20 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 19 109 20 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 21 111 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 109 21 109 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 109 27 109 29 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 22 109 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 22 109 27 , srcInfoPoints = [] } "cname") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 30 111 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 30 109 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 30 109 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 30 109 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 30 109 44 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 45 109 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 45 109 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 45 109 47 , srcInfoPoints = [] } "fp")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 48 109 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 48 109 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 48 109 49 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 50 111 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 109 50 109 51 , SrcSpan "tests/examples/ByteStringUtils.hs" 109 52 109 54 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 51 109 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 109 51 109 52 , srcInfoPoints = [] } "p") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 5 111 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 110 5 110 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 110 8 110 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 111 8 111 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 113 1 113 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 8 110 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 8 110 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 8 110 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 8 110 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 8 110 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 8 110 19 , srcInfoPoints = [] } "debug_alloc"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 20 110 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 20 110 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 20 110 21 , srcInfoPoints = [] } "p")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 22 110 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 22 110 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 110 22 110 27 , srcInfoPoints = [] } "cname")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 8 111 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 8 111 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 8 111 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 8 111 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 8 111 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 8 111 30 , srcInfoPoints = [] } "addForeignPtrFinalizer"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 31 111 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 31 111 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 31 111 41 , srcInfoPoints = [] } "debug_free")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 42 111 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 42 111 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 111 42 111 44 , srcInfoPoints = [] } "fp")))) ])))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 1 113 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 1 113 16 , srcInfoPoints = [] } "debugForeignPtr") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 17 113 18 , srcInfoPoints = [] } , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 19 113 20 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 21 113 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 113 21 113 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 23 113 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 23 113 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 23 113 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 23 113 29 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 30 113 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 113 30 113 31 , SrcSpan "tests/examples/ByteStringUtils.hs" 113 31 113 32 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 30 113 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 113 30 113 31 , SrcSpan "tests/examples/ByteStringUtils.hs" 113 31 113 32 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 113 30 113 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 113 30 113 31 , SrcSpan "tests/examples/ByteStringUtils.hs" 113 31 113 32 ] }))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 1 122 74 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 122 21 122 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 1 122 20 , srcInfoPoints = [] } "unsafeWithInternals" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 24 122 74 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 122 37 122 39 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 24 122 36 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 24 122 36 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 24 122 36 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 24 122 36 , srcInfoPoints = [] } "ByteString"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 40 122 74 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 122 67 122 69 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 40 122 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 122 40 122 41 , SrcSpan "tests/examples/ByteStringUtils.hs" 122 65 122 66 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 41 122 65 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 122 51 122 53 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 41 122 50 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 41 122 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 41 122 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 41 122 44 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 45 122 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 45 122 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 45 122 50 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 54 122 65 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 122 58 122 60 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 54 122 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 54 122 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 54 122 57 , srcInfoPoints = [] } "Int"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 61 122 65 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 61 122 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 61 122 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 61 122 63 , srcInfoPoints = [] } "IO"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 64 122 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 64 122 65 , srcInfoPoints = [] } "a")))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 70 122 74 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 70 122 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 70 122 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 70 122 72 , srcInfoPoints = [] } "IO"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 73 122 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 122 73 122 74 , srcInfoPoints = [] } "a"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 123 1 125 61 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 123 1 125 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 123 1 123 20 , srcInfoPoints = [] } "unsafeWithInternals") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 123 21 123 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 123 21 123 23 , srcInfoPoints = [] } "ps") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 123 24 123 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 123 24 123 25 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 2 125 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 124 2 124 3 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 4 125 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 124 4 124 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 124 28 124 30 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 4 125 4 , SrcSpan "tests/examples/ByteStringUtils.hs" 133 1 133 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 9 124 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 9 124 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 9 124 24 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 9 124 24 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 9 124 24 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 25 124 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 25 124 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 124 25 124 27 , srcInfoPoints = [] } "ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 4 125 61 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 4 125 12 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 125 4 125 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 7 125 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 9 125 10 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 11 125 12 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 5 125 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 5 125 7 , srcInfoPoints = [] } "fp") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 8 125 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 8 125 9 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 10 125 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 10 125 11 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 13 125 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 125 13 125 15 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 16 125 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 16 125 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 16 125 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 16 125 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 16 125 30 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 31 125 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 31 125 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 31 125 33 , srcInfoPoints = [] } "fp")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 34 125 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 34 125 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 34 125 35 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 36 125 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 125 36 125 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 39 125 41 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 37 125 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 37 125 38 , srcInfoPoints = [] } "p") ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 42 125 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 42 125 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 42 125 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 42 125 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 42 125 43 , srcInfoPoints = [] } "f"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 44 125 59 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 125 44 125 45 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 58 125 59 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 45 125 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 45 125 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 45 125 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 45 125 46 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 47 125 56 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 125 47 125 48 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 48 125 55 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 55 125 56 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 47 125 56 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 125 47 125 48 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 48 125 55 , SrcSpan "tests/examples/ByteStringUtils.hs" 125 55 125 56 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 48 125 55 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 57 125 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 57 125 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 57 125 58 , srcInfoPoints = [] } "s")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 60 125 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 60 125 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 125 60 125 61 , srcInfoPoints = [] } "l"))))))) Nothing ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 1 133 55 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 133 11 133 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 1 133 10 , srcInfoPoints = [] } "readIntPS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 14 133 55 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 133 27 133 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 14 133 26 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 14 133 26 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 14 133 26 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 14 133 26 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 30 133 55 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 30 133 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 30 133 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 30 133 35 , srcInfoPoints = [] } "Maybe"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 36 133 55 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 133 36 133 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 133 40 133 41 , SrcSpan "tests/examples/ByteStringUtils.hs" 133 54 133 55 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 37 133 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 37 133 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 37 133 40 , srcInfoPoints = [] } "Int")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 42 133 54 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 42 133 54 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 42 133 54 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 133 42 133 54 , srcInfoPoints = [] } "ByteString")) ]))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 1 134 46 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 1 134 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 1 134 10 , srcInfoPoints = [] } "readIntPS")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 11 134 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 134 11 134 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 13 134 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 13 134 23 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 13 134 23 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 13 134 23 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 13 134 23 , srcInfoPoints = [] } "readInt"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 24 134 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 24 134 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 24 134 25 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 26 134 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 26 134 38 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 26 134 38 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 26 134 38 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 26 134 38 , srcInfoPoints = [] } "dropWhile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 39 134 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 39 134 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 134 39 134 46 , srcInfoPoints = [] } "isSpace")))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 1 139 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 139 18 139 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 1 139 17 , srcInfoPoints = [] } "unpackPSfromUTF8" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 21 139 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 139 34 139 36 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 21 139 33 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 21 139 33 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 21 139 33 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 21 139 33 , srcInfoPoints = [] } "ByteString"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 37 139 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 37 139 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 139 37 139 43 , srcInfoPoints = [] } "String")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 140 1 151 18 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 140 1 151 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 140 1 140 17 , srcInfoPoints = [] } "unpackPSfromUTF8") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 140 18 140 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 140 18 140 20 , srcInfoPoints = [] } "ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 140 21 151 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 140 21 140 22 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 2 151 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 141 2 141 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 141 26 141 28 , SrcSpan "tests/examples/ByteStringUtils.hs" 142 4 142 4 , SrcSpan "tests/examples/ByteStringUtils.hs" 143 4 143 4 , SrcSpan "tests/examples/ByteStringUtils.hs" 153 1 153 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 7 141 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 7 141 22 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 7 141 22 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 7 141 22 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 7 141 22 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 23 141 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 23 141 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 141 23 141 25 , srcInfoPoints = [] } "ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 4 142 18 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 4 142 12 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 142 4 142 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 142 6 142 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 142 8 142 9 , SrcSpan "tests/examples/ByteStringUtils.hs" 142 11 142 12 ] } Boxed [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 5 142 6 , srcInfoPoints = [] } , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 7 142 8 , srcInfoPoints = [] } , PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 10 142 11 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 10 142 11 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 10 142 11 , srcInfoPoints = [] } 0 "0") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 13 142 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 142 13 142 15 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 16 142 18 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 142 16 142 18 , srcInfoPoints = [] } "" ""))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 4 151 18 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 4 143 11 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 143 4 143 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 143 6 143 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 143 8 143 9 , SrcSpan "tests/examples/ByteStringUtils.hs" 143 10 143 11 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 5 143 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 5 143 6 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 7 143 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 7 143 8 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 9 143 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 9 143 10 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 143 13 151 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 143 13 143 15 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 5 151 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 5 144 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 5 144 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 5 144 20 , srcInfoPoints = [] } "unsafePerformIO"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 21 144 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 21 144 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 21 144 22 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 23 151 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 23 144 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 23 144 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 23 144 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 23 144 37 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 38 144 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 38 144 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 38 144 39 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 40 144 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 40 144 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 40 144 41 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 42 151 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 144 42 144 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 144 44 144 46 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 43 144 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 144 43 144 44 , srcInfoPoints = [] } "p") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 5 151 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 145 5 145 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 145 8 145 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 146 8 146 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 148 8 148 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 149 8 149 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 150 8 150 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 151 8 151 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 153 1 153 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 8 145 31 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 145 15 145 17 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 8 145 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 8 145 14 , srcInfoPoints = [] } "outbuf")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 18 145 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 18 145 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 18 145 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 18 145 29 , srcInfoPoints = [] } "mallocArray"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 30 145 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 30 145 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 145 30 145 31 , srcInfoPoints = [] } "l")))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 8 147 68 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 146 13 146 15 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 8 146 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 8 146 12 , srcInfoPoints = [] } "lout")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 16 147 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 16 146 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 16 146 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 16 146 28 , srcInfoPoints = [] } "fromIntegral"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 29 146 35 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 146 29 146 30 , SrcSpan "tests/examples/ByteStringUtils.hs" 146 30 146 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 146 34 146 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 29 146 35 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 146 29 146 30 , SrcSpan "tests/examples/ByteStringUtils.hs" 146 30 146 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 146 34 146 35 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 146 30 146 34 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 16 147 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 16 147 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 16 147 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 16 147 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 16 147 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 16 147 28 , srcInfoPoints = [] } "utf8_to_ints"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 29 147 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 29 147 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 29 147 35 , srcInfoPoints = [] } "outbuf")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 36 147 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 147 36 147 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 147 50 147 51 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 37 147 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 37 147 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 37 147 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 37 147 38 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 39 147 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 147 39 147 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 147 40 147 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 147 47 147 48 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 39 147 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 147 39 147 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 147 40 147 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 147 47 147 48 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 40 147 47 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 49 147 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 49 147 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 49 147 50 , srcInfoPoints = [] } "s")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 52 147 68 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 147 52 147 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 147 67 147 68 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 53 147 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 53 147 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 53 147 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 53 147 65 , srcInfoPoints = [] } "fromIntegral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 66 147 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 66 147 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 147 66 147 67 , srcInfoPoints = [] } "l"))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 8 148 43 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 8 148 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 8 148 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 8 148 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 8 148 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 8 148 12 , srcInfoPoints = [] } "when"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 13 148 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 148 13 148 14 , SrcSpan "tests/examples/ByteStringUtils.hs" 148 22 148 23 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 14 148 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 14 148 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 14 148 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 14 148 18 , srcInfoPoints = [] } "lout"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 19 148 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 19 148 20 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 19 148 20 , srcInfoPoints = [] } "<"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 21 148 22 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 21 148 22 , srcInfoPoints = [] } 0 "0"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 24 148 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 24 148 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 24 148 25 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 26 148 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 26 148 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 26 148 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 26 148 31 , srcInfoPoints = [] } "error"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 32 148 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 148 32 148 43 , srcInfoPoints = [] } "Bad UTF8!" "Bad UTF8!")))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 8 149 70 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 149 12 149 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 8 149 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 8 149 11 , srcInfoPoints = [] } "str")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 15 149 70 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 15 149 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 149 15 149 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 149 40 149 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 16 149 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 16 149 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 16 149 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 16 149 19 , srcInfoPoints = [] } "map"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 20 149 40 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 149 20 149 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 149 39 149 40 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 21 149 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 21 149 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 21 149 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 21 149 24 , srcInfoPoints = [] } "chr"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 25 149 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 25 149 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 25 149 26 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 27 149 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 27 149 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 27 149 39 , srcInfoPoints = [] } "fromIntegral"))))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 42 149 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 149 42 149 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 149 43 149 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 149 47 149 48 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 42 149 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 149 42 149 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 149 43 149 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 149 47 149 48 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 43 149 47 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 49 149 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 49 149 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 49 149 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 49 149 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 49 149 58 , srcInfoPoints = [] } "peekArray"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 59 149 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 59 149 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 59 149 63 , srcInfoPoints = [] } "lout")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 64 149 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 64 149 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 149 64 149 70 , srcInfoPoints = [] } "outbuf"))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 150 8 150 19 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 150 8 150 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 150 8 150 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 150 8 150 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 150 8 150 12 , srcInfoPoints = [] } "free"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 150 13 150 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 150 13 150 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 150 13 150 19 , srcInfoPoints = [] } "outbuf")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 151 8 151 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 151 8 151 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 151 8 151 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 151 8 151 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 151 8 151 14 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 151 15 151 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 151 15 151 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 151 15 151 18 , srcInfoPoints = [] } "str")))) ]))))) Nothing ])) Nothing ] , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 153 1 154 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 153 1 153 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 153 9 153 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 153 29 153 61 , SrcSpan "tests/examples/ByteStringUtils.hs" 154 5 154 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 153 16 153 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 153 22 153 28 , srcInfoPoints = [] })) (Just "static fpstring.h utf8_to_ints") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 153 62 153 74 , srcInfoPoints = [] } "utf8_to_ints") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 8 154 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 154 16 154 18 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 8 154 15 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 8 154 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 8 154 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 8 154 11 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 12 154 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 12 154 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 12 154 15 , srcInfoPoints = [] } "Int")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 19 154 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 154 29 154 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 19 154 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 19 154 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 19 154 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 19 154 22 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 23 154 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 23 154 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 23 154 28 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 32 154 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 154 37 154 39 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 32 154 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 32 154 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 32 154 36 , srcInfoPoints = [] } "CInt"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 40 154 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 40 154 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 40 154 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 40 154 42 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 43 154 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 43 154 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 154 43 154 47 , srcInfoPoints = [] } "CInt"))))))) , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 159 1 159 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 159 1 159 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 159 27 159 30 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 159 12 159 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 159 12 159 26 , srcInfoPoints = [] } "ifHeadThenTail")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 1 160 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 160 16 160 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 1 160 15 , srcInfoPoints = [] } "ifHeadThenTail" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 19 160 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 160 25 160 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 19 160 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 19 160 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 19 160 24 , srcInfoPoints = [] } "Word8"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 28 160 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 160 41 160 43 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 28 160 40 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 28 160 40 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 28 160 40 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 28 160 40 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 44 160 62 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 44 160 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 44 160 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 44 160 49 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 50 160 62 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 50 160 62 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 50 160 62 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 160 50 160 62 , srcInfoPoints = [] } "ByteString")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 1 163 39 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 1 163 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 1 161 15 , srcInfoPoints = [] } "ifHeadThenTail") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 16 161 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 16 161 17 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 18 161 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 18 161 19 , srcInfoPoints = [] } "s") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 20 163 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 161 20 161 21 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 22 163 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 161 22 161 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 161 36 161 38 , SrcSpan "tests/examples/ByteStringUtils.hs" 162 5 162 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 163 5 163 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 174 1 174 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 27 161 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 27 161 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 27 161 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 27 161 33 , srcInfoPoints = [] } "uncons"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 34 161 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 34 161 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 161 34 161 35 , srcInfoPoints = [] } "s")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 5 162 38 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 5 162 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 5 162 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 5 162 9 , srcInfoPoints = [] } "Just")) [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 10 162 16 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 162 10 162 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 162 12 162 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 162 15 162 16 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 11 162 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 11 162 12 , srcInfoPoints = [] } "w") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 14 162 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 14 162 15 , srcInfoPoints = [] } "t") ] ]) (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 17 162 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 162 17 162 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 162 29 162 31 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 17 162 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 162 17 162 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 162 29 162 31 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 19 162 25 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 19 162 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 19 162 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 19 162 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 19 162 20 , srcInfoPoints = [] } "w"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 21 162 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 21 162 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 21 162 23 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 24 162 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 24 162 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 24 162 25 , srcInfoPoints = [] } "c")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 32 162 38 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 32 162 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 32 162 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 32 162 36 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 37 162 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 37 162 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 162 37 162 38 , srcInfoPoints = [] } "t")))) ]) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 163 5 163 39 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 163 5 163 6 , srcInfoPoints = [] }) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 163 29 163 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 163 29 163 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 163 32 163 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 163 32 163 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 163 32 163 39 , srcInfoPoints = [] } "Nothing")))) Nothing ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 1 174 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 174 14 174 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 1 174 13 , srcInfoPoints = [] } "isSpaceWord8" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 17 174 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 174 23 174 25 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 17 174 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 17 174 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 17 174 22 , srcInfoPoints = [] } "Word8"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 26 174 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 26 174 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 174 26 174 30 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 175 1 179 14 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 175 1 179 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 175 1 175 13 , srcInfoPoints = [] } "isSpaceWord8") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 175 14 175 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 175 14 175 15 , srcInfoPoints = [] } "w") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 175 16 179 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 175 16 175 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 5 179 14 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 5 176 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 5 176 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 5 176 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 5 176 6 , srcInfoPoints = [] } "w"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 7 176 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 7 176 9 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 7 176 9 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 10 176 14 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 10 176 14 , srcInfoPoints = [] } 32 "0x20"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 15 176 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 15 176 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 176 15 176 17 , srcInfoPoints = [] } "||"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 5 179 14 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 5 177 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 5 177 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 5 177 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 5 177 6 , srcInfoPoints = [] } "w"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 7 177 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 7 177 9 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 7 177 9 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 10 177 14 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 10 177 14 , srcInfoPoints = [] } 9 "0x09"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 15 177 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 15 177 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 177 15 177 17 , srcInfoPoints = [] } "||"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 5 179 14 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 5 178 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 5 178 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 5 178 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 5 178 6 , srcInfoPoints = [] } "w"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 7 178 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 7 178 9 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 7 178 9 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 10 178 14 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 10 178 14 , srcInfoPoints = [] } 10 "0x0A"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 15 178 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 15 178 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 178 15 178 17 , srcInfoPoints = [] } "||"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 5 179 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 5 179 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 5 179 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 5 179 6 , srcInfoPoints = [] } "w"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 7 179 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 7 179 9 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 7 179 9 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 10 179 14 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 179 10 179 14 , srcInfoPoints = [] } 13 "0x0D"))))))) Nothing ] , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 180 1 180 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 180 1 180 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 180 25 180 28 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 180 12 180 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 180 12 180 24 , srcInfoPoints = [] } "isSpaceWord8")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 1 182 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 182 15 182 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 1 182 14 , srcInfoPoints = [] } "firstnonspace" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 18 182 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 182 28 182 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 18 182 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 18 182 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 18 182 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 18 182 21 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 22 182 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 22 182 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 22 182 27 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 31 182 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 182 35 182 37 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 31 182 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 31 182 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 31 182 34 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 38 182 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 182 42 182 44 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 38 182 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 38 182 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 38 182 41 , srcInfoPoints = [] } "Int"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 45 182 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 45 182 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 45 182 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 45 182 47 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 48 182 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 48 182 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 182 48 182 51 , srcInfoPoints = [] } "Int"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 1 186 84 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 1 186 84 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 1 183 14 , srcInfoPoints = [] } "firstnonspace") [ PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 15 183 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 16 183 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 16 183 19 , srcInfoPoints = [] } "ptr")) , PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 20 183 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 21 183 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 21 183 22 , srcInfoPoints = [] } "n")) , PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 23 183 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 24 183 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 183 24 183 25 , srcInfoPoints = [] } "m")) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 5 186 84 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 5 184 27 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 184 5 184 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 184 17 184 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 7 184 13 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 7 184 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 7 184 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 7 184 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 7 184 8 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 9 184 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 9 184 11 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 9 184 11 , srcInfoPoints = [] } ">="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 12 184 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 12 184 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 12 184 13 , srcInfoPoints = [] } "m")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 19 184 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 19 184 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 19 184 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 19 184 25 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 26 184 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 26 184 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 184 26 184 27 , srcInfoPoints = [] } "n")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 5 186 84 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 185 5 185 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 185 17 185 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 7 185 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 7 185 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 7 185 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 7 185 16 , srcInfoPoints = [] } "otherwise"))) ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 19 186 84 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 185 19 185 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 185 22 185 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 186 22 186 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 188 1 188 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 22 185 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 185 24 185 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 22 185 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 22 185 23 , srcInfoPoints = [] } "w")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 27 185 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 27 185 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 27 185 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 27 185 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 27 185 38 , srcInfoPoints = [] } "peekElemOff"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 39 185 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 39 185 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 39 185 42 , srcInfoPoints = [] } "ptr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 43 185 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 43 185 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 185 43 185 44 , srcInfoPoints = [] } "n")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 22 186 84 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 186 22 186 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 186 40 186 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 186 71 186 75 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 22 186 84 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 186 22 186 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 186 40 186 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 186 71 186 75 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 25 186 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 25 186 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 25 186 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 25 186 37 , srcInfoPoints = [] } "isSpaceWord8"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 38 186 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 38 186 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 38 186 39 , srcInfoPoints = [] } "w")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 45 186 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 45 186 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 45 186 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 45 186 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 45 186 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 45 186 58 , srcInfoPoints = [] } "firstnonspace"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 59 186 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 59 186 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 59 186 62 , srcInfoPoints = [] } "ptr")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 63 186 68 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 186 63 186 64 , SrcSpan "tests/examples/ByteStringUtils.hs" 186 67 186 68 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 64 186 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 64 186 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 64 186 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 64 186 65 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 65 186 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 65 186 66 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 65 186 66 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 66 186 67 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 66 186 67 , srcInfoPoints = [] } 1 "1"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 69 186 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 69 186 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 69 186 70 , srcInfoPoints = [] } "m")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 76 186 84 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 76 186 82 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 76 186 82 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 76 186 82 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 83 186 84 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 83 186 84 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 186 83 186 84 , srcInfoPoints = [] } "n"))))) ]) ]) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 1 188 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 188 12 188 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 1 188 11 , srcInfoPoints = [] } "firstspace" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 15 188 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 188 25 188 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 15 188 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 15 188 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 15 188 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 15 188 18 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 19 188 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 19 188 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 19 188 24 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 28 188 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 188 32 188 34 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 28 188 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 28 188 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 28 188 31 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 35 188 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 188 39 188 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 35 188 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 35 188 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 35 188 38 , srcInfoPoints = [] } "Int"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 42 188 48 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 42 188 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 42 188 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 42 188 44 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 45 188 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 45 188 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 188 45 188 48 , srcInfoPoints = [] } "Int"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 1 192 89 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 1 192 89 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 1 189 11 , srcInfoPoints = [] } "firstspace") [ PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 12 189 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 13 189 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 13 189 16 , srcInfoPoints = [] } "ptr")) , PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 17 189 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 18 189 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 18 189 19 , srcInfoPoints = [] } "n")) , PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 20 189 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 21 189 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 189 21 189 22 , srcInfoPoints = [] } "m")) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 5 192 89 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 5 190 27 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 190 5 190 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 190 17 190 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 7 190 13 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 7 190 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 7 190 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 7 190 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 7 190 8 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 9 190 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 9 190 11 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 9 190 11 , srcInfoPoints = [] } ">="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 12 190 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 12 190 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 12 190 13 , srcInfoPoints = [] } "m")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 19 190 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 19 190 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 19 190 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 19 190 25 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 26 190 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 26 190 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 190 26 190 27 , srcInfoPoints = [] } "n")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 5 192 89 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 191 5 191 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 191 17 191 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 7 191 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 7 191 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 7 191 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 7 191 16 , srcInfoPoints = [] } "otherwise"))) ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 19 192 89 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 191 19 191 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 191 22 191 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 192 22 192 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 200 1 200 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 22 191 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 191 24 191 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 22 191 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 22 191 23 , srcInfoPoints = [] } "w")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 27 191 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 27 191 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 27 191 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 27 191 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 27 191 38 , srcInfoPoints = [] } "peekElemOff"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 39 191 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 39 191 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 39 191 42 , srcInfoPoints = [] } "ptr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 43 191 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 43 191 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 191 43 191 44 , srcInfoPoints = [] } "n")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 22 192 89 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 192 22 192 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 192 48 192 52 , SrcSpan "tests/examples/ByteStringUtils.hs" 192 76 192 80 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 22 192 89 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 192 22 192 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 192 48 192 52 , SrcSpan "tests/examples/ByteStringUtils.hs" 192 76 192 80 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 25 192 47 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 25 192 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 192 25 192 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 192 44 192 45 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 26 192 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 26 192 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 26 192 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 26 192 29 , srcInfoPoints = [] } "not"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 30 192 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 30 192 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 30 192 31 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 32 192 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 32 192 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 32 192 44 , srcInfoPoints = [] } "isSpaceWord8"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 46 192 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 46 192 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 46 192 47 , srcInfoPoints = [] } "w")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 53 192 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 53 192 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 53 192 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 53 192 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 53 192 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 53 192 63 , srcInfoPoints = [] } "firstspace"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 64 192 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 64 192 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 64 192 67 , srcInfoPoints = [] } "ptr")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 68 192 73 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 192 68 192 69 , SrcSpan "tests/examples/ByteStringUtils.hs" 192 72 192 73 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 69 192 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 69 192 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 69 192 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 69 192 70 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 70 192 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 70 192 71 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 70 192 71 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 71 192 72 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 71 192 72 , srcInfoPoints = [] } 1 "1"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 74 192 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 74 192 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 74 192 75 , srcInfoPoints = [] } "m")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 81 192 89 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 81 192 87 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 81 192 87 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 81 192 87 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 88 192 89 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 88 192 89 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 192 88 192 89 , srcInfoPoints = [] } "n"))))) ]) ]) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 1 200 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 200 11 200 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 1 200 10 , srcInfoPoints = [] } "dropSpace" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 14 200 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 200 27 200 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 14 200 26 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 14 200 26 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 14 200 26 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 14 200 26 , srcInfoPoints = [] } "ByteString"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 30 200 42 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 30 200 42 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 30 200 42 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 200 30 200 42 , srcInfoPoints = [] } "ByteString")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 1 203 62 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 1 203 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 1 201 10 , srcInfoPoints = [] } "dropSpace") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 11 201 24 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 201 11 201 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 201 23 201 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 12 201 23 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 12 201 17 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 12 201 17 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 12 201 17 , srcInfoPoints = [] } "PS")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 18 201 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 18 201 19 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 20 201 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 20 201 21 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 22 201 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 22 201 23 , srcInfoPoints = [] } "l") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 25 203 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 201 25 201 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 27 203 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 27 201 45 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 27 201 45 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 27 201 45 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 27 201 45 , srcInfoPoints = [] } "inlinePerformIO"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 46 201 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 46 201 47 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 46 201 47 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 48 203 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 48 201 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 48 201 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 48 201 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 48 201 62 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 63 201 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 63 201 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 63 201 64 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 65 201 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 65 201 66 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 65 201 66 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 67 203 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 201 67 201 68 , SrcSpan "tests/examples/ByteStringUtils.hs" 201 70 201 72 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 68 201 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 68 201 69 , srcInfoPoints = [] } "p") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 201 73 203 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 201 73 201 75 , SrcSpan "tests/examples/ByteStringUtils.hs" 202 5 202 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 203 5 203 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 204 1 204 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 5 202 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 202 7 202 9 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 5 202 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 5 202 6 , srcInfoPoints = [] } "i")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 10 202 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 10 202 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 10 202 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 10 202 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 10 202 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 10 202 23 , srcInfoPoints = [] } "firstnonspace"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 24 202 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 202 24 202 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 202 38 202 39 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 25 202 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 25 202 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 25 202 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 25 202 26 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 27 202 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 202 27 202 28 , SrcSpan "tests/examples/ByteStringUtils.hs" 202 28 202 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 202 35 202 36 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 27 202 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 202 27 202 28 , SrcSpan "tests/examples/ByteStringUtils.hs" 202 28 202 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 202 35 202 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 28 202 35 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 37 202 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 37 202 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 37 202 38 , srcInfoPoints = [] } "s")))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 40 202 41 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 40 202 41 , srcInfoPoints = [] } 0 "0"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 42 202 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 42 202 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 202 42 202 43 , srcInfoPoints = [] } "l")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 5 203 62 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 5 203 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 5 203 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 5 203 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 5 203 11 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 12 203 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 12 203 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 12 203 14 , srcInfoPoints = [] } "$!"))) (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 15 203 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 203 15 203 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 203 25 203 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 203 38 203 42 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 18 203 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 18 203 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 18 203 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 18 203 19 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 20 203 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 20 203 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 20 203 22 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 23 203 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 23 203 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 23 203 24 , srcInfoPoints = [] } "l")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 30 203 37 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 30 203 37 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 30 203 37 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 30 203 37 , srcInfoPoints = [] } "empty"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 43 203 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 43 203 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 43 203 50 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 43 203 48 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 43 203 48 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 43 203 48 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 43 203 48 , srcInfoPoints = [] } "PS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 49 203 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 49 203 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 49 203 50 , srcInfoPoints = [] } "x")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 51 203 56 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 203 51 203 52 , SrcSpan "tests/examples/ByteStringUtils.hs" 203 55 203 56 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 52 203 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 52 203 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 52 203 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 52 203 53 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 53 203 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 53 203 54 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 53 203 54 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 54 203 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 54 203 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 54 203 55 , srcInfoPoints = [] } "i")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 57 203 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 203 57 203 58 , SrcSpan "tests/examples/ByteStringUtils.hs" 203 61 203 62 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 58 203 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 58 203 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 58 203 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 58 203 59 , srcInfoPoints = [] } "l"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 59 203 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 59 203 60 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 59 203 60 , srcInfoPoints = [] } "-"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 60 203 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 60 203 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 203 60 203 61 , srcInfoPoints = [] } "i")))))))) ]))))) Nothing ] , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 204 1 204 25 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 204 1 204 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 204 22 204 25 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 204 12 204 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 204 12 204 21 , srcInfoPoints = [] } "dropSpace")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 1 211 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 211 12 211 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 1 211 11 , srcInfoPoints = [] } "breakSpace" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 15 211 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 211 28 211 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 15 211 27 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 15 211 27 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 15 211 27 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 15 211 27 , srcInfoPoints = [] } "ByteString"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 31 211 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 211 31 211 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 211 44 211 45 , SrcSpan "tests/examples/ByteStringUtils.hs" 211 57 211 58 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 32 211 44 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 32 211 44 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 32 211 44 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 32 211 44 , srcInfoPoints = [] } "ByteString")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 45 211 57 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 45 211 57 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 45 211 57 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 211 45 211 57 , srcInfoPoints = [] } "ByteString")) ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 1 218 6 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 1 218 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 1 212 11 , srcInfoPoints = [] } "breakSpace") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 12 212 25 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 212 12 212 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 212 24 212 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 13 212 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 13 212 18 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 13 212 18 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 13 212 18 , srcInfoPoints = [] } "PS")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 19 212 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 19 212 20 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 21 212 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 21 212 22 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 23 212 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 23 212 24 , srcInfoPoints = [] } "l") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 26 218 6 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 212 26 212 27 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 28 218 6 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 28 212 46 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 28 212 46 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 28 212 46 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 28 212 46 , srcInfoPoints = [] } "inlinePerformIO"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 47 212 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 47 212 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 47 212 48 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 49 218 6 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 49 212 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 49 212 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 49 212 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 49 212 63 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 64 212 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 64 212 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 64 212 65 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 66 212 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 66 212 67 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 66 212 67 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 68 218 6 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 212 68 212 69 , SrcSpan "tests/examples/ByteStringUtils.hs" 212 71 212 73 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 69 212 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 69 212 70 , srcInfoPoints = [] } "p") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 212 74 218 6 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 212 74 212 76 , SrcSpan "tests/examples/ByteStringUtils.hs" 213 5 213 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 214 5 214 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 219 1 219 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 5 213 40 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 213 7 213 9 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 5 213 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 5 213 6 , srcInfoPoints = [] } "i")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 10 213 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 10 213 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 10 213 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 10 213 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 10 213 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 10 213 20 , srcInfoPoints = [] } "firstspace"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 21 213 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 213 21 213 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 213 35 213 36 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 22 213 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 22 213 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 22 213 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 22 213 23 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 24 213 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 213 24 213 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 213 25 213 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 213 32 213 33 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 24 213 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 213 24 213 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 213 25 213 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 213 32 213 33 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 25 213 32 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 34 213 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 34 213 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 34 213 35 , srcInfoPoints = [] } "s")))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 37 213 38 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 37 213 38 , srcInfoPoints = [] } 0 "0"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 39 213 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 39 213 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 213 39 213 40 , srcInfoPoints = [] } "l")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 5 218 6 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 5 218 6 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 5 214 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 5 214 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 5 214 11 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 12 214 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 12 214 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 12 214 14 , srcInfoPoints = [] } "$!"))) (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 15 218 6 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 214 15 214 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 214 23 214 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 214 26 214 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 218 5 218 6 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 20 214 22 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 214 20 214 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 214 21 214 22 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 20 214 22 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 214 20 214 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 214 21 214 22 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 20 214 22 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 214 20 214 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 214 21 214 22 ] }))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 27 217 58 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 214 27 214 28 , srcInfoPoints = [] }) (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 9 217 58 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 9 215 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 215 9 215 10 , SrcSpan "tests/examples/ByteStringUtils.hs" 215 21 215 23 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 11 215 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 11 215 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 11 215 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 11 215 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 11 215 12 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 13 215 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 13 215 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 13 215 15 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 16 215 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 16 215 17 , srcInfoPoints = [] } 0 "0"))) ] (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 24 215 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 215 24 215 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 215 32 215 33 , SrcSpan "tests/examples/ByteStringUtils.hs" 215 45 215 46 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 25 215 32 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 25 215 32 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 25 215 32 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 25 215 32 , srcInfoPoints = [] } "empty")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 34 215 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 34 215 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 34 215 41 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 34 215 39 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 34 215 39 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 34 215 39 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 34 215 39 , srcInfoPoints = [] } "PS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 40 215 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 40 215 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 40 215 41 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 42 215 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 42 215 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 42 215 43 , srcInfoPoints = [] } "s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 44 215 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 44 215 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 215 44 215 45 , srcInfoPoints = [] } "l"))) ]) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 9 216 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 216 9 216 10 , SrcSpan "tests/examples/ByteStringUtils.hs" 216 21 216 23 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 11 216 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 11 216 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 11 216 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 11 216 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 11 216 12 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 13 216 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 13 216 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 13 216 15 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 16 216 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 16 216 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 16 216 17 , srcInfoPoints = [] } "l")))) ] (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 24 216 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 216 24 216 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 216 36 216 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 216 45 216 46 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 25 216 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 25 216 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 25 216 32 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 25 216 30 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 25 216 30 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 25 216 30 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 25 216 30 , srcInfoPoints = [] } "PS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 31 216 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 31 216 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 31 216 32 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 33 216 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 33 216 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 33 216 34 , srcInfoPoints = [] } "s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 35 216 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 35 216 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 35 216 36 , srcInfoPoints = [] } "l"))) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 38 216 45 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 38 216 45 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 38 216 45 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 216 38 216 45 , srcInfoPoints = [] } "empty")) ]) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 9 217 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 217 9 217 10 , SrcSpan "tests/examples/ByteStringUtils.hs" 217 21 217 23 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 11 217 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 11 217 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 11 217 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 11 217 20 , srcInfoPoints = [] } "otherwise"))) ] (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 24 217 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 217 24 217 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 217 36 217 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 217 57 217 58 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 25 217 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 25 217 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 25 217 32 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 25 217 30 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 25 217 30 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 25 217 30 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 25 217 30 , srcInfoPoints = [] } "PS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 31 217 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 31 217 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 31 217 32 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 33 217 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 33 217 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 33 217 34 , srcInfoPoints = [] } "s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 35 217 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 35 217 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 35 217 36 , srcInfoPoints = [] } "i"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 38 217 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 38 217 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 38 217 45 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 38 217 43 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 38 217 43 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 38 217 43 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 38 217 43 , srcInfoPoints = [] } "PS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 44 217 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 44 217 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 44 217 45 , srcInfoPoints = [] } "x")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 46 217 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 217 46 217 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 217 50 217 51 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 47 217 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 47 217 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 47 217 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 47 217 48 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 48 217 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 48 217 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 48 217 49 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 49 217 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 49 217 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 49 217 50 , srcInfoPoints = [] } "i")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 52 217 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 217 52 217 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 217 56 217 57 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 53 217 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 53 217 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 53 217 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 53 217 54 , srcInfoPoints = [] } "l"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 54 217 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 54 217 55 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 54 217 55 , srcInfoPoints = [] } "-"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 55 217 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 55 217 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 217 55 217 56 , srcInfoPoints = [] } "i"))))) ]) ]) Nothing ])) ]))))) Nothing ] , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 219 1 219 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 219 1 219 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 219 23 219 26 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 219 12 219 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 219 12 219 22 , srcInfoPoints = [] } "breakSpace")) , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 223 1 223 24 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 223 1 223 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 223 21 223 24 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 223 12 223 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 223 12 223 20 , srcInfoPoints = [] } "is_funky")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 1 224 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 224 10 224 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 1 224 9 , srcInfoPoints = [] } "is_funky" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 13 224 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 224 26 224 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 13 224 25 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 13 224 25 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 13 224 25 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 13 224 25 , srcInfoPoints = [] } "ByteString"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 29 224 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 29 224 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 224 29 224 33 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 1 228 65 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 1 228 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 1 225 9 , srcInfoPoints = [] } "is_funky") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 10 225 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 10 225 12 , srcInfoPoints = [] } "ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 13 228 65 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 225 13 225 14 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 15 228 65 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 225 15 225 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 225 39 225 41 , SrcSpan "tests/examples/ByteStringUtils.hs" 226 4 226 4 , SrcSpan "tests/examples/ByteStringUtils.hs" 230 1 230 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 20 225 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 20 225 35 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 20 225 35 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 20 225 35 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 20 225 35 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 36 225 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 36 225 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 225 36 225 38 , srcInfoPoints = [] } "ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 4 228 65 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 4 226 11 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 226 4 226 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 226 6 226 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 226 8 226 9 , SrcSpan "tests/examples/ByteStringUtils.hs" 226 10 226 11 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 5 226 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 5 226 6 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 7 226 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 7 226 8 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 9 226 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 9 226 10 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 226 12 228 65 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 226 12 226 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 5 228 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 5 227 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 5 227 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 5 227 20 , srcInfoPoints = [] } "unsafePerformIO"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 21 227 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 21 227 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 21 227 22 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 23 228 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 23 227 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 23 227 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 23 227 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 23 227 37 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 38 227 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 38 227 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 38 227 39 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 40 227 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 40 227 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 40 227 41 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 42 228 65 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 227 42 227 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 227 44 227 46 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 43 227 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 227 43 227 44 , srcInfoPoints = [] } "p") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 5 228 65 , srcInfoPoints = [] } (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 5 228 10 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 228 5 228 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 9 228 10 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 6 228 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 6 228 8 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 6 228 8 , srcInfoPoints = [] } "/="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 8 228 9 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 8 228 9 , srcInfoPoints = [] } 0 "0"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 11 228 17 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 228 11 228 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 12 228 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 16 228 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 11 228 17 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 228 11 228 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 12 228 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 16 228 17 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 12 228 16 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 18 228 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 18 228 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 18 228 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 18 228 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 18 228 32 , srcInfoPoints = [] } "has_funky_char"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 33 228 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 228 33 228 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 47 228 48 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 34 228 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 34 228 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 34 228 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 34 228 35 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 36 228 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 228 36 228 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 37 228 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 44 228 45 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 36 228 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 228 36 228 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 37 228 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 44 228 45 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 37 228 44 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 46 228 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 46 228 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 46 228 47 , srcInfoPoints = [] } "s")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 49 228 65 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 228 49 228 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 228 64 228 65 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 50 228 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 50 228 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 50 228 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 50 228 62 , srcInfoPoints = [] } "fromIntegral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 63 228 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 63 228 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 228 63 228 64 , srcInfoPoints = [] } "l"))))))))))) Nothing ])) Nothing ] , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 230 1 231 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 230 1 230 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 230 9 230 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 230 29 230 56 , SrcSpan "tests/examples/ByteStringUtils.hs" 231 5 231 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 230 16 230 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 230 22 230 28 , srcInfoPoints = [] })) (Just "fpstring.h has_funky_char") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 230 57 230 71 , srcInfoPoints = [] } "has_funky_char") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 8 231 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 231 18 231 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 8 231 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 8 231 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 8 231 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 8 231 11 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 12 231 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 12 231 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 12 231 17 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 21 231 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 231 26 231 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 21 231 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 21 231 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 21 231 25 , srcInfoPoints = [] } "CInt"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 29 231 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 29 231 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 29 231 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 29 231 31 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 32 231 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 32 231 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 231 32 231 36 , srcInfoPoints = [] } "CInt")))))) , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 248 1 248 22 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 248 1 248 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 248 19 248 22 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 248 12 248 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 248 12 248 18 , srcInfoPoints = [] } "hashPS")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 1 249 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 249 8 249 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 1 249 7 , srcInfoPoints = [] } "hashPS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 11 249 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 249 24 249 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 11 249 23 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 11 249 23 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 11 249 23 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 11 249 23 , srcInfoPoints = [] } "ByteString"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 27 249 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 27 249 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 249 27 249 32 , srcInfoPoints = [] } "Int32")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 250 1 254 30 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 250 1 254 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 250 1 250 7 , srcInfoPoints = [] } "hashPS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 250 8 250 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 250 8 250 10 , srcInfoPoints = [] } "ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 250 11 254 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 250 11 250 12 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 4 254 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 251 4 251 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 251 28 251 30 , SrcSpan "tests/examples/ByteStringUtils.hs" 252 4 252 4 , SrcSpan "tests/examples/ByteStringUtils.hs" 256 1 256 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 9 251 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 9 251 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 9 251 24 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 9 251 24 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 9 251 24 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 25 251 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 25 251 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 251 25 251 27 , srcInfoPoints = [] } "ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 4 254 30 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 4 252 11 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 252 4 252 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 252 6 252 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 252 8 252 9 , SrcSpan "tests/examples/ByteStringUtils.hs" 252 10 252 11 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 5 252 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 5 252 6 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 7 252 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 7 252 8 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 9 252 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 9 252 10 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 252 12 254 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 252 12 252 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 5 254 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 5 253 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 5 253 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 5 253 20 , srcInfoPoints = [] } "unsafePerformIO"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 21 253 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 21 253 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 21 253 22 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 23 254 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 23 253 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 23 253 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 23 253 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 23 253 37 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 38 253 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 38 253 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 38 253 39 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 40 253 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 40 253 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 40 253 41 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 42 254 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 253 42 253 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 253 44 253 46 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 43 253 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 253 43 253 44 , srcInfoPoints = [] } "p") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 5 254 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 254 5 254 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 254 8 254 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 256 1 256 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 8 254 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 8 254 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 8 254 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 8 254 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 8 254 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 8 254 12 , srcInfoPoints = [] } "hash"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 13 254 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 254 13 254 14 , SrcSpan "tests/examples/ByteStringUtils.hs" 254 27 254 28 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 14 254 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 14 254 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 14 254 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 14 254 15 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 16 254 25 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 254 16 254 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 254 17 254 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 254 24 254 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 16 254 25 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 254 16 254 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 254 17 254 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 254 24 254 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 17 254 24 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 26 254 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 26 254 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 26 254 27 , srcInfoPoints = [] } "s")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 29 254 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 29 254 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 254 29 254 30 , srcInfoPoints = [] } "l")))) ]))))) Nothing ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 1 256 37 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 256 6 256 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 1 256 5 , srcInfoPoints = [] } "hash" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 9 256 37 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 256 19 256 21 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 9 256 18 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 9 256 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 9 256 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 9 256 12 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 13 256 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 13 256 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 13 256 18 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 22 256 37 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 256 26 256 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 22 256 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 22 256 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 22 256 25 , srcInfoPoints = [] } "Int"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 29 256 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 29 256 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 29 256 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 29 256 31 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 32 256 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 32 256 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 256 32 256 37 , srcInfoPoints = [] } "Int32")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 1 261 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 258 2 258 7 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 1 261 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 258 2 258 7 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 1 257 5 , srcInfoPoints = [] } "hash") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 6 257 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 6 257 9 , srcInfoPoints = [] } "ptr") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 10 257 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 10 257 13 , srcInfoPoints = [] } "len") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 14 257 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 257 14 257 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 16 257 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 16 257 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 16 257 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 16 257 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 16 257 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 16 257 17 , srcInfoPoints = [] } "f"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 18 257 30 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 257 18 257 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 257 29 257 30 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 19 257 29 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 257 21 257 23 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 19 257 20 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 19 257 20 , srcInfoPoints = [] } 0 "0")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 24 257 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 24 257 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 24 257 29 , srcInfoPoints = [] } "Int32")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 31 257 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 31 257 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 31 257 34 , srcInfoPoints = [] } "ptr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 35 257 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 35 257 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 257 35 257 38 , srcInfoPoints = [] } "len"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 8 261 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 258 8 258 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 259 8 259 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 263 1 263 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 8 261 50 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 8 258 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 8 258 9 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 10 258 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 10 258 11 , srcInfoPoints = [] } "h") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 12 258 13 , srcInfoPoints = [] } , PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 14 258 15 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 14 258 15 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 14 258 15 , srcInfoPoints = [] } 0 "0") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 16 258 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 258 16 258 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 18 258 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 18 258 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 18 258 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 18 258 24 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 25 258 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 25 258 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 258 25 258 26 , srcInfoPoints = [] } "h"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 8 261 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 8 259 9 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 10 259 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 10 259 11 , srcInfoPoints = [] } "h") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 12 259 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 12 259 13 , srcInfoPoints = [] } "p") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 14 259 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 14 259 15 , srcInfoPoints = [] } "n") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 16 261 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 259 16 259 17 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 18 261 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 259 18 259 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 259 21 259 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 260 21 260 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 263 1 263 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 21 259 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 259 23 259 25 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 21 259 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 21 259 22 , srcInfoPoints = [] } "x")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 26 259 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 26 259 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 26 259 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 26 259 30 , srcInfoPoints = [] } "peek"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 31 259 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 31 259 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 259 31 259 32 , srcInfoPoints = [] } "p")))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 21 260 64 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 260 21 260 24 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 25 260 64 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 260 25 260 25 , SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 25 260 64 , srcInfoPoints = [] } (PBangPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 25 260 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 260 25 260 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 26 260 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 26 260 28 , srcInfoPoints = [] } "h'"))) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 29 260 64 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 260 29 260 30 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 32 260 64 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 32 260 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 260 32 260 33 , SrcSpan "tests/examples/ByteStringUtils.hs" 260 47 260 48 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 33 260 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 33 260 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 33 260 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 33 260 45 , srcInfoPoints = [] } "fromIntegral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 46 260 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 46 260 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 46 260 47 , srcInfoPoints = [] } "x"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 49 260 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 49 260 50 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 49 260 50 , srcInfoPoints = [] } "+"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 51 260 64 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 260 51 260 52 , SrcSpan "tests/examples/ByteStringUtils.hs" 260 63 260 64 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 52 260 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 52 260 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 52 260 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 52 260 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 52 260 59 , srcInfoPoints = [] } "rotateL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 60 260 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 60 260 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 60 260 61 , srcInfoPoints = [] } "h")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 62 260 63 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 260 62 260 63 , srcInfoPoints = [] } 8 "8")))))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 21 261 22 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 23 261 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 23 261 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 23 261 25 , srcInfoPoints = [] } "h'")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 26 261 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 261 26 261 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 261 43 261 44 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 27 261 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 27 261 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 27 261 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 27 261 28 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 29 261 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 261 29 261 30 , SrcSpan "tests/examples/ByteStringUtils.hs" 261 30 261 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 261 40 261 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 29 261 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 261 29 261 30 , SrcSpan "tests/examples/ByteStringUtils.hs" 261 30 261 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 261 40 261 41 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 30 261 40 , srcInfoPoints = [] } "advancePtr"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 42 261 43 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 42 261 43 , srcInfoPoints = [] } 1 "1"))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 45 261 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 261 45 261 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 261 49 261 50 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 46 261 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 46 261 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 46 261 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 46 261 47 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 47 261 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 47 261 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 47 261 48 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 48 261 49 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 261 48 261 49 , srcInfoPoints = [] } 1 "1"))))) ])) Nothing ] ])) ] , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 263 1 263 24 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 263 1 263 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 263 21 263 24 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 263 12 263 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 263 12 263 20 , srcInfoPoints = [] } "substrPS")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 1 264 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 264 10 264 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 1 264 9 , srcInfoPoints = [] } "substrPS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 13 264 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 264 26 264 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 13 264 25 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 13 264 25 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 13 264 25 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 13 264 25 , srcInfoPoints = [] } "ByteString"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 29 264 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 264 42 264 44 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 29 264 41 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 29 264 41 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 29 264 41 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 29 264 41 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 45 264 54 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 45 264 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 45 264 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 45 264 50 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 51 264 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 51 264 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 264 51 264 54 , srcInfoPoints = [] } "Int")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 265 1 273 66 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 265 1 273 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 265 1 265 9 , srcInfoPoints = [] } "substrPS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 265 10 265 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 265 10 265 13 , srcInfoPoints = [] } "tok") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 265 14 265 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 265 14 265 17 , srcInfoPoints = [] } "str") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 5 273 66 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 5 266 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 266 5 266 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 266 18 266 19 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 7 266 17 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 7 266 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 7 266 13 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 7 266 13 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 7 266 13 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 7 266 13 , srcInfoPoints = [] } "null"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 14 266 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 14 266 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 14 266 17 , srcInfoPoints = [] } "tok")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 20 266 26 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 20 266 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 20 266 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 20 266 24 , srcInfoPoints = [] } "Just"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 25 266 26 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 266 25 266 26 , srcInfoPoints = [] } 0 "0"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 5 267 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 267 5 267 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 267 35 267 36 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 7 267 34 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 7 267 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 7 267 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 7 267 15 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 7 267 15 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 7 267 15 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 7 267 15 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 16 267 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 16 267 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 16 267 19 , srcInfoPoints = [] } "tok")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 20 267 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 20 267 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 20 267 21 , srcInfoPoints = [] } ">"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 22 267 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 22 267 30 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 22 267 30 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 22 267 30 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 22 267 30 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 31 267 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 31 267 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 31 267 34 , srcInfoPoints = [] } "str"))))) ] (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 37 267 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 37 267 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 267 37 267 44 , srcInfoPoints = [] } "Nothing"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 5 273 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 268 5 268 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 268 17 268 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 7 268 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 7 268 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 7 268 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 7 268 16 , srcInfoPoints = [] } "otherwise"))) ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 19 273 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 268 19 268 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 268 22 268 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 269 22 269 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 271 22 271 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 279 1 279 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 22 268 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 268 24 268 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 22 268 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 22 268 23 , srcInfoPoints = [] } "n")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 27 268 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 27 268 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 27 268 39 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 27 268 39 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 27 268 39 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 27 268 39 , srcInfoPoints = [] } "elemIndex"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 40 268 53 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 268 40 268 41 , SrcSpan "tests/examples/ByteStringUtils.hs" 268 52 268 53 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 41 268 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 41 268 48 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 41 268 48 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 41 268 48 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 41 268 48 , srcInfoPoints = [] } "head"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 49 268 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 49 268 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 49 268 52 , srcInfoPoints = [] } "tok")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 54 268 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 54 268 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 268 54 268 57 , srcInfoPoints = [] } "str")))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 22 270 52 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 269 22 269 25 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 26 270 52 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 269 26 269 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 270 26 270 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 271 22 271 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 26 269 43 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 26 269 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 26 269 30 , srcInfoPoints = [] } "ttok")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 31 269 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 269 31 269 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 33 269 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 33 269 39 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 33 269 39 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 33 269 39 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 33 269 39 , srcInfoPoints = [] } "tail"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 40 269 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 40 269 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 269 40 269 43 , srcInfoPoints = [] } "tok"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 26 270 52 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 26 270 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 26 270 33 , srcInfoPoints = [] } "reststr")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 34 270 52 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 270 34 270 35 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 36 270 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 36 270 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 36 270 42 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 36 270 42 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 36 270 42 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 36 270 42 , srcInfoPoints = [] } "drop"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 43 270 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 270 43 270 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 270 47 270 48 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 44 270 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 44 270 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 44 270 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 44 270 45 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 45 270 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 45 270 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 45 270 46 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 46 270 47 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 46 270 47 , srcInfoPoints = [] } 1 "1"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 49 270 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 49 270 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 270 49 270 52 , srcInfoPoints = [] } "str"))))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 22 273 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 271 22 271 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 272 25 272 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 273 25 273 29 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 22 273 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 271 22 271 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 272 25 272 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 273 25 273 29 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 25 271 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 25 271 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 25 271 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 25 271 29 , srcInfoPoints = [] } "ttok"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 30 271 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 30 271 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 30 271 32 , srcInfoPoints = [] } "=="))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 33 271 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 33 271 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 33 271 39 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 33 271 39 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 33 271 39 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 33 271 39 , srcInfoPoints = [] } "take"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 40 271 55 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 271 40 271 41 , SrcSpan "tests/examples/ByteStringUtils.hs" 271 54 271 55 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 41 271 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 41 271 49 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 41 271 49 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 41 271 49 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 41 271 49 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 50 271 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 50 271 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 50 271 54 , srcInfoPoints = [] } "ttok")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 56 271 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 56 271 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 271 56 271 63 , srcInfoPoints = [] } "reststr"))))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 272 30 272 36 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 272 30 272 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 272 30 272 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 272 30 272 34 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 272 35 272 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 272 35 272 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 272 35 272 36 , srcInfoPoints = [] } "n")))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 30 273 66 , srcInfoPoints = [] } (LeftSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 30 273 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 273 30 273 31 , SrcSpan "tests/examples/ByteStringUtils.hs" 273 37 273 38 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 31 273 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 273 31 273 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 273 35 273 36 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 32 273 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 32 273 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 32 273 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 32 273 33 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 33 273 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 33 273 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 33 273 34 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 34 273 35 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 34 273 35 , srcInfoPoints = [] } 1 "1")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 36 273 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 36 273 37 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 36 273 37 , srcInfoPoints = [] } "+")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 39 273 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 273 39 273 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 273 40 273 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 273 44 273 45 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 39 273 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 273 39 273 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 273 40 273 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 273 44 273 45 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 40 273 44 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 46 273 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 46 273 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 46 273 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 46 273 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 46 273 54 , srcInfoPoints = [] } "substrPS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 55 273 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 55 273 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 55 273 58 , srcInfoPoints = [] } "tok")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 59 273 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 59 273 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 273 59 273 66 , srcInfoPoints = [] } "reststr")))))) ]) ]) Nothing ] , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 279 1 279 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 279 1 279 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 279 25 279 28 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 279 12 279 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 279 12 279 24 , srcInfoPoints = [] } "breakFirstPS")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 1 280 74 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 280 14 280 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 1 280 13 , srcInfoPoints = [] } "breakFirstPS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 17 280 74 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 280 22 280 24 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 17 280 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 17 280 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 17 280 21 , srcInfoPoints = [] } "Char"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 25 280 74 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 280 38 280 40 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 25 280 37 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 25 280 37 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 25 280 37 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 25 280 37 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 41 280 74 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 41 280 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 41 280 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 41 280 46 , srcInfoPoints = [] } "Maybe"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 47 280 74 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 280 47 280 48 , SrcSpan "tests/examples/ByteStringUtils.hs" 280 60 280 61 , SrcSpan "tests/examples/ByteStringUtils.hs" 280 73 280 74 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 48 280 60 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 48 280 60 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 48 280 60 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 48 280 60 , srcInfoPoints = [] } "ByteString")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 61 280 73 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 61 280 73 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 61 280 73 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 280 61 280 73 , srcInfoPoints = [] } "ByteString")) ])))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 1 283 63 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 1 283 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 1 281 13 , srcInfoPoints = [] } "breakFirstPS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 14 281 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 14 281 15 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 16 281 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 16 281 17 , srcInfoPoints = [] } "p") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 18 283 63 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 281 18 281 19 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 20 283 63 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 281 20 281 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 281 42 281 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 282 20 282 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 283 20 283 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 285 1 285 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 25 281 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 25 281 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 25 281 37 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 25 281 37 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 25 281 37 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 25 281 37 , srcInfoPoints = [] } "elemIndex"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 38 281 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 38 281 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 38 281 39 , srcInfoPoints = [] } "c")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 40 281 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 40 281 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 281 40 281 41 , srcInfoPoints = [] } "p")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 282 20 282 38 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 282 20 282 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 282 20 282 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 282 20 282 27 , srcInfoPoints = [] } "Nothing")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 282 28 282 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 282 28 282 30 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 282 31 282 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 282 31 282 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 282 31 282 38 , srcInfoPoints = [] } "Nothing")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 20 283 63 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 20 283 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 20 283 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 20 283 24 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 25 283 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 25 283 26 , srcInfoPoints = [] } "n") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 27 283 63 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 283 27 283 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 30 283 63 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 30 283 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 30 283 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 30 283 34 , srcInfoPoints = [] } "Just"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 35 283 63 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 283 35 283 36 , SrcSpan "tests/examples/ByteStringUtils.hs" 283 46 283 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 283 62 283 63 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 36 283 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 36 283 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 36 283 42 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 36 283 42 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 36 283 42 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 36 283 42 , srcInfoPoints = [] } "take"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 43 283 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 43 283 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 43 283 44 , srcInfoPoints = [] } "n")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 45 283 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 45 283 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 45 283 46 , srcInfoPoints = [] } "p"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 48 283 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 48 283 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 48 283 54 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 48 283 54 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 48 283 54 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 48 283 54 , srcInfoPoints = [] } "drop"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 55 283 60 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 283 55 283 56 , SrcSpan "tests/examples/ByteStringUtils.hs" 283 59 283 60 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 56 283 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 56 283 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 56 283 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 56 283 57 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 57 283 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 57 283 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 57 283 58 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 58 283 59 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 58 283 59 , srcInfoPoints = [] } 1 "1"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 61 283 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 61 283 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 283 61 283 62 , srcInfoPoints = [] } "p"))) ]))) Nothing ])) Nothing ] , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 285 1 285 27 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 285 1 285 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 285 24 285 27 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 285 12 285 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 285 12 285 23 , srcInfoPoints = [] } "breakLastPS")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 1 286 73 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 286 13 286 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 1 286 12 , srcInfoPoints = [] } "breakLastPS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 16 286 73 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 286 21 286 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 16 286 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 16 286 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 16 286 20 , srcInfoPoints = [] } "Char"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 24 286 73 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 286 37 286 39 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 24 286 36 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 24 286 36 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 24 286 36 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 24 286 36 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 40 286 73 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 40 286 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 40 286 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 40 286 45 , srcInfoPoints = [] } "Maybe"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 46 286 73 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 286 46 286 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 286 59 286 60 , SrcSpan "tests/examples/ByteStringUtils.hs" 286 72 286 73 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 47 286 59 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 47 286 59 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 47 286 59 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 47 286 59 , srcInfoPoints = [] } "ByteString")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 60 286 72 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 60 286 72 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 60 286 72 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 286 60 286 72 , srcInfoPoints = [] } "ByteString")) ])))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 1 289 62 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 1 289 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 1 287 12 , srcInfoPoints = [] } "breakLastPS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 13 287 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 13 287 14 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 15 287 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 15 287 16 , srcInfoPoints = [] } "p") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 17 289 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 287 17 287 18 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 19 289 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 287 19 287 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 287 44 287 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 288 19 288 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 289 19 289 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 292 1 292 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 24 287 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 24 287 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 24 287 39 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 24 287 39 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 24 287 39 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 24 287 39 , srcInfoPoints = [] } "elemIndexEnd"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 40 287 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 40 287 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 40 287 41 , srcInfoPoints = [] } "c")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 42 287 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 42 287 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 287 42 287 43 , srcInfoPoints = [] } "p")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 288 19 288 37 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 288 19 288 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 288 19 288 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 288 19 288 26 , srcInfoPoints = [] } "Nothing")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 288 27 288 37 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 288 27 288 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 288 30 288 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 288 30 288 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 288 30 288 37 , srcInfoPoints = [] } "Nothing")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 19 289 62 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 19 289 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 19 289 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 19 289 23 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 24 289 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 24 289 25 , srcInfoPoints = [] } "n") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 26 289 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 289 26 289 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 29 289 62 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 29 289 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 29 289 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 29 289 33 , srcInfoPoints = [] } "Just"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 34 289 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 289 34 289 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 289 45 289 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 289 61 289 62 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 35 289 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 35 289 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 35 289 41 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 35 289 41 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 35 289 41 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 35 289 41 , srcInfoPoints = [] } "take"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 42 289 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 42 289 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 42 289 43 , srcInfoPoints = [] } "n")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 44 289 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 44 289 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 44 289 45 , srcInfoPoints = [] } "p"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 47 289 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 47 289 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 47 289 53 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 47 289 53 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 47 289 53 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 47 289 53 , srcInfoPoints = [] } "drop"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 54 289 59 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 289 54 289 55 , SrcSpan "tests/examples/ByteStringUtils.hs" 289 58 289 59 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 55 289 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 55 289 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 55 289 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 55 289 56 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 56 289 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 56 289 57 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 56 289 57 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 57 289 58 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 57 289 58 , srcInfoPoints = [] } 1 "1"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 60 289 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 60 289 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 289 60 289 61 , srcInfoPoints = [] } "p"))) ]))) Nothing ])) Nothing ] , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 292 1 292 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 292 1 292 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 292 20 292 23 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 292 12 292 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 292 12 292 19 , srcInfoPoints = [] } "linesPS")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 1 293 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 293 9 293 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 1 293 8 , srcInfoPoints = [] } "linesPS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 12 293 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 293 25 293 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 12 293 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 12 293 24 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 12 293 24 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 12 293 24 , srcInfoPoints = [] } "ByteString"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 28 293 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 293 28 293 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 293 41 293 42 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 29 293 41 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 29 293 41 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 29 293 41 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 293 29 293 41 , srcInfoPoints = [] } "ByteString"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 294 1 296 36 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 294 1 296 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 294 1 294 8 , srcInfoPoints = [] } "linesPS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 294 9 294 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 294 9 294 11 , srcInfoPoints = [] } "ps") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 6 296 36 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 6 295 29 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 295 6 295 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 295 18 295 19 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 8 295 17 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 8 295 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 8 295 14 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 8 295 14 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 8 295 14 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 8 295 14 , srcInfoPoints = [] } "null"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 15 295 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 15 295 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 15 295 17 , srcInfoPoints = [] } "ps")))) ] (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 20 295 29 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 295 20 295 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 295 28 295 29 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 21 295 28 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 21 295 28 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 21 295 28 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 295 21 295 28 , srcInfoPoints = [] } "empty")) ]) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 6 296 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 296 6 296 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 296 18 296 19 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 8 296 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 8 296 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 8 296 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 8 296 17 , srcInfoPoints = [] } "otherwise"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 20 296 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 20 296 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 20 296 28 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 20 296 28 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 20 296 28 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 20 296 28 , srcInfoPoints = [] } "split"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 29 296 33 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 29 296 33 , srcInfoPoints = [] } '\n' "\\n"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 34 296 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 34 296 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 296 34 296 36 , srcInfoPoints = [] } "ps")))) ]) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 1 323 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 323 11 323 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 1 323 10 , srcInfoPoints = [] } "unlinesPS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 14 323 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 323 29 323 31 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 14 323 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 323 14 323 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 323 27 323 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 15 323 27 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 15 323 27 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 15 323 27 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 15 323 27 , srcInfoPoints = [] } "ByteString")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 32 323 44 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 32 323 44 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 32 323 44 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 323 32 323 44 , srcInfoPoints = [] } "ByteString")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 1 325 38 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 1 324 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 1 324 10 , srcInfoPoints = [] } "unlinesPS") [ PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 11 324 13 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 324 11 324 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 324 12 324 13 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 14 324 24 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 324 14 324 15 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 16 324 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 16 324 24 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 16 324 24 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 324 16 324 24 , srcInfoPoints = [] } "empty")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 1 325 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 1 325 10 , srcInfoPoints = [] } "unlinesPS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 11 325 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 11 325 12 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 14 325 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 325 14 325 15 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 16 325 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 16 325 23 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 16 325 23 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 16 325 23 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 16 325 23 , srcInfoPoints = [] } "init"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 24 325 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 24 325 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 24 325 25 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 26 325 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 26 325 36 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 26 325 36 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 26 325 36 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 26 325 36 , srcInfoPoints = [] } "unlines"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 37 325 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 37 325 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 325 37 325 38 , srcInfoPoints = [] } "x")))))) Nothing ] , InlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 326 1 326 25 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 326 1 326 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 326 22 326 25 ] } True Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 326 12 326 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 326 12 326 21 , srcInfoPoints = [] } "unlinesPS")) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 342 1 343 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 342 1 342 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 342 9 342 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 342 29 342 51 , SrcSpan "tests/examples/ByteStringUtils.hs" 343 5 343 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 342 16 342 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 342 22 342 28 , srcInfoPoints = [] })) (Just "static zlib.h gzopen") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 342 52 342 60 , srcInfoPoints = [] } "c_gzopen") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 8 343 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 343 16 343 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 8 343 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 8 343 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 8 343 15 , srcInfoPoints = [] } "CString"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 19 343 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 343 27 343 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 19 343 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 19 343 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 19 343 26 , srcInfoPoints = [] } "CString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 30 343 41 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 30 343 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 30 343 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 30 343 32 , srcInfoPoints = [] } "IO"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 33 343 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 343 33 343 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 343 40 343 41 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 34 343 40 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 34 343 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 34 343 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 34 343 37 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 38 343 40 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 343 38 343 39 , SrcSpan "tests/examples/ByteStringUtils.hs" 343 39 343 40 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 38 343 40 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 343 38 343 39 , SrcSpan "tests/examples/ByteStringUtils.hs" 343 39 343 40 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 343 38 343 40 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 343 38 343 39 , SrcSpan "tests/examples/ByteStringUtils.hs" 343 39 343 40 ] })))))))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 344 1 345 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 344 1 344 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 344 9 344 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 344 29 344 52 , SrcSpan "tests/examples/ByteStringUtils.hs" 345 5 345 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 344 16 344 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 344 22 344 28 , srcInfoPoints = [] })) (Just "static zlib.h gzclose") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 344 53 344 62 , srcInfoPoints = [] } "c_gzclose") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 8 345 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 345 15 345 17 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 8 345 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 8 345 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 8 345 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 8 345 11 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 12 345 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 345 12 345 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 345 13 345 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 12 345 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 345 12 345 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 345 13 345 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 12 345 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 345 12 345 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 345 13 345 14 ] })))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 18 345 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 18 345 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 18 345 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 18 345 20 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 21 345 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 345 21 345 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 345 22 345 23 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 21 345 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 345 21 345 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 345 22 345 23 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 345 21 345 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 345 21 345 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 345 22 345 23 ] }))))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 346 1 347 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 346 1 346 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 346 9 346 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 346 29 346 51 , SrcSpan "tests/examples/ByteStringUtils.hs" 347 5 347 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 346 16 346 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 346 22 346 28 , srcInfoPoints = [] })) (Just "static zlib.h gzread") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 346 52 346 60 , srcInfoPoints = [] } "c_gzread") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 8 347 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 347 15 347 17 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 8 347 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 8 347 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 8 347 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 8 347 11 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 12 347 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 347 12 347 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 347 13 347 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 12 347 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 347 12 347 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 347 13 347 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 12 347 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 347 12 347 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 347 13 347 14 ] })))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 18 347 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 347 28 347 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 18 347 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 18 347 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 18 347 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 18 347 21 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 22 347 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 22 347 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 22 347 27 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 31 347 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 347 36 347 38 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 31 347 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 31 347 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 31 347 35 , srcInfoPoints = [] } "CInt"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 39 347 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 39 347 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 39 347 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 39 347 41 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 42 347 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 42 347 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 347 42 347 46 , srcInfoPoints = [] } "CInt"))))))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 348 1 349 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 348 1 348 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 348 9 348 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 348 29 348 52 , SrcSpan "tests/examples/ByteStringUtils.hs" 349 5 349 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 348 16 348 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 348 22 348 28 , srcInfoPoints = [] })) (Just "static zlib.h gzwrite") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 348 53 348 62 , srcInfoPoints = [] } "c_gzwrite") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 8 349 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 349 15 349 17 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 8 349 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 8 349 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 8 349 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 8 349 11 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 12 349 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 349 12 349 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 349 13 349 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 12 349 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 349 12 349 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 349 13 349 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 12 349 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 349 12 349 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 349 13 349 14 ] })))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 18 349 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 349 28 349 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 18 349 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 18 349 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 18 349 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 18 349 21 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 22 349 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 22 349 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 22 349 27 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 31 349 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 349 36 349 38 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 31 349 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 31 349 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 31 349 35 , srcInfoPoints = [] } "CInt"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 39 349 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 39 349 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 39 349 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 39 349 41 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 42 349 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 42 349 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 349 42 349 46 , srcInfoPoints = [] } "CInt"))))))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 1 352 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 352 14 352 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 1 352 13 , srcInfoPoints = [] } "gzReadFilePS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 17 352 44 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 352 26 352 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 17 352 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 17 352 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 17 352 25 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 29 352 44 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 29 352 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 29 352 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 29 352 31 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 32 352 44 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 32 352 44 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 32 352 44 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 352 32 352 44 , srcInfoPoints = [] } "ByteString"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 353 1 391 50 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 353 1 391 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 353 1 353 13 , srcInfoPoints = [] } "gzReadFilePS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 353 14 353 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 353 14 353 15 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 353 16 391 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 353 16 353 17 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 353 18 391 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 353 18 353 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 354 5 354 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 355 5 355 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 356 5 356 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 394 1 394 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 5 354 35 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 354 7 354 9 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 5 354 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 5 354 6 , srcInfoPoints = [] } "h")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 10 354 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 10 354 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 10 354 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 10 354 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 10 354 24 , srcInfoPoints = [] } "openBinaryFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 25 354 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 25 354 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 25 354 26 , srcInfoPoints = [] } "f")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 27 354 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 27 354 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 354 27 354 35 , srcInfoPoints = [] } "ReadMode")))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 5 355 25 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 355 12 355 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 5 355 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 5 355 11 , srcInfoPoints = [] } "header")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 15 355 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 15 355 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 15 355 21 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 15 355 21 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 15 355 21 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 15 355 21 , srcInfoPoints = [] } "hGet"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 22 355 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 22 355 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 22 355 23 , srcInfoPoints = [] } "h")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 24 355 25 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 355 24 355 25 , srcInfoPoints = [] } 2 "2"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 5 391 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 356 5 356 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 357 8 357 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 359 8 359 12 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 5 391 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 356 5 356 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 357 8 357 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 359 8 359 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 8 356 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 8 356 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 8 356 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 8 356 14 , srcInfoPoints = [] } "header"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 15 356 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 15 356 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 15 356 17 , srcInfoPoints = [] } "/="))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 18 356 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 18 356 25 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 18 356 25 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 18 356 25 , srcInfoPoints = [] } "BC") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 18 356 25 , srcInfoPoints = [] } "pack"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 26 356 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 356 26 356 35 , srcInfoPoints = [] } "\US\139" "\\31\\139")))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 13 358 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 357 13 357 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 357 16 357 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 358 16 358 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 359 8 359 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 16 357 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 16 357 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 16 357 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 16 357 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 16 357 22 , srcInfoPoints = [] } "hClose"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 23 357 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 23 357 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 357 23 357 24 , srcInfoPoints = [] } "h")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 358 16 358 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 358 16 358 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 358 16 358 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 358 16 358 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 358 16 358 26 , srcInfoPoints = [] } "mmapFilePS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 358 27 358 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 358 27 358 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 358 27 358 28 , srcInfoPoints = [] } "f")))) ]) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 13 391 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 359 13 359 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 359 16 359 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 360 16 360 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 361 16 361 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 367 16 367 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 370 16 370 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 381 16 381 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 394 1 394 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 16 359 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 16 359 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 16 359 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 16 359 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 16 359 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 16 359 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 16 359 21 , srcInfoPoints = [] } "hSeek"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 22 359 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 22 359 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 22 359 23 , srcInfoPoints = [] } "h")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 24 359 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 24 359 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 24 359 35 , srcInfoPoints = [] } "SeekFromEnd")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 36 359 40 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 359 36 359 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 359 39 359 40 ] } (NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 37 359 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 359 37 359 38 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 38 359 39 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 359 38 359 39 , srcInfoPoints = [] } 4 "4"))))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 16 360 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 360 20 360 22 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 16 360 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 16 360 19 , srcInfoPoints = [] } "len")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 23 360 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 23 360 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 23 360 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 23 360 39 , srcInfoPoints = [] } "hGetLittleEndInt"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 40 360 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 40 360 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 360 40 360 41 , srcInfoPoints = [] } "h")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 361 16 361 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 361 16 361 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 361 16 361 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 361 16 361 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 361 16 361 22 , srcInfoPoints = [] } "hClose"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 361 23 361 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 361 23 361 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 361 23 361 24 , srcInfoPoints = [] } "h")))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 16 369 34 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 367 16 367 19 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 20 369 34 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 367 20 367 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 370 16 370 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 20 369 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 20 367 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 20 367 30 , srcInfoPoints = [] } "decompress")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 31 369 34 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 367 31 367 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 33 369 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 33 367 50 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 33 367 50 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 33 367 50 , srcInfoPoints = [] } "GZ") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 33 367 50 , srcInfoPoints = [] } "decompressWith"))) (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 51 369 34 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 367 78 367 79 , SrcSpan "tests/examples/ByteStringUtils.hs" 369 33 369 34 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 51 367 77 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 51 367 77 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 51 367 77 , srcInfoPoints = [] } "GZ") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 367 51 367 77 , srcInfoPoints = [] } "defaultDecompressParams"))) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 368 35 368 64 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 368 59 368 60 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 368 35 368 58 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 368 35 368 58 , srcInfoPoints = [] } "GZ") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 368 35 368 58 , srcInfoPoints = [] } "decompressBufferSize")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 368 61 368 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 368 61 368 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 368 61 368 64 , srcInfoPoints = [] } "len"))) ]))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 16 378 38 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 16 378 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 16 370 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 16 370 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 16 370 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 16 370 20 , srcInfoPoints = [] } "fmap"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 21 370 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 370 21 370 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 370 57 370 58 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 22 370 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 22 370 30 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 22 370 30 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 22 370 30 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 22 370 30 , srcInfoPoints = [] } "concat"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 31 370 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 31 370 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 31 370 32 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 33 370 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 33 370 44 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 33 370 44 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 33 370 44 , srcInfoPoints = [] } "BL") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 33 370 44 , srcInfoPoints = [] } "toChunks"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 45 370 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 45 370 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 45 370 46 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 47 370 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 47 370 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 47 370 57 , srcInfoPoints = [] } "decompress"))))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 59 370 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 59 370 60 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 370 59 370 60 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 25 378 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 25 375 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 25 375 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 25 375 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 25 375 29 , srcInfoPoints = [] } "fmap"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 30 375 53 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 375 30 375 31 , SrcSpan "tests/examples/ByteStringUtils.hs" 375 52 375 53 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 31 375 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 31 375 44 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 31 375 44 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 31 375 44 , srcInfoPoints = [] } "BL") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 31 375 44 , srcInfoPoints = [] } "fromChunks"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 45 375 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 45 375 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 45 375 46 , srcInfoPoints = [] } "."))) (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 47 375 52 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 375 47 375 48 , SrcSpan "tests/examples/ByteStringUtils.hs" 375 51 375 52 ] } (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 48 375 49 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 48 375 49 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 48 375 49 , srcInfoPoints = [] }))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 49 375 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 375 49 375 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 375 50 375 51 ] } []))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 54 375 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 54 375 55 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 375 54 375 55 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 25 378 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 25 378 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 25 376 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 25 376 35 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 25 376 35 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 25 376 35 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 25 376 35 , srcInfoPoints = [] } "readFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 36 376 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 36 376 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 376 36 376 37 , srcInfoPoints = [] } "f")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 378 25 378 36 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 378 25 378 36 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 378 25 378 36 , srcInfoPoints = [] } "BL") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 378 25 378 36 , srcInfoPoints = [] } "readFile")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 378 37 378 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 378 37 378 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 378 37 378 38 , srcInfoPoints = [] } "f")))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 16 391 50 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 16 391 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 16 381 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 16 381 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 16 381 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 16 381 27 , srcInfoPoints = [] } "withCString"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 28 381 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 28 381 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 28 381 29 , srcInfoPoints = [] } "f")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 30 381 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 30 381 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 30 381 31 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 32 391 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 381 32 381 33 , SrcSpan "tests/examples/ByteStringUtils.hs" 381 37 381 39 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 33 381 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 33 381 37 , srcInfoPoints = [] } "fstr") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 40 391 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 40 381 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 40 381 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 40 381 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 40 381 51 , srcInfoPoints = [] } "withCString"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 52 381 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 52 381 56 , srcInfoPoints = [] } "rb" "rb"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 57 381 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 57 381 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 57 381 58 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 59 391 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 381 59 381 60 , SrcSpan "tests/examples/ByteStringUtils.hs" 381 62 381 64 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 60 381 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 60 381 62 , srcInfoPoints = [] } "rb") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 381 65 391 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 381 65 381 67 , SrcSpan "tests/examples/ByteStringUtils.hs" 382 18 382 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 383 18 383 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 384 18 384 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 385 18 385 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 386 18 386 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 388 18 388 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 389 18 389 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 391 18 391 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 394 1 394 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 18 382 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 382 22 382 24 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 18 382 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 18 382 21 , srcInfoPoints = [] } "gzf")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 25 382 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 25 382 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 25 382 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 25 382 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 25 382 33 , srcInfoPoints = [] } "c_gzopen"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 34 382 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 34 382 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 34 382 38 , srcInfoPoints = [] } "fstr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 39 382 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 39 382 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 382 39 382 41 , srcInfoPoints = [] } "rb")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 18 383 75 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 18 383 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 18 383 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 18 383 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 18 383 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 18 383 22 , srcInfoPoints = [] } "when"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 23 383 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 383 23 383 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 383 38 383 39 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 24 383 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 24 383 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 24 383 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 24 383 27 , srcInfoPoints = [] } "gzf"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 28 383 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 28 383 30 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 28 383 30 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 31 383 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 31 383 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 31 383 38 , srcInfoPoints = [] } "nullPtr")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 40 383 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 40 383 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 40 383 41 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 42 383 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 42 383 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 42 383 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 42 383 46 , srcInfoPoints = [] } "fail"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 47 383 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 47 383 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 47 383 48 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 49 383 75 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 49 383 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 49 383 72 , srcInfoPoints = [] } "problem opening file " "problem opening file ")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 72 383 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 72 383 74 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 72 383 74 , srcInfoPoints = [] } "++"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 74 383 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 74 383 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 383 74 383 75 , srcInfoPoints = [] } "f")))))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 18 384 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 384 21 384 23 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 18 384 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 18 384 20 , srcInfoPoints = [] } "fp")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 24 384 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 24 384 43 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 24 384 43 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 24 384 43 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 24 384 43 , srcInfoPoints = [] } "mallocByteString"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 44 384 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 44 384 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 384 44 384 47 , srcInfoPoints = [] } "len")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 18 385 57 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 18 385 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 18 385 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 18 385 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 18 385 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 18 385 33 , srcInfoPoints = [] } "debugForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 34 385 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 34 385 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 34 385 36 , srcInfoPoints = [] } "fp")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 37 385 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 37 385 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 37 385 38 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 39 385 57 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 39 385 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 39 385 54 , srcInfoPoints = [] } "gzReadFilePS " "gzReadFilePS ")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 54 385 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 54 385 56 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 54 385 56 , srcInfoPoints = [] } "++"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 56 385 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 56 385 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 385 56 385 57 , srcInfoPoints = [] } "f"))))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 18 387 60 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 386 24 386 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 18 386 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 18 386 23 , srcInfoPoints = [] } "lread")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 27 387 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 27 386 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 27 386 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 27 386 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 27 386 41 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 42 386 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 42 386 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 42 386 44 , srcInfoPoints = [] } "fp")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 45 386 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 45 386 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 45 386 46 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 47 387 60 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 386 47 386 48 , SrcSpan "tests/examples/ByteStringUtils.hs" 386 50 386 52 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 48 386 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 386 48 386 49 , srcInfoPoints = [] } "p") ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 27 387 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 27 387 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 27 387 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 27 387 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 27 387 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 27 387 35 , srcInfoPoints = [] } "c_gzread"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 36 387 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 36 387 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 36 387 39 , srcInfoPoints = [] } "gzf")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 40 387 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 40 387 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 40 387 41 , srcInfoPoints = [] } "p")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 42 387 60 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 387 42 387 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 387 59 387 60 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 43 387 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 43 387 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 43 387 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 43 387 55 , srcInfoPoints = [] } "fromIntegral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 56 387 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 56 387 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 387 56 387 59 , srcInfoPoints = [] } "len")))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 388 18 388 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 388 18 388 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 388 18 388 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 388 18 388 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 388 18 388 27 , srcInfoPoints = [] } "c_gzclose"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 388 28 388 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 388 28 388 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 388 28 388 31 , srcInfoPoints = [] } "gzf")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 18 390 58 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 18 390 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 18 389 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 18 389 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 18 389 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 18 389 22 , srcInfoPoints = [] } "when"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 23 389 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 389 23 389 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 389 49 389 50 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 24 389 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 24 389 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 24 389 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 24 389 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 24 389 36 , srcInfoPoints = [] } "fromIntegral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 37 389 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 37 389 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 37 389 42 , srcInfoPoints = [] } "lread")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 43 389 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 43 389 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 43 389 45 , srcInfoPoints = [] } "/="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 46 389 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 46 389 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 46 389 49 , srcInfoPoints = [] } "len")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 51 389 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 51 389 52 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 389 51 389 52 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 23 390 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 23 390 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 23 390 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 23 390 27 , srcInfoPoints = [] } "fail"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 28 390 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 28 390 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 28 390 29 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 30 390 58 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 30 390 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 30 390 55 , srcInfoPoints = [] } "problem gzreading file " "problem gzreading file ")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 55 390 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 55 390 57 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 55 390 57 , srcInfoPoints = [] } "++"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 57 390 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 57 390 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 390 57 390 58 , srcInfoPoints = [] } "f")))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 18 391 50 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 18 391 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 18 391 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 18 391 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 18 391 24 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 25 391 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 25 391 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 25 391 26 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 27 391 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 27 391 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 27 391 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 27 391 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 27 391 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 27 391 41 , srcInfoPoints = [] } "fromForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 42 391 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 42 391 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 42 391 44 , srcInfoPoints = [] } "fp")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 45 391 46 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 45 391 46 , srcInfoPoints = [] } 0 "0"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 47 391 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 47 391 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 391 47 391 50 , srcInfoPoints = [] } "len"))))) ]))))) ])) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 1 394 37 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 394 18 394 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 1 394 17 , srcInfoPoints = [] } "hGetLittleEndInt" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 21 394 37 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 394 28 394 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 21 394 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 21 394 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 21 394 27 , srcInfoPoints = [] } "Handle"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 31 394 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 31 394 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 31 394 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 31 394 33 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 34 394 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 34 394 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 394 34 394 37 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 395 1 400 50 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 395 1 400 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 395 1 395 17 , srcInfoPoints = [] } "hGetLittleEndInt") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 395 18 395 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 395 18 395 19 , srcInfoPoints = [] } "h") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 395 20 400 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 395 20 395 21 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 395 22 400 50 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 395 22 395 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 396 5 396 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 397 5 397 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 398 5 398 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 399 5 399 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 400 5 400 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 402 1 402 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 5 396 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 396 8 396 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 5 396 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 5 396 7 , srcInfoPoints = [] } "b1")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 11 396 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 11 396 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 11 396 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 11 396 14 , srcInfoPoints = [] } "ord"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 15 396 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 396 15 396 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 396 16 396 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 396 20 396 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 15 396 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 396 15 396 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 396 16 396 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 396 20 396 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 16 396 20 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 22 396 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 22 396 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 22 396 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 22 396 30 , srcInfoPoints = [] } "hGetChar"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 31 396 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 31 396 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 396 31 396 32 , srcInfoPoints = [] } "h"))))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 5 397 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 397 8 397 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 5 397 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 5 397 7 , srcInfoPoints = [] } "b2")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 11 397 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 11 397 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 11 397 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 11 397 14 , srcInfoPoints = [] } "ord"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 15 397 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 397 15 397 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 397 16 397 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 397 20 397 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 15 397 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 397 15 397 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 397 16 397 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 397 20 397 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 16 397 20 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 22 397 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 22 397 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 22 397 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 22 397 30 , srcInfoPoints = [] } "hGetChar"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 31 397 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 31 397 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 397 31 397 32 , srcInfoPoints = [] } "h"))))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 5 398 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 398 8 398 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 5 398 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 5 398 7 , srcInfoPoints = [] } "b3")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 11 398 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 11 398 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 11 398 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 11 398 14 , srcInfoPoints = [] } "ord"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 15 398 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 398 15 398 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 398 16 398 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 398 20 398 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 15 398 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 398 15 398 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 398 16 398 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 398 20 398 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 16 398 20 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 22 398 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 22 398 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 22 398 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 22 398 30 , srcInfoPoints = [] } "hGetChar"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 31 398 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 31 398 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 398 31 398 32 , srcInfoPoints = [] } "h"))))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 5 399 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 399 8 399 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 5 399 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 5 399 7 , srcInfoPoints = [] } "b4")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 11 399 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 11 399 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 11 399 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 11 399 14 , srcInfoPoints = [] } "ord"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 15 399 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 399 15 399 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 399 16 399 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 399 20 399 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 15 399 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 399 15 399 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 399 16 399 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 399 20 399 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 16 399 20 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 22 399 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 22 399 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 22 399 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 22 399 30 , srcInfoPoints = [] } "hGetChar"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 31 399 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 31 399 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 399 31 399 32 , srcInfoPoints = [] } "h"))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 5 400 50 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 5 400 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 5 400 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 5 400 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 5 400 11 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 12 400 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 12 400 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 12 400 13 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 14 400 50 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 14 400 36 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 14 400 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 14 400 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 14 400 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 14 400 16 , srcInfoPoints = [] } "b1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 17 400 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 17 400 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 17 400 18 , srcInfoPoints = [] } "+"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 19 400 25 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 19 400 22 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 19 400 22 , srcInfoPoints = [] } 256 "256")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 22 400 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 22 400 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 22 400 23 , srcInfoPoints = [] } "*"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 23 400 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 23 400 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 23 400 25 , srcInfoPoints = [] } "b2"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 26 400 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 26 400 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 26 400 27 , srcInfoPoints = [] } "+"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 28 400 36 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 28 400 33 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 28 400 33 , srcInfoPoints = [] } 65536 "65536")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 33 400 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 33 400 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 33 400 34 , srcInfoPoints = [] } "*"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 34 400 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 34 400 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 34 400 36 , srcInfoPoints = [] } "b3"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 37 400 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 37 400 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 37 400 38 , srcInfoPoints = [] } "+"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 39 400 50 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 39 400 47 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 39 400 47 , srcInfoPoints = [] } 16777216 "16777216")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 47 400 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 47 400 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 47 400 48 , srcInfoPoints = [] } "*"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 48 400 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 48 400 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 400 48 400 50 , srcInfoPoints = [] } "b4")))))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 1 402 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 402 15 402 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 1 402 14 , srcInfoPoints = [] } "gzWriteFilePS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 18 402 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 402 27 402 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 18 402 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 18 402 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 18 402 26 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 30 402 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 402 43 402 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 30 402 42 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 30 402 42 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 30 402 42 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 30 402 42 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 46 402 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 46 402 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 46 402 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 46 402 48 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 49 402 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 402 49 402 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 402 50 402 51 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 49 402 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 402 49 402 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 402 50 402 51 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 402 49 402 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 402 49 402 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 402 50 402 51 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 1 403 43 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 1 403 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 1 403 14 , srcInfoPoints = [] } "gzWriteFilePS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 15 403 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 15 403 16 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 17 403 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 17 403 19 , srcInfoPoints = [] } "ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 20 403 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 403 20 403 21 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 22 403 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 22 403 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 22 403 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 22 403 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 22 403 36 , srcInfoPoints = [] } "gzWriteFilePSs"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 37 403 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 37 403 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 37 403 38 , srcInfoPoints = [] } "f")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 39 403 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 403 39 403 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 403 42 403 43 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 40 403 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 40 403 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 403 40 403 42 , srcInfoPoints = [] } "ps")) ]))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 1 405 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 405 16 405 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 1 405 15 , srcInfoPoints = [] } "gzWriteFilePSs" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 19 405 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 405 28 405 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 19 405 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 19 405 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 19 405 27 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 31 405 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 405 46 405 48 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 31 405 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 405 31 405 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 405 44 405 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 32 405 44 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 32 405 44 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 32 405 44 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 32 405 44 , srcInfoPoints = [] } "ByteString")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 49 405 54 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 49 405 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 49 405 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 49 405 51 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 52 405 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 405 52 405 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 405 53 405 54 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 52 405 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 405 52 405 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 405 53 405 54 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 405 52 405 54 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 405 52 405 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 405 53 405 54 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 406 1 415 18 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 406 1 415 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 406 1 406 15 , srcInfoPoints = [] } "gzWriteFilePSs") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 406 16 406 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 406 16 406 17 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 406 18 406 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 406 18 406 21 , srcInfoPoints = [] } "pss") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 406 23 415 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 406 23 406 24 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 5 415 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 5 408 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 5 408 17 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 5 408 17 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 5 408 17 , srcInfoPoints = [] } "BL") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 5 408 17 , srcInfoPoints = [] } "writeFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 18 408 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 18 408 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 18 408 19 , srcInfoPoints = [] } "f")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 20 408 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 20 408 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 20 408 21 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 22 415 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 22 408 33 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 22 408 33 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 22 408 33 , srcInfoPoints = [] } "GZ") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 22 408 33 , srcInfoPoints = [] } "compress"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 34 408 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 34 408 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 34 408 35 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 36 415 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 36 410 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 36 410 16 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 36 408 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 36 408 49 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 36 408 49 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 36 408 49 , srcInfoPoints = [] } "BL") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 36 408 49 , srcInfoPoints = [] } "fromChunks"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 50 408 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 50 408 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 408 50 408 53 , srcInfoPoints = [] } "pss")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 5 410 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 5 410 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 5 410 16 , srcInfoPoints = [] } "withCString")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 17 410 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 17 410 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 17 410 18 , srcInfoPoints = [] } "f")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 19 410 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 19 410 20 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 19 410 20 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 21 415 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 410 21 410 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 410 27 410 29 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 22 410 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 22 410 26 , srcInfoPoints = [] } "fstr") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 30 415 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 30 410 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 30 410 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 30 410 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 30 410 41 , srcInfoPoints = [] } "withCString"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 42 410 46 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 42 410 46 , srcInfoPoints = [] } "wb" "wb"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 47 410 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 47 410 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 47 410 48 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 49 415 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 410 49 410 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 410 53 410 55 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 50 410 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 50 410 52 , srcInfoPoints = [] } "wb") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 410 56 415 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 410 56 410 58 , SrcSpan "tests/examples/ByteStringUtils.hs" 411 5 411 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 412 5 412 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 413 5 413 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 415 5 415 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 417 1 417 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 5 411 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 411 9 411 11 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 5 411 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 5 411 8 , srcInfoPoints = [] } "gzf")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 12 411 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 12 411 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 12 411 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 12 411 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 12 411 20 , srcInfoPoints = [] } "c_gzopen"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 21 411 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 21 411 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 21 411 25 , srcInfoPoints = [] } "fstr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 26 411 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 26 411 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 411 26 411 28 , srcInfoPoints = [] } "wb")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 5 412 75 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 5 412 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 5 412 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 5 412 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 5 412 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 5 412 9 , srcInfoPoints = [] } "when"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 10 412 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 412 10 412 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 412 25 412 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 11 412 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 11 412 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 11 412 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 11 412 14 , srcInfoPoints = [] } "gzf"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 15 412 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 15 412 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 15 412 17 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 18 412 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 18 412 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 18 412 25 , srcInfoPoints = [] } "nullPtr")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 27 412 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 27 412 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 27 412 28 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 29 412 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 29 412 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 29 412 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 29 412 33 , srcInfoPoints = [] } "fail"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 34 412 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 34 412 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 34 412 35 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 36 412 75 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 36 412 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 36 412 72 , srcInfoPoints = [] } "problem gzopening file for write: " "problem gzopening file for write: ")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 72 412 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 72 412 74 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 72 412 74 , srcInfoPoints = [] } "++"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 74 412 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 74 412 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 412 74 412 75 , srcInfoPoints = [] } "f")))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 5 414 57 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 5 414 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 5 413 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 5 413 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 5 413 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 5 413 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 5 413 10 , srcInfoPoints = [] } "mapM_"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 11 413 29 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 413 11 413 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 413 28 413 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 12 413 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 12 413 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 12 413 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 12 413 24 , srcInfoPoints = [] } "gzWriteToGzf"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 25 413 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 25 413 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 25 413 28 , srcInfoPoints = [] } "gzf")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 30 413 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 30 413 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 30 413 33 , srcInfoPoints = [] } "pss")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 34 413 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 413 34 413 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 413 35 413 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 413 40 413 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 34 413 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 413 34 413 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 413 35 413 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 413 40 413 41 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 413 35 413 40 , srcInfoPoints = [] } "catch"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 15 414 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 414 15 414 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 414 18 414 20 ] } [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 16 414 17 , srcInfoPoints = [] } ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 21 414 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 21 414 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 21 414 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 21 414 25 , srcInfoPoints = [] } "fail"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 26 414 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 26 414 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 26 414 27 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 28 414 57 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 28 414 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 28 414 54 , srcInfoPoints = [] } "problem gzwriting file: " "problem gzwriting file: ")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 54 414 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 54 414 56 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 54 414 56 , srcInfoPoints = [] } "++"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 56 414 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 56 414 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 414 56 414 57 , srcInfoPoints = [] } "f"))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 415 5 415 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 415 5 415 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 415 5 415 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 415 5 415 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 415 5 415 14 , srcInfoPoints = [] } "c_gzclose"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 415 15 415 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 415 15 415 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 415 15 415 18 , srcInfoPoints = [] } "gzf")))) ])))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 1 417 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 14 417 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 1 417 13 , srcInfoPoints = [] } "gzWriteToGzf" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 17 417 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 24 417 26 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 17 417 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 17 417 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 17 417 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 17 417 20 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 21 417 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 21 417 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 417 22 417 23 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 21 417 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 21 417 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 417 22 417 23 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 21 417 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 21 417 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 417 22 417 23 ] })))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 27 417 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 40 417 42 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 27 417 39 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 27 417 39 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 27 417 39 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 27 417 39 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 43 417 48 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 43 417 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 43 417 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 43 417 45 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 46 417 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 46 417 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 417 47 417 48 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 46 417 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 46 417 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 417 47 417 48 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 417 46 417 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 417 46 417 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 417 47 417 48 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 1 425 67 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 1 425 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 1 418 13 , srcInfoPoints = [] } "gzWriteToGzf") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 14 418 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 14 418 17 , srcInfoPoints = [] } "gzf") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 18 418 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 18 418 20 , srcInfoPoints = [] } "ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 21 425 67 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 418 21 418 22 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 23 425 67 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 418 23 418 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 418 47 418 49 , SrcSpan "tests/examples/ByteStringUtils.hs" 419 2 419 2 , SrcSpan "tests/examples/ByteStringUtils.hs" 422 2 422 2 , SrcSpan "tests/examples/ByteStringUtils.hs" 442 1 442 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 28 418 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 28 418 43 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 28 418 43 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 28 418 43 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 28 418 43 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 44 418 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 44 418 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 418 44 418 46 , srcInfoPoints = [] } "ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 2 419 22 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 2 419 9 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 419 2 419 3 , SrcSpan "tests/examples/ByteStringUtils.hs" 419 4 419 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 419 6 419 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 419 8 419 9 ] } Boxed [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 3 419 4 , srcInfoPoints = [] } , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 5 419 6 , srcInfoPoints = [] } , PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 7 419 8 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 7 419 8 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 7 419 8 , srcInfoPoints = [] } 0 "0") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 10 419 22 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 419 10 419 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 13 419 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 13 419 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 13 419 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 13 419 19 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 20 419 22 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 419 20 419 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 419 21 419 22 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 20 419 22 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 419 20 419 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 419 21 419 22 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 419 20 419 22 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 419 20 419 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 419 21 419 22 ] }))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 2 425 67 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 2 422 9 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 422 2 422 3 , SrcSpan "tests/examples/ByteStringUtils.hs" 422 4 422 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 422 6 422 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 422 8 422 9 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 3 422 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 3 422 4 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 5 422 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 5 422 6 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 7 422 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 7 422 8 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 10 425 67 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 422 10 422 12 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 422 13 425 67 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 422 13 422 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 423 5 423 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 425 5 425 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 442 1 442 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 5 424 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 423 8 423 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 5 423 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 5 423 7 , srcInfoPoints = [] } "lw")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 11 424 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 11 423 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 11 423 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 11 423 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 11 423 25 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 26 423 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 26 423 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 26 423 27 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 28 423 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 28 423 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 28 423 29 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 30 424 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 423 30 423 31 , SrcSpan "tests/examples/ByteStringUtils.hs" 423 33 423 35 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 31 423 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 31 423 32 , srcInfoPoints = [] } "p") ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 36 424 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 36 423 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 36 423 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 36 423 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 36 423 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 36 423 45 , srcInfoPoints = [] } "c_gzwrite"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 46 423 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 46 423 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 46 423 49 , srcInfoPoints = [] } "gzf")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 50 423 65 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 423 50 423 51 , SrcSpan "tests/examples/ByteStringUtils.hs" 423 64 423 65 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 51 423 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 51 423 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 51 423 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 51 423 52 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 53 423 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 423 53 423 54 , SrcSpan "tests/examples/ByteStringUtils.hs" 423 54 423 61 , SrcSpan "tests/examples/ByteStringUtils.hs" 423 61 423 62 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 53 423 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 423 53 423 54 , SrcSpan "tests/examples/ByteStringUtils.hs" 423 54 423 61 , SrcSpan "tests/examples/ByteStringUtils.hs" 423 61 423 62 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 54 423 61 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 63 423 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 63 423 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 423 63 423 64 , srcInfoPoints = [] } "s")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 424 50 424 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 424 50 424 51 , SrcSpan "tests/examples/ByteStringUtils.hs" 424 65 424 66 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 424 51 424 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 424 51 424 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 424 51 424 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 424 51 424 63 , srcInfoPoints = [] } "fromIntegral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 424 64 424 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 424 64 424 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 424 64 424 65 , srcInfoPoints = [] } "l")))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 5 425 67 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 5 425 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 5 425 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 5 425 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 5 425 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 5 425 9 , srcInfoPoints = [] } "when"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 10 425 32 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 425 10 425 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 425 31 425 32 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 11 425 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 11 425 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 11 425 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 11 425 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 11 425 23 , srcInfoPoints = [] } "fromIntegral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 24 425 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 24 425 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 24 425 26 , srcInfoPoints = [] } "lw")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 27 425 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 27 425 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 27 425 29 , srcInfoPoints = [] } "/="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 30 425 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 30 425 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 30 425 31 , srcInfoPoints = [] } "l")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 33 425 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 33 425 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 33 425 34 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 35 425 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 35 425 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 35 425 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 35 425 39 , srcInfoPoints = [] } "fail"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 40 425 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 40 425 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 40 425 41 , srcInfoPoints = [] } "$"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 42 425 67 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 425 42 425 67 , srcInfoPoints = [] } "problem in gzWriteToGzf" "problem in gzWriteToGzf")))) ])) Nothing ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 1 442 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 442 12 442 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 1 442 11 , srcInfoPoints = [] } "mmapFilePS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 15 442 42 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 442 24 442 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 15 442 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 15 442 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 15 442 23 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 27 442 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 27 442 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 27 442 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 27 442 29 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 30 442 42 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 30 442 42 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 30 442 42 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 442 30 442 42 , srcInfoPoints = [] } "ByteString"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 444 1 451 11 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 444 1 451 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 444 1 444 11 , srcInfoPoints = [] } "mmapFilePS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 444 12 444 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 444 12 444 13 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 444 14 451 11 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 444 14 444 15 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 444 16 451 11 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 444 16 444 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 445 3 445 3 , SrcSpan "tests/examples/ByteStringUtils.hs" 451 3 451 3 , SrcSpan "tests/examples/ByteStringUtils.hs" 453 1 453 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 3 450 72 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 445 5 445 7 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 3 445 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 3 445 4 , srcInfoPoints = [] } "x")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 8 450 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 8 445 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 8 445 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 8 445 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 8 445 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 8 445 26 , srcInfoPoints = [] } "mmapFileByteString"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 27 445 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 27 445 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 27 445 28 , srcInfoPoints = [] } "f")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 29 445 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 29 445 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 445 29 445 36 , srcInfoPoints = [] } "Nothing")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 446 4 446 11 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 446 4 446 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 446 5 446 10 , SrcSpan "tests/examples/ByteStringUtils.hs" 446 10 446 11 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 446 4 446 11 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 446 4 446 5 , SrcSpan "tests/examples/ByteStringUtils.hs" 446 5 446 10 , SrcSpan "tests/examples/ByteStringUtils.hs" 446 10 446 11 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 446 5 446 10 , srcInfoPoints = [] } "catch"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 446 12 450 72 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 446 12 446 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 450 71 450 72 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 446 13 450 71 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 446 13 446 14 , SrcSpan "tests/examples/ByteStringUtils.hs" 446 16 446 18 ] } [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 446 14 446 15 , srcInfoPoints = [] } ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 446 19 450 71 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 446 19 446 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 447 22 447 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 448 22 448 22 , SrcSpan "tests/examples/ByteStringUtils.hs" 450 71 450 71 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 22 447 69 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 447 27 447 29 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 22 447 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 22 447 26 , srcInfoPoints = [] } "size")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 30 447 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 30 447 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 30 447 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 30 447 38 , srcInfoPoints = [] } "fileSize"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 39 447 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 447 39 447 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 447 40 447 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 447 44 447 45 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 39 447 45 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 447 39 447 40 , SrcSpan "tests/examples/ByteStringUtils.hs" 447 40 447 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 447 44 447 45 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 40 447 44 , srcInfoPoints = [] } "fmap"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 46 447 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 46 447 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 46 447 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 46 447 67 , srcInfoPoints = [] } "getSymbolicLinkStatus"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 68 447 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 68 447 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 447 68 447 69 , srcInfoPoints = [] } "f"))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 22 450 71 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 448 22 448 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 449 25 449 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 450 25 450 29 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 22 450 71 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 448 22 448 24 , SrcSpan "tests/examples/ByteStringUtils.hs" 449 25 449 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 450 25 450 29 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 25 448 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 25 448 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 25 448 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 25 448 29 , srcInfoPoints = [] } "size"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 30 448 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 30 448 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 30 448 32 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 33 448 34 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 448 33 448 34 , srcInfoPoints = [] } 0 "0"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 449 30 449 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 449 30 449 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 449 30 449 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 449 30 449 36 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 449 37 449 44 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 449 37 449 44 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 449 37 449 44 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 449 37 449 44 , srcInfoPoints = [] } "empty")))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 30 450 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 30 450 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 30 450 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 30 450 39 , srcInfoPoints = [] } "performGC"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 40 450 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 40 450 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 40 450 42 , srcInfoPoints = [] } ">>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 43 450 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 43 450 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 43 450 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 43 450 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 43 450 61 , srcInfoPoints = [] } "mmapFileByteString"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 62 450 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 62 450 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 62 450 63 , srcInfoPoints = [] } "f")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 64 450 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 64 450 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 450 64 450 71 , srcInfoPoints = [] } "Nothing")))))) ])))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 451 3 451 11 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 451 3 451 11 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 451 3 451 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 451 3 451 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 451 3 451 9 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 451 10 451 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 451 10 451 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 451 10 451 11 , srcInfoPoints = [] } "x")))) ])) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 453 1 453 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 453 1 453 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 453 1 453 11 , srcInfoPoints = [] } "mmapFilePS")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 453 12 453 24 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 453 12 453 13 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 453 14 453 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 453 14 453 24 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 453 14 453 24 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 453 14 453 24 , srcInfoPoints = [] } "readFile")))) Nothing , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 459 1 460 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 459 1 459 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 459 9 459 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 459 29 459 60 , SrcSpan "tests/examples/ByteStringUtils.hs" 460 5 460 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 459 16 459 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 459 22 459 28 , srcInfoPoints = [] })) (Just "static fpstring.h conv_to_hex") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 459 61 459 72 , srcInfoPoints = [] } "conv_to_hex") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 8 460 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 460 18 460 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 8 460 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 8 460 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 8 460 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 8 460 11 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 12 460 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 12 460 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 12 460 17 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 21 460 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 460 31 460 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 21 460 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 21 460 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 21 460 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 21 460 24 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 25 460 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 25 460 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 25 460 30 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 34 460 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 460 39 460 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 34 460 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 34 460 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 34 460 38 , srcInfoPoints = [] } "CInt"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 42 460 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 42 460 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 42 460 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 42 460 44 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 45 460 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 460 45 460 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 460 46 460 47 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 45 460 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 460 45 460 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 460 46 460 47 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 460 45 460 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 460 45 460 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 460 46 460 47 ] }))))))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 1 462 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 462 12 462 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 1 462 11 , srcInfoPoints = [] } "fromPS2Hex" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 15 462 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 462 28 462 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 15 462 27 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 15 462 27 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 15 462 27 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 15 462 27 , srcInfoPoints = [] } "ByteString"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 31 462 43 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 31 462 43 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 31 462 43 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 462 31 462 43 , srcInfoPoints = [] } "ByteString")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 1 466 58 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 1 466 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 1 463 11 , srcInfoPoints = [] } "fromPS2Hex") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 12 463 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 12 463 14 , srcInfoPoints = [] } "ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 15 466 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 463 15 463 16 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 17 466 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 463 17 463 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 463 41 463 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 464 11 464 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 471 1 471 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 22 463 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 22 463 37 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 22 463 37 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 22 463 37 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 22 463 37 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 38 463 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 38 463 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 463 38 463 40 , srcInfoPoints = [] } "ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 11 466 58 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 11 464 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 464 11 464 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 464 13 464 14 , SrcSpan "tests/examples/ByteStringUtils.hs" 464 15 464 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 464 17 464 18 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 12 464 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 12 464 13 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 14 464 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 14 464 15 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 16 464 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 16 464 17 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 464 19 466 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 464 19 464 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 12 466 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 12 465 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 12 465 27 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 12 465 27 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 12 465 27 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 12 465 27 , srcInfoPoints = [] } "unsafeCreate"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 28 465 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 465 28 465 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 465 32 465 33 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 29 465 32 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 29 465 30 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 29 465 30 , srcInfoPoints = [] } 2 "2")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 30 465 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 30 465 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 30 465 31 , srcInfoPoints = [] } "*"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 31 465 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 31 465 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 31 465 32 , srcInfoPoints = [] } "l")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 34 465 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 34 465 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 34 465 35 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 36 466 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 465 36 465 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 465 39 465 41 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 37 465 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 37 465 38 , srcInfoPoints = [] } "p") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 42 466 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 42 465 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 42 465 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 42 465 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 42 465 56 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 57 465 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 57 465 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 57 465 58 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 59 465 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 59 465 60 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 59 465 60 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 61 466 58 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 465 61 465 62 , SrcSpan "tests/examples/ByteStringUtils.hs" 465 64 465 66 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 62 465 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 465 62 465 63 , srcInfoPoints = [] } "f") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 12 466 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 12 466 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 12 466 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 12 466 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 12 466 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 12 466 23 , srcInfoPoints = [] } "conv_to_hex"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 24 466 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 24 466 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 24 466 25 , srcInfoPoints = [] } "p")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 26 466 41 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 466 26 466 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 466 40 466 41 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 27 466 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 27 466 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 27 466 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 27 466 28 , srcInfoPoints = [] } "f"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 29 466 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 466 29 466 30 , SrcSpan "tests/examples/ByteStringUtils.hs" 466 30 466 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 466 37 466 38 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 29 466 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 466 29 466 30 , SrcSpan "tests/examples/ByteStringUtils.hs" 466 30 466 37 , SrcSpan "tests/examples/ByteStringUtils.hs" 466 37 466 38 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 30 466 37 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 39 466 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 39 466 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 39 466 40 , srcInfoPoints = [] } "s")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 42 466 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 42 466 43 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 42 466 43 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 44 466 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 44 466 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 44 466 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 44 466 56 , srcInfoPoints = [] } "fromIntegral"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 57 466 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 57 466 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 466 57 466 58 , srcInfoPoints = [] } "l")))))))))) Nothing ])) Nothing ] , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 471 1 472 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 471 1 471 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 471 9 471 15 , SrcSpan "tests/examples/ByteStringUtils.hs" 471 29 471 62 , SrcSpan "tests/examples/ByteStringUtils.hs" 472 5 472 7 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 471 16 471 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 471 22 471 28 , srcInfoPoints = [] })) (Just "static fpstring.h conv_from_hex") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 471 63 471 76 , srcInfoPoints = [] } "conv_from_hex") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 8 472 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 472 18 472 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 8 472 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 8 472 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 8 472 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 8 472 11 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 12 472 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 12 472 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 12 472 17 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 21 472 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 472 31 472 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 21 472 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 21 472 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 21 472 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 21 472 24 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 25 472 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 25 472 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 25 472 30 , srcInfoPoints = [] } "Word8")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 34 472 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 472 39 472 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 34 472 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 34 472 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 34 472 38 , srcInfoPoints = [] } "CInt"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 42 472 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 42 472 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 42 472 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 42 472 44 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 45 472 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 472 45 472 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 472 46 472 47 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 45 472 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 472 45 472 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 472 46 472 47 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 472 45 472 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 472 45 472 46 , SrcSpan "tests/examples/ByteStringUtils.hs" 472 46 472 47 ] }))))))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 1 474 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 474 12 474 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 1 474 11 , srcInfoPoints = [] } "fromHex2PS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 15 474 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 474 28 474 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 15 474 27 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 15 474 27 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 15 474 27 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 15 474 27 , srcInfoPoints = [] } "ByteString"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 31 474 43 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 31 474 43 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 31 474 43 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 474 31 474 43 , srcInfoPoints = [] } "ByteString")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 1 478 70 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 1 478 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 1 475 11 , srcInfoPoints = [] } "fromHex2PS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 12 475 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 12 475 14 , srcInfoPoints = [] } "ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 15 478 70 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 475 15 475 16 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 17 478 70 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 475 17 475 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 475 41 475 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 476 11 476 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 486 1 486 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 22 475 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 22 475 37 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 22 475 37 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 22 475 37 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 22 475 37 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 38 475 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 38 475 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 475 38 475 40 , srcInfoPoints = [] } "ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 11 478 70 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 11 476 18 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 476 11 476 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 476 13 476 14 , SrcSpan "tests/examples/ByteStringUtils.hs" 476 15 476 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 476 17 476 18 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 12 476 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 12 476 13 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 14 476 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 14 476 15 , srcInfoPoints = [] } "s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 16 476 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 16 476 17 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 476 19 478 70 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 476 19 476 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 12 478 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 12 477 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 12 477 27 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 12 477 27 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 12 477 27 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 12 477 27 , srcInfoPoints = [] } "unsafeCreate"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 28 477 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 477 28 477 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 477 38 477 39 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 29 477 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 29 477 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 29 477 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 29 477 30 , srcInfoPoints = [] } "l"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 31 477 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 477 31 477 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 477 32 477 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 477 35 477 36 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 31 477 36 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 477 31 477 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 477 32 477 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 477 35 477 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 32 477 35 , srcInfoPoints = [] } "div"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 37 477 38 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 37 477 38 , srcInfoPoints = [] } 2 "2"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 40 477 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 40 477 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 40 477 41 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 42 478 70 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 477 42 477 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 477 45 477 47 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 43 477 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 43 477 44 , srcInfoPoints = [] } "p") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 48 478 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 48 477 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 48 477 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 48 477 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 48 477 62 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 63 477 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 63 477 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 63 477 64 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 65 477 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 65 477 66 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 65 477 66 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 67 478 70 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 477 67 477 68 , SrcSpan "tests/examples/ByteStringUtils.hs" 477 70 477 72 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 68 477 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 477 68 477 69 , srcInfoPoints = [] } "f") ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 12 478 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 12 478 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 12 478 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 12 478 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 12 478 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 12 478 25 , srcInfoPoints = [] } "conv_from_hex"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 26 478 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 26 478 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 26 478 27 , srcInfoPoints = [] } "p")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 28 478 43 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 478 28 478 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 42 478 43 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 29 478 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 29 478 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 29 478 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 29 478 30 , srcInfoPoints = [] } "f"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 31 478 40 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 478 31 478 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 32 478 39 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 39 478 40 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 31 478 40 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 478 31 478 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 32 478 39 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 39 478 40 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 32 478 39 , srcInfoPoints = [] } "plusPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 41 478 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 41 478 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 41 478 42 , srcInfoPoints = [] } "s")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 44 478 70 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 478 44 478 45 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 69 478 70 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 45 478 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 45 478 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 45 478 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 45 478 57 , srcInfoPoints = [] } "fromIntegral"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 58 478 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 58 478 59 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 58 478 59 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 60 478 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 60 478 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 60 478 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 60 478 61 , srcInfoPoints = [] } "l"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 62 478 67 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 478 62 478 63 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 63 478 66 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 66 478 67 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 62 478 67 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 478 62 478 63 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 63 478 66 , SrcSpan "tests/examples/ByteStringUtils.hs" 478 66 478 67 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 63 478 66 , srcInfoPoints = [] } "div"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 68 478 69 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 478 68 478 69 , srcInfoPoints = [] } 2 "2"))))))))))) Nothing ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 1 487 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 486 16 486 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 1 486 15 , srcInfoPoints = [] } "betweenLinesPS" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 19 487 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 486 32 486 34 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 19 486 31 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 19 486 31 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 19 486 31 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 19 486 31 , srcInfoPoints = [] } "ByteString"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 35 487 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 486 48 486 50 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 35 486 47 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 35 486 47 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 35 486 47 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 35 486 47 , srcInfoPoints = [] } "ByteString"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 51 487 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 487 16 487 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 51 486 63 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 51 486 63 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 51 486 63 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 486 51 486 63 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 19 487 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 19 487 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 19 487 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 19 487 24 , srcInfoPoints = [] } "Maybe"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 25 487 39 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 487 25 487 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 487 38 487 39 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 26 487 38 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 26 487 38 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 26 487 38 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 487 26 487 38 , srcInfoPoints = [] } "ByteString")))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 1 496 20 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 1 496 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 1 488 15 , srcInfoPoints = [] } "betweenLinesPS") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 16 488 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 16 488 21 , srcInfoPoints = [] } "start") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 22 488 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 22 488 25 , srcInfoPoints = [] } "end") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 26 488 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 488 26 488 28 , srcInfoPoints = [] } "ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 2 496 20 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 489 2 489 3 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 4 496 20 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 489 4 489 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 489 39 489 41 , SrcSpan "tests/examples/ByteStringUtils.hs" 490 8 490 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 496 8 496 8 , SrcSpan "tests/examples/ByteStringUtils.hs" 501 1 501 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 9 489 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 9 489 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 9 489 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 9 489 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 9 489 14 , srcInfoPoints = [] } "break"))) (LeftSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 15 489 25 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 489 15 489 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 489 24 489 25 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 16 489 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 16 489 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 16 489 21 , srcInfoPoints = [] } "start"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 22 489 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 22 489 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 22 489 24 , srcInfoPoints = [] } "=="))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 26 489 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 489 26 489 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 489 37 489 38 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 27 489 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 27 489 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 27 489 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 27 489 34 , srcInfoPoints = [] } "linesPS"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 35 489 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 35 489 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 489 35 489 37 , srcInfoPoints = [] } "ps")))))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 8 495 28 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 8 490 27 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 490 8 490 9 , SrcSpan "tests/examples/ByteStringUtils.hs" 490 10 490 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 490 26 490 27 ] } Boxed [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 9 490 10 , srcInfoPoints = [] } , PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 12 490 26 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 12 490 13 , srcInfoPoints = [] }) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 13 490 14 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 13 490 14 , srcInfoPoints = [] })) (PAsPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 14 490 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 490 18 490 19 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 14 490 18 , srcInfoPoints = [] } "rest") (PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 19 490 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 490 19 490 20 , SrcSpan "tests/examples/ByteStringUtils.hs" 490 25 490 26 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 20 490 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 20 490 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 20 490 23 , srcInfoPoints = [] } "bs1")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 23 490 24 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 23 490 24 , srcInfoPoints = [] })) (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 24 490 25 , srcInfoPoints = [] })))) ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 490 28 495 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 490 28 490 30 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 12 495 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 491 12 491 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 491 37 491 39 , SrcSpan "tests/examples/ByteStringUtils.hs" 492 13 492 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 496 8 496 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 17 491 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 17 491 32 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 17 491 32 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 17 491 32 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 17 491 32 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 33 491 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 33 491 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 491 33 491 36 , srcInfoPoints = [] } "bs1")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 492 13 495 28 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 492 13 492 23 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 492 13 492 14 , SrcSpan "tests/examples/ByteStringUtils.hs" 492 17 492 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 492 20 492 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 492 22 492 23 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 492 14 492 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 492 14 492 17 , srcInfoPoints = [] } "ps1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 492 18 492 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 492 18 492 20 , srcInfoPoints = [] } "s1") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 492 21 492 22 , srcInfoPoints = [] } ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 492 24 495 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 492 24 492 26 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 14 495 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 493 14 493 18 , SrcSpan "tests/examples/ByteStringUtils.hs" 493 39 493 41 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 16 494 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 495 16 495 16 , SrcSpan "tests/examples/ByteStringUtils.hs" 496 8 496 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 19 493 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 19 493 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 19 493 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 19 493 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 19 493 24 , srcInfoPoints = [] } "break"))) (LeftSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 25 493 33 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 493 25 493 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 493 32 493 33 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 26 493 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 26 493 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 26 493 29 , srcInfoPoints = [] } "end"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 30 493 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 30 493 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 30 493 32 , srcInfoPoints = [] } "=="))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 34 493 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 34 493 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 493 34 493 38 , srcInfoPoints = [] } "rest")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 16 494 108 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 16 494 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 494 16 494 17 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 18 494 19 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 25 494 26 ] } Boxed [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 17 494 18 , srcInfoPoints = [] } , PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 20 494 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 20 494 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 20 494 23 , srcInfoPoints = [] } "bs2")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 23 494 24 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 23 494 24 , srcInfoPoints = [] })) (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 24 494 25 , srcInfoPoints = [] }) ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 27 494 108 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 494 27 494 29 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 30 494 108 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 494 30 494 34 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 55 494 57 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 58 494 58 , SrcSpan "tests/examples/ByteStringUtils.hs" 495 16 495 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 35 494 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 35 494 50 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 35 494 50 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 35 494 50 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 35 494 50 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 51 494 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 51 494 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 51 494 54 , srcInfoPoints = [] } "bs2")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 58 494 108 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 58 494 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 494 58 494 59 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 60 494 61 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 63 494 64 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 65 494 66 ] } Boxed [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 59 494 60 , srcInfoPoints = [] } , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 61 494 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 61 494 63 , srcInfoPoints = [] } "s2") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 64 494 65 , srcInfoPoints = [] } ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 67 494 108 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 494 67 494 69 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 70 494 108 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 70 494 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 70 494 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 70 494 74 , srcInfoPoints = [] } "Just"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 75 494 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 75 494 76 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 75 494 76 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 77 494 108 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 77 494 98 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 77 494 95 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 77 494 91 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 77 494 91 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 77 494 91 , srcInfoPoints = [] } "fromForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 92 494 95 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 92 494 95 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 92 494 95 , srcInfoPoints = [] } "ps1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 96 494 98 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 96 494 98 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 96 494 98 , srcInfoPoints = [] } "s1")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 99 494 108 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 494 99 494 100 , SrcSpan "tests/examples/ByteStringUtils.hs" 494 107 494 108 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 100 494 107 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 100 494 102 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 100 494 102 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 100 494 102 , srcInfoPoints = [] } "s2"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 103 494 104 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 103 494 104 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 103 494 104 , srcInfoPoints = [] } "-"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 105 494 107 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 105 494 107 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 494 105 494 107 , srcInfoPoints = [] } "s1")))))))) Nothing ])) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 495 16 495 28 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 495 16 495 17 , srcInfoPoints = [] }) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 495 18 495 28 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 495 18 495 20 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 495 21 495 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 495 21 495 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 495 21 495 28 , srcInfoPoints = [] } "Nothing")))) Nothing ])) Nothing ])) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 496 8 496 20 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 496 8 496 9 , srcInfoPoints = [] }) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 496 10 496 20 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 496 10 496 12 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 496 13 496 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 496 13 496 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 496 13 496 20 , srcInfoPoints = [] } "Nothing")))) Nothing ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 1 502 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 501 25 501 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 1 501 24 , srcInfoPoints = [] } "break_after_nth_newline" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 28 502 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 501 32 501 34 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 28 501 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 28 501 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 28 501 31 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 35 502 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 502 25 502 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 35 501 47 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 35 501 47 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 35 501 47 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 501 35 501 47 , srcInfoPoints = [] } "ByteString"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 28 502 62 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 28 502 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 28 502 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 28 502 33 , srcInfoPoints = [] } "Maybe"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 34 502 62 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 502 34 502 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 502 47 502 48 , SrcSpan "tests/examples/ByteStringUtils.hs" 502 61 502 62 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 35 502 47 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 35 502 47 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 35 502 47 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 35 502 47 , srcInfoPoints = [] } "ByteString")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 49 502 61 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 49 502 61 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 49 502 61 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 502 49 502 61 , srcInfoPoints = [] } "ByteString")) ])))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 1 518 21 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 1 503 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 1 503 24 , srcInfoPoints = [] } "break_after_nth_newline") [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 25 503 26 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 25 503 26 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 25 503 26 , srcInfoPoints = [] } 0 "0") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 27 503 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 27 503 33 , srcInfoPoints = [] } "the_ps") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 34 503 75 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 503 34 503 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 503 50 503 51 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 34 503 75 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 503 34 503 35 , SrcSpan "tests/examples/ByteStringUtils.hs" 503 50 503 51 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 36 503 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 36 503 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 36 503 42 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 36 503 42 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 36 503 42 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 36 503 42 , srcInfoPoints = [] } "null"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 43 503 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 43 503 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 43 503 49 , srcInfoPoints = [] } "the_ps")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 52 503 75 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 52 503 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 52 503 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 52 503 56 , srcInfoPoints = [] } "Just"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 57 503 75 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 503 57 503 58 , SrcSpan "tests/examples/ByteStringUtils.hs" 503 65 503 66 , SrcSpan "tests/examples/ByteStringUtils.hs" 503 74 503 75 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 58 503 65 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 58 503 65 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 58 503 65 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 58 503 65 , srcInfoPoints = [] } "empty")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 67 503 74 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 67 503 74 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 67 503 74 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 503 67 503 74 , srcInfoPoints = [] } "empty")) ])) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 504 1 518 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 504 1 504 24 , srcInfoPoints = [] } "break_after_nth_newline") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 504 25 504 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 504 25 504 26 , srcInfoPoints = [] } "n") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 504 27 504 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 504 27 504 33 , srcInfoPoints = [] } "the_ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 504 34 518 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 504 34 504 35 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 3 518 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 505 3 505 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 505 31 505 33 , SrcSpan "tests/examples/ByteStringUtils.hs" 506 3 506 3 , SrcSpan "tests/examples/ByteStringUtils.hs" 523 1 523 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 8 505 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 8 505 23 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 8 505 23 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 8 505 23 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 8 505 23 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 24 505 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 24 505 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 505 24 505 30 , srcInfoPoints = [] } "the_ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 3 518 21 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 3 506 15 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 506 3 506 4 , SrcSpan "tests/examples/ByteStringUtils.hs" 506 6 506 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 506 12 506 13 , SrcSpan "tests/examples/ByteStringUtils.hs" 506 14 506 15 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 4 506 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 4 506 6 , srcInfoPoints = [] } "fp") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 7 506 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 7 506 12 , srcInfoPoints = [] } "the_s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 13 506 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 13 506 14 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 506 16 518 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 506 16 506 18 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 4 518 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 4 507 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 4 507 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 4 507 19 , srcInfoPoints = [] } "unsafePerformIO"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 20 507 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 20 507 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 20 507 21 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 22 518 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 22 507 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 22 507 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 22 507 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 22 507 36 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 37 507 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 37 507 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 37 507 39 , srcInfoPoints = [] } "fp")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 40 507 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 40 507 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 40 507 41 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 42 518 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 507 42 507 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 507 45 507 47 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 43 507 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 507 43 507 44 , srcInfoPoints = [] } "p") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 4 518 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 508 4 508 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 508 7 508 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 518 7 518 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 523 1 523 0 ] } [ LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 7 517 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 508 7 508 10 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 11 517 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 508 11 508 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 509 11 509 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 510 11 510 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 513 11 513 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 516 11 516 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 517 11 517 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 518 7 518 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 11 515 57 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 11 508 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 11 508 17 , srcInfoPoints = [] } "findit") [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 18 508 19 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 18 508 19 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 18 508 19 , srcInfoPoints = [] } 0 "0") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 20 508 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 20 508 21 , srcInfoPoints = [] } "s") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 22 508 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 508 22 508 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 508 33 508 34 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 22 508 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 508 22 508 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 508 33 508 34 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 24 508 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 24 508 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 24 508 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 24 508 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 24 508 25 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 26 508 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 26 508 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 26 508 28 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 29 508 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 29 508 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 29 508 32 , srcInfoPoints = [] } "end")))) ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 35 508 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 35 508 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 35 508 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 35 508 41 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 42 508 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 42 508 43 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 42 508 43 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 44 508 66 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 44 508 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 44 508 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 44 508 48 , srcInfoPoints = [] } "Just"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 49 508 66 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 508 49 508 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 508 56 508 57 , SrcSpan "tests/examples/ByteStringUtils.hs" 508 65 508 66 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 50 508 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 50 508 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 50 508 56 , srcInfoPoints = [] } "the_ps")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 58 508 65 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 58 508 65 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 58 508 65 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 508 58 508 65 , srcInfoPoints = [] } "empty")) ]))) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 11 509 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 11 509 17 , srcInfoPoints = [] } "findit") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 18 509 19 , srcInfoPoints = [] } , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 20 509 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 20 509 21 , srcInfoPoints = [] } "s") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 22 509 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 509 22 509 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 509 33 509 34 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 22 509 49 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 509 22 509 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 509 33 509 34 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 24 509 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 24 509 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 24 509 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 24 509 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 24 509 25 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 26 509 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 26 509 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 26 509 28 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 29 509 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 29 509 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 29 509 32 , srcInfoPoints = [] } "end")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 35 509 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 35 509 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 35 509 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 35 509 41 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 42 509 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 42 509 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 509 42 509 49 , srcInfoPoints = [] } "Nothing")))) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 11 512 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 11 510 17 , srcInfoPoints = [] } "findit") [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 18 510 19 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 18 510 19 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 18 510 19 , srcInfoPoints = [] } 0 "0") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 20 510 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 20 510 21 , srcInfoPoints = [] } "s") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 22 512 75 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 510 22 510 23 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 24 512 75 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 510 24 510 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 511 24 511 26 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 28 510 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 510 28 510 28 , SrcSpan "tests/examples/ByteStringUtils.hs" 511 24 511 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 28 510 46 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 28 510 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 28 510 34 , srcInfoPoints = [] } "left_l")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 35 510 46 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 510 35 510 36 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 37 510 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 37 510 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 37 510 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 37 510 38 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 39 510 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 39 510 40 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 39 510 40 , srcInfoPoints = [] } "-"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 41 510 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 41 510 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 510 41 510 46 , srcInfoPoints = [] } "the_s"))))) Nothing ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 27 512 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 27 511 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 27 511 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 27 511 33 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 34 511 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 34 511 35 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 34 511 35 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 36 512 75 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 36 511 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 36 511 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 36 511 40 , srcInfoPoints = [] } "Just"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 41 512 75 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 511 41 511 42 , SrcSpan "tests/examples/ByteStringUtils.hs" 511 72 511 73 , SrcSpan "tests/examples/ByteStringUtils.hs" 512 74 512 75 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 42 511 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 42 511 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 42 511 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 42 511 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 42 511 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 42 511 56 , srcInfoPoints = [] } "fromForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 57 511 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 57 511 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 57 511 59 , srcInfoPoints = [] } "fp")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 60 511 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 60 511 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 60 511 65 , srcInfoPoints = [] } "the_s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 66 511 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 66 511 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 511 66 511 72 , srcInfoPoints = [] } "left_l"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 42 512 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 42 512 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 42 512 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 42 512 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 42 512 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 42 512 56 , srcInfoPoints = [] } "fromForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 57 512 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 57 512 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 57 512 59 , srcInfoPoints = [] } "fp")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 60 512 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 60 512 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 60 512 61 , srcInfoPoints = [] } "s")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 62 512 74 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 512 62 512 63 , SrcSpan "tests/examples/ByteStringUtils.hs" 512 73 512 74 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 63 512 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 63 512 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 63 512 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 63 512 64 , srcInfoPoints = [] } "l"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 65 512 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 65 512 66 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 65 512 66 , srcInfoPoints = [] } "-"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 67 512 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 67 512 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 512 67 512 73 , srcInfoPoints = [] } "left_l"))))) ]))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 11 515 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 11 513 17 , srcInfoPoints = [] } "findit") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 18 513 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 18 513 19 , srcInfoPoints = [] } "i") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 20 513 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 20 513 21 , srcInfoPoints = [] } "s") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 22 515 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 513 22 513 23 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 24 515 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 513 24 513 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 513 27 513 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 514 27 514 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 516 11 516 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 27 513 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 513 29 513 31 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 27 513 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 27 513 28 , srcInfoPoints = [] } "w")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 32 513 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 32 513 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 32 513 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 32 513 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 32 513 43 , srcInfoPoints = [] } "peekElemOff"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 44 513 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 44 513 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 44 513 45 , srcInfoPoints = [] } "p")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 46 513 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 46 513 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 513 46 513 47 , srcInfoPoints = [] } "s")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 27 515 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 514 27 514 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 514 38 514 42 , SrcSpan "tests/examples/ByteStringUtils.hs" 515 38 515 42 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 27 515 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 514 27 514 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 514 38 514 42 , SrcSpan "tests/examples/ByteStringUtils.hs" 515 38 515 42 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 30 514 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 30 514 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 30 514 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 30 514 31 , srcInfoPoints = [] } "w"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 32 514 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 32 514 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 32 514 34 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 35 514 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 35 514 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 35 514 37 , srcInfoPoints = [] } "nl")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 43 514 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 43 514 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 43 514 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 43 514 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 43 514 49 , srcInfoPoints = [] } "findit"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 50 514 55 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 514 50 514 51 , SrcSpan "tests/examples/ByteStringUtils.hs" 514 54 514 55 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 51 514 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 51 514 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 51 514 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 51 514 52 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 52 514 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 52 514 53 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 52 514 53 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 53 514 54 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 53 514 54 , srcInfoPoints = [] } 1 "1"))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 56 514 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 514 56 514 57 , SrcSpan "tests/examples/ByteStringUtils.hs" 514 60 514 61 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 57 514 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 57 514 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 57 514 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 57 514 58 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 58 514 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 58 514 59 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 58 514 59 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 59 514 60 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 514 59 514 60 , srcInfoPoints = [] } 1 "1"))))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 43 515 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 43 515 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 43 515 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 43 515 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 43 515 49 , srcInfoPoints = [] } "findit"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 50 515 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 50 515 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 50 515 51 , srcInfoPoints = [] } "i")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 52 515 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 515 52 515 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 515 56 515 57 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 53 515 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 53 515 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 53 515 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 53 515 54 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 54 515 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 54 515 55 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 54 515 55 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 55 515 56 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 515 55 515 56 , srcInfoPoints = [] } 1 "1")))))) ])) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 11 516 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 11 516 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 11 516 13 , srcInfoPoints = [] } "nl")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 14 516 27 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 516 14 516 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 16 516 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 16 516 22 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 16 516 22 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 16 516 22 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 16 516 22 , srcInfoPoints = [] } "c2w"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 23 516 27 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 516 23 516 27 , srcInfoPoints = [] } '\n' "\\n")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 11 517 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 11 517 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 11 517 14 , srcInfoPoints = [] } "end")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 15 517 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 517 15 517 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 17 517 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 17 517 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 17 517 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 17 517 22 , srcInfoPoints = [] } "the_s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 23 517 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 23 517 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 23 517 24 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 25 517 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 25 517 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 517 25 517 26 , srcInfoPoints = [] } "l"))))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 7 518 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 7 518 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 7 518 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 7 518 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 7 518 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 7 518 13 , srcInfoPoints = [] } "findit"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 14 518 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 14 518 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 14 518 15 , srcInfoPoints = [] } "n")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 16 518 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 16 518 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 518 16 518 21 , srcInfoPoints = [] } "the_s")))) ]))))) Nothing ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 1 523 80 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 523 26 523 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 1 523 25 , srcInfoPoints = [] } "break_before_nth_newline" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 29 523 80 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 523 33 523 35 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 29 523 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 29 523 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 29 523 32 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 36 523 80 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 523 49 523 51 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 36 523 48 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 36 523 48 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 36 523 48 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 36 523 48 , srcInfoPoints = [] } "ByteString"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 52 523 80 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 523 52 523 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 523 65 523 66 , SrcSpan "tests/examples/ByteStringUtils.hs" 523 79 523 80 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 53 523 65 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 53 523 65 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 53 523 65 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 53 523 65 , srcInfoPoints = [] } "ByteString")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 67 523 79 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 67 523 79 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 67 523 79 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 523 67 523 79 , srcInfoPoints = [] } "ByteString")) ]))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 524 1 541 21 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 524 1 525 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 524 1 524 25 , srcInfoPoints = [] } "break_before_nth_newline") [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 524 26 524 27 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 524 26 524 27 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 524 26 524 27 , srcInfoPoints = [] } 0 "0") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 524 28 524 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 524 28 524 34 , srcInfoPoints = [] } "the_ps") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 2 525 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 525 2 525 3 , SrcSpan "tests/examples/ByteStringUtils.hs" 525 18 525 19 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 2 525 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 525 2 525 3 , SrcSpan "tests/examples/ByteStringUtils.hs" 525 18 525 19 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 4 525 17 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 4 525 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 4 525 10 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 4 525 10 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 4 525 10 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 4 525 10 , srcInfoPoints = [] } "null"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 11 525 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 11 525 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 11 525 17 , srcInfoPoints = [] } "the_ps")))) ] (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 20 525 38 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 525 20 525 21 , SrcSpan "tests/examples/ByteStringUtils.hs" 525 28 525 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 525 37 525 38 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 21 525 28 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 21 525 28 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 21 525 28 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 21 525 28 , srcInfoPoints = [] } "empty")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 30 525 37 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 30 525 37 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 30 525 37 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 525 30 525 37 , srcInfoPoints = [] } "empty")) ]) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 526 1 541 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 526 1 526 25 , srcInfoPoints = [] } "break_before_nth_newline") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 526 26 526 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 526 26 526 27 , srcInfoPoints = [] } "n") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 526 28 526 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 526 28 526 34 , srcInfoPoints = [] } "the_ps") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 526 35 541 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 526 35 526 36 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 2 541 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 527 2 527 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 527 30 527 32 , SrcSpan "tests/examples/ByteStringUtils.hs" 528 2 528 2 , SrcSpan "tests/examples/ByteStringUtils.hs" 542 1 542 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 7 527 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 7 527 22 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 7 527 22 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 7 527 22 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 7 527 22 , srcInfoPoints = [] } "toForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 23 527 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 23 527 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 527 23 527 29 , srcInfoPoints = [] } "the_ps")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 2 541 21 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 2 528 14 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 528 2 528 3 , SrcSpan "tests/examples/ByteStringUtils.hs" 528 5 528 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 528 11 528 12 , SrcSpan "tests/examples/ByteStringUtils.hs" 528 13 528 14 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 3 528 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 3 528 5 , srcInfoPoints = [] } "fp") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 6 528 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 6 528 11 , srcInfoPoints = [] } "the_s") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 12 528 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 12 528 13 , srcInfoPoints = [] } "l") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 528 15 541 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 528 15 528 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 4 541 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 4 529 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 4 529 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 4 529 19 , srcInfoPoints = [] } "unsafePerformIO"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 20 529 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 20 529 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 20 529 21 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 22 541 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 22 529 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 22 529 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 22 529 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 22 529 36 , srcInfoPoints = [] } "withForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 37 529 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 37 529 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 37 529 39 , srcInfoPoints = [] } "fp")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 40 529 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 40 529 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 40 529 41 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 42 541 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 529 42 529 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 529 45 529 47 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 43 529 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 529 43 529 44 , srcInfoPoints = [] } "p") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 4 541 21 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 530 4 530 6 , SrcSpan "tests/examples/ByteStringUtils.hs" 530 7 530 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 541 7 541 7 , SrcSpan "tests/examples/ByteStringUtils.hs" 542 1 542 0 ] } [ LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 7 540 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 530 7 530 10 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 11 540 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 530 11 530 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 531 11 531 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 539 11 539 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 540 11 540 11 , SrcSpan "tests/examples/ByteStringUtils.hs" 541 7 541 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 11 538 48 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 11 530 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 11 530 17 , srcInfoPoints = [] } "findit") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 18 530 19 , srcInfoPoints = [] } , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 20 530 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 20 530 21 , srcInfoPoints = [] } "s") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 22 530 59 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 530 22 530 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 530 33 530 34 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 22 530 59 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 530 22 530 23 , SrcSpan "tests/examples/ByteStringUtils.hs" 530 33 530 34 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 24 530 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 24 530 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 24 530 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 24 530 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 24 530 25 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 26 530 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 26 530 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 26 530 28 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 29 530 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 29 530 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 29 530 32 , srcInfoPoints = [] } "end")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 35 530 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 35 530 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 35 530 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 35 530 41 , srcInfoPoints = [] } "return"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 42 530 59 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 530 42 530 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 530 49 530 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 530 58 530 59 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 43 530 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 43 530 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 43 530 49 , srcInfoPoints = [] } "the_ps")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 51 530 58 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 51 530 58 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 51 530 58 , srcInfoPoints = [] } "B") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 530 51 530 58 , srcInfoPoints = [] } "empty")) ])) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 11 538 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 11 531 17 , srcInfoPoints = [] } "findit") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 18 531 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 18 531 19 , srcInfoPoints = [] } "i") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 20 531 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 20 531 21 , srcInfoPoints = [] } "s") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 22 538 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 531 22 531 23 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 24 538 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 531 24 531 26 , SrcSpan "tests/examples/ByteStringUtils.hs" 531 27 531 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 532 27 532 27 , SrcSpan "tests/examples/ByteStringUtils.hs" 539 11 539 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 27 531 47 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 531 29 531 31 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 27 531 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 27 531 28 , srcInfoPoints = [] } "w")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 32 531 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 32 531 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 32 531 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 32 531 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 32 531 43 , srcInfoPoints = [] } "peekElemOff"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 44 531 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 44 531 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 44 531 45 , srcInfoPoints = [] } "p")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 46 531 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 46 531 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 531 46 531 47 , srcInfoPoints = [] } "s")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 27 538 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 532 27 532 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 533 29 533 33 , SrcSpan "tests/examples/ByteStringUtils.hs" 538 29 538 33 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 27 538 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 532 27 532 29 , SrcSpan "tests/examples/ByteStringUtils.hs" 533 29 533 33 , SrcSpan "tests/examples/ByteStringUtils.hs" 538 29 538 33 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 30 532 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 30 532 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 30 532 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 30 532 31 , srcInfoPoints = [] } "w"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 32 532 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 32 532 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 32 532 34 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 35 532 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 35 532 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 532 35 532 37 , srcInfoPoints = [] } "nl")))) (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 34 537 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 533 34 533 36 , SrcSpan "tests/examples/ByteStringUtils.hs" 534 34 534 38 , SrcSpan "tests/examples/ByteStringUtils.hs" 537 34 537 38 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 37 533 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 37 533 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 37 533 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 37 533 38 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 39 533 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 39 533 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 39 533 41 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 42 533 43 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 533 42 533 43 , srcInfoPoints = [] } 0 "0"))) (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 39 536 83 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 534 39 534 42 , SrcSpan "tests/examples/ByteStringUtils.hs" 535 39 535 41 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 43 534 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 534 43 534 43 , SrcSpan "tests/examples/ByteStringUtils.hs" 535 39 535 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 43 534 61 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 43 534 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 43 534 49 , srcInfoPoints = [] } "left_l")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 50 534 61 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 534 50 534 51 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 52 534 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 52 534 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 52 534 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 52 534 53 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 54 534 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 54 534 55 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 54 534 55 , srcInfoPoints = [] } "-"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 56 534 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 56 534 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 534 56 534 61 , srcInfoPoints = [] } "the_s"))))) Nothing ]) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 42 536 83 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 42 535 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 42 535 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 42 535 48 , srcInfoPoints = [] } "return"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 49 536 83 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 535 49 535 50 , SrcSpan "tests/examples/ByteStringUtils.hs" 535 80 535 81 , SrcSpan "tests/examples/ByteStringUtils.hs" 536 82 536 83 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 50 535 80 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 50 535 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 50 535 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 50 535 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 50 535 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 50 535 64 , srcInfoPoints = [] } "fromForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 65 535 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 65 535 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 65 535 67 , srcInfoPoints = [] } "fp")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 68 535 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 68 535 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 68 535 73 , srcInfoPoints = [] } "the_s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 74 535 80 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 74 535 80 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 535 74 535 80 , srcInfoPoints = [] } "left_l"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 50 536 82 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 50 536 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 50 536 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 50 536 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 50 536 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 50 536 64 , srcInfoPoints = [] } "fromForeignPtr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 65 536 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 65 536 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 65 536 67 , srcInfoPoints = [] } "fp")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 68 536 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 68 536 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 68 536 69 , srcInfoPoints = [] } "s")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 70 536 82 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 536 70 536 71 , SrcSpan "tests/examples/ByteStringUtils.hs" 536 81 536 82 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 71 536 81 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 71 536 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 71 536 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 71 536 72 , srcInfoPoints = [] } "l"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 73 536 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 73 536 74 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 73 536 74 , srcInfoPoints = [] } "-"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 75 536 81 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 75 536 81 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 536 75 536 81 , srcInfoPoints = [] } "left_l"))))) ]))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 39 537 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 39 537 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 39 537 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 39 537 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 39 537 45 , srcInfoPoints = [] } "findit"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 46 537 51 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 537 46 537 47 , SrcSpan "tests/examples/ByteStringUtils.hs" 537 50 537 51 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 47 537 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 47 537 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 47 537 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 47 537 48 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 48 537 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 48 537 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 48 537 49 , srcInfoPoints = [] } "-"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 49 537 50 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 49 537 50 , srcInfoPoints = [] } 1 "1"))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 52 537 57 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 537 52 537 53 , SrcSpan "tests/examples/ByteStringUtils.hs" 537 56 537 57 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 53 537 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 53 537 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 53 537 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 53 537 54 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 54 537 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 54 537 55 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 54 537 55 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 55 537 56 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 537 55 537 56 , srcInfoPoints = [] } 1 "1")))))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 34 538 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 34 538 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 34 538 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 34 538 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 34 538 40 , srcInfoPoints = [] } "findit"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 41 538 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 41 538 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 41 538 42 , srcInfoPoints = [] } "i")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 43 538 48 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 538 43 538 44 , SrcSpan "tests/examples/ByteStringUtils.hs" 538 47 538 48 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 44 538 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 44 538 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 44 538 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 44 538 45 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 45 538 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 45 538 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 45 538 46 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 46 538 47 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 538 46 538 47 , srcInfoPoints = [] } 1 "1")))))) ])) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 11 539 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 11 539 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 11 539 13 , srcInfoPoints = [] } "nl")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 14 539 27 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 539 14 539 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 16 539 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 16 539 22 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 16 539 22 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 16 539 22 , srcInfoPoints = [] } "BI") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 16 539 22 , srcInfoPoints = [] } "c2w"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 23 539 27 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 539 23 539 27 , srcInfoPoints = [] } '\n' "\\n")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 11 540 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 11 540 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 11 540 14 , srcInfoPoints = [] } "end")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 15 540 26 , srcInfoPoints = [ SrcSpan "tests/examples/ByteStringUtils.hs" 540 15 540 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 17 540 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 17 540 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 17 540 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 17 540 22 , srcInfoPoints = [] } "the_s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 23 540 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 23 540 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 23 540 24 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 25 540 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 25 540 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 540 25 540 26 , srcInfoPoints = [] } "l"))))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 7 541 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 7 541 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 7 541 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 7 541 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 7 541 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 7 541 13 , srcInfoPoints = [] } "findit"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 14 541 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 14 541 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 14 541 15 , srcInfoPoints = [] } "n")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 16 541 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 16 541 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ByteStringUtils.hs" 541 16 541 21 , srcInfoPoints = [] } "the_s")))) ]))))) Nothing ])) Nothing ] ] , [ Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 3 1 3 78) "---------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 4 1 4 5) " |" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 5 1 5 34) " Module : ByteStringUtils" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 6 1 6 54) " Copyright : (c) The University of Glasgow 2001," , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 7 1 7 45) " David Roundy 2003-2005" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 8 1 8 74) " License : GPL (I'm happy to also license this file BSD style but don't" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 9 1 9 71) " want to bother distributing two license files with darcs." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 10 1 10 3) "" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 11 1 11 42) " Maintainer : droundy@abridgegame.org" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 12 1 12 31) " Stability : experimental" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 13 1 13 27) " Portability : portable" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 14 1 14 3) "" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 15 1 15 85) " GZIp and MMap IO for ByteStrings, and miscellaneous functions for Data.ByteString" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 16 1 16 3) "" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 23 9 23 32) " IO with mmap or gzip" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 29 9 29 26) " list utilities" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 56 1 56 60) " #if defined (HAVE_MMAP) || ! defined (HAVE_HASKELL_ZLIB)" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 58 1 58 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 73 1 73 29) " #ifndef HAVE_HASKELL_ZLIB" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 76 1 76 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 80 1 80 19) " #ifdef DEBUG_PS" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 83 1 83 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 85 1 85 25) " #if HAVE_HASKELL_ZLIB" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 88 1 88 9) " #else" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 90 1 90 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 92 1 92 20) " #ifdef HAVE_MMAP" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 96 1 96 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 98 1 98 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 99 1 99 27) " obsolete debugging code" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 101 1 101 30) " # ifndef HAVE_HASKELL_ZLIB" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 103 1 103 19) " #ifdef DEBUG_PS" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 112 1 112 9) " #else" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 114 1 114 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 115 1 115 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 117 1 117 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 118 1 118 23) " unsafeWithInternals" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 120 1 120 66) " | Do something with the internals of a PackedString. Beware of" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 121 1 121 26) " altering the contents!" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 127 1 127 74) " | readIntPS skips any whitespace at the beginning of its argument, and" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 128 1 128 72) " reads an Int from the beginning of the PackedString. If there is no" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 129 1 129 76) " integer at the beginning of the string, it returns Nothing, otherwise it" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 130 1 130 71) " just returns the int read, along with a B.ByteString containing the" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 131 1 131 27) " remainder of its input." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 136 1 136 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 137 1 137 53) " Destructor functions (taking PackedStrings apart)" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 156 1 156 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 157 1 157 46) " List-mimicking functions for PackedStrings" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 165 1 165 73) "----------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 166 1 166 62) " A reimplementation of Data.ByteString.Char8.dropSpace, but" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 167 1 167 51) " specialised to darcs' need for a 4 way isspace." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 168 1 168 3) "" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 169 1 169 70) " TODO: if it is safe to use the expanded definition of isSpaceWord8" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 170 1 170 60) " provided by Data.ByteString.Char8, then all this can go." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 172 1 172 83) " A locale-independent isspace(3) so patches are interpreted the same everywhere." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 173 1 173 61) " ((c) == ' ' || (c) == '\\t' || (c) == '\\n' || (c) == '\\r')" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 176 21 176 27) " ' '" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 177 21 177 28) " '\\t'" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 178 21 178 28) " '\\n'" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 179 21 179 28) " '\\r'" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 194 1 194 68) " | 'dropSpace' efficiently returns the 'ByteString' argument with" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 195 1 195 71) " white space Chars removed from the front. It is more efficient than" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 196 1 196 51) " calling dropWhile for removing whitespace. I.e." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 197 1 197 3) "" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 198 1 198 36) " > dropWhile isSpace == dropSpace" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 199 1 199 3) "" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 206 1 206 71) " | 'breakSpace' returns the pair of ByteStrings when the argument is" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 207 1 207 45) " broken at the first whitespace byte. I.e." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 208 1 208 3) "" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 209 1 209 33) " > break isSpace == breakSpace" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 210 1 210 3) "" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 221 1 221 73) "----------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 233 1 233 73) "----------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 235 1 235 54) " ByteString rewrites break (=='x') to breakByte 'x'" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 236 1 236 33) " break ((==) x) = breakChar x" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 237 1 237 30) " break (==x) = breakChar x" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 238 1 238 3) "" , Comment True (SrcSpan "tests/examples/ByteStringUtils.hs" 240 1 246 3) "\n{-# INLINE breakOnPS #-}\nbreakOnPS :: Char -> B.ByteString -> (B.ByteString, B.ByteString)\nbreakOnPS c p = case BC.elemIndex c p of\n Nothing -> (p, BC.empty)\n Just n -> (B.take n p, B.drop n p)\n" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 275 1 275 73) "----------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 277 1 277 72) " TODO: replace breakFirstPS and breakLastPS with definitions based on" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 278 1 278 31) " ByteString's break/breakEnd" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 291 1 291 16) " TODO: rename" , Comment True (SrcSpan "tests/examples/ByteStringUtils.hs" 298 1 311 66) " QuickCheck property:\n\nimport Test.QuickCheck\nimport qualified Data.ByteString.Char8 as BC\nimport Data.Char\ninstance Arbitrary BC.ByteString where\n arbitrary = fmap BC.pack arbitrary\ninstance Arbitrary Char where\n arbitrary = chr `fmap` choose (32,127)\ndeepCheck = check (defaultConfig { configMaxTest = 10000})\ntestLines = deepCheck (\\x -> (linesPS x == linesPSOld x))\nlinesPSOld ps = case BC.elemIndex '\\n' ps of\n Nothing -> [ps]\n Just n -> B.take n ps : linesPS (B.drop (n+1) ps) " , Comment True (SrcSpan "tests/examples/ByteStringUtils.hs" 313 1 322 31) "| This function acts exactly like the \"Prelude\" unlines function, or like\n\"Data.ByteString.Char8\" 'unlines', but with one important difference: it will\nproduce a string which may not end with a newline! That is:\n\n> unlinesPS [\"foo\", \"bar\"]\n\nevaluates to \\\"foo\\\\nbar\\\", not \\\"foo\\\\nbar\\\\n\\\"! This point should hold true for\n'linesPS' as well.\n\nTODO: rename this function. " , Comment True (SrcSpan "tests/examples/ByteStringUtils.hs" 327 1 333 36) " QuickCheck property:\n\ntestUnlines = deepCheck (\\x -> (unlinesPS x == unlinesPSOld x))\nunlinesPSOld ss = BC.concat $ intersperse_newlines ss\n where intersperse_newlines (a:b:s) = a : newline : intersperse_newlines (b:s)\n intersperse_newlines s = s\n newline = BC.pack \"\\n\" " , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 335 1 335 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 336 1 336 16) " gzReadFilePS" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 338 1 338 76) " | Read an entire file, which may or may not be gzip compressed, directly" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 339 1 339 26) " into a 'B.ByteString'." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 341 1 341 29) " #ifndef HAVE_HASKELL_ZLIB" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 350 1 350 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 362 1 362 28) " #ifdef HAVE_HASKELL_ZLIB" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 363 16 363 64) " Passing the length to GZ.decompressWith means" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 364 16 364 74) " that BL.toChunks only produces one chunk, which in turn" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 365 16 365 63) " means that B.concat won't need to copy data." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 366 16 366 91) " If the length is wrong this will just affect efficiency, not correctness" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 371 1 371 30) " #ifdef HAVE_OLD_BYTESTRING" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 372 25 372 104) " bytestring < 0.9.1 had a bug where it did not know to close handles upon EOF" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 373 25 373 88) " performance would be better with a newer bytestring and lazy" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 374 25 374 70) " readFile below -- ratify readFile: comment" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 376 39 376 79) " ratify readFile: immediately consumed" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 377 1 377 9) " #else" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 378 39 378 120) " ratify readFile: immediately consumed by the conversion to a strict bytestring" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 379 1 379 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 380 1 380 9) " #else" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 392 1 392 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 407 1 407 28) " #ifdef HAVE_HASKELL_ZLIB" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 409 1 409 9) " #else" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 419 23 419 72) " avoid calling gzwrite with 0 length this would" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 420 23 420 73) " trouble on some versions of zlib, and is always" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 421 23 421 38) " unnecessary." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 426 1 426 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 428 1 428 81) " -----------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 429 1 429 14) " mmapFilePS" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 431 1 431 64) " | Like readFilePS, this reads an entire file directly into a" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 432 1 432 72) " 'B.ByteString', but it is even more efficient. It involves directly" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 433 1 433 76) " mapping the file to memory. This has the advantage that the contents of" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 434 1 434 75) " the file never need to be copied. Also, under memory pressure the page" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 435 1 435 76) " may simply be discarded, wile in the case of readFilePS it would need to" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 436 1 436 73) " be written to swap. If you read many small files, mmapFilePS will be" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 437 1 437 75) " less memory-efficient than readFilePS, since each mmapFilePS takes up a" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 438 1 438 75) " separate page of memory. Also, you can run into bus errors if the file" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 439 1 439 74) " is modified. NOTE: as with 'readFilePS', the string representation in" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 440 1 440 41) " the file is assumed to be ISO-8859-1." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 443 1 443 20) " #ifdef HAVE_MMAP" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 452 1 452 9) " #else" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 454 1 454 10) " #endif" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 456 1 456 77) " -------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 457 1 457 14) " fromPS2Hex" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 468 1 468 77) " -------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 469 1 469 14) " fromHex2PS" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 480 1 480 77) " -------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 481 1 481 18) " betweenLinesPS" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 483 1 483 74) " | betweenLinesPS returns the B.ByteString between the two lines given," , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 484 1 484 37) " or Nothing if they do not appear." , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 498 1 498 77) " -------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 499 1 499 27) " break_after_nth_newline" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 520 1 520 77) " -------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/ByteStringUtils.hs" 521 1 521 28) " break_before_nth_newline" ] ) haskell-src-exts-1.18.2/tests/examples/ByteStringUtils.hs.prettyparser.golden0000644000000000000000000041320612746233113025633 0ustar0000000000000000Roundtrip test failed AST 1: Module () (Just (ModuleHead () (ModuleName () "ByteStringUtils") Nothing (Just (ExportSpecList () [EVar () (UnQual () (Ident () "unsafeWithInternals")),EVar () (UnQual () (Ident () "unpackPSfromUTF8")),EVar () (UnQual () (Ident () "gzReadFilePS")),EVar () (UnQual () (Ident () "mmapFilePS")),EVar () (UnQual () (Ident () "gzWriteFilePS")),EVar () (UnQual () (Ident () "gzWriteFilePSs")),EVar () (UnQual () (Ident () "ifHeadThenTail")),EVar () (UnQual () (Ident () "dropSpace")),EVar () (UnQual () (Ident () "breakSpace")),EVar () (UnQual () (Ident () "linesPS")),EVar () (UnQual () (Ident () "unlinesPS")),EVar () (UnQual () (Ident () "hashPS")),EVar () (UnQual () (Ident () "breakFirstPS")),EVar () (UnQual () (Ident () "breakLastPS")),EVar () (UnQual () (Ident () "substrPS")),EVar () (UnQual () (Ident () "readIntPS")),EVar () (UnQual () (Ident () "is_funky")),EVar () (UnQual () (Ident () "fromHex2PS")),EVar () (UnQual () (Ident () "fromPS2Hex")),EVar () (UnQual () (Ident () "betweenLinesPS")),EVar () (UnQual () (Ident () "break_after_nth_newline")),EVar () (UnQual () (Ident () "break_before_nth_newline")),EVar () (UnQual () (Ident () "intercalate"))])))) [LanguagePragma () [Ident () "BangPatterns",Ident () "ForeignFunctionInterface",Ident () "CPP"]] [ImportDecl {importAnn = (), importModule = ModuleName () "Prelude", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () True [IVar () (Ident () "catch")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "B"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString.Char8", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "BC"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString.Internal", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "BI"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "intercalate"),IVar () (Ident () "uncons")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString.Internal", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "fromForeignPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Control.Exception", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "catch")])},ImportDecl {importAnn = (), importModule = ModuleName () "System.IO", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "System.IO.Unsafe", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "unsafePerformIO")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Storable", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "peekElemOff"),IVar () (Ident () "peek")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Marshal.Alloc", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "free")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Marshal.Array", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "mallocArray"),IVar () (Ident () "peekArray"),IVar () (Ident () "advancePtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.C.Types", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "CInt")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.Bits", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "rotateL")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.Char", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "chr"),IVar () (Ident () "ord"),IVar () (Ident () "isSpace")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.Word", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "Word8")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.Int", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "Int32")])},ImportDecl {importAnn = (), importModule = ModuleName () "Control.Monad", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "when")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Ptr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "nullPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.ForeignPtr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "ForeignPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Ptr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "plusPtr"),IAbs () (NoNamespace ()) (Ident () "Ptr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.ForeignPtr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "withForeignPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.ForeignPtr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "addForeignPtrFinalizer")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Ptr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "FunPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString.Lazy", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "BL"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Codec.Compression.GZip", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "GZ"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.C.String", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "CString"),IVar () (Ident () "withCString")])},ImportDecl {importAnn = (), importModule = ModuleName () "System.IO.MMap", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "mmapFileByteString")])},ImportDecl {importAnn = (), importModule = ModuleName () "System.Mem", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "performGC")])},ImportDecl {importAnn = (), importModule = ModuleName () "System.Posix.Files", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "fileSize"),IVar () (Ident () "getSymbolicLinkStatus")])}] [TypeSig () [Ident () "debugForeignPtr"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "ForeignPtr"))) (TyVar () (Ident () "a"))) (TyFun () (TyCon () (UnQual () (Ident () "String"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h debug_alloc") (Ident () "debug_alloc") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyVar () (Ident () "a"))) (TyFun () (TyCon () (UnQual () (Ident () "CString"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h & debug_free") (Ident () "debug_free") (TyApp () (TyCon () (UnQual () (Ident () "FunPtr"))) (TyParen () (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyVar () (Ident () "a"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ()))))))),FunBind () [Match () (Ident () "debugForeignPtr") [PVar () (Ident () "fp"),PVar () (Ident () "n")] (UnGuardedRhs () (InfixApp () (App () (Var () (UnQual () (Ident () "withCString"))) (Var () (UnQual () (Ident () "n")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "cname")] (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Qualifier () (App () (App () (Var () (UnQual () (Ident () "debug_alloc"))) (Var () (UnQual () (Ident () "p")))) (Var () (UnQual () (Ident () "cname")))),Qualifier () (App () (App () (Var () (UnQual () (Ident () "addForeignPtrFinalizer"))) (Var () (UnQual () (Ident () "debug_free")))) (Var () (UnQual () (Ident () "fp"))))])))))) Nothing,Match () (Ident () "debugForeignPtr") [PWildCard (),PWildCard ()] (UnGuardedRhs () (App () (Var () (UnQual () (Ident () "return"))) (Con () (Special () (UnitCon ()))))) Nothing],TypeSig () [Ident () "unsafeWithInternals"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyFun () (TyParen () (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyVar () (Ident () "a")))))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyVar () (Ident () "a"))))),FunBind () [Match () (Ident () "unsafeWithInternals") [PVar () (Ident () "ps"),PVar () (Ident () "f")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "fp"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (App () (App () (Var () (UnQual () (Ident () "f"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Var () (UnQual () (Ident () "l"))))))) Nothing])) Nothing],TypeSig () [Ident () "readIntPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyTuple () Boxed [TyCon () (UnQual () (Ident () "Int")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))]))),PatBind () (PVar () (Ident () "readIntPS")) (UnGuardedRhs () (InfixApp () (Var () (Qual () (ModuleName () "BC") (Ident () "readInt"))) (QVarOp () (UnQual () (Symbol () "."))) (App () (Var () (Qual () (ModuleName () "BC") (Ident () "dropWhile"))) (Var () (UnQual () (Ident () "isSpace")))))) Nothing,TypeSig () [Ident () "unpackPSfromUTF8"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (UnQual () (Ident () "String")))),FunBind () [Match () (Ident () "unpackPSfromUTF8") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PWildCard (),PWildCard (),PLit () (Signless ()) (Int () 0 "0")]) (UnGuardedRhs () (Lit () (String () "" ""))) Nothing,Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Generator () (PVar () (Ident () "outbuf")) (App () (Var () (UnQual () (Ident () "mallocArray"))) (Var () (UnQual () (Ident () "l")))),Generator () (PVar () (Ident () "lout")) (InfixApp () (Var () (UnQual () (Ident () "fromIntegral"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (App () (App () (Var () (UnQual () (Ident () "utf8_to_ints"))) (Var () (UnQual () (Ident () "outbuf")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "l"))))))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "lout"))) (QVarOp () (UnQual () (Symbol () "<"))) (Lit () (Int () 0 "0"))))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Var () (UnQual () (Ident () "error"))) (Lit () (String () "Bad UTF8!" "Bad UTF8!")))),Generator () (PVar () (Ident () "str")) (InfixApp () (Paren () (App () (Var () (UnQual () (Ident () "map"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "chr"))) (QVarOp () (UnQual () (Symbol () "."))) (Var () (UnQual () (Ident () "fromIntegral"))))))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (App () (Var () (UnQual () (Ident () "peekArray"))) (Var () (UnQual () (Ident () "lout")))) (Var () (UnQual () (Ident () "outbuf"))))),Qualifier () (App () (Var () (UnQual () (Ident () "free"))) (Var () (UnQual () (Ident () "outbuf")))),Qualifier () (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "str"))))]))))) Nothing])) Nothing],ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h utf8_to_ints") (Ident () "utf8_to_ints") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Int")))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "CInt"))))))),InlineSig () True Nothing (UnQual () (Ident () "ifHeadThenTail")),TypeSig () [Ident () "ifHeadThenTail"] (TyFun () (TyCon () (UnQual () (Ident () "Word8"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))))),FunBind () [Match () (Ident () "ifHeadThenTail") [PVar () (Ident () "c"),PVar () (Ident () "s")] (UnGuardedRhs () (Case () (App () (Var () (UnQual () (Ident () "uncons"))) (Var () (UnQual () (Ident () "s")))) [Alt () (PApp () (UnQual () (Ident () "Just")) [PTuple () Boxed [PVar () (Ident () "w"),PVar () (Ident () "t")]]) (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "c"))))] (App () (Con () (UnQual () (Ident () "Just"))) (Var () (UnQual () (Ident () "t"))))]) Nothing,Alt () (PWildCard ()) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing])) Nothing],TypeSig () [Ident () "isSpaceWord8"] (TyFun () (TyCon () (UnQual () (Ident () "Word8"))) (TyCon () (UnQual () (Ident () "Bool")))),FunBind () [Match () (Ident () "isSpaceWord8") [PVar () (Ident () "w")] (UnGuardedRhs () (InfixApp () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 32 "0x20"))) (QVarOp () (UnQual () (Symbol () "||"))) (InfixApp () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 9 "0x09"))) (QVarOp () (UnQual () (Symbol () "||"))) (InfixApp () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 10 "0x0A"))) (QVarOp () (UnQual () (Symbol () "||"))) (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 13 "0x0D"))))))) Nothing],InlineSig () True Nothing (UnQual () (Ident () "isSpaceWord8")),TypeSig () [Ident () "firstnonspace"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "Int"))))))),FunBind () [Match () (Ident () "firstnonspace") [PBangPat () (PVar () (Ident () "ptr")),PBangPat () (PVar () (Ident () "n")),PBangPat () (PVar () (Ident () "m"))] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () ">="))) (Var () (UnQual () (Ident () "m"))))] (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "n")))),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (Do () [Generator () (PVar () (Ident () "w")) (App () (App () (Var () (UnQual () (Ident () "peekElemOff"))) (Var () (UnQual () (Ident () "ptr")))) (Var () (UnQual () (Ident () "n")))),Qualifier () (If () (App () (Var () (UnQual () (Ident () "isSpaceWord8"))) (Var () (UnQual () (Ident () "w")))) (App () (App () (App () (Var () (UnQual () (Ident () "firstnonspace"))) (Var () (UnQual () (Ident () "ptr")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "m")))) (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "n")))))])]) Nothing],TypeSig () [Ident () "firstspace"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "Int"))))))),FunBind () [Match () (Ident () "firstspace") [PBangPat () (PVar () (Ident () "ptr")),PBangPat () (PVar () (Ident () "n")),PBangPat () (PVar () (Ident () "m"))] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () ">="))) (Var () (UnQual () (Ident () "m"))))] (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "n")))),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (Do () [Generator () (PVar () (Ident () "w")) (App () (App () (Var () (UnQual () (Ident () "peekElemOff"))) (Var () (UnQual () (Ident () "ptr")))) (Var () (UnQual () (Ident () "n")))),Qualifier () (If () (App () (Paren () (InfixApp () (Var () (UnQual () (Ident () "not"))) (QVarOp () (UnQual () (Symbol () "."))) (Var () (UnQual () (Ident () "isSpaceWord8"))))) (Var () (UnQual () (Ident () "w")))) (App () (App () (App () (Var () (UnQual () (Ident () "firstspace"))) (Var () (UnQual () (Ident () "ptr")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "m")))) (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "n")))))])]) Nothing],TypeSig () [Ident () "dropSpace"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))),FunBind () [Match () (Ident () "dropSpace") [PParen () (PApp () (Qual () (ModuleName () "BI") (Ident () "PS")) [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")])] (UnGuardedRhs () (InfixApp () (Var () (Qual () (ModuleName () "BI") (Ident () "inlinePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Generator () (PVar () (Ident () "i")) (App () (App () (App () (Var () (UnQual () (Ident () "firstnonspace"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Lit () (Int () 0 "0"))) (Var () (UnQual () (Ident () "l")))),Qualifier () (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$!"))) (If () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "l")))) (Var () (Qual () (ModuleName () "B") (Ident () "empty"))) (App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Var () (UnQual () (Ident () "i")))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "i"))))))))]))))) Nothing],InlineSig () True Nothing (UnQual () (Ident () "dropSpace")),TypeSig () [Ident () "breakSpace"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))])),FunBind () [Match () (Ident () "breakSpace") [PParen () (PApp () (Qual () (ModuleName () "BI") (Ident () "PS")) [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")])] (UnGuardedRhs () (InfixApp () (Var () (Qual () (ModuleName () "BI") (Ident () "inlinePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Generator () (PVar () (Ident () "i")) (App () (App () (App () (Var () (UnQual () (Ident () "firstspace"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Lit () (Int () 0 "0"))) (Var () (UnQual () (Ident () "l")))),Qualifier () (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$!"))) (Case () (Con () (Special () (UnitCon ()))) [Alt () (PWildCard ()) (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 0 "0")))] (Tuple () Boxed [Var () (Qual () (ModuleName () "B") (Ident () "empty")),App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Var () (UnQual () (Ident () "s")))) (Var () (UnQual () (Ident () "l")))]),GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "l"))))] (Tuple () Boxed [App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Var () (UnQual () (Ident () "s")))) (Var () (UnQual () (Ident () "l"))),Var () (Qual () (ModuleName () "B") (Ident () "empty"))]),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (Tuple () Boxed [App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Var () (UnQual () (Ident () "s")))) (Var () (UnQual () (Ident () "i"))),App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Var () (UnQual () (Ident () "i")))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "i")))))])]) Nothing]))]))))) Nothing],InlineSig () True Nothing (UnQual () (Ident () "breakSpace")),InlineSig () True Nothing (UnQual () (Ident () "is_funky")),TypeSig () [Ident () "is_funky"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (UnQual () (Ident () "Bool")))),FunBind () [Match () (Ident () "is_funky") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (InfixApp () (RightSection () (QVarOp () (UnQual () (Symbol () "/="))) (Lit () (Int () 0 "0"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (App () (Var () (UnQual () (Ident () "has_funky_char"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "l"))))))))))) Nothing])) Nothing],ForImp () (CCall ()) (Just (PlayRisky ())) (Just "fpstring.h has_funky_char") (Ident () "has_funky_char") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "CInt")))))),InlineSig () True Nothing (UnQual () (Ident () "hashPS")),TypeSig () [Ident () "hashPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (UnQual () (Ident () "Int32")))),FunBind () [Match () (Ident () "hashPS") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Qualifier () (App () (App () (Var () (UnQual () (Ident () "hash"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Var () (UnQual () (Ident () "l"))))]))))) Nothing])) Nothing],TypeSig () [Ident () "hash"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "Int32")))))),FunBind () [Match () (Ident () "hash") [PVar () (Ident () "ptr"),PVar () (Ident () "len")] (UnGuardedRhs () (App () (App () (App () (Var () (UnQual () (Ident () "f"))) (Paren () (ExpTypeSig () (Lit () (Int () 0 "0")) (TyCon () (UnQual () (Ident () "Int32")))))) (Var () (UnQual () (Ident () "ptr")))) (Var () (UnQual () (Ident () "len"))))) (Just (BDecls () [FunBind () [Match () (Ident () "f") [PVar () (Ident () "h"),PWildCard (),PLit () (Signless ()) (Int () 0 "0")] (UnGuardedRhs () (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "h"))))) Nothing,Match () (Ident () "f") [PVar () (Ident () "h"),PVar () (Ident () "p"),PVar () (Ident () "n")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "x")) (App () (Var () (UnQual () (Ident () "peek"))) (Var () (UnQual () (Ident () "p")))),LetStmt () (BDecls () [PatBind () (PBangPat () (PVar () (Ident () "h'"))) (UnGuardedRhs () (InfixApp () (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "x"))))) (QVarOp () (UnQual () (Symbol () "+"))) (Paren () (App () (App () (Var () (UnQual () (Ident () "rotateL"))) (Var () (UnQual () (Ident () "h")))) (Lit () (Int () 8 "8")))))) Nothing]),Qualifier () (App () (App () (App () (Var () (UnQual () (Ident () "f"))) (Var () (UnQual () (Ident () "h'")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "advancePtr"))) (Lit () (Int () 1 "1"))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (Int () 1 "1")))))])) Nothing]]))],InlineSig () True Nothing (UnQual () (Ident () "substrPS")),TypeSig () [Ident () "substrPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyCon () (UnQual () (Ident () "Int")))))),FunBind () [Match () (Ident () "substrPS") [PVar () (Ident () "tok"),PVar () (Ident () "str")] (GuardedRhss () [GuardedRhs () [Qualifier () (App () (Var () (Qual () (ModuleName () "B") (Ident () "null"))) (Var () (UnQual () (Ident () "tok"))))] (App () (Con () (UnQual () (Ident () "Just"))) (Lit () (Int () 0 "0"))),GuardedRhs () [Qualifier () (InfixApp () (App () (Var () (Qual () (ModuleName () "B") (Ident () "length"))) (Var () (UnQual () (Ident () "tok")))) (QVarOp () (UnQual () (Symbol () ">"))) (App () (Var () (Qual () (ModuleName () "B") (Ident () "length"))) (Var () (UnQual () (Ident () "str")))))] (Con () (UnQual () (Ident () "Nothing"))),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (Do () [Generator () (PVar () (Ident () "n")) (App () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "elemIndex"))) (Paren () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "head"))) (Var () (UnQual () (Ident () "tok")))))) (Var () (UnQual () (Ident () "str")))),LetStmt () (BDecls () [PatBind () (PVar () (Ident () "ttok")) (UnGuardedRhs () (App () (Var () (Qual () (ModuleName () "B") (Ident () "tail"))) (Var () (UnQual () (Ident () "tok"))))) Nothing,PatBind () (PVar () (Ident () "reststr")) (UnGuardedRhs () (App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "drop"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "str"))))) Nothing]),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "ttok"))) (QVarOp () (UnQual () (Symbol () "=="))) (App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "take"))) (Paren () (App () (Var () (Qual () (ModuleName () "B") (Ident () "length"))) (Var () (UnQual () (Ident () "ttok")))))) (Var () (UnQual () (Ident () "reststr"))))) (App () (Con () (UnQual () (Ident () "Just"))) (Var () (UnQual () (Ident () "n")))) (InfixApp () (LeftSection () (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1")))) (QVarOp () (UnQual () (Symbol () "+")))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (App () (Var () (UnQual () (Ident () "substrPS"))) (Var () (UnQual () (Ident () "tok")))) (Var () (UnQual () (Ident () "reststr"))))))])]) Nothing],InlineSig () True Nothing (UnQual () (Ident () "breakFirstPS")),TypeSig () [Ident () "breakFirstPS"] (TyFun () (TyCon () (UnQual () (Ident () "Char"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))])))),FunBind () [Match () (Ident () "breakFirstPS") [PVar () (Ident () "c"),PVar () (Ident () "p")] (UnGuardedRhs () (Case () (App () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "elemIndex"))) (Var () (UnQual () (Ident () "c")))) (Var () (UnQual () (Ident () "p")))) [Alt () (PApp () (UnQual () (Ident () "Nothing")) []) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing,Alt () (PApp () (UnQual () (Ident () "Just")) [PVar () (Ident () "n")]) (UnGuardedRhs () (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "take"))) (Var () (UnQual () (Ident () "n")))) (Var () (UnQual () (Ident () "p"))),App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "drop"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "p")))]))) Nothing])) Nothing],InlineSig () True Nothing (UnQual () (Ident () "breakLastPS")),TypeSig () [Ident () "breakLastPS"] (TyFun () (TyCon () (UnQual () (Ident () "Char"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))])))),FunBind () [Match () (Ident () "breakLastPS") [PVar () (Ident () "c"),PVar () (Ident () "p")] (UnGuardedRhs () (Case () (App () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "elemIndexEnd"))) (Var () (UnQual () (Ident () "c")))) (Var () (UnQual () (Ident () "p")))) [Alt () (PApp () (UnQual () (Ident () "Nothing")) []) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing,Alt () (PApp () (UnQual () (Ident () "Just")) [PVar () (Ident () "n")]) (UnGuardedRhs () (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "take"))) (Var () (UnQual () (Ident () "n")))) (Var () (UnQual () (Ident () "p"))),App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "drop"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "p")))]))) Nothing])) Nothing],InlineSig () True Nothing (UnQual () (Ident () "linesPS")),TypeSig () [Ident () "linesPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyList () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))))),FunBind () [Match () (Ident () "linesPS") [PVar () (Ident () "ps")] (GuardedRhss () [GuardedRhs () [Qualifier () (App () (Var () (Qual () (ModuleName () "B") (Ident () "null"))) (Var () (UnQual () (Ident () "ps"))))] (List () [Var () (Qual () (ModuleName () "B") (Ident () "empty"))]),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (App () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "split"))) (Lit () (Char () '\n' "\\n"))) (Var () (UnQual () (Ident () "ps"))))]) Nothing],TypeSig () [Ident () "unlinesPS"] (TyFun () (TyList () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))),FunBind () [Match () (Ident () "unlinesPS") [PList () []] (UnGuardedRhs () (Var () (Qual () (ModuleName () "BC") (Ident () "empty")))) Nothing,Match () (Ident () "unlinesPS") [PVar () (Ident () "x")] (UnGuardedRhs () (InfixApp () (Var () (Qual () (ModuleName () "BC") (Ident () "init"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Var () (Qual () (ModuleName () "BC") (Ident () "unlines"))) (Var () (UnQual () (Ident () "x")))))) Nothing],InlineSig () True Nothing (UnQual () (Ident () "unlinesPS")),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static zlib.h gzopen") (Ident () "c_gzopen") (TyFun () (TyCon () (UnQual () (Ident () "CString"))) (TyFun () (TyCon () (UnQual () (Ident () "CString"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyParen () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static zlib.h gzclose") (Ident () "c_gzclose") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ()))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static zlib.h gzread") (Ident () "c_gzread") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "CInt"))))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static zlib.h gzwrite") (Ident () "c_gzwrite") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "CInt"))))))),TypeSig () [Ident () "gzReadFilePS"] (TyFun () (TyCon () (UnQual () (Ident () "FilePath"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))))),FunBind () [Match () (Ident () "gzReadFilePS") [PVar () (Ident () "f")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "h")) (App () (App () (Var () (UnQual () (Ident () "openBinaryFile"))) (Var () (UnQual () (Ident () "f")))) (Con () (UnQual () (Ident () "ReadMode")))),Generator () (PVar () (Ident () "header")) (App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "hGet"))) (Var () (UnQual () (Ident () "h")))) (Lit () (Int () 2 "2"))),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "header"))) (QVarOp () (UnQual () (Symbol () "/="))) (App () (Var () (Qual () (ModuleName () "BC") (Ident () "pack"))) (Lit () (String () "\US\139" "\\31\\139")))) (Do () [Qualifier () (App () (Var () (UnQual () (Ident () "hClose"))) (Var () (UnQual () (Ident () "h")))),Qualifier () (App () (Var () (UnQual () (Ident () "mmapFilePS"))) (Var () (UnQual () (Ident () "f"))))]) (Do () [Qualifier () (App () (App () (App () (Var () (UnQual () (Ident () "hSeek"))) (Var () (UnQual () (Ident () "h")))) (Con () (UnQual () (Ident () "SeekFromEnd")))) (Paren () (NegApp () (Lit () (Int () 4 "4"))))),Generator () (PVar () (Ident () "len")) (App () (Var () (UnQual () (Ident () "hGetLittleEndInt"))) (Var () (UnQual () (Ident () "h")))),Qualifier () (App () (Var () (UnQual () (Ident () "hClose"))) (Var () (UnQual () (Ident () "h")))),LetStmt () (BDecls () [PatBind () (PVar () (Ident () "decompress")) (UnGuardedRhs () (App () (Var () (Qual () (ModuleName () "GZ") (Ident () "decompressWith"))) (RecUpdate () (Var () (Qual () (ModuleName () "GZ") (Ident () "defaultDecompressParams"))) [FieldUpdate () (Qual () (ModuleName () "GZ") (Ident () "decompressBufferSize")) (Var () (UnQual () (Ident () "len")))]))) Nothing]),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "fmap"))) (Paren () (InfixApp () (Var () (Qual () (ModuleName () "B") (Ident () "concat"))) (QVarOp () (UnQual () (Symbol () "."))) (InfixApp () (Var () (Qual () (ModuleName () "BL") (Ident () "toChunks"))) (QVarOp () (UnQual () (Symbol () "."))) (Var () (UnQual () (Ident () "decompress"))))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "fmap"))) (Paren () (InfixApp () (Var () (Qual () (ModuleName () "BL") (Ident () "fromChunks"))) (QVarOp () (UnQual () (Symbol () "."))) (RightSection () (QConOp () (Special () (Cons ()))) (List () []))))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "readFile"))) (Var () (UnQual () (Ident () "f")))) (Var () (Qual () (ModuleName () "BL") (Ident () "readFile")))) (Var () (UnQual () (Ident () "f")))))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "withCString"))) (Var () (UnQual () (Ident () "f")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "fstr")] (InfixApp () (App () (Var () (UnQual () (Ident () "withCString"))) (Lit () (String () "rb" "rb"))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "rb")] (Do () [Generator () (PVar () (Ident () "gzf")) (App () (App () (Var () (UnQual () (Ident () "c_gzopen"))) (Var () (UnQual () (Ident () "fstr")))) (Var () (UnQual () (Ident () "rb")))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "gzf"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "nullPtr")))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "problem opening file " "problem opening file ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f")))))),Generator () (PVar () (Ident () "fp")) (App () (Var () (Qual () (ModuleName () "BI") (Ident () "mallocByteString"))) (Var () (UnQual () (Ident () "len")))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "debugForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "gzReadFilePS " "gzReadFilePS ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f"))))),Generator () (PVar () (Ident () "lread")) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (App () (App () (App () (Var () (UnQual () (Ident () "c_gzread"))) (Var () (UnQual () (Ident () "gzf")))) (Var () (UnQual () (Ident () "p")))) (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "len")))))))),Qualifier () (App () (Var () (UnQual () (Ident () "c_gzclose"))) (Var () (UnQual () (Ident () "gzf")))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "lread")))) (QVarOp () (UnQual () (Symbol () "/="))) (Var () (UnQual () (Ident () "len")))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "problem gzreading file " "problem gzreading file ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f")))))),Qualifier () (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Lit () (Int () 0 "0"))) (Var () (UnQual () (Ident () "len")))))])))))]))])) Nothing],TypeSig () [Ident () "hGetLittleEndInt"] (TyFun () (TyCon () (UnQual () (Ident () "Handle"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "Int"))))),FunBind () [Match () (Ident () "hGetLittleEndInt") [PVar () (Ident () "h")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "b1")) (InfixApp () (Var () (UnQual () (Ident () "ord"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "hGetChar"))) (Var () (UnQual () (Ident () "h"))))),Generator () (PVar () (Ident () "b2")) (InfixApp () (Var () (UnQual () (Ident () "ord"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "hGetChar"))) (Var () (UnQual () (Ident () "h"))))),Generator () (PVar () (Ident () "b3")) (InfixApp () (Var () (UnQual () (Ident () "ord"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "hGetChar"))) (Var () (UnQual () (Ident () "h"))))),Generator () (PVar () (Ident () "b4")) (InfixApp () (Var () (UnQual () (Ident () "ord"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "hGetChar"))) (Var () (UnQual () (Ident () "h"))))),Qualifier () (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (InfixApp () (InfixApp () (Var () (UnQual () (Ident () "b1"))) (QVarOp () (UnQual () (Symbol () "+"))) (InfixApp () (Lit () (Int () 256 "256")) (QVarOp () (UnQual () (Symbol () "*"))) (Var () (UnQual () (Ident () "b2"))))) (QVarOp () (UnQual () (Symbol () "+"))) (InfixApp () (Lit () (Int () 65536 "65536")) (QVarOp () (UnQual () (Symbol () "*"))) (Var () (UnQual () (Ident () "b3"))))) (QVarOp () (UnQual () (Symbol () "+"))) (InfixApp () (Lit () (Int () 16777216 "16777216")) (QVarOp () (UnQual () (Symbol () "*"))) (Var () (UnQual () (Ident () "b4"))))))])) Nothing],TypeSig () [Ident () "gzWriteFilePS"] (TyFun () (TyCon () (UnQual () (Ident () "FilePath"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),FunBind () [Match () (Ident () "gzWriteFilePS") [PVar () (Ident () "f"),PVar () (Ident () "ps")] (UnGuardedRhs () (App () (App () (Var () (UnQual () (Ident () "gzWriteFilePSs"))) (Var () (UnQual () (Ident () "f")))) (List () [Var () (UnQual () (Ident () "ps"))]))) Nothing],TypeSig () [Ident () "gzWriteFilePSs"] (TyFun () (TyCon () (UnQual () (Ident () "FilePath"))) (TyFun () (TyList () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),FunBind () [Match () (Ident () "gzWriteFilePSs") [PVar () (Ident () "f"),PVar () (Ident () "pss")] (UnGuardedRhs () (InfixApp () (App () (Var () (Qual () (ModuleName () "BL") (Ident () "writeFile"))) (Var () (UnQual () (Ident () "f")))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (Qual () (ModuleName () "GZ") (Ident () "compress"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (App () (App () (Var () (Qual () (ModuleName () "BL") (Ident () "fromChunks"))) (Var () (UnQual () (Ident () "pss")))) (Var () (UnQual () (Ident () "withCString")))) (Var () (UnQual () (Ident () "f")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "fstr")] (InfixApp () (App () (Var () (UnQual () (Ident () "withCString"))) (Lit () (String () "wb" "wb"))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "wb")] (Do () [Generator () (PVar () (Ident () "gzf")) (App () (App () (Var () (UnQual () (Ident () "c_gzopen"))) (Var () (UnQual () (Ident () "fstr")))) (Var () (UnQual () (Ident () "wb")))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "gzf"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "nullPtr")))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "problem gzopening file for write: " "problem gzopening file for write: ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f")))))),Qualifier () (InfixApp () (App () (App () (Var () (UnQual () (Ident () "mapM_"))) (Paren () (App () (Var () (UnQual () (Ident () "gzWriteToGzf"))) (Var () (UnQual () (Ident () "gzf")))))) (Var () (UnQual () (Ident () "pss")))) (QVarOp () (UnQual () (Ident () "catch"))) (Lambda () [PWildCard ()] (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "problem gzwriting file: " "problem gzwriting file: ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f"))))))),Qualifier () (App () (Var () (UnQual () (Ident () "c_gzclose"))) (Var () (UnQual () (Ident () "gzf"))))])))))))) Nothing],TypeSig () [Ident () "gzWriteToGzf"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),FunBind () [Match () (Ident () "gzWriteToGzf") [PVar () (Ident () "gzf"),PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PWildCard (),PWildCard (),PLit () (Signless ()) (Int () 0 "0")]) (UnGuardedRhs () (App () (Var () (UnQual () (Ident () "return"))) (Con () (Special () (UnitCon ()))))) Nothing,Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "lw")) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (App () (App () (App () (Var () (UnQual () (Ident () "c_gzwrite"))) (Var () (UnQual () (Ident () "gzf")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "l")))))))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "lw")))) (QVarOp () (UnQual () (Symbol () "/="))) (Var () (UnQual () (Ident () "l")))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (Lit () (String () "problem in gzWriteToGzf" "problem in gzWriteToGzf"))))])) Nothing])) Nothing],TypeSig () [Ident () "mmapFilePS"] (TyFun () (TyCon () (UnQual () (Ident () "FilePath"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))))),FunBind () [Match () (Ident () "mmapFilePS") [PVar () (Ident () "f")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "x")) (InfixApp () (App () (App () (Var () (UnQual () (Ident () "mmapFileByteString"))) (Var () (UnQual () (Ident () "f")))) (Con () (UnQual () (Ident () "Nothing")))) (QVarOp () (UnQual () (Ident () "catch"))) (Paren () (Lambda () [PWildCard ()] (Do () [Generator () (PVar () (Ident () "size")) (InfixApp () (Var () (UnQual () (Ident () "fileSize"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "getSymbolicLinkStatus"))) (Var () (UnQual () (Ident () "f"))))),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "size"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 0 "0"))) (App () (Var () (UnQual () (Ident () "return"))) (Var () (Qual () (ModuleName () "B") (Ident () "empty")))) (InfixApp () (Var () (UnQual () (Ident () "performGC"))) (QVarOp () (UnQual () (Symbol () ">>"))) (App () (App () (Var () (UnQual () (Ident () "mmapFileByteString"))) (Var () (UnQual () (Ident () "f")))) (Con () (UnQual () (Ident () "Nothing"))))))])))),Qualifier () (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "x"))))])) Nothing],PatBind () (PVar () (Ident () "mmapFilePS")) (UnGuardedRhs () (Var () (Qual () (ModuleName () "B") (Ident () "readFile")))) Nothing,ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h conv_to_hex") (Ident () "conv_to_hex") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ()))))))),TypeSig () [Ident () "fromPS2Hex"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))),FunBind () [Match () (Ident () "fromPS2Hex") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "unsafeCreate"))) (Paren () (InfixApp () (Lit () (Int () 2 "2")) (QVarOp () (UnQual () (Symbol () "*"))) (Var () (UnQual () (Ident () "l")))))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "f")] (InfixApp () (App () (App () (Var () (UnQual () (Ident () "conv_to_hex"))) (Var () (UnQual () (Ident () "p")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "f"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "l")))))))))) Nothing])) Nothing],ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h conv_from_hex") (Ident () "conv_from_hex") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ()))))))),TypeSig () [Ident () "fromHex2PS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))),FunBind () [Match () (Ident () "fromHex2PS") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "unsafeCreate"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Ident () "div"))) (Lit () (Int () 2 "2"))))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "f")] (App () (App () (App () (Var () (UnQual () (Ident () "conv_from_hex"))) (Var () (UnQual () (Ident () "p")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "f"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "fromIntegral"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Ident () "div"))) (Lit () (Int () 2 "2"))))))))))) Nothing])) Nothing],TypeSig () [Ident () "betweenLinesPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyParen () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))))))),FunBind () [Match () (Ident () "betweenLinesPS") [PVar () (Ident () "start"),PVar () (Ident () "end"),PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (App () (Var () (UnQual () (Ident () "break"))) (LeftSection () (Var () (UnQual () (Ident () "start"))) (QVarOp () (UnQual () (Symbol () "=="))))) (Paren () (App () (Var () (UnQual () (Ident () "linesPS"))) (Var () (UnQual () (Ident () "ps")))))) [Alt () (PTuple () Boxed [PWildCard (),PInfixApp () (PWildCard ()) (Special () (Cons ())) (PAsPat () (Ident () "rest") (PParen () (PInfixApp () (PVar () (Ident () "bs1")) (Special () (Cons ())) (PWildCard ()))))]) (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "bs1")))) [Alt () (PTuple () Boxed [PVar () (Ident () "ps1"),PVar () (Ident () "s1"),PWildCard ()]) (UnGuardedRhs () (Case () (App () (App () (Var () (UnQual () (Ident () "break"))) (LeftSection () (Var () (UnQual () (Ident () "end"))) (QVarOp () (UnQual () (Symbol () "=="))))) (Var () (UnQual () (Ident () "rest")))) [Alt () (PTuple () Boxed [PWildCard (),PInfixApp () (PVar () (Ident () "bs2")) (Special () (Cons ())) (PWildCard ())]) (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "bs2")))) [Alt () (PTuple () Boxed [PWildCard (),PVar () (Ident () "s2"),PWildCard ()]) (UnGuardedRhs () (InfixApp () (Con () (UnQual () (Ident () "Just"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "ps1")))) (Var () (UnQual () (Ident () "s1")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s2"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "s1")))))))) Nothing])) Nothing,Alt () (PWildCard ()) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing])) Nothing])) Nothing,Alt () (PWildCard ()) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing])) Nothing],TypeSig () [Ident () "break_after_nth_newline"] (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))])))),FunBind () [Match () (Ident () "break_after_nth_newline") [PLit () (Signless ()) (Int () 0 "0"),PVar () (Ident () "the_ps")] (GuardedRhss () [GuardedRhs () [Qualifier () (App () (Var () (Qual () (ModuleName () "B") (Ident () "null"))) (Var () (UnQual () (Ident () "the_ps"))))] (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [Var () (Qual () (ModuleName () "B") (Ident () "empty")),Var () (Qual () (ModuleName () "B") (Ident () "empty"))]))]) Nothing,Match () (Ident () "break_after_nth_newline") [PVar () (Ident () "n"),PVar () (Ident () "the_ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "the_ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "fp"),PVar () (Ident () "the_s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [LetStmt () (BDecls () [FunBind () [Match () (Ident () "findit") [PLit () (Signless ()) (Int () 0 "0"),PVar () (Ident () "s")] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "end"))))] (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [Var () (UnQual () (Ident () "the_ps")),Var () (Qual () (ModuleName () "B") (Ident () "empty"))])))]) Nothing,Match () (Ident () "findit") [PWildCard (),PVar () (Ident () "s")] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "end"))))] (App () (Var () (UnQual () (Ident () "return"))) (Con () (UnQual () (Ident () "Nothing"))))]) Nothing,Match () (Ident () "findit") [PLit () (Signless ()) (Int () 0 "0"),PVar () (Ident () "s")] (UnGuardedRhs () (Let () (BDecls () [PatBind () (PVar () (Ident () "left_l")) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "the_s"))))) Nothing]) (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Var () (UnQual () (Ident () "the_s")))) (Var () (UnQual () (Ident () "left_l"))),App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Var () (UnQual () (Ident () "s")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "left_l")))))]))))) Nothing,Match () (Ident () "findit") [PVar () (Ident () "i"),PVar () (Ident () "s")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "w")) (App () (App () (Var () (UnQual () (Ident () "peekElemOff"))) (Var () (UnQual () (Ident () "p")))) (Var () (UnQual () (Ident () "s")))),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "nl")))) (App () (App () (Var () (UnQual () (Ident () "findit"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (Int () 1 "1"))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (App () (App () (Var () (UnQual () (Ident () "findit"))) (Var () (UnQual () (Ident () "i")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))))])) Nothing],PatBind () (PVar () (Ident () "nl")) (UnGuardedRhs () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "c2w"))) (Lit () (Char () '\n' "\\n")))) Nothing,PatBind () (PVar () (Ident () "end")) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "the_s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Var () (UnQual () (Ident () "l"))))) Nothing]),Qualifier () (App () (App () (Var () (UnQual () (Ident () "findit"))) (Var () (UnQual () (Ident () "n")))) (Var () (UnQual () (Ident () "the_s"))))]))))) Nothing])) Nothing],TypeSig () [Ident () "break_before_nth_newline"] (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))]))),FunBind () [Match () (Ident () "break_before_nth_newline") [PLit () (Signless ()) (Int () 0 "0"),PVar () (Ident () "the_ps")] (GuardedRhss () [GuardedRhs () [Qualifier () (App () (Var () (Qual () (ModuleName () "B") (Ident () "null"))) (Var () (UnQual () (Ident () "the_ps"))))] (Tuple () Boxed [Var () (Qual () (ModuleName () "B") (Ident () "empty")),Var () (Qual () (ModuleName () "B") (Ident () "empty"))])]) Nothing,Match () (Ident () "break_before_nth_newline") [PVar () (Ident () "n"),PVar () (Ident () "the_ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "the_ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "fp"),PVar () (Ident () "the_s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [LetStmt () (BDecls () [FunBind () [Match () (Ident () "findit") [PWildCard (),PVar () (Ident () "s")] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "end"))))] (App () (Var () (UnQual () (Ident () "return"))) (Tuple () Boxed [Var () (UnQual () (Ident () "the_ps")),Var () (Qual () (ModuleName () "B") (Ident () "empty"))]))]) Nothing,Match () (Ident () "findit") [PVar () (Ident () "i"),PVar () (Ident () "s")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "w")) (App () (App () (Var () (UnQual () (Ident () "peekElemOff"))) (Var () (UnQual () (Ident () "p")))) (Var () (UnQual () (Ident () "s")))),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "nl")))) (If () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 0 "0"))) (Let () (BDecls () [PatBind () (PVar () (Ident () "left_l")) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "the_s"))))) Nothing]) (App () (Var () (UnQual () (Ident () "return"))) (Tuple () Boxed [App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Var () (UnQual () (Ident () "the_s")))) (Var () (UnQual () (Ident () "left_l"))),App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Var () (UnQual () (Ident () "s")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "left_l")))))]))) (App () (App () (Var () (UnQual () (Ident () "findit"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (Int () 1 "1"))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1")))))) (App () (App () (Var () (UnQual () (Ident () "findit"))) (Var () (UnQual () (Ident () "i")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))))])) Nothing],PatBind () (PVar () (Ident () "nl")) (UnGuardedRhs () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "c2w"))) (Lit () (Char () '\n' "\\n")))) Nothing,PatBind () (PVar () (Ident () "end")) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "the_s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Var () (UnQual () (Ident () "l"))))) Nothing]),Qualifier () (App () (App () (Var () (UnQual () (Ident () "findit"))) (Var () (UnQual () (Ident () "n")))) (Var () (UnQual () (Ident () "the_s"))))]))))) Nothing])) Nothing]] AST 2: Module () (Just (ModuleHead () (ModuleName () "ByteStringUtils") Nothing (Just (ExportSpecList () [EVar () (UnQual () (Ident () "unsafeWithInternals")),EVar () (UnQual () (Ident () "unpackPSfromUTF8")),EVar () (UnQual () (Ident () "gzReadFilePS")),EVar () (UnQual () (Ident () "mmapFilePS")),EVar () (UnQual () (Ident () "gzWriteFilePS")),EVar () (UnQual () (Ident () "gzWriteFilePSs")),EVar () (UnQual () (Ident () "ifHeadThenTail")),EVar () (UnQual () (Ident () "dropSpace")),EVar () (UnQual () (Ident () "breakSpace")),EVar () (UnQual () (Ident () "linesPS")),EVar () (UnQual () (Ident () "unlinesPS")),EVar () (UnQual () (Ident () "hashPS")),EVar () (UnQual () (Ident () "breakFirstPS")),EVar () (UnQual () (Ident () "breakLastPS")),EVar () (UnQual () (Ident () "substrPS")),EVar () (UnQual () (Ident () "readIntPS")),EVar () (UnQual () (Ident () "is_funky")),EVar () (UnQual () (Ident () "fromHex2PS")),EVar () (UnQual () (Ident () "fromPS2Hex")),EVar () (UnQual () (Ident () "betweenLinesPS")),EVar () (UnQual () (Ident () "break_after_nth_newline")),EVar () (UnQual () (Ident () "break_before_nth_newline")),EVar () (UnQual () (Ident () "intercalate"))])))) [LanguagePragma () [Ident () "BangPatterns",Ident () "ForeignFunctionInterface",Ident () "CPP"]] [ImportDecl {importAnn = (), importModule = ModuleName () "Prelude", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () True [IVar () (Ident () "catch")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "B"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString.Char8", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "BC"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString.Internal", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "BI"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "intercalate"),IVar () (Ident () "uncons")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString.Internal", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "fromForeignPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Control.Exception", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "catch")])},ImportDecl {importAnn = (), importModule = ModuleName () "System.IO", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "System.IO.Unsafe", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "unsafePerformIO")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Storable", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "peekElemOff"),IVar () (Ident () "peek")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Marshal.Alloc", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "free")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Marshal.Array", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "mallocArray"),IVar () (Ident () "peekArray"),IVar () (Ident () "advancePtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.C.Types", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "CInt")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.Bits", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "rotateL")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.Char", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "chr"),IVar () (Ident () "ord"),IVar () (Ident () "isSpace")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.Word", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "Word8")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.Int", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "Int32")])},ImportDecl {importAnn = (), importModule = ModuleName () "Control.Monad", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "when")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Ptr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "nullPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.ForeignPtr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "ForeignPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Ptr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "plusPtr"),IAbs () (NoNamespace ()) (Ident () "Ptr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.ForeignPtr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "withForeignPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.ForeignPtr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "addForeignPtrFinalizer")])},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.Ptr", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "FunPtr")])},ImportDecl {importAnn = (), importModule = ModuleName () "Data.ByteString.Lazy", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "BL"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Codec.Compression.GZip", importQualified = True, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Just (ModuleName () "GZ"), importSpecs = Nothing},ImportDecl {importAnn = (), importModule = ModuleName () "Foreign.C.String", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IAbs () (NoNamespace ()) (Ident () "CString"),IVar () (Ident () "withCString")])},ImportDecl {importAnn = (), importModule = ModuleName () "System.IO.MMap", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "mmapFileByteString")])},ImportDecl {importAnn = (), importModule = ModuleName () "System.Mem", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "performGC")])},ImportDecl {importAnn = (), importModule = ModuleName () "System.Posix.Files", importQualified = False, importSrc = False, importSafe = False, importPkg = Nothing, importAs = Nothing, importSpecs = Just (ImportSpecList () False [IVar () (Ident () "fileSize"),IVar () (Ident () "getSymbolicLinkStatus")])}] [TypeSig () [Ident () "debugForeignPtr"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "ForeignPtr"))) (TyVar () (Ident () "a"))) (TyFun () (TyCon () (UnQual () (Ident () "String"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h debug_alloc") (Ident () "debug_alloc") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyVar () (Ident () "a"))) (TyFun () (TyCon () (UnQual () (Ident () "CString"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h & debug_free") (Ident () "debug_free") (TyApp () (TyCon () (UnQual () (Ident () "FunPtr"))) (TyParen () (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyVar () (Ident () "a"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ()))))))),FunBind () [Match () (Ident () "debugForeignPtr") [PVar () (Ident () "fp"),PVar () (Ident () "n")] (UnGuardedRhs () (InfixApp () (App () (Var () (UnQual () (Ident () "withCString"))) (Var () (UnQual () (Ident () "n")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "cname")] (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Qualifier () (App () (App () (Var () (UnQual () (Ident () "debug_alloc"))) (Var () (UnQual () (Ident () "p")))) (Var () (UnQual () (Ident () "cname")))),Qualifier () (App () (App () (Var () (UnQual () (Ident () "addForeignPtrFinalizer"))) (Var () (UnQual () (Ident () "debug_free")))) (Var () (UnQual () (Ident () "fp"))))])))))) Nothing,Match () (Ident () "debugForeignPtr") [PWildCard (),PWildCard ()] (UnGuardedRhs () (App () (Var () (UnQual () (Ident () "return"))) (Con () (Special () (UnitCon ()))))) Nothing],TypeSig () [Ident () "unsafeWithInternals"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyFun () (TyParen () (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyVar () (Ident () "a")))))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyVar () (Ident () "a"))))),FunBind () [Match () (Ident () "unsafeWithInternals") [PVar () (Ident () "ps"),PVar () (Ident () "f")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "fp"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (App () (App () (Var () (UnQual () (Ident () "f"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Var () (UnQual () (Ident () "l"))))))) Nothing])) Nothing],TypeSig () [Ident () "readIntPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyTuple () Boxed [TyCon () (UnQual () (Ident () "Int")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))]))),PatBind () (PVar () (Ident () "readIntPS")) (UnGuardedRhs () (InfixApp () (Var () (Qual () (ModuleName () "BC") (Ident () "readInt"))) (QVarOp () (UnQual () (Symbol () "."))) (App () (Var () (Qual () (ModuleName () "BC") (Ident () "dropWhile"))) (Var () (UnQual () (Ident () "isSpace")))))) Nothing,TypeSig () [Ident () "unpackPSfromUTF8"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (UnQual () (Ident () "String")))),FunBind () [Match () (Ident () "unpackPSfromUTF8") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PWildCard (),PWildCard (),PLit () (Signless ()) (Int () 0 "0")]) (UnGuardedRhs () (Lit () (String () "" ""))) Nothing,Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Generator () (PVar () (Ident () "outbuf")) (App () (Var () (UnQual () (Ident () "mallocArray"))) (Var () (UnQual () (Ident () "l")))),Generator () (PVar () (Ident () "lout")) (InfixApp () (Var () (UnQual () (Ident () "fromIntegral"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (App () (App () (Var () (UnQual () (Ident () "utf8_to_ints"))) (Var () (UnQual () (Ident () "outbuf")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "l"))))))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "lout"))) (QVarOp () (UnQual () (Symbol () "<"))) (Lit () (Int () 0 "0"))))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Var () (UnQual () (Ident () "error"))) (Lit () (String () "Bad UTF8!" "Bad UTF8!")))),Generator () (PVar () (Ident () "str")) (InfixApp () (Paren () (App () (Var () (UnQual () (Ident () "map"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "chr"))) (QVarOp () (UnQual () (Symbol () "."))) (Var () (UnQual () (Ident () "fromIntegral"))))))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (App () (Var () (UnQual () (Ident () "peekArray"))) (Var () (UnQual () (Ident () "lout")))) (Var () (UnQual () (Ident () "outbuf"))))),Qualifier () (App () (Var () (UnQual () (Ident () "free"))) (Var () (UnQual () (Ident () "outbuf")))),Qualifier () (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "str"))))]))))) Nothing])) Nothing],ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h utf8_to_ints") (Ident () "utf8_to_ints") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Int")))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "CInt"))))))),InlineSig () True Nothing (UnQual () (Ident () "ifHeadThenTail")),TypeSig () [Ident () "ifHeadThenTail"] (TyFun () (TyCon () (UnQual () (Ident () "Word8"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))))),FunBind () [Match () (Ident () "ifHeadThenTail") [PVar () (Ident () "c"),PVar () (Ident () "s")] (UnGuardedRhs () (Case () (App () (Var () (UnQual () (Ident () "uncons"))) (Var () (UnQual () (Ident () "s")))) [Alt () (PApp () (UnQual () (Ident () "Just")) [PTuple () Boxed [PVar () (Ident () "w"),PVar () (Ident () "t")]]) (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "c"))))] (App () (Con () (UnQual () (Ident () "Just"))) (Var () (UnQual () (Ident () "t"))))]) Nothing,Alt () (PWildCard ()) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing])) Nothing],TypeSig () [Ident () "isSpaceWord8"] (TyFun () (TyCon () (UnQual () (Ident () "Word8"))) (TyCon () (UnQual () (Ident () "Bool")))),FunBind () [Match () (Ident () "isSpaceWord8") [PVar () (Ident () "w")] (UnGuardedRhs () (InfixApp () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 32 "32"))) (QVarOp () (UnQual () (Symbol () "||"))) (InfixApp () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 9 "9"))) (QVarOp () (UnQual () (Symbol () "||"))) (InfixApp () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 10 "10"))) (QVarOp () (UnQual () (Symbol () "||"))) (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 13 "13"))))))) Nothing],InlineSig () True Nothing (UnQual () (Ident () "isSpaceWord8")),TypeSig () [Ident () "firstnonspace"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "Int"))))))),FunBind () [Match () (Ident () "firstnonspace") [PBangPat () (PVar () (Ident () "ptr")),PBangPat () (PVar () (Ident () "n")),PBangPat () (PVar () (Ident () "m"))] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () ">="))) (Var () (UnQual () (Ident () "m"))))] (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "n")))),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (Do () [Generator () (PVar () (Ident () "w")) (App () (App () (Var () (UnQual () (Ident () "peekElemOff"))) (Var () (UnQual () (Ident () "ptr")))) (Var () (UnQual () (Ident () "n")))),Qualifier () (If () (App () (Var () (UnQual () (Ident () "isSpaceWord8"))) (Var () (UnQual () (Ident () "w")))) (App () (App () (App () (Var () (UnQual () (Ident () "firstnonspace"))) (Var () (UnQual () (Ident () "ptr")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "m")))) (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "n")))))])]) Nothing],TypeSig () [Ident () "firstspace"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "Int"))))))),FunBind () [Match () (Ident () "firstspace") [PBangPat () (PVar () (Ident () "ptr")),PBangPat () (PVar () (Ident () "n")),PBangPat () (PVar () (Ident () "m"))] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () ">="))) (Var () (UnQual () (Ident () "m"))))] (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "n")))),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (Do () [Generator () (PVar () (Ident () "w")) (App () (App () (Var () (UnQual () (Ident () "peekElemOff"))) (Var () (UnQual () (Ident () "ptr")))) (Var () (UnQual () (Ident () "n")))),Qualifier () (If () (App () (Paren () (InfixApp () (Var () (UnQual () (Ident () "not"))) (QVarOp () (UnQual () (Symbol () "."))) (Var () (UnQual () (Ident () "isSpaceWord8"))))) (Var () (UnQual () (Ident () "w")))) (App () (App () (App () (Var () (UnQual () (Ident () "firstspace"))) (Var () (UnQual () (Ident () "ptr")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "m")))) (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "n")))))])]) Nothing],TypeSig () [Ident () "dropSpace"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))),FunBind () [Match () (Ident () "dropSpace") [PParen () (PApp () (Qual () (ModuleName () "BI") (Ident () "PS")) [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")])] (UnGuardedRhs () (InfixApp () (Var () (Qual () (ModuleName () "BI") (Ident () "inlinePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Generator () (PVar () (Ident () "i")) (App () (App () (App () (Var () (UnQual () (Ident () "firstnonspace"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Lit () (Int () 0 "0"))) (Var () (UnQual () (Ident () "l")))),Qualifier () (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$!"))) (If () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "l")))) (Var () (Qual () (ModuleName () "B") (Ident () "empty"))) (App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Var () (UnQual () (Ident () "i")))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "i"))))))))]))))) Nothing],InlineSig () True Nothing (UnQual () (Ident () "dropSpace")),TypeSig () [Ident () "breakSpace"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))])),FunBind () [Match () (Ident () "breakSpace") [PParen () (PApp () (Qual () (ModuleName () "BI") (Ident () "PS")) [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")])] (UnGuardedRhs () (InfixApp () (Var () (Qual () (ModuleName () "BI") (Ident () "inlinePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Generator () (PVar () (Ident () "i")) (App () (App () (App () (Var () (UnQual () (Ident () "firstspace"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Lit () (Int () 0 "0"))) (Var () (UnQual () (Ident () "l")))),Qualifier () (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$!"))) (Case () (Con () (Special () (UnitCon ()))) [Alt () (PWildCard ()) (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 0 "0")))] (Tuple () Boxed [Var () (Qual () (ModuleName () "B") (Ident () "empty")),App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Var () (UnQual () (Ident () "s")))) (Var () (UnQual () (Ident () "l")))]),GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "l"))))] (Tuple () Boxed [App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Var () (UnQual () (Ident () "s")))) (Var () (UnQual () (Ident () "l"))),Var () (Qual () (ModuleName () "B") (Ident () "empty"))]),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (Tuple () Boxed [App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Var () (UnQual () (Ident () "s")))) (Var () (UnQual () (Ident () "i"))),App () (App () (App () (Con () (Qual () (ModuleName () "BI") (Ident () "PS"))) (Var () (UnQual () (Ident () "x")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Var () (UnQual () (Ident () "i")))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "i")))))])]) Nothing]))]))))) Nothing],InlineSig () True Nothing (UnQual () (Ident () "breakSpace")),InlineSig () True Nothing (UnQual () (Ident () "is_funky")),TypeSig () [Ident () "is_funky"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (UnQual () (Ident () "Bool")))),FunBind () [Match () (Ident () "is_funky") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (InfixApp () (RightSection () (QVarOp () (UnQual () (Symbol () "/="))) (Lit () (Int () 0 "0"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (App () (Var () (UnQual () (Ident () "has_funky_char"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "l"))))))))))) Nothing])) Nothing],ForImp () (CCall ()) (Just (PlayRisky ())) (Just "fpstring.h has_funky_char") (Ident () "has_funky_char") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "CInt")))))),InlineSig () True Nothing (UnQual () (Ident () "hashPS")),TypeSig () [Ident () "hashPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (UnQual () (Ident () "Int32")))),FunBind () [Match () (Ident () "hashPS") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [Qualifier () (App () (App () (Var () (UnQual () (Ident () "hash"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Var () (UnQual () (Ident () "l"))))]))))) Nothing])) Nothing],TypeSig () [Ident () "hash"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "Int32")))))),FunBind () [Match () (Ident () "hash") [PVar () (Ident () "ptr"),PVar () (Ident () "len")] (UnGuardedRhs () (App () (App () (App () (Var () (UnQual () (Ident () "f"))) (Paren () (ExpTypeSig () (Lit () (Int () 0 "0")) (TyCon () (UnQual () (Ident () "Int32")))))) (Var () (UnQual () (Ident () "ptr")))) (Var () (UnQual () (Ident () "len"))))) (Just (BDecls () [FunBind () [Match () (Ident () "f") [PVar () (Ident () "h"),PWildCard (),PLit () (Signless ()) (Int () 0 "0")] (UnGuardedRhs () (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "h"))))) Nothing,Match () (Ident () "f") [PVar () (Ident () "h"),PVar () (Ident () "p"),PVar () (Ident () "n")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "x")) (App () (Var () (UnQual () (Ident () "peek"))) (Var () (UnQual () (Ident () "p")))),LetStmt () (BDecls () [PatBind () (PBangPat () (PVar () (Ident () "h'"))) (UnGuardedRhs () (InfixApp () (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "x"))))) (QVarOp () (UnQual () (Symbol () "+"))) (Paren () (App () (App () (Var () (UnQual () (Ident () "rotateL"))) (Var () (UnQual () (Ident () "h")))) (Lit () (Int () 8 "8")))))) Nothing]),Qualifier () (App () (App () (App () (Var () (UnQual () (Ident () "f"))) (Var () (UnQual () (Ident () "h'")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "advancePtr"))) (Lit () (Int () 1 "1"))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (Int () 1 "1")))))])) Nothing]]))],InlineSig () True Nothing (UnQual () (Ident () "substrPS")),TypeSig () [Ident () "substrPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyCon () (UnQual () (Ident () "Int")))))),FunBind () [Match () (Ident () "substrPS") [PVar () (Ident () "tok"),PVar () (Ident () "str")] (GuardedRhss () [GuardedRhs () [Qualifier () (App () (Var () (Qual () (ModuleName () "B") (Ident () "null"))) (Var () (UnQual () (Ident () "tok"))))] (App () (Con () (UnQual () (Ident () "Just"))) (Lit () (Int () 0 "0"))),GuardedRhs () [Qualifier () (InfixApp () (App () (Var () (Qual () (ModuleName () "B") (Ident () "length"))) (Var () (UnQual () (Ident () "tok")))) (QVarOp () (UnQual () (Symbol () ">"))) (App () (Var () (Qual () (ModuleName () "B") (Ident () "length"))) (Var () (UnQual () (Ident () "str")))))] (Con () (UnQual () (Ident () "Nothing"))),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (Do () [Generator () (PVar () (Ident () "n")) (App () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "elemIndex"))) (Paren () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "head"))) (Var () (UnQual () (Ident () "tok")))))) (Var () (UnQual () (Ident () "str")))),LetStmt () (BDecls () [PatBind () (PVar () (Ident () "ttok")) (UnGuardedRhs () (App () (Var () (Qual () (ModuleName () "B") (Ident () "tail"))) (Var () (UnQual () (Ident () "tok"))))) Nothing,PatBind () (PVar () (Ident () "reststr")) (UnGuardedRhs () (App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "drop"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "str"))))) Nothing]),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "ttok"))) (QVarOp () (UnQual () (Symbol () "=="))) (App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "take"))) (Paren () (App () (Var () (Qual () (ModuleName () "B") (Ident () "length"))) (Var () (UnQual () (Ident () "ttok")))))) (Var () (UnQual () (Ident () "reststr"))))) (App () (Con () (UnQual () (Ident () "Just"))) (Var () (UnQual () (Ident () "n")))) (InfixApp () (LeftSection () (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1")))) (QVarOp () (UnQual () (Symbol () "+")))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (App () (Var () (UnQual () (Ident () "substrPS"))) (Var () (UnQual () (Ident () "tok")))) (Var () (UnQual () (Ident () "reststr"))))))])]) Nothing],InlineSig () True Nothing (UnQual () (Ident () "breakFirstPS")),TypeSig () [Ident () "breakFirstPS"] (TyFun () (TyCon () (UnQual () (Ident () "Char"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))])))),FunBind () [Match () (Ident () "breakFirstPS") [PVar () (Ident () "c"),PVar () (Ident () "p")] (UnGuardedRhs () (Case () (App () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "elemIndex"))) (Var () (UnQual () (Ident () "c")))) (Var () (UnQual () (Ident () "p")))) [Alt () (PApp () (UnQual () (Ident () "Nothing")) []) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing,Alt () (PApp () (UnQual () (Ident () "Just")) [PVar () (Ident () "n")]) (UnGuardedRhs () (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "take"))) (Var () (UnQual () (Ident () "n")))) (Var () (UnQual () (Ident () "p"))),App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "drop"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "p")))]))) Nothing])) Nothing],InlineSig () True Nothing (UnQual () (Ident () "breakLastPS")),TypeSig () [Ident () "breakLastPS"] (TyFun () (TyCon () (UnQual () (Ident () "Char"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))])))),FunBind () [Match () (Ident () "breakLastPS") [PVar () (Ident () "c"),PVar () (Ident () "p")] (UnGuardedRhs () (Case () (App () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "elemIndexEnd"))) (Var () (UnQual () (Ident () "c")))) (Var () (UnQual () (Ident () "p")))) [Alt () (PApp () (UnQual () (Ident () "Nothing")) []) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing,Alt () (PApp () (UnQual () (Ident () "Just")) [PVar () (Ident () "n")]) (UnGuardedRhs () (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "take"))) (Var () (UnQual () (Ident () "n")))) (Var () (UnQual () (Ident () "p"))),App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "drop"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "n"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (Var () (UnQual () (Ident () "p")))]))) Nothing])) Nothing],InlineSig () True Nothing (UnQual () (Ident () "linesPS")),TypeSig () [Ident () "linesPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyList () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))))),FunBind () [Match () (Ident () "linesPS") [PVar () (Ident () "ps")] (GuardedRhss () [GuardedRhs () [Qualifier () (App () (Var () (Qual () (ModuleName () "B") (Ident () "null"))) (Var () (UnQual () (Ident () "ps"))))] (List () [Var () (Qual () (ModuleName () "B") (Ident () "empty"))]),GuardedRhs () [Qualifier () (Var () (UnQual () (Ident () "otherwise")))] (App () (App () (Var () (Qual () (ModuleName () "BC") (Ident () "split"))) (Lit () (Char () '\n' "\\n"))) (Var () (UnQual () (Ident () "ps"))))]) Nothing],TypeSig () [Ident () "unlinesPS"] (TyFun () (TyList () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))),FunBind () [Match () (Ident () "unlinesPS") [PList () []] (UnGuardedRhs () (Var () (Qual () (ModuleName () "BC") (Ident () "empty")))) Nothing,Match () (Ident () "unlinesPS") [PVar () (Ident () "x")] (UnGuardedRhs () (InfixApp () (Var () (Qual () (ModuleName () "BC") (Ident () "init"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Var () (Qual () (ModuleName () "BC") (Ident () "unlines"))) (Var () (UnQual () (Ident () "x")))))) Nothing],InlineSig () True Nothing (UnQual () (Ident () "unlinesPS")),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static zlib.h gzopen") (Ident () "c_gzopen") (TyFun () (TyCon () (UnQual () (Ident () "CString"))) (TyFun () (TyCon () (UnQual () (Ident () "CString"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyParen () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static zlib.h gzclose") (Ident () "c_gzclose") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ()))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static zlib.h gzread") (Ident () "c_gzread") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "CInt"))))))),ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static zlib.h gzwrite") (Ident () "c_gzwrite") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "CInt"))))))),TypeSig () [Ident () "gzReadFilePS"] (TyFun () (TyCon () (UnQual () (Ident () "FilePath"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))))),FunBind () [Match () (Ident () "gzReadFilePS") [PVar () (Ident () "f")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "h")) (App () (App () (Var () (UnQual () (Ident () "openBinaryFile"))) (Var () (UnQual () (Ident () "f")))) (Con () (UnQual () (Ident () "ReadMode")))),Generator () (PVar () (Ident () "header")) (App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "hGet"))) (Var () (UnQual () (Ident () "h")))) (Lit () (Int () 2 "2"))),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "header"))) (QVarOp () (UnQual () (Symbol () "/="))) (App () (Var () (Qual () (ModuleName () "BC") (Ident () "pack"))) (Lit () (String () "\US\139" "\\US\\139")))) (Do () [Qualifier () (App () (Var () (UnQual () (Ident () "hClose"))) (Var () (UnQual () (Ident () "h")))),Qualifier () (App () (Var () (UnQual () (Ident () "mmapFilePS"))) (Var () (UnQual () (Ident () "f"))))]) (Do () [Qualifier () (App () (App () (App () (Var () (UnQual () (Ident () "hSeek"))) (Var () (UnQual () (Ident () "h")))) (Con () (UnQual () (Ident () "SeekFromEnd")))) (Paren () (NegApp () (Lit () (Int () 4 "4"))))),Generator () (PVar () (Ident () "len")) (App () (Var () (UnQual () (Ident () "hGetLittleEndInt"))) (Var () (UnQual () (Ident () "h")))),Qualifier () (App () (Var () (UnQual () (Ident () "hClose"))) (Var () (UnQual () (Ident () "h")))),LetStmt () (BDecls () [PatBind () (PVar () (Ident () "decompress")) (UnGuardedRhs () (App () (Var () (Qual () (ModuleName () "GZ") (Ident () "decompressWith"))) (RecUpdate () (Var () (Qual () (ModuleName () "GZ") (Ident () "defaultDecompressParams"))) [FieldUpdate () (Qual () (ModuleName () "GZ") (Ident () "decompressBufferSize")) (Var () (UnQual () (Ident () "len")))]))) Nothing]),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "fmap"))) (Paren () (InfixApp () (Var () (Qual () (ModuleName () "B") (Ident () "concat"))) (QVarOp () (UnQual () (Symbol () "."))) (InfixApp () (Var () (Qual () (ModuleName () "BL") (Ident () "toChunks"))) (QVarOp () (UnQual () (Symbol () "."))) (Var () (UnQual () (Ident () "decompress"))))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "fmap"))) (Paren () (InfixApp () (Var () (Qual () (ModuleName () "BL") (Ident () "fromChunks"))) (QVarOp () (UnQual () (Symbol () "."))) (RightSection () (QConOp () (Special () (Cons ()))) (List () []))))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (App () (App () (Var () (Qual () (ModuleName () "B") (Ident () "readFile"))) (Var () (UnQual () (Ident () "f")))) (Var () (Qual () (ModuleName () "BL") (Ident () "readFile")))) (Var () (UnQual () (Ident () "f")))))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "withCString"))) (Var () (UnQual () (Ident () "f")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "fstr")] (InfixApp () (App () (Var () (UnQual () (Ident () "withCString"))) (Lit () (String () "rb" "rb"))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "rb")] (Do () [Generator () (PVar () (Ident () "gzf")) (App () (App () (Var () (UnQual () (Ident () "c_gzopen"))) (Var () (UnQual () (Ident () "fstr")))) (Var () (UnQual () (Ident () "rb")))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "gzf"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "nullPtr")))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "problem opening file " "problem opening file ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f")))))),Generator () (PVar () (Ident () "fp")) (App () (Var () (Qual () (ModuleName () "BI") (Ident () "mallocByteString"))) (Var () (UnQual () (Ident () "len")))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "debugForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "gzReadFilePS " "gzReadFilePS ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f"))))),Generator () (PVar () (Ident () "lread")) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (App () (App () (App () (Var () (UnQual () (Ident () "c_gzread"))) (Var () (UnQual () (Ident () "gzf")))) (Var () (UnQual () (Ident () "p")))) (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "len")))))))),Qualifier () (App () (Var () (UnQual () (Ident () "c_gzclose"))) (Var () (UnQual () (Ident () "gzf")))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "lread")))) (QVarOp () (UnQual () (Symbol () "/="))) (Var () (UnQual () (Ident () "len")))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "problem gzreading file " "problem gzreading file ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f")))))),Qualifier () (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Lit () (Int () 0 "0"))) (Var () (UnQual () (Ident () "len")))))])))))]))])) Nothing],TypeSig () [Ident () "hGetLittleEndInt"] (TyFun () (TyCon () (UnQual () (Ident () "Handle"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (UnQual () (Ident () "Int"))))),FunBind () [Match () (Ident () "hGetLittleEndInt") [PVar () (Ident () "h")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "b1")) (InfixApp () (Var () (UnQual () (Ident () "ord"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "hGetChar"))) (Var () (UnQual () (Ident () "h"))))),Generator () (PVar () (Ident () "b2")) (InfixApp () (Var () (UnQual () (Ident () "ord"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "hGetChar"))) (Var () (UnQual () (Ident () "h"))))),Generator () (PVar () (Ident () "b3")) (InfixApp () (Var () (UnQual () (Ident () "ord"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "hGetChar"))) (Var () (UnQual () (Ident () "h"))))),Generator () (PVar () (Ident () "b4")) (InfixApp () (Var () (UnQual () (Ident () "ord"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "hGetChar"))) (Var () (UnQual () (Ident () "h"))))),Qualifier () (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (InfixApp () (InfixApp () (Var () (UnQual () (Ident () "b1"))) (QVarOp () (UnQual () (Symbol () "+"))) (InfixApp () (Lit () (Int () 256 "256")) (QVarOp () (UnQual () (Symbol () "*"))) (Var () (UnQual () (Ident () "b2"))))) (QVarOp () (UnQual () (Symbol () "+"))) (InfixApp () (Lit () (Int () 65536 "65536")) (QVarOp () (UnQual () (Symbol () "*"))) (Var () (UnQual () (Ident () "b3"))))) (QVarOp () (UnQual () (Symbol () "+"))) (InfixApp () (Lit () (Int () 16777216 "16777216")) (QVarOp () (UnQual () (Symbol () "*"))) (Var () (UnQual () (Ident () "b4"))))))])) Nothing],TypeSig () [Ident () "gzWriteFilePS"] (TyFun () (TyCon () (UnQual () (Ident () "FilePath"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),FunBind () [Match () (Ident () "gzWriteFilePS") [PVar () (Ident () "f"),PVar () (Ident () "ps")] (UnGuardedRhs () (App () (App () (Var () (UnQual () (Ident () "gzWriteFilePSs"))) (Var () (UnQual () (Ident () "f")))) (List () [Var () (UnQual () (Ident () "ps"))]))) Nothing],TypeSig () [Ident () "gzWriteFilePSs"] (TyFun () (TyCon () (UnQual () (Ident () "FilePath"))) (TyFun () (TyList () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),FunBind () [Match () (Ident () "gzWriteFilePSs") [PVar () (Ident () "f"),PVar () (Ident () "pss")] (UnGuardedRhs () (InfixApp () (App () (Var () (Qual () (ModuleName () "BL") (Ident () "writeFile"))) (Var () (UnQual () (Ident () "f")))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (Qual () (ModuleName () "GZ") (Ident () "compress"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (App () (App () (Var () (Qual () (ModuleName () "BL") (Ident () "fromChunks"))) (Var () (UnQual () (Ident () "pss")))) (Var () (UnQual () (Ident () "withCString")))) (Var () (UnQual () (Ident () "f")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "fstr")] (InfixApp () (App () (Var () (UnQual () (Ident () "withCString"))) (Lit () (String () "wb" "wb"))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "wb")] (Do () [Generator () (PVar () (Ident () "gzf")) (App () (App () (Var () (UnQual () (Ident () "c_gzopen"))) (Var () (UnQual () (Ident () "fstr")))) (Var () (UnQual () (Ident () "wb")))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "gzf"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "nullPtr")))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "problem gzopening file for write: " "problem gzopening file for write: ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f")))))),Qualifier () (InfixApp () (App () (App () (Var () (UnQual () (Ident () "mapM_"))) (Paren () (App () (Var () (UnQual () (Ident () "gzWriteToGzf"))) (Var () (UnQual () (Ident () "gzf")))))) (Var () (UnQual () (Ident () "pss")))) (QVarOp () (UnQual () (Ident () "catch"))) (Lambda () [PWildCard ()] (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Lit () (String () "problem gzwriting file: " "problem gzwriting file: ")) (QVarOp () (UnQual () (Symbol () "++"))) (Var () (UnQual () (Ident () "f"))))))),Qualifier () (App () (Var () (UnQual () (Ident () "c_gzclose"))) (Var () (UnQual () (Ident () "gzf"))))])))))))) Nothing],TypeSig () [Ident () "gzWriteToGzf"] (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (Special () (UnitCon ())))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ())))))),FunBind () [Match () (Ident () "gzWriteToGzf") [PVar () (Ident () "gzf"),PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PWildCard (),PWildCard (),PLit () (Signless ()) (Int () 0 "0")]) (UnGuardedRhs () (App () (Var () (UnQual () (Ident () "return"))) (Con () (Special () (UnitCon ()))))) Nothing,Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "lw")) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (App () (App () (App () (Var () (UnQual () (Ident () "c_gzwrite"))) (Var () (UnQual () (Ident () "gzf")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "p"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Paren () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "l")))))))),Qualifier () (InfixApp () (App () (Var () (UnQual () (Ident () "when"))) (Paren () (InfixApp () (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "lw")))) (QVarOp () (UnQual () (Symbol () "/="))) (Var () (UnQual () (Ident () "l")))))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "fail"))) (QVarOp () (UnQual () (Symbol () "$"))) (Lit () (String () "problem in gzWriteToGzf" "problem in gzWriteToGzf"))))])) Nothing])) Nothing],TypeSig () [Ident () "mmapFilePS"] (TyFun () (TyCon () (UnQual () (Ident () "FilePath"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))))),FunBind () [Match () (Ident () "mmapFilePS") [PVar () (Ident () "f")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "x")) (InfixApp () (App () (App () (Var () (UnQual () (Ident () "mmapFileByteString"))) (Var () (UnQual () (Ident () "f")))) (Con () (UnQual () (Ident () "Nothing")))) (QVarOp () (UnQual () (Ident () "catch"))) (Paren () (Lambda () [PWildCard ()] (Do () [Generator () (PVar () (Ident () "size")) (InfixApp () (Var () (UnQual () (Ident () "fileSize"))) (QVarOp () (UnQual () (Ident () "fmap"))) (App () (Var () (UnQual () (Ident () "getSymbolicLinkStatus"))) (Var () (UnQual () (Ident () "f"))))),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "size"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 0 "0"))) (App () (Var () (UnQual () (Ident () "return"))) (Var () (Qual () (ModuleName () "B") (Ident () "empty")))) (InfixApp () (Var () (UnQual () (Ident () "performGC"))) (QVarOp () (UnQual () (Symbol () ">>"))) (App () (App () (Var () (UnQual () (Ident () "mmapFileByteString"))) (Var () (UnQual () (Ident () "f")))) (Con () (UnQual () (Ident () "Nothing"))))))])))),Qualifier () (App () (Var () (UnQual () (Ident () "return"))) (Var () (UnQual () (Ident () "x"))))])) Nothing],PatBind () (PVar () (Ident () "mmapFilePS")) (UnGuardedRhs () (Var () (Qual () (ModuleName () "B") (Ident () "readFile")))) Nothing,ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h conv_to_hex") (Ident () "conv_to_hex") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ()))))))),TypeSig () [Ident () "fromPS2Hex"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))),FunBind () [Match () (Ident () "fromPS2Hex") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "unsafeCreate"))) (Paren () (InfixApp () (Lit () (Int () 2 "2")) (QVarOp () (UnQual () (Symbol () "*"))) (Var () (UnQual () (Ident () "l")))))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "f")] (InfixApp () (App () (App () (Var () (UnQual () (Ident () "conv_to_hex"))) (Var () (UnQual () (Ident () "p")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "f"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Var () (UnQual () (Ident () "fromIntegral"))) (Var () (UnQual () (Ident () "l")))))))))) Nothing])) Nothing],ForImp () (CCall ()) (Just (PlayRisky ())) (Just "static fpstring.h conv_from_hex") (Ident () "conv_from_hex") (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyApp () (TyCon () (UnQual () (Ident () "Ptr"))) (TyCon () (UnQual () (Ident () "Word8")))) (TyFun () (TyCon () (UnQual () (Ident () "CInt"))) (TyApp () (TyCon () (UnQual () (Ident () "IO"))) (TyCon () (Special () (UnitCon ()))))))),TypeSig () [Ident () "fromHex2PS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))),FunBind () [Match () (Ident () "fromHex2PS") [PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "x"),PVar () (Ident () "s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "unsafeCreate"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Ident () "div"))) (Lit () (Int () 2 "2"))))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "x")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "f")] (App () (App () (App () (Var () (UnQual () (Ident () "conv_from_hex"))) (Var () (UnQual () (Ident () "p")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "f"))) (QVarOp () (UnQual () (Ident () "plusPtr"))) (Var () (UnQual () (Ident () "s")))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "fromIntegral"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Ident () "div"))) (Lit () (Int () 2 "2"))))))))))) Nothing])) Nothing],TypeSig () [Ident () "betweenLinesPS"] (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyParen () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")))))))),FunBind () [Match () (Ident () "betweenLinesPS") [PVar () (Ident () "start"),PVar () (Ident () "end"),PVar () (Ident () "ps")] (UnGuardedRhs () (Case () (App () (App () (Var () (UnQual () (Ident () "break"))) (LeftSection () (Var () (UnQual () (Ident () "start"))) (QVarOp () (UnQual () (Symbol () "=="))))) (Paren () (App () (Var () (UnQual () (Ident () "linesPS"))) (Var () (UnQual () (Ident () "ps")))))) [Alt () (PTuple () Boxed [PWildCard (),PInfixApp () (PWildCard ()) (Special () (Cons ())) (PAsPat () (Ident () "rest") (PParen () (PInfixApp () (PVar () (Ident () "bs1")) (Special () (Cons ())) (PWildCard ()))))]) (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "bs1")))) [Alt () (PTuple () Boxed [PVar () (Ident () "ps1"),PVar () (Ident () "s1"),PWildCard ()]) (UnGuardedRhs () (Case () (App () (App () (Var () (UnQual () (Ident () "break"))) (LeftSection () (Var () (UnQual () (Ident () "end"))) (QVarOp () (UnQual () (Symbol () "=="))))) (Var () (UnQual () (Ident () "rest")))) [Alt () (PTuple () Boxed [PWildCard (),PInfixApp () (PVar () (Ident () "bs2")) (Special () (Cons ())) (PWildCard ())]) (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "bs2")))) [Alt () (PTuple () Boxed [PWildCard (),PVar () (Ident () "s2"),PWildCard ()]) (UnGuardedRhs () (InfixApp () (Con () (UnQual () (Ident () "Just"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "ps1")))) (Var () (UnQual () (Ident () "s1")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s2"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "s1")))))))) Nothing])) Nothing,Alt () (PWildCard ()) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing])) Nothing])) Nothing,Alt () (PWildCard ()) (UnGuardedRhs () (Con () (UnQual () (Ident () "Nothing")))) Nothing])) Nothing],TypeSig () [Ident () "break_after_nth_newline"] (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyApp () (TyCon () (UnQual () (Ident () "Maybe"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))])))),FunBind () [Match () (Ident () "break_after_nth_newline") [PLit () (Signless ()) (Int () 0 "0"),PVar () (Ident () "the_ps")] (GuardedRhss () [GuardedRhs () [Qualifier () (App () (Var () (Qual () (ModuleName () "B") (Ident () "null"))) (Var () (UnQual () (Ident () "the_ps"))))] (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [Var () (Qual () (ModuleName () "B") (Ident () "empty")),Var () (Qual () (ModuleName () "B") (Ident () "empty"))]))]) Nothing,Match () (Ident () "break_after_nth_newline") [PVar () (Ident () "n"),PVar () (Ident () "the_ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "the_ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "fp"),PVar () (Ident () "the_s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [LetStmt () (BDecls () [FunBind () [Match () (Ident () "findit") [PLit () (Signless ()) (Int () 0 "0"),PVar () (Ident () "s")] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "end"))))] (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [Var () (UnQual () (Ident () "the_ps")),Var () (Qual () (ModuleName () "B") (Ident () "empty"))])))]) Nothing,Match () (Ident () "findit") [PWildCard (),PVar () (Ident () "s")] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "end"))))] (App () (Var () (UnQual () (Ident () "return"))) (Con () (UnQual () (Ident () "Nothing"))))]) Nothing,Match () (Ident () "findit") [PLit () (Signless ()) (Int () 0 "0"),PVar () (Ident () "s")] (UnGuardedRhs () (Let () (BDecls () [PatBind () (PVar () (Ident () "left_l")) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "the_s"))))) Nothing]) (InfixApp () (Var () (UnQual () (Ident () "return"))) (QVarOp () (UnQual () (Symbol () "$"))) (App () (Con () (UnQual () (Ident () "Just"))) (Tuple () Boxed [App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Var () (UnQual () (Ident () "the_s")))) (Var () (UnQual () (Ident () "left_l"))),App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Var () (UnQual () (Ident () "s")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "left_l")))))]))))) Nothing,Match () (Ident () "findit") [PVar () (Ident () "i"),PVar () (Ident () "s")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "w")) (App () (App () (Var () (UnQual () (Ident () "peekElemOff"))) (Var () (UnQual () (Ident () "p")))) (Var () (UnQual () (Ident () "s")))),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "nl")))) (App () (App () (Var () (UnQual () (Ident () "findit"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (Int () 1 "1"))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))) (App () (App () (Var () (UnQual () (Ident () "findit"))) (Var () (UnQual () (Ident () "i")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))))])) Nothing],PatBind () (PVar () (Ident () "nl")) (UnGuardedRhs () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "c2w"))) (Lit () (Char () '\n' "\\n")))) Nothing,PatBind () (PVar () (Ident () "end")) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "the_s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Var () (UnQual () (Ident () "l"))))) Nothing]),Qualifier () (App () (App () (Var () (UnQual () (Ident () "findit"))) (Var () (UnQual () (Ident () "n")))) (Var () (UnQual () (Ident () "the_s"))))]))))) Nothing])) Nothing],TypeSig () [Ident () "break_before_nth_newline"] (TyFun () (TyCon () (UnQual () (Ident () "Int"))) (TyFun () (TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))) (TyTuple () Boxed [TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString")),TyCon () (Qual () (ModuleName () "B") (Ident () "ByteString"))]))),FunBind () [Match () (Ident () "break_before_nth_newline") [PLit () (Signless ()) (Int () 0 "0"),PVar () (Ident () "the_ps")] (GuardedRhss () [GuardedRhs () [Qualifier () (App () (Var () (Qual () (ModuleName () "B") (Ident () "null"))) (Var () (UnQual () (Ident () "the_ps"))))] (Tuple () Boxed [Var () (Qual () (ModuleName () "B") (Ident () "empty")),Var () (Qual () (ModuleName () "B") (Ident () "empty"))])]) Nothing,Match () (Ident () "break_before_nth_newline") [PVar () (Ident () "n"),PVar () (Ident () "the_ps")] (UnGuardedRhs () (Case () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "toForeignPtr"))) (Var () (UnQual () (Ident () "the_ps")))) [Alt () (PTuple () Boxed [PVar () (Ident () "fp"),PVar () (Ident () "the_s"),PVar () (Ident () "l")]) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "unsafePerformIO"))) (QVarOp () (UnQual () (Symbol () "$"))) (InfixApp () (App () (Var () (UnQual () (Ident () "withForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (QVarOp () (UnQual () (Symbol () "$"))) (Lambda () [PVar () (Ident () "p")] (Do () [LetStmt () (BDecls () [FunBind () [Match () (Ident () "findit") [PWildCard (),PVar () (Ident () "s")] (GuardedRhss () [GuardedRhs () [Qualifier () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "end"))))] (App () (Var () (UnQual () (Ident () "return"))) (Tuple () Boxed [Var () (UnQual () (Ident () "the_ps")),Var () (Qual () (ModuleName () "B") (Ident () "empty"))]))]) Nothing,Match () (Ident () "findit") [PVar () (Ident () "i"),PVar () (Ident () "s")] (UnGuardedRhs () (Do () [Generator () (PVar () (Ident () "w")) (App () (App () (Var () (UnQual () (Ident () "peekElemOff"))) (Var () (UnQual () (Ident () "p")))) (Var () (UnQual () (Ident () "s")))),Qualifier () (If () (InfixApp () (Var () (UnQual () (Ident () "w"))) (QVarOp () (UnQual () (Symbol () "=="))) (Var () (UnQual () (Ident () "nl")))) (If () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "=="))) (Lit () (Int () 0 "0"))) (Let () (BDecls () [PatBind () (PVar () (Ident () "left_l")) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "the_s"))))) Nothing]) (App () (Var () (UnQual () (Ident () "return"))) (Tuple () Boxed [App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Var () (UnQual () (Ident () "the_s")))) (Var () (UnQual () (Ident () "left_l"))),App () (App () (App () (Var () (UnQual () (Ident () "fromForeignPtr"))) (Var () (UnQual () (Ident () "fp")))) (Var () (UnQual () (Ident () "s")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "l"))) (QVarOp () (UnQual () (Symbol () "-"))) (Var () (UnQual () (Ident () "left_l")))))]))) (App () (App () (Var () (UnQual () (Ident () "findit"))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "i"))) (QVarOp () (UnQual () (Symbol () "-"))) (Lit () (Int () 1 "1"))))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1")))))) (App () (App () (Var () (UnQual () (Ident () "findit"))) (Var () (UnQual () (Ident () "i")))) (Paren () (InfixApp () (Var () (UnQual () (Ident () "s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Lit () (Int () 1 "1"))))))])) Nothing],PatBind () (PVar () (Ident () "nl")) (UnGuardedRhs () (App () (Var () (Qual () (ModuleName () "BI") (Ident () "c2w"))) (Lit () (Char () '\n' "\\n")))) Nothing,PatBind () (PVar () (Ident () "end")) (UnGuardedRhs () (InfixApp () (Var () (UnQual () (Ident () "the_s"))) (QVarOp () (UnQual () (Symbol () "+"))) (Var () (UnQual () (Ident () "l"))))) Nothing]),Qualifier () (App () (App () (Var () (UnQual () (Ident () "findit"))) (Var () (UnQual () (Ident () "n")))) (Var () (UnQual () (Ident () "the_s"))))]))))) Nothing])) Nothing]] haskell-src-exts-1.18.2/tests/examples/ByteStringUtils.hs.prettyprinter.golden0000644000000000000000000003534012746233113026021 0ustar0000000000000000{-# LANGUAGE BangPatterns, ForeignFunctionInterface, CPP #-} module ByteStringUtils (unsafeWithInternals, unpackPSfromUTF8, gzReadFilePS, mmapFilePS, gzWriteFilePS, gzWriteFilePSs, ifHeadThenTail, dropSpace, breakSpace, linesPS, unlinesPS, hashPS, breakFirstPS, breakLastPS, substrPS, readIntPS, is_funky, fromHex2PS, fromPS2Hex, betweenLinesPS, break_after_nth_newline, break_before_nth_newline, intercalate) where import Prelude hiding (catch) import qualified Data.ByteString as B import qualified Data.ByteString.Char8 as BC import qualified Data.ByteString.Internal as BI import Data.ByteString (intercalate, uncons) import Data.ByteString.Internal (fromForeignPtr) import Control.Exception (catch) import System.IO import System.IO.Unsafe (unsafePerformIO) import Foreign.Storable (peekElemOff, peek) import Foreign.Marshal.Alloc (free) import Foreign.Marshal.Array (mallocArray, peekArray, advancePtr) import Foreign.C.Types (CInt) import Data.Bits (rotateL) import Data.Char (chr, ord, isSpace) import Data.Word (Word8) import Data.Int (Int32) import Control.Monad (when) import Foreign.Ptr (nullPtr) import Foreign.ForeignPtr (ForeignPtr) import Foreign.Ptr (plusPtr, Ptr) import Foreign.ForeignPtr (withForeignPtr) import Foreign.ForeignPtr (addForeignPtrFinalizer) import Foreign.Ptr (FunPtr) import qualified Data.ByteString.Lazy as BL import qualified Codec.Compression.GZip as GZ import Foreign.C.String (CString, withCString) import System.IO.MMap (mmapFileByteString) import System.Mem (performGC) import System.Posix.Files (fileSize, getSymbolicLinkStatus) debugForeignPtr :: ForeignPtr a -> String -> IO () foreign import ccall unsafe "static fpstring.h debug_alloc" debug_alloc :: Ptr a -> CString -> IO () foreign import ccall unsafe "static fpstring.h & debug_free" debug_free :: FunPtr (Ptr a -> IO ()) debugForeignPtr fp n = withCString n $ \ cname -> withForeignPtr fp $ \ p -> do debug_alloc p cname addForeignPtrFinalizer debug_free fp debugForeignPtr _ _ = return () unsafeWithInternals :: B.ByteString -> (Ptr Word8 -> Int -> IO a) -> IO a unsafeWithInternals ps f = case BI.toForeignPtr ps of (fp, s, l) -> withForeignPtr fp $ \ p -> f (p `plusPtr` s) l readIntPS :: B.ByteString -> Maybe (Int, B.ByteString) readIntPS = BC.readInt . BC.dropWhile isSpace unpackPSfromUTF8 :: B.ByteString -> String unpackPSfromUTF8 ps = case BI.toForeignPtr ps of (_, _, 0) -> "" (x, s, l) -> unsafePerformIO $ withForeignPtr x $ \ p -> do outbuf <- mallocArray l lout <- fromIntegral `fmap` utf8_to_ints outbuf (p `plusPtr` s) (fromIntegral l) when (lout < 0) $ error "Bad UTF8!" str <- (map (chr . fromIntegral)) `fmap` peekArray lout outbuf free outbuf return str foreign import ccall unsafe "static fpstring.h utf8_to_ints" utf8_to_ints :: Ptr Int -> Ptr Word8 -> CInt -> IO CInt {-# INLINE ifHeadThenTail #-} ifHeadThenTail :: Word8 -> B.ByteString -> Maybe B.ByteString ifHeadThenTail c s = case uncons s of Just (w, t) | w == c -> Just t _ -> Nothing isSpaceWord8 :: Word8 -> Bool isSpaceWord8 w = w == 32 || w == 9 || w == 10 || w == 13 {-# INLINE isSpaceWord8 #-} firstnonspace :: Ptr Word8 -> Int -> Int -> IO Int firstnonspace !ptr !n !m | n >= m = return n | otherwise = do w <- peekElemOff ptr n if isSpaceWord8 w then firstnonspace ptr (n + 1) m else return n firstspace :: Ptr Word8 -> Int -> Int -> IO Int firstspace !ptr !n !m | n >= m = return n | otherwise = do w <- peekElemOff ptr n if (not . isSpaceWord8) w then firstspace ptr (n + 1) m else return n dropSpace :: B.ByteString -> B.ByteString dropSpace (BI.PS x s l) = BI.inlinePerformIO $ withForeignPtr x $ \ p -> do i <- firstnonspace (p `plusPtr` s) 0 l return $! if i == l then B.empty else BI.PS x (s + i) (l - i) {-# INLINE dropSpace #-} breakSpace :: B.ByteString -> (B.ByteString, B.ByteString) breakSpace (BI.PS x s l) = BI.inlinePerformIO $ withForeignPtr x $ \ p -> do i <- firstspace (p `plusPtr` s) 0 l return $! case () of _ | i == 0 -> (B.empty, BI.PS x s l) | i == l -> (BI.PS x s l, B.empty) | otherwise -> (BI.PS x s i, BI.PS x (s + i) (l - i)) {-# INLINE breakSpace #-} {-# INLINE is_funky #-} is_funky :: B.ByteString -> Bool is_funky ps = case BI.toForeignPtr ps of (x, s, l) -> unsafePerformIO $ withForeignPtr x $ \ p -> (/= 0) `fmap` has_funky_char (p `plusPtr` s) (fromIntegral l) foreign import ccall unsafe "fpstring.h has_funky_char" has_funky_char :: Ptr Word8 -> CInt -> IO CInt {-# INLINE hashPS #-} hashPS :: B.ByteString -> Int32 hashPS ps = case BI.toForeignPtr ps of (x, s, l) -> unsafePerformIO $ withForeignPtr x $ \ p -> do hash (p `plusPtr` s) l hash :: Ptr Word8 -> Int -> IO Int32 hash ptr len = f (0 :: Int32) ptr len where f h _ 0 = return h f h p n = do x <- peek p let !h' = (fromIntegral x) + (rotateL h 8) f h' (p `advancePtr` 1) (n - 1) {-# INLINE substrPS #-} substrPS :: B.ByteString -> B.ByteString -> Maybe Int substrPS tok str | B.null tok = Just 0 | B.length tok > B.length str = Nothing | otherwise = do n <- BC.elemIndex (BC.head tok) str let ttok = B.tail tok reststr = B.drop (n + 1) str if ttok == B.take (B.length ttok) reststr then Just n else ((n + 1) +) `fmap` substrPS tok reststr {-# INLINE breakFirstPS #-} breakFirstPS :: Char -> B.ByteString -> Maybe (B.ByteString, B.ByteString) breakFirstPS c p = case BC.elemIndex c p of Nothing -> Nothing Just n -> Just (B.take n p, B.drop (n + 1) p) {-# INLINE breakLastPS #-} breakLastPS :: Char -> B.ByteString -> Maybe (B.ByteString, B.ByteString) breakLastPS c p = case BC.elemIndexEnd c p of Nothing -> Nothing Just n -> Just (B.take n p, B.drop (n + 1) p) {-# INLINE linesPS #-} linesPS :: B.ByteString -> [B.ByteString] linesPS ps | B.null ps = [B.empty] | otherwise = BC.split '\n' ps unlinesPS :: [B.ByteString] -> B.ByteString unlinesPS [] = BC.empty unlinesPS x = BC.init $ BC.unlines x {-# INLINE unlinesPS #-} foreign import ccall unsafe "static zlib.h gzopen" c_gzopen :: CString -> CString -> IO (Ptr ()) foreign import ccall unsafe "static zlib.h gzclose" c_gzclose :: Ptr () -> IO () foreign import ccall unsafe "static zlib.h gzread" c_gzread :: Ptr () -> Ptr Word8 -> CInt -> IO CInt foreign import ccall unsafe "static zlib.h gzwrite" c_gzwrite :: Ptr () -> Ptr Word8 -> CInt -> IO CInt gzReadFilePS :: FilePath -> IO B.ByteString gzReadFilePS f = do h <- openBinaryFile f ReadMode header <- B.hGet h 2 if header /= BC.pack "\US\139" then do hClose h mmapFilePS f else do hSeek h SeekFromEnd (-4) len <- hGetLittleEndInt h hClose h let decompress = GZ.decompressWith GZ.defaultDecompressParams{GZ.decompressBufferSize = len} fmap (B.concat . BL.toChunks . decompress) $ fmap (BL.fromChunks . (: [])) $ B.readFile f BL.readFile f withCString f $ \ fstr -> withCString "rb" $ \ rb -> do gzf <- c_gzopen fstr rb when (gzf == nullPtr) $ fail $ "problem opening file " ++ f fp <- BI.mallocByteString len debugForeignPtr fp $ "gzReadFilePS " ++ f lread <- withForeignPtr fp $ \ p -> c_gzread gzf p (fromIntegral len) c_gzclose gzf when (fromIntegral lread /= len) $ fail $ "problem gzreading file " ++ f return $ fromForeignPtr fp 0 len hGetLittleEndInt :: Handle -> IO Int hGetLittleEndInt h = do b1 <- ord `fmap` hGetChar h b2 <- ord `fmap` hGetChar h b3 <- ord `fmap` hGetChar h b4 <- ord `fmap` hGetChar h return $ b1 + 256 * b2 + 65536 * b3 + 16777216 * b4 gzWriteFilePS :: FilePath -> B.ByteString -> IO () gzWriteFilePS f ps = gzWriteFilePSs f [ps] gzWriteFilePSs :: FilePath -> [B.ByteString] -> IO () gzWriteFilePSs f pss = BL.writeFile f $ GZ.compress $ BL.fromChunks pss withCString f $ \ fstr -> withCString "wb" $ \ wb -> do gzf <- c_gzopen fstr wb when (gzf == nullPtr) $ fail $ "problem gzopening file for write: " ++ f mapM_ (gzWriteToGzf gzf) pss `catch` \ _ -> fail $ "problem gzwriting file: " ++ f c_gzclose gzf gzWriteToGzf :: Ptr () -> B.ByteString -> IO () gzWriteToGzf gzf ps = case BI.toForeignPtr ps of (_, _, 0) -> return () (x, s, l) -> do lw <- withForeignPtr x $ \ p -> c_gzwrite gzf (p `plusPtr` s) (fromIntegral l) when (fromIntegral lw /= l) $ fail $ "problem in gzWriteToGzf" mmapFilePS :: FilePath -> IO B.ByteString mmapFilePS f = do x <- mmapFileByteString f Nothing `catch` (\ _ -> do size <- fileSize `fmap` getSymbolicLinkStatus f if size == 0 then return B.empty else performGC >> mmapFileByteString f Nothing) return x mmapFilePS = B.readFile foreign import ccall unsafe "static fpstring.h conv_to_hex" conv_to_hex :: Ptr Word8 -> Ptr Word8 -> CInt -> IO () fromPS2Hex :: B.ByteString -> B.ByteString fromPS2Hex ps = case BI.toForeignPtr ps of (x, s, l) -> BI.unsafeCreate (2 * l) $ \ p -> withForeignPtr x $ \ f -> conv_to_hex p (f `plusPtr` s) $ fromIntegral l foreign import ccall unsafe "static fpstring.h conv_from_hex" conv_from_hex :: Ptr Word8 -> Ptr Word8 -> CInt -> IO () fromHex2PS :: B.ByteString -> B.ByteString fromHex2PS ps = case BI.toForeignPtr ps of (x, s, l) -> BI.unsafeCreate (l `div` 2) $ \ p -> withForeignPtr x $ \ f -> conv_from_hex p (f `plusPtr` s) (fromIntegral $ l `div` 2) betweenLinesPS :: B.ByteString -> B.ByteString -> B.ByteString -> Maybe (B.ByteString) betweenLinesPS start end ps = case break (start ==) (linesPS ps) of (_, _ : rest@(bs1 : _)) -> case BI.toForeignPtr bs1 of (ps1, s1, _) -> case break (end ==) rest of (_, bs2 : _) -> case BI.toForeignPtr bs2 of (_, s2, _) -> Just $ fromForeignPtr ps1 s1 (s2 - s1) _ -> Nothing _ -> Nothing break_after_nth_newline :: Int -> B.ByteString -> Maybe (B.ByteString, B.ByteString) break_after_nth_newline 0 the_ps | B.null the_ps = Just (B.empty, B.empty) break_after_nth_newline n the_ps = case BI.toForeignPtr the_ps of (fp, the_s, l) -> unsafePerformIO $ withForeignPtr fp $ \ p -> do let findit 0 s | s == end = return $ Just (the_ps, B.empty) findit _ s | s == end = return Nothing findit 0 s = let left_l = s - the_s in return $ Just (fromForeignPtr fp the_s left_l, fromForeignPtr fp s (l - left_l)) findit i s = do w <- peekElemOff p s if w == nl then findit (i - 1) (s + 1) else findit i (s + 1) nl = BI.c2w '\n' end = the_s + l findit n the_s break_before_nth_newline :: Int -> B.ByteString -> (B.ByteString, B.ByteString) break_before_nth_newline 0 the_ps | B.null the_ps = (B.empty, B.empty) break_before_nth_newline n the_ps = case BI.toForeignPtr the_ps of (fp, the_s, l) -> unsafePerformIO $ withForeignPtr fp $ \ p -> do let findit _ s | s == end = return (the_ps, B.empty) findit i s = do w <- peekElemOff p s if w == nl then if i == 0 then let left_l = s - the_s in return (fromForeignPtr fp the_s left_l, fromForeignPtr fp s (l - left_l)) else findit (i - 1) (s + 1) else findit i (s + 1) nl = BI.c2w '\n' end = the_s + l findit n the_s haskell-src-exts-1.18.2/tests/examples/CApiFFI.hs0000644000000000000000000000004512746233113017640 0ustar0000000000000000{-# LANGUAGE CApiFFI #-} foo = capi haskell-src-exts-1.18.2/tests/examples/CApiFFI.hs.exactprinter.golden0000644000000000000000000000000612746233113023613 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/CApiFFI.hs.parser.golden0000644000000000000000000000466512746233113022416 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/CApiFFI.hs" 1 1 1 1 , SrcSpan "tests/examples/CApiFFI.hs" 2 1 2 1 , SrcSpan "tests/examples/CApiFFI.hs" 2 1 2 1 , SrcSpan "tests/examples/CApiFFI.hs" 2 1 2 1 , SrcSpan "tests/examples/CApiFFI.hs" 4 1 4 1 , SrcSpan "tests/examples/CApiFFI.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 1 1 1 25 , srcInfoPoints = [ SrcSpan "tests/examples/CApiFFI.hs" 1 1 1 13 , SrcSpan "tests/examples/CApiFFI.hs" 1 22 1 25 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 1 14 1 21 , srcInfoPoints = [] } "CApiFFI" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 2 1 2 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 2 1 2 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 2 1 2 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 2 5 2 11 , srcInfoPoints = [ SrcSpan "tests/examples/CApiFFI.hs" 2 5 2 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 2 7 2 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 2 7 2 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CApiFFI.hs" 2 7 2 11 , srcInfoPoints = [] } "capi")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/CApiFFI.hs.prettyparser.golden0000644000000000000000000000000612746233113023647 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/CApiFFI.hs.prettyprinter.golden0000644000000000000000000000004412746233113024040 0ustar0000000000000000{-# LANGUAGE CApiFFI #-} foo = capi haskell-src-exts-1.18.2/tests/examples/ClassContext.hs0000644000000000000000000000006112746233113021107 0ustar0000000000000000f :: Ord (i Int) => i Int -> i Int f = undefined haskell-src-exts-1.18.2/tests/examples/ClassContext.hs.exactprinter.golden0000644000000000000000000000000612746233113025064 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ClassContext.hs.parser.golden0000644000000000000000000002221612746233113023657 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/ClassContext.hs" 1 1 1 1 , SrcSpan "tests/examples/ClassContext.hs" 1 1 1 1 , SrcSpan "tests/examples/ClassContext.hs" 1 1 1 1 , SrcSpan "tests/examples/ClassContext.hs" 2 1 2 1 , SrcSpan "tests/examples/ClassContext.hs" 3 1 3 1 , SrcSpan "tests/examples/ClassContext.hs" 3 1 3 1 ] } Nothing [] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 1 1 35 , srcInfoPoints = [ SrcSpan "tests/examples/ClassContext.hs" 1 3 1 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 1 1 2 , srcInfoPoints = [] } "f" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 6 1 35 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 6 1 20 , srcInfoPoints = [ SrcSpan "tests/examples/ClassContext.hs" 1 18 1 20 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 6 1 20 , srcInfoPoints = [ SrcSpan "tests/examples/ClassContext.hs" 1 18 1 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 6 1 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 6 1 9 , srcInfoPoints = [] } "Ord")) [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 10 1 17 , srcInfoPoints = [ SrcSpan "tests/examples/ClassContext.hs" 1 10 1 11 , SrcSpan "tests/examples/ClassContext.hs" 1 16 1 17 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 11 1 16 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 11 1 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 11 1 12 , srcInfoPoints = [] } "i")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 13 1 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 13 1 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 13 1 16 , srcInfoPoints = [] } "Int")))) ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 21 1 35 , srcInfoPoints = [ SrcSpan "tests/examples/ClassContext.hs" 1 27 1 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 21 1 26 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 21 1 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 21 1 22 , srcInfoPoints = [] } "i")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 23 1 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 23 1 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 23 1 26 , srcInfoPoints = [] } "Int")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 30 1 35 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 30 1 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 30 1 31 , srcInfoPoints = [] } "i")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 32 1 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 32 1 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 1 32 1 35 , srcInfoPoints = [] } "Int")))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 2 1 2 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 2 1 2 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 2 1 2 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 2 3 2 14 , srcInfoPoints = [ SrcSpan "tests/examples/ClassContext.hs" 2 3 2 4 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 2 5 2 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 2 5 2 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassContext.hs" 2 5 2 14 , srcInfoPoints = [] } "undefined")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ClassContext.hs.prettyparser.golden0000644000000000000000000000000612746233113025120 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ClassContext.hs.prettyprinter.golden0000644000000000000000000000006112746233113025310 0ustar0000000000000000f :: Ord (i Int) => i Int -> i Int f = undefined haskell-src-exts-1.18.2/tests/examples/ClassDeclSrcSpan.hs0000644000000000000000000000011112746233113021620 0ustar0000000000000000 class C1 a where toString :: a -> String t1 :: String t1 = "Hello" haskell-src-exts-1.18.2/tests/examples/ClassDeclSrcSpan.hs.exactprinter.golden0000644000000000000000000000000612746233113025601 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ClassDeclSrcSpan.hs.parser.golden0000644000000000000000000001724112746233113024376 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 1 2 1 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 1 2 1 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 1 2 1 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 5 1 5 1 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 6 1 6 1 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 7 1 7 1 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 7 1 7 1 ] } Nothing [] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 1 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 1 2 6 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 12 2 17 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 5 3 5 , SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 5 1 5 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 7 2 11 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 7 2 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 7 2 9 , srcInfoPoints = [] } "C1")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 10 2 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 2 10 2 11 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 5 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 14 3 16 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 5 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 14 3 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 5 3 13 , srcInfoPoints = [] } "toString" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 17 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 19 3 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 17 3 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 17 3 18 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 22 3 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 22 3 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 3 22 3 28 , srcInfoPoints = [] } "String"))))) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 5 1 5 13 , srcInfoPoints = [ SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 5 4 5 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 5 1 5 3 , srcInfoPoints = [] } "t1" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 5 7 5 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 5 7 5 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 5 7 5 13 , srcInfoPoints = [] } "String"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 6 1 6 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 6 1 6 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 6 1 6 3 , srcInfoPoints = [] } "t1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 6 4 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 6 4 6 5 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 6 6 6 13 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassDeclSrcSpan.hs" 6 6 6 13 , srcInfoPoints = [] } "Hello" "Hello"))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ClassDeclSrcSpan.hs.prettyparser.golden0000644000000000000000000000000612746233113025635 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ClassDeclSrcSpan.hs.prettyprinter.golden0000644000000000000000000000011412746233113026024 0ustar0000000000000000class C1 a where toString :: a -> String t1 :: String t1 = "Hello" haskell-src-exts-1.18.2/tests/examples/ClassInstType.hs0000644000000000000000000000073512746233113021252 0ustar0000000000000000module ClassInstType where class Dir d where localDir :: d -> IO FilePath instance Dir Directory where localDir (Local f) = return f localDir (Darcs {url=url,darcsVersion=Patch patch,subDirectory=subDir}) = do tmp <- createTempDir 0 "haskelld" darcsOut <- runDarcsCommand tmp "get" ["--lazy","--to-match","hash "++ patch,url,"fs"] print darcsOut let (ExitSuccess,"",out) = darcsOut print out return $ tmp "fs" subDir type URL = String haskell-src-exts-1.18.2/tests/examples/ClassInstType.hs.exactprinter.golden0000644000000000000000000000000612746233113025217 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ClassInstType.hs.parser.golden0000644000000000000000000024040312746233113024012 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 1 1 18 1 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 1 1 1 1 , SrcSpan "tests/examples/ClassInstType.hs" 1 1 1 1 , SrcSpan "tests/examples/ClassInstType.hs" 3 1 3 1 , SrcSpan "tests/examples/ClassInstType.hs" 6 1 6 1 , SrcSpan "tests/examples/ClassInstType.hs" 17 1 17 1 , SrcSpan "tests/examples/ClassInstType.hs" 18 1 18 1 , SrcSpan "tests/examples/ClassInstType.hs" 18 1 18 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 1 1 1 27 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 1 1 1 7 , SrcSpan "tests/examples/ClassInstType.hs" 1 22 1 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 1 8 1 21 , srcInfoPoints = [] } "ClassInstType") Nothing Nothing)) [] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 3 1 4 31 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 3 1 3 6 , SrcSpan "tests/examples/ClassInstType.hs" 3 13 3 18 , SrcSpan "tests/examples/ClassInstType.hs" 4 3 4 3 , SrcSpan "tests/examples/ClassInstType.hs" 6 1 6 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 3 7 3 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 3 7 3 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 3 7 3 10 , srcInfoPoints = [] } "Dir")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 3 11 3 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 3 11 3 12 , srcInfoPoints = [] } "d"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 3 4 31 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 4 12 4 14 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 3 4 31 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 4 12 4 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 3 4 11 , srcInfoPoints = [] } "localDir" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 15 4 31 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 4 17 4 19 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 15 4 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 15 4 16 , srcInfoPoints = [] } "d")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 20 4 31 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 20 4 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 20 4 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 20 4 22 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 23 4 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 23 4 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 4 23 4 31 , srcInfoPoints = [] } "FilePath")))))) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 1 17 0 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 6 1 6 9 , SrcSpan "tests/examples/ClassInstType.hs" 6 24 6 29 , SrcSpan "tests/examples/ClassInstType.hs" 7 3 7 3 , SrcSpan "tests/examples/ClassInstType.hs" 9 3 9 3 , SrcSpan "tests/examples/ClassInstType.hs" 17 1 17 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 10 6 23 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 10 6 23 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 10 6 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 10 6 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 10 6 13 , srcInfoPoints = [] } "Dir"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 14 6 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 14 6 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 6 14 6 23 , srcInfoPoints = [] } "Directory"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 3 15 37 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 3 15 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 3 7 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 3 7 11 , srcInfoPoints = [] } "localDir") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 12 7 21 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 7 12 7 13 , SrcSpan "tests/examples/ClassInstType.hs" 7 20 7 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 13 7 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 13 7 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 13 7 18 , srcInfoPoints = [] } "Local")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 19 7 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 19 7 20 , srcInfoPoints = [] } "f") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 22 7 32 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 7 22 7 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 24 7 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 24 7 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 24 7 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 24 7 30 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 31 7 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 31 7 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 7 31 7 32 , srcInfoPoints = [] } "f"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 3 15 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 3 9 11 , srcInfoPoints = [] } "localDir") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 12 9 74 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 9 12 9 13 , SrcSpan "tests/examples/ClassInstType.hs" 9 73 9 74 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 13 9 73 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 9 19 9 20 , SrcSpan "tests/examples/ClassInstType.hs" 9 27 9 28 , SrcSpan "tests/examples/ClassInstType.hs" 9 52 9 53 , SrcSpan "tests/examples/ClassInstType.hs" 9 72 9 73 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 13 9 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 13 9 18 , srcInfoPoints = [] } "Darcs")) [ PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 20 9 27 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 9 23 9 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 20 9 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 20 9 23 , srcInfoPoints = [] } "url")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 24 9 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 24 9 27 , srcInfoPoints = [] } "url")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 28 9 52 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 9 40 9 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 28 9 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 28 9 40 , srcInfoPoints = [] } "darcsVersion")) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 41 9 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 41 9 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 41 9 46 , srcInfoPoints = [] } "Patch")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 47 9 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 47 9 52 , srcInfoPoints = [] } "patch") ]) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 53 9 72 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 9 65 9 66 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 53 9 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 53 9 65 , srcInfoPoints = [] } "subDirectory")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 66 9 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 66 9 72 , srcInfoPoints = [] } "subDir")) ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 75 15 37 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 9 75 9 76 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 9 77 15 37 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 9 77 9 79 , SrcSpan "tests/examples/ClassInstType.hs" 10 5 10 5 , SrcSpan "tests/examples/ClassInstType.hs" 11 5 11 5 , SrcSpan "tests/examples/ClassInstType.hs" 12 5 12 5 , SrcSpan "tests/examples/ClassInstType.hs" 13 5 13 5 , SrcSpan "tests/examples/ClassInstType.hs" 14 5 14 5 , SrcSpan "tests/examples/ClassInstType.hs" 15 5 15 5 , SrcSpan "tests/examples/ClassInstType.hs" 17 1 17 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 5 10 38 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 10 9 10 11 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 5 10 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 5 10 8 , srcInfoPoints = [] } "tmp")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 12 10 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 12 10 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 12 10 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 12 10 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 12 10 25 , srcInfoPoints = [] } "createTempDir"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 26 10 27 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 26 10 27 , srcInfoPoints = [] } 0 "0"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 28 10 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 10 28 10 38 , srcInfoPoints = [] } "haskelld" "haskelld"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 5 11 91 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 11 14 11 16 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 5 11 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 5 11 13 , srcInfoPoints = [] } "darcsOut")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 17 11 91 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 17 11 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 17 11 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 17 11 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 17 11 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 17 11 32 , srcInfoPoints = [] } "runDarcsCommand"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 33 11 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 33 11 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 33 11 36 , srcInfoPoints = [] } "tmp")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 37 11 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 37 11 42 , srcInfoPoints = [] } "get" "get"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 43 11 91 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 11 43 11 44 , SrcSpan "tests/examples/ClassInstType.hs" 11 52 11 53 , SrcSpan "tests/examples/ClassInstType.hs" 11 65 11 66 , SrcSpan "tests/examples/ClassInstType.hs" 11 81 11 82 , SrcSpan "tests/examples/ClassInstType.hs" 11 85 11 86 , SrcSpan "tests/examples/ClassInstType.hs" 11 90 11 91 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 44 11 52 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 44 11 52 , srcInfoPoints = [] } "--lazy" "--lazy") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 53 11 65 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 53 11 65 , srcInfoPoints = [] } "--to-match" "--to-match") , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 66 11 81 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 66 11 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 66 11 73 , srcInfoPoints = [] } "hash " "hash ")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 73 11 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 73 11 75 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 73 11 75 , srcInfoPoints = [] } "++"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 76 11 81 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 76 11 81 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 76 11 81 , srcInfoPoints = [] } "patch"))) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 82 11 85 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 82 11 85 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 82 11 85 , srcInfoPoints = [] } "url")) , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 86 11 90 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 11 86 11 90 , srcInfoPoints = [] } "fs" "fs") ])) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 12 5 12 19 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 12 5 12 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 12 5 12 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 12 5 12 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 12 5 12 10 , srcInfoPoints = [] } "print"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 12 11 12 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 12 11 12 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 12 11 12 19 , srcInfoPoints = [] } "darcsOut")))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 5 13 40 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 13 5 13 8 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 9 13 40 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 13 9 13 9 , SrcSpan "tests/examples/ClassInstType.hs" 14 5 14 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 9 13 40 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 9 13 29 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 13 9 13 10 , SrcSpan "tests/examples/ClassInstType.hs" 13 21 13 22 , SrcSpan "tests/examples/ClassInstType.hs" 13 24 13 25 , SrcSpan "tests/examples/ClassInstType.hs" 13 28 13 29 ] } Boxed [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 10 13 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 10 13 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 10 13 21 , srcInfoPoints = [] } "ExitSuccess")) [] , PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 22 13 24 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 22 13 24 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 22 13 24 , srcInfoPoints = [] } "" "") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 25 13 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 25 13 28 , srcInfoPoints = [] } "out") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 30 13 40 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 13 30 13 31 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 32 13 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 32 13 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 13 32 13 40 , srcInfoPoints = [] } "darcsOut")))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 14 5 14 14 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 14 5 14 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 14 5 14 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 14 5 14 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 14 5 14 10 , srcInfoPoints = [] } "print"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 14 11 14 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 14 11 14 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 14 11 14 14 , srcInfoPoints = [] } "out")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 5 15 37 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 5 15 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 5 15 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 5 15 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 5 15 11 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 12 15 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 12 15 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 12 15 13 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 14 15 37 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 14 15 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 14 15 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 14 15 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 14 15 17 , srcInfoPoints = [] } "tmp"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 18 15 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 18 15 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 18 15 21 , srcInfoPoints = [] } ""))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 22 15 26 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 22 15 26 , srcInfoPoints = [] } "fs" "fs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 27 15 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 27 15 30 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 27 15 30 , srcInfoPoints = [] } ""))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 31 15 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 31 15 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 15 31 15 37 , srcInfoPoints = [] } "subDir"))))) ])) Nothing ]) ]) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 17 1 17 18 , srcInfoPoints = [ SrcSpan "tests/examples/ClassInstType.hs" 17 1 17 5 , SrcSpan "tests/examples/ClassInstType.hs" 17 10 17 11 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 17 6 17 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 17 6 17 9 , srcInfoPoints = [] } "URL")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 17 12 17 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 17 12 17 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClassInstType.hs" 17 12 17 18 , srcInfoPoints = [] } "String"))) ] , [] ) haskell-src-exts-1.18.2/tests/examples/ClassInstType.hs.prettyparser.golden0000644000000000000000000000000612746233113025253 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ClassInstType.hs.prettyprinter.golden0000644000000000000000000000116112746233113025445 0ustar0000000000000000module ClassInstType where class Dir d where localDir :: d -> IO FilePath instance Dir Directory where localDir (Local f) = return f localDir (Darcs{url = url, darcsVersion = Patch patch, subDirectory = subDir}) = do tmp <- createTempDir 0 "haskelld" darcsOut <- runDarcsCommand tmp "get" ["--lazy", "--to-match", "hash " ++ patch, url, "fs"] print darcsOut let (ExitSuccess, "", out) = darcsOut print out return $ tmp "fs" subDir type URL = String haskell-src-exts-1.18.2/tests/examples/ClosedTypeFamily.hs0000644000000000000000000000020412746233113021711 0ustar0000000000000000{-# LANGUAGE TypeFamilies, DataKinds #-} module ClosedTypeFamily where type family Eq x y where Eq x x = True Eq x y = False haskell-src-exts-1.18.2/tests/examples/ClosedTypeFamily.hs.exactprinter.golden0000644000000000000000000000000612746233113025667 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ClosedTypeFamily.hs.parser.golden0000644000000000000000000002642112746233113024464 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/ClosedTypeFamily.hs" 1 1 1 1 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 3 1 3 1 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 3 1 3 1 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 1 5 1 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 9 1 9 1 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 9 1 9 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 3 1 3 30 , srcInfoPoints = [ SrcSpan "tests/examples/ClosedTypeFamily.hs" 3 1 3 7 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 3 25 3 30 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 3 8 3 24 , srcInfoPoints = [] } "ClosedTypeFamily") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 1 1 1 41 , srcInfoPoints = [ SrcSpan "tests/examples/ClosedTypeFamily.hs" 1 1 1 13 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 1 26 1 27 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 1 38 1 41 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 1 28 1 37 , srcInfoPoints = [] } "DataKinds" ] ] [] [ ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 1 5 19 , srcInfoPoints = [ SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 1 5 5 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 6 5 12 , SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 20 5 25 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 13 5 19 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 13 5 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 13 5 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 13 5 15 , srcInfoPoints = [] } "Eq")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 16 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 16 5 17 , srcInfoPoints = [] } "x"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 18 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 5 18 5 19 , srcInfoPoints = [] } "y"))) Nothing Nothing [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 3 6 16 , srcInfoPoints = [ SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 10 6 11 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 3 6 9 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 3 6 7 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 3 6 5 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 3 6 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 3 6 5 , srcInfoPoints = [] } "Eq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 6 6 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 6 6 7 , srcInfoPoints = [] } "x"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 8 6 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 8 6 9 , srcInfoPoints = [] } "x"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 12 6 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 12 6 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 6 12 6 16 , srcInfoPoints = [] } "True"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 3 7 17 , srcInfoPoints = [ SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 10 7 11 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 3 7 9 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 3 7 7 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 3 7 5 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 3 7 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 3 7 5 , srcInfoPoints = [] } "Eq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 6 7 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 6 7 7 , srcInfoPoints = [] } "x"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 8 7 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 8 7 9 , srcInfoPoints = [] } "y"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 12 7 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 12 7 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ClosedTypeFamily.hs" 7 12 7 17 , srcInfoPoints = [] } "False"))) ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/ClosedTypeFamily.hs.prettyparser.golden0000644000000000000000000000000612746233113025723 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ClosedTypeFamily.hs.prettyprinter.golden0000644000000000000000000000021612746233113026115 0ustar0000000000000000{-# LANGUAGE TypeFamilies, DataKinds #-} module ClosedTypeFamily where type family Eq x y where Eq x x = True Eq x y = False haskell-src-exts-1.18.2/tests/examples/ConstraintKinds.hs0000644000000000000000000000032012746233113021610 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} {-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} class Foo a where data Bar a type Bazable a b = (Bar a ~ Maybe b) baz :: Bazable a b => a -> a baz = id haskell-src-exts-1.18.2/tests/examples/ConstraintKinds.hs.exactprinter.golden0000644000000000000000000000000612746233113025567 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ConstraintKinds.hs.parser.golden0000644000000000000000000004406212746233113024365 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 1 1 11 1 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 1 1 1 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 2 1 2 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 3 1 3 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 6 1 6 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 7 1 7 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 9 1 9 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 10 1 10 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 11 1 11 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 11 1 11 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 1 1 1 13 , SrcSpan "tests/examples/ConstraintKinds.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 2 1 2 33 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 2 1 2 13 , SrcSpan "tests/examples/ConstraintKinds.hs" 2 30 2 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 2 14 2 29 , srcInfoPoints = [] } "ConstraintKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 3 1 3 39 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 3 1 3 13 , SrcSpan "tests/examples/ConstraintKinds.hs" 3 36 3 39 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 3 14 3 35 , srcInfoPoints = [] } "MultiParamTypeClasses" ] ] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 4 1 6 0 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 4 1 4 6 , SrcSpan "tests/examples/ConstraintKinds.hs" 4 13 4 18 , SrcSpan "tests/examples/ConstraintKinds.hs" 6 1 6 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 6 1 6 1 , SrcSpan "tests/examples/ConstraintKinds.hs" 6 0 6 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 4 7 4 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 4 7 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 4 7 4 10 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 4 11 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 4 11 4 12 , srcInfoPoints = [] } "a"))) [] (Just []) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 6 1 6 5 , srcInfoPoints = [] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 6 1 6 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 6 6 6 11 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 6 6 6 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 6 6 6 9 , srcInfoPoints = [] } "Bar")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 6 10 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 6 10 6 11 , srcInfoPoints = [] } "a"))) [] Nothing , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 1 7 37 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 7 1 7 5 , SrcSpan "tests/examples/ConstraintKinds.hs" 7 18 7 19 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 6 7 17 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 6 7 15 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 6 7 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 6 7 13 , srcInfoPoints = [] } "Bazable")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 14 7 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 14 7 15 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 16 7 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 16 7 17 , srcInfoPoints = [] } "b"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 20 7 37 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 7 20 7 21 , SrcSpan "tests/examples/ConstraintKinds.hs" 7 36 7 37 ] } (TyEquals SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 21 7 36 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 7 27 7 28 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 21 7 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 21 7 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 21 7 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 21 7 24 , srcInfoPoints = [] } "Bar"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 25 7 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 25 7 26 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 29 7 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 29 7 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 29 7 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 29 7 34 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 35 7 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 7 35 7 36 , srcInfoPoints = [] } "b"))))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 1 9 29 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 9 5 9 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 1 9 4 , srcInfoPoints = [] } "baz" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 8 9 29 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 8 9 22 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 9 20 9 22 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 8 9 22 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 9 20 9 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 8 9 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 8 9 15 , srcInfoPoints = [] } "Bazable")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 16 9 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 16 9 17 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 18 9 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 18 9 19 , srcInfoPoints = [] } "b") ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 23 9 29 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 9 25 9 27 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 23 9 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 23 9 24 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 28 9 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 9 28 9 29 , srcInfoPoints = [] } "a")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 10 1 10 9 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 10 1 10 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 10 1 10 4 , srcInfoPoints = [] } "baz")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 10 5 10 9 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds.hs" 10 5 10 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 10 7 10 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 10 7 10 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds.hs" 10 7 10 9 , srcInfoPoints = [] } "id")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ConstraintKinds.hs.prettyparser.golden0000644000000000000000000000000612746233113025623 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ConstraintKinds.hs.prettyprinter.golden0000644000000000000000000000032212746233113026013 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} {-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} class Foo a where data Bar a type Bazable a b = (Bar a ~ Maybe b) baz :: Bazable a b => a -> a baz = id haskell-src-exts-1.18.2/tests/examples/ConstraintKinds2.hs0000644000000000000000000000017712746233113021704 0ustar0000000000000000{-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE RankNTypes #-} data Dict p where Dict :: p => Dict p haskell-src-exts-1.18.2/tests/examples/ConstraintKinds2.hs.exactprinter.golden0000644000000000000000000000000612746233113025651 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ConstraintKinds2.hs.parser.golden0000644000000000000000000001746112746233113024452 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds2.hs" 1 1 1 1 , SrcSpan "tests/examples/ConstraintKinds2.hs" 2 1 2 1 , SrcSpan "tests/examples/ConstraintKinds2.hs" 3 1 3 1 , SrcSpan "tests/examples/ConstraintKinds2.hs" 5 1 5 1 , SrcSpan "tests/examples/ConstraintKinds2.hs" 5 1 5 1 , SrcSpan "tests/examples/ConstraintKinds2.hs" 5 1 5 1 , SrcSpan "tests/examples/ConstraintKinds2.hs" 7 1 7 1 , SrcSpan "tests/examples/ConstraintKinds2.hs" 7 1 7 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds2.hs" 1 1 1 13 , SrcSpan "tests/examples/ConstraintKinds2.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 1 14 1 29 , srcInfoPoints = [] } "ConstraintKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 2 1 2 23 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds2.hs" 2 1 2 13 , SrcSpan "tests/examples/ConstraintKinds2.hs" 2 20 2 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 2 14 2 19 , srcInfoPoints = [] } "GADTs" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 3 1 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds2.hs" 3 1 3 13 , SrcSpan "tests/examples/ConstraintKinds2.hs" 3 25 3 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 3 14 3 24 , srcInfoPoints = [] } "RankNTypes" ] ] [] [ GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 5 1 7 0 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds2.hs" 5 13 5 18 , SrcSpan "tests/examples/ConstraintKinds2.hs" 6 5 6 5 , SrcSpan "tests/examples/ConstraintKinds2.hs" 7 1 7 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 5 1 5 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 5 6 5 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 5 6 5 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 5 6 5 10 , srcInfoPoints = [] } "Dict")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 5 11 5 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 5 11 5 12 , srcInfoPoints = [] } "p"))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 5 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds2.hs" 6 10 6 12 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 5 6 9 , srcInfoPoints = [] } "Dict") Nothing (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 13 6 24 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 13 6 17 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds2.hs" 6 15 6 17 ] } (AppA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 13 6 17 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds2.hs" 6 15 6 17 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 13 6 14 , srcInfoPoints = [] } "p") []))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 18 6 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 18 6 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 18 6 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 18 6 22 , srcInfoPoints = [] } "Dict"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 23 6 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds2.hs" 6 23 6 24 , srcInfoPoints = [] } "p")))) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ConstraintKinds2.hs.prettyparser.golden0000644000000000000000000000000612746233113025705 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ConstraintKinds2.hs.prettyprinter.golden0000644000000000000000000000020312746233113026073 0ustar0000000000000000{-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE RankNTypes #-} data Dict p where Dict :: p => Dict p haskell-src-exts-1.18.2/tests/examples/ConstraintKinds3.hs0000644000000000000000000000017012746233113021676 0ustar0000000000000000{-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} class Foo c a where bar :: (c a) => a -> a haskell-src-exts-1.18.2/tests/examples/ConstraintKinds3.hs.exactprinter.golden0000644000000000000000000000000612746233113025652 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ConstraintKinds3.hs.parser.golden0000644000000000000000000002366212746233113024453 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 1 1 1 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 2 1 2 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 4 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 8 1 8 1 , SrcSpan "tests/examples/ConstraintKinds3.hs" 8 1 8 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 1 1 1 13 , SrcSpan "tests/examples/ConstraintKinds3.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 1 14 1 29 , srcInfoPoints = [] } "ConstraintKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 2 1 2 39 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 2 1 2 13 , SrcSpan "tests/examples/ConstraintKinds3.hs" 2 36 2 39 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 2 14 2 35 , srcInfoPoints = [] } "MultiParamTypeClasses" ] ] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 4 1 4 6 , SrcSpan "tests/examples/ConstraintKinds3.hs" 4 15 4 20 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 3 6 3 , SrcSpan "tests/examples/ConstraintKinds3.hs" 8 1 8 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 7 4 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 7 4 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 7 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 7 4 10 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 11 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 11 4 12 , srcInfoPoints = [] } "c"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 13 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 4 13 4 14 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 3 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 7 6 9 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 3 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 7 6 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 3 6 6 , srcInfoPoints = [] } "bar" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 25 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 18 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 11 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 14 6 15 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 16 6 18 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 18 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 10 6 11 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 14 6 15 , SrcSpan "tests/examples/ConstraintKinds3.hs" 6 16 6 18 ] } (AppA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 11 6 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 11 6 12 , srcInfoPoints = [] } "c") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 13 6 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 13 6 14 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 19 6 25 , srcInfoPoints = [ SrcSpan "tests/examples/ConstraintKinds3.hs" 6 21 6 23 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 19 6 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 19 6 20 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 24 6 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstraintKinds3.hs" 6 24 6 25 , srcInfoPoints = [] } "a"))))) ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/ConstraintKinds3.hs.prettyparser.golden0000644000000000000000000000000612746233113025706 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ConstraintKinds3.hs.prettyprinter.golden0000644000000000000000000000017412746233113026103 0ustar0000000000000000{-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} class Foo c a where bar :: (c a) => a -> a haskell-src-exts-1.18.2/tests/examples/ConstructorAndClassOperators.hs0000644000000000000000000000016012746233113024332 0ustar0000000000000000{-# LANGUAGE TypeOperators, MultiParamTypeClasses #-} ins :: (:=>) b h => b :- h data (:><:) a b = (:><:) a b haskell-src-exts-1.18.2/tests/examples/ConstructorAndClassOperators.hs.exactprinter.golden0000644000000000000000000000016112746233113030311 0ustar0000000000000000{-# LANGUAGE TypeOperators, MultiParamTypeClasses #-} ins :: (:=>) b h => b :- h data :><: a b = :><: a b haskell-src-exts-1.18.2/tests/examples/ConstructorAndClassOperators.hs.parser.golden0000644000000000000000000003037412746233113027106 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 1 1 1 1 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 1 3 1 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 1 3 1 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 1 3 1 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 1 5 1 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 6 1 6 1 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 1 1 1 54 , srcInfoPoints = [ SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 1 1 1 13 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 1 27 1 28 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 1 51 1 54 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 1 14 1 27 , srcInfoPoints = [] } "TypeOperators" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 1 29 1 50 , srcInfoPoints = [] } "MultiParamTypeClasses" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 1 3 27 , srcInfoPoints = [ SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 5 3 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 1 3 4 , srcInfoPoints = [] } "ins" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 8 3 27 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 8 3 20 , srcInfoPoints = [ SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 18 3 20 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 8 3 20 , srcInfoPoints = [ SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 18 3 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 8 3 13 , srcInfoPoints = [ SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 8 3 9 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 9 3 12 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 12 3 13 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 9 3 12 , srcInfoPoints = [] } ":=>")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 14 3 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 14 3 15 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 16 3 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 16 3 17 , srcInfoPoints = [] } "h") ]))) (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 21 3 27 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 21 3 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 21 3 22 , srcInfoPoints = [] } "b")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 23 3 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 23 3 25 , srcInfoPoints = [] } ":-")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 26 3 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 3 26 3 27 , srcInfoPoints = [] } "h")))) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 1 5 29 , srcInfoPoints = [ SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 17 5 18 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 1 5 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 6 5 16 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 6 5 14 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 6 5 12 , srcInfoPoints = [ SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 6 5 7 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 7 5 11 , SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 11 5 12 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 7 5 11 , srcInfoPoints = [] } ":><:")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 13 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 13 5 14 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 15 5 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 15 5 16 , srcInfoPoints = [] } "b"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 19 5 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 19 5 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 20 5 24 , srcInfoPoints = [] } ":><:") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 26 5 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 26 5 27 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 28 5 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ConstructorAndClassOperators.hs" 5 28 5 29 , srcInfoPoints = [] } "b") ]) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ConstructorAndClassOperators.hs.prettyparser.golden0000644000000000000000000000000612746233113030343 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ConstructorAndClassOperators.hs.prettyprinter.golden0000644000000000000000000000016012746233113030533 0ustar0000000000000000{-# LANGUAGE TypeOperators, MultiParamTypeClasses #-} ins :: (:=>) b h => b :- h data (:><:) a b = (:><:) a b haskell-src-exts-1.18.2/tests/examples/CStyleLinePragmas.hs0000644000000000000000000000004412746233113022024 0ustar0000000000000000#line 1 "Main.hs" #line 2 "Main.hs" haskell-src-exts-1.18.2/tests/examples/CStyleLinePragmas.hs.exactprinter.golden0000644000000000000000000000012012746233113025775 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/CStyleLinePragmas.hs" 1 1) "Parse error: #" haskell-src-exts-1.18.2/tests/examples/CStyleLinePragmas.hs.parser.golden0000644000000000000000000000012212746233113024563 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/CStyleLinePragmas.hs" 1 1) "Parse error: #" haskell-src-exts-1.18.2/tests/examples/CStyleLinePragmas.hs.prettyparser.golden0000644000000000000000000000012012746233113026031 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/CStyleLinePragmas.hs" 1 1) "Parse error: #" haskell-src-exts-1.18.2/tests/examples/CStyleLinePragmas.hs.prettyprinter.golden0000644000000000000000000000012012746233113026220 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/CStyleLinePragmas.hs" 1 1) "Parse error: #" haskell-src-exts-1.18.2/tests/examples/CxtWhitespace.hs0000644000000000000000000000012012746233113021244 0ustar0000000000000000-- is not ok instance ( Eq h) => Eq h -- is ok instance ( Eq h, Eq h) => Eq h haskell-src-exts-1.18.2/tests/examples/CxtWhitespace.hs.exactprinter.golden0000644000000000000000000000000612746233113025225 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/CxtWhitespace.hs.parser.golden0000644000000000000000000002362612746233113024026 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/CxtWhitespace.hs" 2 1 2 1 , SrcSpan "tests/examples/CxtWhitespace.hs" 2 1 2 1 , SrcSpan "tests/examples/CxtWhitespace.hs" 2 1 2 1 , SrcSpan "tests/examples/CxtWhitespace.hs" 5 1 5 1 , SrcSpan "tests/examples/CxtWhitespace.hs" 7 1 7 1 , SrcSpan "tests/examples/CxtWhitespace.hs" 7 1 7 1 ] } Nothing [] [] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 1 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/CxtWhitespace.hs" 2 1 2 9 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 10 2 25 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 10 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/CxtWhitespace.hs" 2 10 2 11 , SrcSpan "tests/examples/CxtWhitespace.hs" 2 16 2 17 , SrcSpan "tests/examples/CxtWhitespace.hs" 2 18 2 20 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 10 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/CxtWhitespace.hs" 2 10 2 11 , SrcSpan "tests/examples/CxtWhitespace.hs" 2 16 2 17 , SrcSpan "tests/examples/CxtWhitespace.hs" 2 18 2 20 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 12 2 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 12 2 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 12 2 14 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 15 2 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 15 2 16 , srcInfoPoints = [] } "h") ])))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 21 2 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 21 2 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 21 2 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 21 2 23 , srcInfoPoints = [] } "Eq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 24 2 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 2 24 2 25 , srcInfoPoints = [] } "h")))) Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 1 5 31 , srcInfoPoints = [ SrcSpan "tests/examples/CxtWhitespace.hs" 5 1 5 9 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 10 5 31 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 10 5 26 , srcInfoPoints = [ SrcSpan "tests/examples/CxtWhitespace.hs" 5 10 5 11 , SrcSpan "tests/examples/CxtWhitespace.hs" 5 16 5 17 , SrcSpan "tests/examples/CxtWhitespace.hs" 5 22 5 23 , SrcSpan "tests/examples/CxtWhitespace.hs" 5 24 5 26 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 12 5 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 12 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 12 5 14 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 15 5 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 15 5 16 , srcInfoPoints = [] } "h") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 18 5 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 18 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 18 5 20 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 21 5 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 21 5 22 , srcInfoPoints = [] } "h") ] ])) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 27 5 31 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 27 5 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 27 5 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 27 5 29 , srcInfoPoints = [] } "Eq"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 30 5 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/CxtWhitespace.hs" 5 30 5 31 , srcInfoPoints = [] } "h")))) Nothing ] , [ Comment False (SrcSpan "tests/examples/CxtWhitespace.hs" 1 1 1 13) " is not ok" , Comment False (SrcSpan "tests/examples/CxtWhitespace.hs" 4 1 4 9) " is ok" ] ) haskell-src-exts-1.18.2/tests/examples/CxtWhitespace.hs.prettyparser.golden0000644000000000000000000000000612746233113025261 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/CxtWhitespace.hs.prettyprinter.golden0000644000000000000000000000006712746233113025457 0ustar0000000000000000instance (Eq h) => Eq h instance (Eq h, Eq h) => Eq h haskell-src-exts-1.18.2/tests/examples/DataHeadParen.hs0000644000000000000000000000012212746233113021114 0ustar0000000000000000{-# LANGUAGE TypeOperators #-} module DataHeadParen where data (a1 :< a2) = Foo haskell-src-exts-1.18.2/tests/examples/DataHeadParen.hs.exactprinter.golden0000644000000000000000000000000612746233113025073 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DataHeadParen.hs.parser.golden0000644000000000000000000001137312746233113023670 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/DataHeadParen.hs" 1 1 1 1 , SrcSpan "tests/examples/DataHeadParen.hs" 2 1 2 1 , SrcSpan "tests/examples/DataHeadParen.hs" 2 1 2 1 , SrcSpan "tests/examples/DataHeadParen.hs" 4 1 4 1 , SrcSpan "tests/examples/DataHeadParen.hs" 5 1 5 1 , SrcSpan "tests/examples/DataHeadParen.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataHeadParen.hs" 2 1 2 7 , SrcSpan "tests/examples/DataHeadParen.hs" 2 22 2 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 2 8 2 21 , srcInfoPoints = [] } "DataHeadParen") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/DataHeadParen.hs" 1 1 1 13 , SrcSpan "tests/examples/DataHeadParen.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 1 14 1 27 , srcInfoPoints = [] } "TypeOperators" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 1 4 23 , srcInfoPoints = [ SrcSpan "tests/examples/DataHeadParen.hs" 4 18 4 19 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 1 4 5 , srcInfoPoints = [] }) Nothing (DHParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 6 4 16 , srcInfoPoints = [ SrcSpan "tests/examples/DataHeadParen.hs" 4 6 4 7 , SrcSpan "tests/examples/DataHeadParen.hs" 4 15 4 16 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 7 4 15 , srcInfoPoints = [] } (DHInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 7 4 15 , srcInfoPoints = [] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 7 4 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 7 4 9 , srcInfoPoints = [] } "a1")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 10 4 12 , srcInfoPoints = [] } ":<")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 13 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 13 4 15 , srcInfoPoints = [] } "a2")))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 20 4 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 20 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataHeadParen.hs" 4 20 4 23 , srcInfoPoints = [] } "Foo") []) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/DataHeadParen.hs.prettyparser.golden0000644000000000000000000000000612746233113025127 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DataHeadParen.hs.prettyprinter.golden0000644000000000000000000000012112746233113025314 0ustar0000000000000000{-# LANGUAGE TypeOperators #-} module DataHeadParen where data (a1 :< a2) = Foo haskell-src-exts-1.18.2/tests/examples/DataKinds.hs0000644000000000000000000000110212746233113020334 0ustar0000000000000000{-# LANGUAGE KindSignatures #-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE PolyKinds #-} class C1 (a :: Bool {- 1 -}) where c :: proxy a -> Int class C2 (a :: [ * ]) data Baz = Baz data Foo = Foo class C3 (a :: [(Baz, Foo)]) class C4 (a :: ( * )) class C5 (a :: App foo baz) class C6 (a :: (parens)) data X (a :: [*]) x1 = undefined :: X '[Int] x2 = undefined :: X '[Int, Double] data Y (a :: (*, Bool)) y1 = undefined :: Y '(Double, True) y2 = undefined :: Y '(Double, 'False {-comment-}) z1 = undefined :: X [ a -> b, X '[] ] z2 = undefined :: Y (a -> b, True) haskell-src-exts-1.18.2/tests/examples/DataKinds.hs.exactprinter.golden0000644000000000000000000000000612746233113024314 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DataKinds.hs.parser.golden0000644000000000000000000020500012746233113023101 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 1 1 35 1 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 1 1 1 1 , SrcSpan "tests/examples/DataKinds.hs" 2 1 2 1 , SrcSpan "tests/examples/DataKinds.hs" 3 1 3 1 , SrcSpan "tests/examples/DataKinds.hs" 5 1 5 1 , SrcSpan "tests/examples/DataKinds.hs" 5 1 5 1 , SrcSpan "tests/examples/DataKinds.hs" 5 1 5 1 , SrcSpan "tests/examples/DataKinds.hs" 8 1 8 1 , SrcSpan "tests/examples/DataKinds.hs" 10 1 10 1 , SrcSpan "tests/examples/DataKinds.hs" 11 1 11 1 , SrcSpan "tests/examples/DataKinds.hs" 13 1 13 1 , SrcSpan "tests/examples/DataKinds.hs" 15 1 15 1 , SrcSpan "tests/examples/DataKinds.hs" 18 1 18 1 , SrcSpan "tests/examples/DataKinds.hs" 20 1 20 1 , SrcSpan "tests/examples/DataKinds.hs" 22 1 22 1 , SrcSpan "tests/examples/DataKinds.hs" 24 1 24 1 , SrcSpan "tests/examples/DataKinds.hs" 25 1 25 1 , SrcSpan "tests/examples/DataKinds.hs" 27 1 27 1 , SrcSpan "tests/examples/DataKinds.hs" 29 1 29 1 , SrcSpan "tests/examples/DataKinds.hs" 30 1 30 1 , SrcSpan "tests/examples/DataKinds.hs" 33 1 33 1 , SrcSpan "tests/examples/DataKinds.hs" 34 1 34 1 , SrcSpan "tests/examples/DataKinds.hs" 35 1 35 1 , SrcSpan "tests/examples/DataKinds.hs" 35 1 35 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 1 1 1 13 , SrcSpan "tests/examples/DataKinds.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 1 14 1 28 , srcInfoPoints = [] } "KindSignatures" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 2 1 2 13 , SrcSpan "tests/examples/DataKinds.hs" 2 24 2 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 2 14 2 23 , srcInfoPoints = [] } "DataKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 3 1 3 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 3 1 3 13 , SrcSpan "tests/examples/DataKinds.hs" 3 24 3 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 3 14 3 23 , srcInfoPoints = [] } "PolyKinds" ] ] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 1 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 5 1 5 6 , SrcSpan "tests/examples/DataKinds.hs" 5 30 5 35 , SrcSpan "tests/examples/DataKinds.hs" 6 5 6 5 , SrcSpan "tests/examples/DataKinds.hs" 8 1 8 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 7 5 29 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 7 5 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 7 5 9 , srcInfoPoints = [] } "C1")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 10 5 29 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 5 10 5 11 , SrcSpan "tests/examples/DataKinds.hs" 5 13 5 15 , SrcSpan "tests/examples/DataKinds.hs" 5 28 5 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 11 5 12 , srcInfoPoints = [] } "a") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 16 5 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 16 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 5 16 5 20 , srcInfoPoints = [] } "Bool"))))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 5 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 6 7 6 9 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 5 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 6 7 6 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 5 6 6 , srcInfoPoints = [] } "c" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 10 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 6 18 6 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 10 6 17 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 10 6 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 10 6 15 , srcInfoPoints = [] } "proxy")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 16 6 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 16 6 17 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 21 6 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 21 6 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 6 21 6 24 , srcInfoPoints = [] } "Int"))))) ]) , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 8 1 8 22 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 8 1 8 6 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 8 7 8 22 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 8 7 8 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 8 7 8 9 , srcInfoPoints = [] } "C2")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 8 10 8 22 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 8 10 8 11 , SrcSpan "tests/examples/DataKinds.hs" 8 13 8 15 , SrcSpan "tests/examples/DataKinds.hs" 8 21 8 22 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 8 11 8 12 , srcInfoPoints = [] } "a") (KindList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 8 16 8 21 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 8 16 8 17 , SrcSpan "tests/examples/DataKinds.hs" 8 20 8 21 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 8 18 8 19 , srcInfoPoints = [] })))) [] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 10 1 10 15 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 10 10 10 11 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 10 1 10 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 10 6 10 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 10 6 10 9 , srcInfoPoints = [] } "Baz")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 10 12 10 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 10 12 10 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 10 12 10 15 , srcInfoPoints = [] } "Baz") []) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 11 1 11 15 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 11 10 11 11 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 11 1 11 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 11 6 11 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 11 6 11 9 , srcInfoPoints = [] } "Foo")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 11 12 11 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 11 12 11 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 11 12 11 15 , srcInfoPoints = [] } "Foo") []) ] Nothing , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 1 13 29 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 13 1 13 6 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 7 13 29 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 7 13 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 7 13 9 , srcInfoPoints = [] } "C3")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 10 13 29 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 13 10 13 11 , SrcSpan "tests/examples/DataKinds.hs" 13 13 13 15 , SrcSpan "tests/examples/DataKinds.hs" 13 28 13 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 11 13 12 , srcInfoPoints = [] } "a") (KindList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 16 13 28 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 13 16 13 17 , SrcSpan "tests/examples/DataKinds.hs" 13 27 13 28 ] } (KindTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 17 13 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 13 17 13 18 , SrcSpan "tests/examples/DataKinds.hs" 13 21 13 22 , SrcSpan "tests/examples/DataKinds.hs" 13 26 13 27 ] } [ KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 18 13 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 18 13 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 18 13 21 , srcInfoPoints = [] } "Baz")) , KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 23 13 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 23 13 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 13 23 13 26 , srcInfoPoints = [] } "Foo")) ])))) [] Nothing , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 15 1 15 22 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 15 1 15 6 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 15 7 15 22 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 15 7 15 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 15 7 15 9 , srcInfoPoints = [] } "C4")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 15 10 15 22 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 15 10 15 11 , SrcSpan "tests/examples/DataKinds.hs" 15 13 15 15 , SrcSpan "tests/examples/DataKinds.hs" 15 21 15 22 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 15 11 15 12 , srcInfoPoints = [] } "a") (KindParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 15 16 15 21 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 15 16 15 17 , SrcSpan "tests/examples/DataKinds.hs" 15 20 15 21 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 15 18 15 19 , srcInfoPoints = [] })))) [] Nothing , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 1 18 28 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 18 1 18 6 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 7 18 28 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 7 18 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 7 18 9 , srcInfoPoints = [] } "C5")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 10 18 28 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 18 10 18 11 , SrcSpan "tests/examples/DataKinds.hs" 18 13 18 15 , SrcSpan "tests/examples/DataKinds.hs" 18 27 18 28 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 11 18 12 , srcInfoPoints = [] } "a") (KindApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 16 18 27 , srcInfoPoints = [] } (KindApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 16 18 23 , srcInfoPoints = [] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 16 18 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 16 18 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 16 18 19 , srcInfoPoints = [] } "App"))) (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 20 18 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 20 18 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 20 18 23 , srcInfoPoints = [] } "foo")))) (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 24 18 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 24 18 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 18 24 18 27 , srcInfoPoints = [] } "baz")))))) [] Nothing , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 1 20 25 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 20 1 20 6 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 7 20 25 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 7 20 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 7 20 9 , srcInfoPoints = [] } "C6")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 10 20 25 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 20 10 20 11 , SrcSpan "tests/examples/DataKinds.hs" 20 13 20 15 , SrcSpan "tests/examples/DataKinds.hs" 20 24 20 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 11 20 12 , srcInfoPoints = [] } "a") (KindParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 16 20 24 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 20 16 20 17 , SrcSpan "tests/examples/DataKinds.hs" 20 23 20 24 ] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 17 20 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 17 20 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 20 17 20 23 , srcInfoPoints = [] } "parens")))))) [] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 1 22 5 , srcInfoPoints = [] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 1 22 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 6 22 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 6 22 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 6 22 7 , srcInfoPoints = [] } "X")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 8 22 18 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 22 8 22 9 , SrcSpan "tests/examples/DataKinds.hs" 22 11 22 13 , SrcSpan "tests/examples/DataKinds.hs" 22 17 22 18 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 9 22 10 , srcInfoPoints = [] } "a") (KindList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 14 22 17 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 22 14 22 15 , SrcSpan "tests/examples/DataKinds.hs" 22 16 22 17 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 22 15 22 16 , srcInfoPoints = [] })))) [] Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 1 24 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 1 24 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 1 24 3 , srcInfoPoints = [] } "x1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 4 24 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 24 4 24 5 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 6 24 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 24 16 24 18 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 6 24 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 6 24 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 6 24 15 , srcInfoPoints = [] } "undefined"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 19 24 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 19 24 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 19 24 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 19 24 20 , srcInfoPoints = [] } "X"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 21 24 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 24 21 24 22 , SrcSpan "tests/examples/DataKinds.hs" 24 26 24 27 ] } (PromotedList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 21 24 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 24 21 24 22 , SrcSpan "tests/examples/DataKinds.hs" 24 26 24 27 ] } True [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 23 24 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 23 24 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 24 23 24 26 , srcInfoPoints = [] } "Int")) ]))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 1 25 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 1 25 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 1 25 3 , srcInfoPoints = [] } "x2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 4 25 35 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 25 4 25 5 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 6 25 35 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 25 16 25 18 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 6 25 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 6 25 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 6 25 15 , srcInfoPoints = [] } "undefined"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 19 25 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 19 25 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 19 25 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 19 25 20 , srcInfoPoints = [] } "X"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 21 25 35 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 25 21 25 22 , SrcSpan "tests/examples/DataKinds.hs" 25 26 25 27 , SrcSpan "tests/examples/DataKinds.hs" 25 34 25 35 ] } (PromotedList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 21 25 35 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 25 21 25 22 , SrcSpan "tests/examples/DataKinds.hs" 25 26 25 27 , SrcSpan "tests/examples/DataKinds.hs" 25 34 25 35 ] } True [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 23 25 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 23 25 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 23 25 26 , srcInfoPoints = [] } "Int")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 28 25 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 28 25 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 25 28 25 34 , srcInfoPoints = [] } "Double")) ]))))) Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 1 27 5 , srcInfoPoints = [] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 1 27 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 6 27 24 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 6 27 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 6 27 7 , srcInfoPoints = [] } "Y")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 8 27 24 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 27 8 27 9 , SrcSpan "tests/examples/DataKinds.hs" 27 11 27 13 , SrcSpan "tests/examples/DataKinds.hs" 27 23 27 24 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 9 27 10 , srcInfoPoints = [] } "a") (KindTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 14 27 23 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 27 14 27 15 , SrcSpan "tests/examples/DataKinds.hs" 27 16 27 17 , SrcSpan "tests/examples/DataKinds.hs" 27 22 27 23 ] } [ KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 15 27 16 , srcInfoPoints = [] } , KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 18 27 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 18 27 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 27 18 27 22 , srcInfoPoints = [] } "Bool")) ]))) [] Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 1 29 36 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 1 29 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 1 29 3 , srcInfoPoints = [] } "y1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 4 29 36 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 29 4 29 5 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 6 29 36 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 29 16 29 18 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 6 29 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 6 29 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 6 29 15 , srcInfoPoints = [] } "undefined"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 19 29 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 19 29 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 19 29 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 19 29 20 , srcInfoPoints = [] } "Y"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 21 29 36 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 29 21 29 22 , SrcSpan "tests/examples/DataKinds.hs" 29 29 29 30 , SrcSpan "tests/examples/DataKinds.hs" 29 35 29 36 ] } (PromotedTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 21 29 36 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 29 21 29 22 , SrcSpan "tests/examples/DataKinds.hs" 29 29 29 30 , SrcSpan "tests/examples/DataKinds.hs" 29 35 29 36 ] } [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 23 29 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 23 29 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 23 29 29 , srcInfoPoints = [] } "Double")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 31 29 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 31 29 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 29 31 29 35 , srcInfoPoints = [] } "True")) ]))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 1 30 50 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 1 30 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 1 30 3 , srcInfoPoints = [] } "y2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 4 30 50 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 30 4 30 5 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 6 30 50 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 30 16 30 18 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 6 30 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 6 30 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 6 30 15 , srcInfoPoints = [] } "undefined"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 19 30 50 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 19 30 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 19 30 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 19 30 20 , srcInfoPoints = [] } "Y"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 21 30 50 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 30 21 30 22 , SrcSpan "tests/examples/DataKinds.hs" 30 29 30 30 , SrcSpan "tests/examples/DataKinds.hs" 30 49 30 50 ] } (PromotedTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 21 30 50 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 30 21 30 22 , SrcSpan "tests/examples/DataKinds.hs" 30 29 30 30 , SrcSpan "tests/examples/DataKinds.hs" 30 49 30 50 ] } [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 23 30 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 23 30 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 23 30 29 , srcInfoPoints = [] } "Double")) , TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 31 30 37 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 30 31 30 32 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 31 30 37 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 30 31 30 32 ] } True (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 32 30 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 30 32 30 37 , srcInfoPoints = [] } "False"))) ]))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 1 33 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 1 33 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 1 33 3 , srcInfoPoints = [] } "z1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 4 33 38 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 33 4 33 5 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 6 33 38 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 33 16 33 18 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 6 33 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 6 33 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 6 33 15 , srcInfoPoints = [] } "undefined"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 19 33 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 19 33 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 19 33 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 19 33 20 , srcInfoPoints = [] } "X"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 21 33 38 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 33 21 33 22 , SrcSpan "tests/examples/DataKinds.hs" 33 29 33 30 , SrcSpan "tests/examples/DataKinds.hs" 33 37 33 38 ] } (PromotedList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 21 33 38 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 33 21 33 22 , SrcSpan "tests/examples/DataKinds.hs" 33 29 33 30 , SrcSpan "tests/examples/DataKinds.hs" 33 37 33 38 ] } False [ TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 23 33 29 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 33 25 33 27 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 23 33 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 23 33 24 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 28 33 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 28 33 29 , srcInfoPoints = [] } "b")) , TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 31 33 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 31 33 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 31 33 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 31 33 32 , srcInfoPoints = [] } "X"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 33 33 36 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 33 33 33 34 , SrcSpan "tests/examples/DataKinds.hs" 33 35 33 36 ] } (PromotedList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 33 33 33 36 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 33 33 33 34 , SrcSpan "tests/examples/DataKinds.hs" 33 35 33 36 ] } True [])) ]))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 1 34 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 1 34 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 1 34 3 , srcInfoPoints = [] } "z2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 4 34 35 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 34 4 34 5 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 6 34 35 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 34 16 34 18 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 6 34 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 6 34 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 6 34 15 , srcInfoPoints = [] } "undefined"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 19 34 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 19 34 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 19 34 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 19 34 20 , srcInfoPoints = [] } "Y"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 21 34 35 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 34 21 34 22 , SrcSpan "tests/examples/DataKinds.hs" 34 28 34 29 , SrcSpan "tests/examples/DataKinds.hs" 34 34 34 35 ] } Boxed [ TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 22 34 28 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds.hs" 34 24 34 26 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 22 34 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 22 34 23 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 27 34 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 27 34 28 , srcInfoPoints = [] } "b")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 30 34 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 30 34 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds.hs" 34 30 34 34 , srcInfoPoints = [] } "True")) ])))) Nothing ] , [ Comment True (SrcSpan "tests/examples/DataKinds.hs" 5 21 5 28) " 1 " , Comment True (SrcSpan "tests/examples/DataKinds.hs" 30 38 30 49) "comment" ] ) haskell-src-exts-1.18.2/tests/examples/DataKinds.hs.prettyparser.golden0000644000000000000000000000000612746233113024350 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DataKinds.hs.prettyprinter.golden0000644000000000000000000000105012746233113024537 0ustar0000000000000000{-# LANGUAGE KindSignatures #-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE PolyKinds #-} class C1 (a :: Bool) where c :: proxy a -> Int class C2 (a :: [*]) data Baz = Baz data Foo = Foo class C3 (a :: [(Baz, Foo)]) class C4 (a :: (*)) class C5 (a :: App foo baz) class C6 (a :: (parens)) data X (a :: [*]) x1 = undefined :: X '[Int] x2 = undefined :: X '[Int, Double] data Y (a :: (*, Bool)) y1 = undefined :: Y '(Double, True) y2 = undefined :: Y '(Double, 'False) z1 = undefined :: X [a -> b, X '[]] z2 = undefined :: Y (a -> b, True) haskell-src-exts-1.18.2/tests/examples/DataKinds2.hs0000644000000000000000000000016612746233113020427 0ustar0000000000000000{-# LANGUAGE DataKinds #-} data Foo a = Foo type FooB = Foo "a" type FooC = Foo 1 instance Show (Foo "bar") where haskell-src-exts-1.18.2/tests/examples/DataKinds2.hs.exactprinter.golden0000644000000000000000000000000612746233113024376 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DataKinds2.hs.parser.golden0000644000000000000000000002542012746233113023171 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 1 1 10 1 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds2.hs" 1 1 1 1 , SrcSpan "tests/examples/DataKinds2.hs" 3 1 3 1 , SrcSpan "tests/examples/DataKinds2.hs" 3 1 3 1 , SrcSpan "tests/examples/DataKinds2.hs" 3 1 3 1 , SrcSpan "tests/examples/DataKinds2.hs" 5 1 5 1 , SrcSpan "tests/examples/DataKinds2.hs" 7 1 7 1 , SrcSpan "tests/examples/DataKinds2.hs" 9 1 9 1 , SrcSpan "tests/examples/DataKinds2.hs" 10 1 10 1 , SrcSpan "tests/examples/DataKinds2.hs" 10 1 10 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 1 1 1 27 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds2.hs" 1 1 1 13 , SrcSpan "tests/examples/DataKinds2.hs" 1 24 1 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 1 14 1 23 , srcInfoPoints = [] } "DataKinds" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 1 3 17 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds2.hs" 3 12 3 13 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 6 3 11 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 6 3 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 6 3 9 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 10 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 10 3 11 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 14 3 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 14 3 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 3 14 3 17 , srcInfoPoints = [] } "Foo") []) ] Nothing , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 1 5 20 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds2.hs" 5 1 5 5 , SrcSpan "tests/examples/DataKinds2.hs" 5 11 5 12 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 6 5 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 6 5 10 , srcInfoPoints = [] } "FooB")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 13 5 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 13 5 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 13 5 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 13 5 16 , srcInfoPoints = [] } "Foo"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 17 5 20 , srcInfoPoints = [] } (PromotedString SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 5 17 5 20 , srcInfoPoints = [] } "a" "a"))) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 1 7 18 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds2.hs" 7 1 7 5 , SrcSpan "tests/examples/DataKinds2.hs" 7 11 7 12 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 6 7 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 6 7 10 , srcInfoPoints = [] } "FooC")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 13 7 18 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 13 7 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 13 7 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 13 7 16 , srcInfoPoints = [] } "Foo"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 17 7 18 , srcInfoPoints = [] } (PromotedInteger SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 7 17 7 18 , srcInfoPoints = [] } 1 "1"))) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 1 10 0 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds2.hs" 9 1 9 9 , SrcSpan "tests/examples/DataKinds2.hs" 9 27 9 32 , SrcSpan "tests/examples/DataKinds2.hs" 10 1 10 1 , SrcSpan "tests/examples/DataKinds2.hs" 10 1 10 1 , SrcSpan "tests/examples/DataKinds2.hs" 10 0 10 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 10 9 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 10 9 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 10 9 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 10 9 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 10 9 14 , srcInfoPoints = [] } "Show"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 15 9 26 , srcInfoPoints = [ SrcSpan "tests/examples/DataKinds2.hs" 9 15 9 16 , SrcSpan "tests/examples/DataKinds2.hs" 9 25 9 26 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 16 9 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 16 9 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 16 9 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 16 9 19 , srcInfoPoints = [] } "Foo"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 20 9 25 , srcInfoPoints = [] } (PromotedString SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DataKinds2.hs" 9 20 9 25 , srcInfoPoints = [] } "bar" "bar")))))) (Just []) ] , [] ) haskell-src-exts-1.18.2/tests/examples/DataKinds2.hs.prettyparser.golden0000644000000000000000000000000612746233113024432 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DataKinds2.hs.prettyprinter.golden0000644000000000000000000000016612746233113024630 0ustar0000000000000000{-# LANGUAGE DataKinds #-} data Foo a = Foo type FooB = Foo "a" type FooC = Foo 1 instance Show (Foo "bar") where haskell-src-exts-1.18.2/tests/examples/DefaultSignatures.hs0000644000000000000000000000021012746233113022122 0ustar0000000000000000{-# LANGUAGE DefaultSignatures #-} class C a where f :: a -> a -> Bool default f :: (Eq a) => a -> a -> Bool f x y = x == y haskell-src-exts-1.18.2/tests/examples/DefaultSignatures.hs.exactprinter.golden0000644000000000000000000000000612746233113026103 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DefaultSignatures.hs.parser.golden0000644000000000000000000004744412746233113024710 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 1 1 1 1 , SrcSpan "tests/examples/DefaultSignatures.hs" 2 1 2 1 , SrcSpan "tests/examples/DefaultSignatures.hs" 2 1 2 1 , SrcSpan "tests/examples/DefaultSignatures.hs" 2 1 2 1 , SrcSpan "tests/examples/DefaultSignatures.hs" 6 1 6 1 , SrcSpan "tests/examples/DefaultSignatures.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 1 1 1 35 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 1 1 1 13 , SrcSpan "tests/examples/DefaultSignatures.hs" 1 32 1 35 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 1 14 1 31 , srcInfoPoints = [] } "DefaultSignatures" ] ] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 2 1 5 19 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 2 1 2 6 , SrcSpan "tests/examples/DefaultSignatures.hs" 2 11 2 16 , SrcSpan "tests/examples/DefaultSignatures.hs" 3 5 3 5 , SrcSpan "tests/examples/DefaultSignatures.hs" 4 5 4 5 , SrcSpan "tests/examples/DefaultSignatures.hs" 5 5 5 5 , SrcSpan "tests/examples/DefaultSignatures.hs" 6 1 6 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 2 7 2 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 2 7 2 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 2 7 2 8 , srcInfoPoints = [] } "C")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 2 9 2 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 2 9 2 10 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 5 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 3 7 3 9 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 5 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 3 7 3 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 5 3 6 , srcInfoPoints = [] } "f" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 10 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 3 12 3 14 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 10 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 10 3 11 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 15 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 3 17 3 19 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 15 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 15 3 16 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 20 3 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 20 3 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 3 20 3 24 , srcInfoPoints = [] } "Bool")))))) , ClsDefSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 5 4 42 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 4 5 4 12 , SrcSpan "tests/examples/DefaultSignatures.hs" 4 15 4 17 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 13 4 14 , srcInfoPoints = [] } "f") (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 18 4 42 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 18 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 4 18 4 19 , SrcSpan "tests/examples/DefaultSignatures.hs" 4 23 4 24 , SrcSpan "tests/examples/DefaultSignatures.hs" 4 25 4 27 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 18 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 4 18 4 19 , SrcSpan "tests/examples/DefaultSignatures.hs" 4 23 4 24 , SrcSpan "tests/examples/DefaultSignatures.hs" 4 25 4 27 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 19 4 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 19 4 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 19 4 21 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 22 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 22 4 23 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 28 4 42 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 4 30 4 32 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 28 4 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 28 4 29 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 33 4 42 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 4 35 4 37 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 33 4 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 33 4 34 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 38 4 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 38 4 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 4 38 4 42 , srcInfoPoints = [] } "Bool")))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 5 5 19 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 5 5 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 5 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 5 5 6 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 7 5 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 7 5 8 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 9 5 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 9 5 10 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 11 5 19 , srcInfoPoints = [ SrcSpan "tests/examples/DefaultSignatures.hs" 5 11 5 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 13 5 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 13 5 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 13 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 13 5 14 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 15 5 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 15 5 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 15 5 17 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 18 5 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 18 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DefaultSignatures.hs" 5 18 5 19 , srcInfoPoints = [] } "y"))))) Nothing ]) ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/DefaultSignatures.hs.prettyparser.golden0000644000000000000000000000000612746233113026137 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DefaultSignatures.hs.prettyprinter.golden0000644000000000000000000000023612746233113026333 0ustar0000000000000000{-# LANGUAGE DefaultSignatures #-} class C a where f :: a -> a -> Bool default f :: (Eq a) => a -> a -> Bool f x y = x == y haskell-src-exts-1.18.2/tests/examples/DeriveGeneric.hs0000644000000000000000000000015512746233113021214 0ustar0000000000000000{-# LANGUAGE DeriveGeneric #-} data UserTree a = Node a (UserTree a) (UserTree a) | Leaf deriving Generic haskell-src-exts-1.18.2/tests/examples/DeriveGeneric.hs.exactprinter.golden0000644000000000000000000000000612746233113025165 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DeriveGeneric.hs.parser.golden0000644000000000000000000002351512746233113023763 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/DeriveGeneric.hs" 1 1 1 1 , SrcSpan "tests/examples/DeriveGeneric.hs" 3 1 3 1 , SrcSpan "tests/examples/DeriveGeneric.hs" 3 1 3 1 , SrcSpan "tests/examples/DeriveGeneric.hs" 3 1 3 1 , SrcSpan "tests/examples/DeriveGeneric.hs" 5 1 5 1 , SrcSpan "tests/examples/DeriveGeneric.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/DeriveGeneric.hs" 1 1 1 13 , SrcSpan "tests/examples/DeriveGeneric.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 1 14 1 27 , srcInfoPoints = [] } "DeriveGeneric" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 1 4 19 , srcInfoPoints = [ SrcSpan "tests/examples/DeriveGeneric.hs" 3 17 3 18 , SrcSpan "tests/examples/DeriveGeneric.hs" 3 52 3 53 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 6 3 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 6 3 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 6 3 14 , srcInfoPoints = [] } "UserTree")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 15 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 15 3 16 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 19 3 51 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 19 3 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 19 3 23 , srcInfoPoints = [] } "Node") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 24 3 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 24 3 25 , srcInfoPoints = [] } "a") , TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 26 3 38 , srcInfoPoints = [ SrcSpan "tests/examples/DeriveGeneric.hs" 3 26 3 27 , SrcSpan "tests/examples/DeriveGeneric.hs" 3 37 3 38 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 27 3 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 27 3 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 27 3 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 27 3 35 , srcInfoPoints = [] } "UserTree"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 36 3 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 36 3 37 , srcInfoPoints = [] } "a"))) , TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 39 3 51 , srcInfoPoints = [ SrcSpan "tests/examples/DeriveGeneric.hs" 3 39 3 40 , SrcSpan "tests/examples/DeriveGeneric.hs" 3 50 3 51 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 40 3 50 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 40 3 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 40 3 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 40 3 48 , srcInfoPoints = [] } "UserTree"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 49 3 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 49 3 50 , srcInfoPoints = [] } "a"))) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 54 3 58 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 54 3 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 3 54 3 58 , srcInfoPoints = [] } "Leaf") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 4 3 4 19 , srcInfoPoints = [ SrcSpan "tests/examples/DeriveGeneric.hs" 4 3 4 11 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 4 12 4 19 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 4 12 4 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 4 12 4 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DeriveGeneric.hs" 4 12 4 19 , srcInfoPoints = [] } "Generic"))) ])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/DeriveGeneric.hs.prettyparser.golden0000644000000000000000000000000612746233113025221 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DeriveGeneric.hs.prettyprinter.golden0000644000000000000000000000021312746233113025410 0ustar0000000000000000{-# LANGUAGE DeriveGeneric #-} data UserTree a = Node a (UserTree a) (UserTree a) | Leaf deriving Generic haskell-src-exts-1.18.2/tests/examples/DerivingParen.hs0000644000000000000000000000006412746233113021235 0ustar0000000000000000data X = X deriving Show data X = X deriving (Show) haskell-src-exts-1.18.2/tests/examples/DerivingParen.hs.exactprinter.golden0000644000000000000000000000000612746233113025207 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DerivingParen.hs.parser.golden0000644000000000000000000001526712746233113024012 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingParen.hs" 1 1 1 1 , SrcSpan "tests/examples/DerivingParen.hs" 1 1 1 1 , SrcSpan "tests/examples/DerivingParen.hs" 1 1 1 1 , SrcSpan "tests/examples/DerivingParen.hs" 2 1 2 1 , SrcSpan "tests/examples/DerivingParen.hs" 3 1 3 1 , SrcSpan "tests/examples/DerivingParen.hs" 3 1 3 1 ] } Nothing [] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 1 1 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingParen.hs" 1 8 1 9 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 1 1 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 6 1 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 6 1 7 , srcInfoPoints = [] } "X")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 10 1 11 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 10 1 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 10 1 11 , srcInfoPoints = [] } "X") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 12 1 25 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingParen.hs" 1 12 1 20 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 21 1 25 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 21 1 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 21 1 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 1 21 1 25 , srcInfoPoints = [] } "Show"))) ])) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingParen.hs" 2 8 2 9 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 1 2 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 6 2 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 6 2 7 , srcInfoPoints = [] } "X")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 10 2 11 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 10 2 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 10 2 11 , srcInfoPoints = [] } "X") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 12 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingParen.hs" 2 12 2 20 ] } [ IParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 21 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/DerivingParen.hs" 2 21 2 22 , SrcSpan "tests/examples/DerivingParen.hs" 2 26 2 27 ] } (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 22 2 26 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 22 2 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 22 2 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DerivingParen.hs" 2 22 2 26 , srcInfoPoints = [] } "Show")))) ])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/DerivingParen.hs.prettyparser.golden0000644000000000000000000000000612746233113025243 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DerivingParen.hs.prettyprinter.golden0000644000000000000000000000010312746233113025430 0ustar0000000000000000data X = X deriving Show data X = X deriving (Show) haskell-src-exts-1.18.2/tests/examples/Directory.hs0000644000000000000000000007240612746233113020455 0ustar0000000000000000{-# LANGUAGE ForeignFunctionInterface, NondecreasingIndentation #-} ----------------------------------------------------------------------------- -- | -- Module : System.Directory -- Copyright : (c) The University of Glasgow 2001 -- License : BSD-style (see the file libraries/base/LICENSE) -- -- Maintainer : libraries@haskell.org -- Stability : stable -- Portability : portable -- -- System-independent interface to directory manipulation. -- ----------------------------------------------------------------------------- module System.Directory ( -- $intro -- * Actions on directories createDirectory -- :: FilePath -> IO () , createDirectoryIfMissing -- :: Bool -> FilePath -> IO () , removeDirectory -- :: FilePath -> IO () , removeDirectoryRecursive -- :: FilePath -> IO () , renameDirectory -- :: FilePath -> FilePath -> IO () , getDirectoryContents -- :: FilePath -> IO [FilePath] , getCurrentDirectory -- :: IO FilePath , setCurrentDirectory -- :: FilePath -> IO () -- * Pre-defined directories , getHomeDirectory , getAppUserDataDirectory , getUserDocumentsDirectory , getTemporaryDirectory -- * Actions on files , removeFile -- :: FilePath -> IO () , renameFile -- :: FilePath -> FilePath -> IO () , copyFile -- :: FilePath -> FilePath -> IO () , canonicalizePath , makeRelativeToCurrentDirectory , findExecutable -- * Existence tests , doesFileExist -- :: FilePath -> IO Bool , doesDirectoryExist -- :: FilePath -> IO Bool -- * Permissions -- $permissions , Permissions( Permissions, readable, -- :: Permissions -> Bool writable, -- :: Permissions -> Bool executable, -- :: Permissions -> Bool searchable -- :: Permissions -> Bool ) , getPermissions -- :: FilePath -> IO Permissions , setPermissions -- :: FilePath -> Permissions -> IO () , copyPermissions -- * Timestamps , getModificationTime -- :: FilePath -> IO ClockTime ) where import Prelude hiding ( catch ) import qualified Prelude import Control.Monad (guard) import System.Environment ( getEnv ) import System.FilePath import System.IO import System.IO.Error hiding ( catch, try ) import Control.Monad ( when, unless ) import Control.Exception.Base import Foreign import Foreign.C {-# CFILES cbits/directory.c #-} import System.Time ( ClockTime(..) ) import GHC.IO.Exception ( IOException(..), IOErrorType(..), ioException ) import System.Posix.Types import System.Posix.Internals import qualified System.Win32 as Win32 {- $intro A directory contains a series of entries, each of which is a named reference to a file system object (file, directory etc.). Some entries may be hidden, inaccessible, or have some administrative function (e.g. `.' or `..' under POSIX ), but in this standard all such entries are considered to form part of the directory contents. Entries in sub-directories are not, however, considered to form part of the directory contents. Each file system object is referenced by a /path/. There is normally at least one absolute path to each file system object. In some operating systems, it may also be possible to have paths which are relative to the current directory. -} ----------------------------------------------------------------------------- -- Permissions {- $permissions The 'Permissions' type is used to record whether certain operations are permissible on a file\/directory. 'getPermissions' and 'setPermissions' get and set these permissions, respectively. Permissions apply both to files and directories. For directories, the executable field will be 'False', and for files the searchable field will be 'False'. Note that directories may be searchable without being readable, if permission has been given to use them as part of a path, but not to examine the directory contents. Note that to change some, but not all permissions, a construct on the following lines must be used. > makeReadable f = do > p <- getPermissions f > setPermissions f (p {readable = True}) -} data Permissions = Permissions { readable, writable, executable, searchable :: Bool } deriving (Eq, Ord, Read, Show) {- |The 'getPermissions' operation returns the permissions for the file or directory. The operation may fail with: * 'isPermissionError' if the user is not permitted to access the permissions; or * 'isDoesNotExistError' if the file or directory does not exist. -} getPermissions :: FilePath -> IO Permissions getPermissions name = do withFilePath name $ \s -> do -- stat() does a better job of guessing the permissions on Windows -- than access() does. e.g. for execute permission, it looks at the -- filename extension :-) -- -- I tried for a while to do this properly, using the Windows security API, -- and eventually gave up. getPermissions is a flawed API anyway. -- SimonM allocaBytes sizeof_stat $ \ p_stat -> do throwErrnoIfMinus1_ "getPermissions" $ c_stat s p_stat mode <- st_mode p_stat let usr_read = mode .&. s_IRUSR let usr_write = mode .&. s_IWUSR let usr_exec = mode .&. s_IXUSR let is_dir = mode .&. s_IFDIR return ( Permissions { readable = usr_read /= 0, writable = usr_write /= 0, executable = is_dir == 0 && usr_exec /= 0, searchable = is_dir /= 0 && usr_exec /= 0 } ) {- |The 'setPermissions' operation sets the permissions for the file or directory. The operation may fail with: * 'isPermissionError' if the user is not permitted to set the permissions; or * 'isDoesNotExistError' if the file or directory does not exist. -} setPermissions :: FilePath -> Permissions -> IO () setPermissions name (Permissions r w e s) = do allocaBytes sizeof_stat $ \ p_stat -> do withFilePath name $ \p_name -> do throwErrnoIfMinus1_ "setPermissions" $ do c_stat p_name p_stat mode <- st_mode p_stat let mode1 = modifyBit r mode s_IRUSR let mode2 = modifyBit w mode1 s_IWUSR let mode3 = modifyBit (e || s) mode2 s_IXUSR c_wchmod p_name mode3 where modifyBit :: Bool -> CMode -> CMode -> CMode modifyBit False m b = m .&. (complement b) modifyBit True m b = m .|. b foreign import ccall unsafe "_wchmod" c_wchmod :: CWString -> CMode -> IO CInt copyPermissions :: FilePath -> FilePath -> IO () copyPermissions source dest = do allocaBytes sizeof_stat $ \ p_stat -> do withFilePath source $ \p_source -> do withFilePath dest $ \p_dest -> do throwErrnoIfMinus1_ "copyPermissions" $ c_stat p_source p_stat mode <- st_mode p_stat throwErrnoIfMinus1_ "copyPermissions" $ c_wchmod p_dest mode ----------------------------------------------------------------------------- -- Implementation {- |@'createDirectory' dir@ creates a new directory @dir@ which is initially empty, or as near to empty as the operating system allows. The operation may fail with: * 'isPermissionError' \/ 'PermissionDenied' The process has insufficient privileges to perform the operation. @[EROFS, EACCES]@ * 'isAlreadyExistsError' \/ 'AlreadyExists' The operand refers to a directory that already exists. @ [EEXIST]@ * 'HardwareFault' A physical I\/O error has occurred. @[EIO]@ * 'InvalidArgument' The operand is not a valid directory name. @[ENAMETOOLONG, ELOOP]@ * 'NoSuchThing' There is no path to the directory. @[ENOENT, ENOTDIR]@ * 'ResourceExhausted' Insufficient resources (virtual memory, process file descriptors, physical disk space, etc.) are available to perform the operation. @[EDQUOT, ENOSPC, ENOMEM, EMLINK]@ * 'InappropriateType' The path refers to an existing non-directory object. @[EEXIST]@ -} createDirectory :: FilePath -> IO () createDirectory path = do Win32.createDirectory path Nothing -- | @'createDirectoryIfMissing' parents dir@ creates a new directory -- @dir@ if it doesn\'t exist. If the first argument is 'True' -- the function will also create all parent directories if they are missing. createDirectoryIfMissing :: Bool -- ^ Create its parents too? -> FilePath -- ^ The path to the directory you want to make -> IO () createDirectoryIfMissing create_parents path0 | create_parents = createDirs (parents path0) | otherwise = createDirs (take 1 (parents path0)) where parents = reverse . scanl1 () . splitDirectories . normalise createDirs [] = return () createDirs (dir:[]) = createDir dir throw createDirs (dir:dirs) = createDir dir $ \_ -> do createDirs dirs createDir dir throw createDir :: FilePath -> (IOException -> IO ()) -> IO () createDir dir notExistHandler = do r <- try $ createDirectory dir case (r :: Either IOException ()) of Right () -> return () Left e | isDoesNotExistError e -> notExistHandler e -- createDirectory (and indeed POSIX mkdir) does not distinguish -- between a dir already existing and a file already existing. So we -- check for it here. Unfortunately there is a slight race condition -- here, but we think it is benign. It could report an exeption in -- the case that the dir did exist but another process deletes the -- directory and creates a file in its place before we can check -- that the directory did indeed exist. | isAlreadyExistsError e -> (do withFileStatus "createDirectoryIfMissing" dir $ \st -> do isDir <- isDirectory st if isDir then return () else throw e ) `catch` ((\_ -> return ()) :: IOException -> IO ()) | otherwise -> throw e {- | @'removeDirectory' dir@ removes an existing directory /dir/. The implementation may specify additional constraints which must be satisfied before a directory can be removed (e.g. the directory has to be empty, or may not be in use by other processes). It is not legal for an implementation to partially remove a directory unless the entire directory is removed. A conformant implementation need not support directory removal in all situations (e.g. removal of the root directory). The operation may fail with: * 'HardwareFault' A physical I\/O error has occurred. EIO * 'InvalidArgument' The operand is not a valid directory name. [ENAMETOOLONG, ELOOP] * 'isDoesNotExistError' \/ 'NoSuchThing' The directory does not exist. @[ENOENT, ENOTDIR]@ * 'isPermissionError' \/ 'PermissionDenied' The process has insufficient privileges to perform the operation. @[EROFS, EACCES, EPERM]@ * 'UnsatisfiedConstraints' Implementation-dependent constraints are not satisfied. @[EBUSY, ENOTEMPTY, EEXIST]@ * 'UnsupportedOperation' The implementation does not support removal in this situation. @[EINVAL]@ * 'InappropriateType' The operand refers to an existing non-directory object. @[ENOTDIR]@ -} removeDirectory :: FilePath -> IO () removeDirectory path = Win32.removeDirectory path -- | @'removeDirectoryRecursive' dir@ removes an existing directory /dir/ -- together with its content and all subdirectories. Be careful, -- if the directory contains symlinks, the function will follow them. removeDirectoryRecursive :: FilePath -> IO () removeDirectoryRecursive startLoc = do cont <- getDirectoryContents startLoc sequence_ [rm (startLoc x) | x <- cont, x /= "." && x /= ".."] removeDirectory startLoc where rm :: FilePath -> IO () rm f = do temp <- try (removeFile f) case temp of Left e -> do isDir <- doesDirectoryExist f -- If f is not a directory, re-throw the error unless isDir $ throw (e :: SomeException) removeDirectoryRecursive f Right _ -> return () {- |'removeFile' /file/ removes the directory entry for an existing file /file/, where /file/ is not itself a directory. The implementation may specify additional constraints which must be satisfied before a file can be removed (e.g. the file may not be in use by other processes). The operation may fail with: * 'HardwareFault' A physical I\/O error has occurred. @[EIO]@ * 'InvalidArgument' The operand is not a valid file name. @[ENAMETOOLONG, ELOOP]@ * 'isDoesNotExistError' \/ 'NoSuchThing' The file does not exist. @[ENOENT, ENOTDIR]@ * 'isPermissionError' \/ 'PermissionDenied' The process has insufficient privileges to perform the operation. @[EROFS, EACCES, EPERM]@ * 'UnsatisfiedConstraints' Implementation-dependent constraints are not satisfied. @[EBUSY]@ * 'InappropriateType' The operand refers to an existing directory. @[EPERM, EINVAL]@ -} removeFile :: FilePath -> IO () removeFile path = Win32.deleteFile path {- |@'renameDirectory' old new@ changes the name of an existing directory from /old/ to /new/. If the /new/ directory already exists, it is atomically replaced by the /old/ directory. If the /new/ directory is neither the /old/ directory nor an alias of the /old/ directory, it is removed as if by 'removeDirectory'. A conformant implementation need not support renaming directories in all situations (e.g. renaming to an existing directory, or across different physical devices), but the constraints must be documented. On Win32 platforms, @renameDirectory@ fails if the /new/ directory already exists. The operation may fail with: * 'HardwareFault' A physical I\/O error has occurred. @[EIO]@ * 'InvalidArgument' Either operand is not a valid directory name. @[ENAMETOOLONG, ELOOP]@ * 'isDoesNotExistError' \/ 'NoSuchThing' The original directory does not exist, or there is no path to the target. @[ENOENT, ENOTDIR]@ * 'isPermissionError' \/ 'PermissionDenied' The process has insufficient privileges to perform the operation. @[EROFS, EACCES, EPERM]@ * 'ResourceExhausted' Insufficient resources are available to perform the operation. @[EDQUOT, ENOSPC, ENOMEM, EMLINK]@ * 'UnsatisfiedConstraints' Implementation-dependent constraints are not satisfied. @[EBUSY, ENOTEMPTY, EEXIST]@ * 'UnsupportedOperation' The implementation does not support renaming in this situation. @[EINVAL, EXDEV]@ * 'InappropriateType' Either path refers to an existing non-directory object. @[ENOTDIR, EISDIR]@ -} renameDirectory :: FilePath -> FilePath -> IO () renameDirectory opath npath = do -- XXX this test isn't performed atomically with the following rename -- ToDo: use Win32 API withFileStatus "renameDirectory" opath $ \st -> do is_dir <- isDirectory st if (not is_dir) then ioException (ioeSetErrorString (mkIOError InappropriateType "renameDirectory" Nothing (Just opath)) "not a directory") else do Win32.moveFileEx opath npath Win32.mOVEFILE_REPLACE_EXISTING {- |@'renameFile' old new@ changes the name of an existing file system object from /old/ to /new/. If the /new/ object already exists, it is atomically replaced by the /old/ object. Neither path may refer to an existing directory. A conformant implementation need not support renaming files in all situations (e.g. renaming across different physical devices), but the constraints must be documented. The operation may fail with: * 'HardwareFault' A physical I\/O error has occurred. @[EIO]@ * 'InvalidArgument' Either operand is not a valid file name. @[ENAMETOOLONG, ELOOP]@ * 'isDoesNotExistError' \/ 'NoSuchThing' The original file does not exist, or there is no path to the target. @[ENOENT, ENOTDIR]@ * 'isPermissionError' \/ 'PermissionDenied' The process has insufficient privileges to perform the operation. @[EROFS, EACCES, EPERM]@ * 'ResourceExhausted' Insufficient resources are available to perform the operation. @[EDQUOT, ENOSPC, ENOMEM, EMLINK]@ * 'UnsatisfiedConstraints' Implementation-dependent constraints are not satisfied. @[EBUSY]@ * 'UnsupportedOperation' The implementation does not support renaming in this situation. @[EXDEV]@ * 'InappropriateType' Either path refers to an existing directory. @[ENOTDIR, EISDIR, EINVAL, EEXIST, ENOTEMPTY]@ -} renameFile :: FilePath -> FilePath -> IO () renameFile opath npath = do -- XXX this test isn't performed atomically with the following rename -- ToDo: use Win32 API withFileOrSymlinkStatus "renameFile" opath $ \st -> do is_dir <- isDirectory st if is_dir then ioException (ioeSetErrorString (mkIOError InappropriateType "renameFile" Nothing (Just opath)) "is a directory") else do Win32.moveFileEx opath npath Win32.mOVEFILE_REPLACE_EXISTING {- |@'copyFile' old new@ copies the existing file from /old/ to /new/. If the /new/ file already exists, it is atomically replaced by the /old/ file. Neither path may refer to an existing directory. The permissions of /old/ are copied to /new/, if possible. -} copyFile :: FilePath -> FilePath -> IO () copyFile fromFPath toFPath = copy `Prelude.catch` (\exc -> throw $ ioeSetLocation exc "copyFile") where copy = bracket (openBinaryFile fromFPath ReadMode) hClose $ \hFrom -> bracketOnError openTmp cleanTmp $ \(tmpFPath, hTmp) -> do allocaBytes bufferSize $ copyContents hFrom hTmp hClose hTmp ignoreIOExceptions $ copyPermissions fromFPath tmpFPath renameFile tmpFPath toFPath openTmp = openBinaryTempFile (takeDirectory toFPath) ".copyFile.tmp" cleanTmp (tmpFPath, hTmp) = do ignoreIOExceptions $ hClose hTmp ignoreIOExceptions $ removeFile tmpFPath bufferSize = 1024 copyContents hFrom hTo buffer = do count <- hGetBuf hFrom buffer bufferSize when (count > 0) $ do hPutBuf hTo buffer count copyContents hFrom hTo buffer ignoreIOExceptions io = io `catch` ioExceptionIgnorer ioExceptionIgnorer :: IOException -> IO () ioExceptionIgnorer _ = return () -- | Given path referring to a file or directory, returns a -- canonicalized path, with the intent that two paths referring -- to the same file\/directory will map to the same canonicalized -- path. Note that it is impossible to guarantee that the -- implication (same file\/dir \<=\> same canonicalizedPath) holds -- in either direction: this function can make only a best-effort -- attempt. canonicalizePath :: FilePath -> IO FilePath canonicalizePath fpath = do path <- Win32.getFullPathName fpath return (normalise path) -- normalise does more stuff, like upper-casing the drive letter -- | 'makeRelative' the current directory. makeRelativeToCurrentDirectory :: FilePath -> IO FilePath makeRelativeToCurrentDirectory x = do cur <- getCurrentDirectory return $ makeRelative cur x -- | Given an executable file name, searches for such file in the -- directories listed in system PATH. The returned value is the path -- to the found executable or Nothing if an executable with the given -- name was not found. For example (findExecutable \"ghc\") gives you -- the path to GHC. -- -- The path returned by 'findExecutable' corresponds to the -- program that would be executed by 'System.Process.createProcess' -- when passed the same string (as a RawCommand, not a ShellCommand). -- -- On Windows, 'findExecutable' calls the Win32 function 'SearchPath', -- which may search other places before checking the directories in -- @PATH@. Where it actually searches depends on registry settings, -- but notably includes the directory containing the current -- executable. See -- for more -- details. -- findExecutable :: String -> IO (Maybe FilePath) findExecutable binary = Win32.searchPath Nothing binary ('.':exeExtension) {- |@'getDirectoryContents' dir@ returns a list of /all/ entries in /dir/. The operation may fail with: * 'HardwareFault' A physical I\/O error has occurred. @[EIO]@ * 'InvalidArgument' The operand is not a valid directory name. @[ENAMETOOLONG, ELOOP]@ * 'isDoesNotExistError' \/ 'NoSuchThing' The directory does not exist. @[ENOENT, ENOTDIR]@ * 'isPermissionError' \/ 'PermissionDenied' The process has insufficient privileges to perform the operation. @[EACCES]@ * 'ResourceExhausted' Insufficient resources are available to perform the operation. @[EMFILE, ENFILE]@ * 'InappropriateType' The path refers to an existing non-directory object. @[ENOTDIR]@ -} getDirectoryContents :: FilePath -> IO [FilePath] getDirectoryContents path = modifyIOError ((`ioeSetFileName` path) . (`ioeSetLocation` "getDirectoryContents")) $ do bracket (Win32.findFirstFile (path "*")) (\(h,_) -> Win32.findClose h) (\(h,fdat) -> loop h fdat []) where -- we needn't worry about empty directories: adirectory always -- has at least "." and ".." entries loop :: Win32.HANDLE -> Win32.FindData -> [FilePath] -> IO [FilePath] loop h fdat acc = do filename <- Win32.getFindDataFileName fdat more <- Win32.findNextFile h fdat if more then loop h fdat (filename:acc) else return (filename:acc) -- no need to reverse, ordering is undefined {- |If the operating system has a notion of current directories, 'getCurrentDirectory' returns an absolute path to the current directory of the calling process. The operation may fail with: * 'HardwareFault' A physical I\/O error has occurred. @[EIO]@ * 'isDoesNotExistError' \/ 'NoSuchThing' There is no path referring to the current directory. @[EPERM, ENOENT, ESTALE...]@ * 'isPermissionError' \/ 'PermissionDenied' The process has insufficient privileges to perform the operation. @[EACCES]@ * 'ResourceExhausted' Insufficient resources are available to perform the operation. * 'UnsupportedOperation' The operating system has no notion of current directory. -} getCurrentDirectory :: IO FilePath getCurrentDirectory = do Win32.getCurrentDirectory {- |If the operating system has a notion of current directories, @'setCurrentDirectory' dir@ changes the current directory of the calling process to /dir/. The operation may fail with: * 'HardwareFault' A physical I\/O error has occurred. @[EIO]@ * 'InvalidArgument' The operand is not a valid directory name. @[ENAMETOOLONG, ELOOP]@ * 'isDoesNotExistError' \/ 'NoSuchThing' The directory does not exist. @[ENOENT, ENOTDIR]@ * 'isPermissionError' \/ 'PermissionDenied' The process has insufficient privileges to perform the operation. @[EACCES]@ * 'UnsupportedOperation' The operating system has no notion of current directory, or the current directory cannot be dynamically changed. * 'InappropriateType' The path refers to an existing non-directory object. @[ENOTDIR]@ -} setCurrentDirectory :: FilePath -> IO () setCurrentDirectory path = Win32.setCurrentDirectory path {- |The operation 'doesDirectoryExist' returns 'True' if the argument file exists and is a directory, and 'False' otherwise. -} doesDirectoryExist :: FilePath -> IO Bool doesDirectoryExist name = (withFileStatus "doesDirectoryExist" name $ \st -> isDirectory st) `catch` ((\ _ -> return False) :: IOException -> IO Bool) {- |The operation 'doesFileExist' returns 'True' if the argument file exists and is not a directory, and 'False' otherwise. -} doesFileExist :: FilePath -> IO Bool doesFileExist name = (withFileStatus "doesFileExist" name $ \st -> do b <- isDirectory st; return (not b)) `catch` ((\ _ -> return False) :: IOException -> IO Bool) {- |The 'getModificationTime' operation returns the clock time at which the file or directory was last modified. The operation may fail with: * 'isPermissionError' if the user is not permitted to access the modification time; or * 'isDoesNotExistError' if the file or directory does not exist. -} getModificationTime :: FilePath -> IO ClockTime getModificationTime name = do -- ToDo: use Win32 API withFileStatus "getModificationTime" name $ \ st -> do modificationTime st withFileStatus :: String -> FilePath -> (Ptr CStat -> IO a) -> IO a withFileStatus loc name f = do modifyIOError (`ioeSetFileName` name) $ allocaBytes sizeof_stat $ \p -> withFilePath (fileNameEndClean name) $ \s -> do throwErrnoIfMinus1Retry_ loc (c_stat s p) withFileOrSymlinkStatus :: String -> FilePath -> (Ptr CStat -> IO a) -> IO a withFileOrSymlinkStatus loc name f = do modifyIOError (`ioeSetFileName` name) $ allocaBytes sizeof_stat $ \p -> withFilePath name $ \s -> do throwErrnoIfMinus1Retry_ loc (lstat s p) modificationTime :: Ptr CStat -> IO ClockTime modificationTime stat = do mtime <- st_mtime stat let realToInteger = round . realToFrac :: Real a => a -> Integer return (TOD (realToInteger (mtime :: CTime)) 0) isDirectory :: Ptr CStat -> IO Bool isDirectory stat = do mode <- st_mode stat return (s_isdir mode) fileNameEndClean :: String -> String fileNameEndClean name = if isDrive name then addTrailingPathSeparator name else dropTrailingPathSeparator name foreign import ccall unsafe "HsDirectory.h __hscore_S_IRUSR" s_IRUSR :: CMode foreign import ccall unsafe "HsDirectory.h __hscore_S_IWUSR" s_IWUSR :: CMode foreign import ccall unsafe "HsDirectory.h __hscore_S_IXUSR" s_IXUSR :: CMode foreign import ccall unsafe "__hscore_S_IFDIR" s_IFDIR :: CMode foreign import ccall unsafe "__hscore_long_path_size" long_path_size :: Int {- | Returns the current user's home directory. The directory returned is expected to be writable by the current user, but note that it isn't generally considered good practice to store application-specific data here; use 'getAppUserDataDirectory' instead. On Unix, 'getHomeDirectory' returns the value of the @HOME@ environment variable. On Windows, the system is queried for a suitable path; a typical path might be @C:/Documents And Settings/user@. The operation may fail with: * 'UnsupportedOperation' The operating system has no notion of home directory. * 'isDoesNotExistError' The home directory for the current user does not exist, or cannot be found. -} getHomeDirectory :: IO FilePath getHomeDirectory = modifyIOError ((`ioeSetLocation` "getHomeDirectory")) $ do r <- try $ Win32.sHGetFolderPath nullPtr Win32.cSIDL_PROFILE nullPtr 0 case (r :: Either IOException String) of Right s -> return s Left _ -> do r1 <- try $ Win32.sHGetFolderPath nullPtr Win32.cSIDL_WINDOWS nullPtr 0 case r1 of Right s -> return s Left e -> ioError (e :: IOException) {- | Returns the pathname of a directory in which application-specific data for the current user can be stored. The result of 'getAppUserDataDirectory' for a given application is specific to the current user. The argument should be the name of the application, which will be used to construct the pathname (so avoid using unusual characters that might result in an invalid pathname). Note: the directory may not actually exist, and may need to be created first. It is expected that the parent directory exists and is writable. On Unix, this function returns @$HOME\/.appName@. On Windows, a typical path might be > C:/Documents And Settings/user/Application Data/appName The operation may fail with: * 'UnsupportedOperation' The operating system has no notion of application-specific data directory. * 'isDoesNotExistError' The home directory for the current user does not exist, or cannot be found. -} getAppUserDataDirectory :: String -> IO FilePath getAppUserDataDirectory appName = do modifyIOError ((`ioeSetLocation` "getAppUserDataDirectory")) $ do s <- Win32.sHGetFolderPath nullPtr Win32.cSIDL_APPDATA nullPtr 0 return (s++'\\':appName) {- | Returns the current user's document directory. The directory returned is expected to be writable by the current user, but note that it isn't generally considered good practice to store application-specific data here; use 'getAppUserDataDirectory' instead. On Unix, 'getUserDocumentsDirectory' returns the value of the @HOME@ environment variable. On Windows, the system is queried for a suitable path; a typical path might be @C:\/Documents and Settings\/user\/My Documents@. The operation may fail with: * 'UnsupportedOperation' The operating system has no notion of document directory. * 'isDoesNotExistError' The document directory for the current user does not exist, or cannot be found. -} getUserDocumentsDirectory :: IO FilePath getUserDocumentsDirectory = do modifyIOError ((`ioeSetLocation` "getUserDocumentsDirectory")) $ do Win32.sHGetFolderPath nullPtr Win32.cSIDL_PERSONAL nullPtr 0 {- | Returns the current directory for temporary files. On Unix, 'getTemporaryDirectory' returns the value of the @TMPDIR@ environment variable or \"\/tmp\" if the variable isn\'t defined. On Windows, the function checks for the existence of environment variables in the following order and uses the first path found: * TMP environment variable. * TEMP environment variable. * USERPROFILE environment variable. * The Windows directory The operation may fail with: * 'UnsupportedOperation' The operating system has no notion of temporary directory. The function doesn\'t verify whether the path exists. -} getTemporaryDirectory :: IO FilePath getTemporaryDirectory = do Win32.getTemporaryDirectory -- ToDo: This should be determined via autoconf (AC_EXEEXT) -- | Extension for executable files -- (typically @\"\"@ on Unix and @\"exe\"@ on Windows or OS\/2) exeExtension :: String exeExtension = "exe" haskell-src-exts-1.18.2/tests/examples/Directory.hs.exactprinter.golden0000644000000000000000000000000612746233113024416 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Directory.hs.parser.golden0000644000000000000000000711137612746233113023226 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 1 1 914 1 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 1 1 1 1 , SrcSpan "tests/examples/Directory.hs" 17 1 17 1 , SrcSpan "tests/examples/Directory.hs" 17 1 17 1 , SrcSpan "tests/examples/Directory.hs" 72 1 72 1 , SrcSpan "tests/examples/Directory.hs" 73 1 73 1 , SrcSpan "tests/examples/Directory.hs" 75 1 75 1 , SrcSpan "tests/examples/Directory.hs" 76 1 76 1 , SrcSpan "tests/examples/Directory.hs" 77 1 77 1 , SrcSpan "tests/examples/Directory.hs" 78 1 78 1 , SrcSpan "tests/examples/Directory.hs" 79 1 79 1 , SrcSpan "tests/examples/Directory.hs" 80 1 80 1 , SrcSpan "tests/examples/Directory.hs" 81 1 81 1 , SrcSpan "tests/examples/Directory.hs" 83 1 83 1 , SrcSpan "tests/examples/Directory.hs" 84 1 84 1 , SrcSpan "tests/examples/Directory.hs" 88 1 88 1 , SrcSpan "tests/examples/Directory.hs" 90 1 90 1 , SrcSpan "tests/examples/Directory.hs" 92 1 92 1 , SrcSpan "tests/examples/Directory.hs" 93 1 93 1 , SrcSpan "tests/examples/Directory.hs" 94 1 94 1 , SrcSpan "tests/examples/Directory.hs" 134 1 134 1 , SrcSpan "tests/examples/Directory.hs" 152 1 152 1 , SrcSpan "tests/examples/Directory.hs" 153 1 153 1 , SrcSpan "tests/examples/Directory.hs" 189 1 189 1 , SrcSpan "tests/examples/Directory.hs" 190 1 190 1 , SrcSpan "tests/examples/Directory.hs" 205 1 205 1 , SrcSpan "tests/examples/Directory.hs" 208 1 208 1 , SrcSpan "tests/examples/Directory.hs" 209 1 209 1 , SrcSpan "tests/examples/Directory.hs" 257 1 257 1 , SrcSpan "tests/examples/Directory.hs" 258 1 258 1 , SrcSpan "tests/examples/Directory.hs" 264 1 264 1 , SrcSpan "tests/examples/Directory.hs" 267 1 267 1 , SrcSpan "tests/examples/Directory.hs" 343 1 343 1 , SrcSpan "tests/examples/Directory.hs" 344 1 344 1 , SrcSpan "tests/examples/Directory.hs" 350 1 350 1 , SrcSpan "tests/examples/Directory.hs" 351 1 351 1 , SrcSpan "tests/examples/Directory.hs" 399 1 399 1 , SrcSpan "tests/examples/Directory.hs" 400 1 400 1 , SrcSpan "tests/examples/Directory.hs" 452 1 452 1 , SrcSpan "tests/examples/Directory.hs" 453 1 453 1 , SrcSpan "tests/examples/Directory.hs" 509 1 509 1 , SrcSpan "tests/examples/Directory.hs" 510 1 510 1 , SrcSpan "tests/examples/Directory.hs" 528 1 528 1 , SrcSpan "tests/examples/Directory.hs" 529 1 529 1 , SrcSpan "tests/examples/Directory.hs" 560 1 560 1 , SrcSpan "tests/examples/Directory.hs" 561 1 561 1 , SrcSpan "tests/examples/Directory.hs" 568 1 568 1 , SrcSpan "tests/examples/Directory.hs" 569 1 569 1 , SrcSpan "tests/examples/Directory.hs" 591 1 591 1 , SrcSpan "tests/examples/Directory.hs" 592 1 592 1 , SrcSpan "tests/examples/Directory.hs" 627 1 627 1 , SrcSpan "tests/examples/Directory.hs" 628 1 628 1 , SrcSpan "tests/examples/Directory.hs" 672 1 672 1 , SrcSpan "tests/examples/Directory.hs" 673 1 673 1 , SrcSpan "tests/examples/Directory.hs" 708 1 708 1 , SrcSpan "tests/examples/Directory.hs" 709 1 709 1 , SrcSpan "tests/examples/Directory.hs" 716 1 716 1 , SrcSpan "tests/examples/Directory.hs" 717 1 717 1 , SrcSpan "tests/examples/Directory.hs" 725 1 725 1 , SrcSpan "tests/examples/Directory.hs" 726 1 726 1 , SrcSpan "tests/examples/Directory.hs" 742 1 742 1 , SrcSpan "tests/examples/Directory.hs" 743 1 743 1 , SrcSpan "tests/examples/Directory.hs" 749 1 749 1 , SrcSpan "tests/examples/Directory.hs" 750 1 750 1 , SrcSpan "tests/examples/Directory.hs" 756 1 756 1 , SrcSpan "tests/examples/Directory.hs" 757 1 757 1 , SrcSpan "tests/examples/Directory.hs" 763 1 763 1 , SrcSpan "tests/examples/Directory.hs" 764 1 764 1 , SrcSpan "tests/examples/Directory.hs" 769 1 769 1 , SrcSpan "tests/examples/Directory.hs" 770 1 770 1 , SrcSpan "tests/examples/Directory.hs" 774 1 774 1 , SrcSpan "tests/examples/Directory.hs" 775 1 775 1 , SrcSpan "tests/examples/Directory.hs" 778 1 778 1 , SrcSpan "tests/examples/Directory.hs" 779 1 779 1 , SrcSpan "tests/examples/Directory.hs" 780 1 780 1 , SrcSpan "tests/examples/Directory.hs" 781 1 781 1 , SrcSpan "tests/examples/Directory.hs" 784 1 784 1 , SrcSpan "tests/examples/Directory.hs" 808 1 808 1 , SrcSpan "tests/examples/Directory.hs" 809 1 809 1 , SrcSpan "tests/examples/Directory.hs" 847 1 847 1 , SrcSpan "tests/examples/Directory.hs" 848 1 848 1 , SrcSpan "tests/examples/Directory.hs" 874 1 874 1 , SrcSpan "tests/examples/Directory.hs" 875 1 875 1 , SrcSpan "tests/examples/Directory.hs" 905 1 905 1 , SrcSpan "tests/examples/Directory.hs" 906 1 906 1 , SrcSpan "tests/examples/Directory.hs" 912 1 912 1 , SrcSpan "tests/examples/Directory.hs" 913 1 913 1 , SrcSpan "tests/examples/Directory.hs" 914 1 914 1 , SrcSpan "tests/examples/Directory.hs" 914 1 914 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 17 1 70 11 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 17 1 17 7 , SrcSpan "tests/examples/Directory.hs" 70 6 70 11 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 17 8 17 24 , srcInfoPoints = [] } "System.Directory") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 18 4 70 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 18 4 18 5 , SrcSpan "tests/examples/Directory.hs" 23 5 23 6 , SrcSpan "tests/examples/Directory.hs" 24 5 24 6 , SrcSpan "tests/examples/Directory.hs" 25 5 25 6 , SrcSpan "tests/examples/Directory.hs" 26 5 26 6 , SrcSpan "tests/examples/Directory.hs" 28 5 28 6 , SrcSpan "tests/examples/Directory.hs" 29 5 29 6 , SrcSpan "tests/examples/Directory.hs" 30 5 30 6 , SrcSpan "tests/examples/Directory.hs" 33 5 33 6 , SrcSpan "tests/examples/Directory.hs" 34 5 34 6 , SrcSpan "tests/examples/Directory.hs" 35 5 35 6 , SrcSpan "tests/examples/Directory.hs" 36 5 36 6 , SrcSpan "tests/examples/Directory.hs" 39 5 39 6 , SrcSpan "tests/examples/Directory.hs" 40 5 40 6 , SrcSpan "tests/examples/Directory.hs" 41 5 41 6 , SrcSpan "tests/examples/Directory.hs" 43 5 43 6 , SrcSpan "tests/examples/Directory.hs" 44 5 44 6 , SrcSpan "tests/examples/Directory.hs" 45 5 45 6 , SrcSpan "tests/examples/Directory.hs" 48 5 48 6 , SrcSpan "tests/examples/Directory.hs" 49 5 49 6 , SrcSpan "tests/examples/Directory.hs" 55 5 55 6 , SrcSpan "tests/examples/Directory.hs" 63 5 63 6 , SrcSpan "tests/examples/Directory.hs" 64 5 64 6 , SrcSpan "tests/examples/Directory.hs" 65 5 65 6 , SrcSpan "tests/examples/Directory.hs" 69 5 69 6 , SrcSpan "tests/examples/Directory.hs" 70 4 70 5 ] } [ EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 22 7 22 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 22 7 22 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 22 7 22 22 , srcInfoPoints = [] } "createDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 23 7 23 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 23 7 23 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 23 7 23 31 , srcInfoPoints = [] } "createDirectoryIfMissing")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 24 7 24 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 24 7 24 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 24 7 24 22 , srcInfoPoints = [] } "removeDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 25 7 25 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 25 7 25 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 25 7 25 31 , srcInfoPoints = [] } "removeDirectoryRecursive")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 26 7 26 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 26 7 26 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 26 7 26 22 , srcInfoPoints = [] } "renameDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 28 7 28 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 28 7 28 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 28 7 28 27 , srcInfoPoints = [] } "getDirectoryContents")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 29 7 29 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 29 7 29 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 29 7 29 26 , srcInfoPoints = [] } "getCurrentDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 30 7 30 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 30 7 30 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 30 7 30 26 , srcInfoPoints = [] } "setCurrentDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 33 7 33 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 33 7 33 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 33 7 33 23 , srcInfoPoints = [] } "getHomeDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 34 7 34 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 34 7 34 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 34 7 34 30 , srcInfoPoints = [] } "getAppUserDataDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 35 7 35 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 35 7 35 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 35 7 35 32 , srcInfoPoints = [] } "getUserDocumentsDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 36 7 36 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 36 7 36 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 36 7 36 28 , srcInfoPoints = [] } "getTemporaryDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 39 7 39 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 39 7 39 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 39 7 39 17 , srcInfoPoints = [] } "removeFile")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 40 7 40 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 40 7 40 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 40 7 40 17 , srcInfoPoints = [] } "renameFile")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 41 7 41 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 41 7 41 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 41 7 41 15 , srcInfoPoints = [] } "copyFile")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 43 7 43 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 43 7 43 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 43 7 43 23 , srcInfoPoints = [] } "canonicalizePath")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 44 7 44 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 44 7 44 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 44 7 44 37 , srcInfoPoints = [] } "makeRelativeToCurrentDirectory")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 45 7 45 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 45 7 45 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 45 7 45 21 , srcInfoPoints = [] } "findExecutable")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 48 7 48 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 48 7 48 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 48 7 48 20 , srcInfoPoints = [] } "doesFileExist")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 49 7 49 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 49 7 49 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 49 7 49 25 , srcInfoPoints = [] } "doesDirectoryExist")) , EThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 55 7 61 8 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 55 18 55 19 , SrcSpan "tests/examples/Directory.hs" 56 16 56 17 , SrcSpan "tests/examples/Directory.hs" 57 13 57 14 , SrcSpan "tests/examples/Directory.hs" 58 13 58 14 , SrcSpan "tests/examples/Directory.hs" 59 15 59 16 , SrcSpan "tests/examples/Directory.hs" 61 7 61 8 ] } (NoWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "" (-1) (-1) (-1) (-1) , srcInfoPoints = [] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 55 7 55 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 55 7 55 18 , srcInfoPoints = [] } "Permissions")) [ ConName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 56 5 56 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 56 5 56 16 , srcInfoPoints = [] } "Permissions") , VarName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 57 5 57 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 57 5 57 13 , srcInfoPoints = [] } "readable") , VarName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 58 5 58 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 58 5 58 13 , srcInfoPoints = [] } "writable") , VarName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 59 5 59 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 59 5 59 15 , srcInfoPoints = [] } "executable") , VarName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 60 5 60 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 60 5 60 15 , srcInfoPoints = [] } "searchable") ] , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 63 7 63 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 63 7 63 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 63 7 63 21 , srcInfoPoints = [] } "getPermissions")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 64 7 64 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 64 7 64 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 64 7 64 21 , srcInfoPoints = [] } "setPermissions")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 65 7 65 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 65 7 65 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 65 7 65 22 , srcInfoPoints = [] } "copyPermissions")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 69 7 69 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 69 7 69 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 69 7 69 26 , srcInfoPoints = [] } "getModificationTime")) ])))) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 1 1 1 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 1 1 1 13 , SrcSpan "tests/examples/Directory.hs" 1 38 1 39 , SrcSpan "tests/examples/Directory.hs" 1 65 1 68 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 1 14 1 38 , srcInfoPoints = [] } "ForeignFunctionInterface" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 1 40 1 64 , srcInfoPoints = [] } "NondecreasingIndentation" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 72 1 72 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 72 1 72 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 72 8 72 15 , srcInfoPoints = [] } "Prelude" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 72 16 72 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 72 16 72 22 , SrcSpan "tests/examples/Directory.hs" 72 23 72 24 , SrcSpan "tests/examples/Directory.hs" 72 31 72 32 ] } True [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 72 25 72 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 72 25 72 30 , srcInfoPoints = [] } "catch") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 73 1 73 25 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 73 1 73 7 , SrcSpan "tests/examples/Directory.hs" 73 8 73 17 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 73 18 73 25 , srcInfoPoints = [] } "Prelude" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 75 1 75 29 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 75 1 75 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 75 8 75 21 , srcInfoPoints = [] } "Control.Monad" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 75 22 75 29 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 75 22 75 23 , SrcSpan "tests/examples/Directory.hs" 75 28 75 29 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 75 23 75 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 75 23 75 28 , srcInfoPoints = [] } "guard") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 76 1 76 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 76 1 76 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 76 8 76 26 , srcInfoPoints = [] } "System.Environment" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 76 32 76 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 76 32 76 33 , SrcSpan "tests/examples/Directory.hs" 76 41 76 42 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 76 34 76 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 76 34 76 40 , srcInfoPoints = [] } "getEnv") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 77 1 77 23 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 77 1 77 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 77 8 77 23 , srcInfoPoints = [] } "System.FilePath" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 78 1 78 17 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 78 1 78 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 78 8 78 17 , srcInfoPoints = [] } "System.IO" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 79 1 79 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 79 1 79 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 79 8 79 23 , srcInfoPoints = [] } "System.IO.Error" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 79 24 79 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 79 24 79 30 , SrcSpan "tests/examples/Directory.hs" 79 31 79 32 , SrcSpan "tests/examples/Directory.hs" 79 38 79 39 , SrcSpan "tests/examples/Directory.hs" 79 44 79 45 ] } True [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 79 33 79 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 79 33 79 38 , srcInfoPoints = [] } "catch") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 79 40 79 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 79 40 79 43 , srcInfoPoints = [] } "try") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 80 1 80 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 80 1 80 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 80 8 80 21 , srcInfoPoints = [] } "Control.Monad" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 80 32 80 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 80 32 80 33 , SrcSpan "tests/examples/Directory.hs" 80 38 80 39 , SrcSpan "tests/examples/Directory.hs" 80 47 80 48 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 80 34 80 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 80 34 80 38 , srcInfoPoints = [] } "when") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 80 40 80 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 80 40 80 46 , srcInfoPoints = [] } "unless") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 81 1 81 30 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 81 1 81 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 81 8 81 30 , srcInfoPoints = [] } "Control.Exception.Base" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 83 1 83 15 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 83 1 83 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 83 8 83 15 , srcInfoPoints = [] } "Foreign" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 84 1 84 17 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 84 1 84 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 84 8 84 17 , srcInfoPoints = [] } "Foreign.C" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 88 1 88 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 88 1 88 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 88 8 88 19 , srcInfoPoints = [] } "System.Time" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 88 32 88 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 88 32 88 33 , SrcSpan "tests/examples/Directory.hs" 88 48 88 49 ] } False [ IThingAll SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 88 34 88 47 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 88 43 88 44 , SrcSpan "tests/examples/Directory.hs" 88 44 88 46 , SrcSpan "tests/examples/Directory.hs" 88 46 88 47 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 88 34 88 43 , srcInfoPoints = [] } "ClockTime") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 1 90 74 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 90 1 90 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 8 90 24 , srcInfoPoints = [] } "GHC.IO.Exception" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 25 90 74 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 90 25 90 26 , SrcSpan "tests/examples/Directory.hs" 90 42 90 43 , SrcSpan "tests/examples/Directory.hs" 90 59 90 60 , SrcSpan "tests/examples/Directory.hs" 90 73 90 74 ] } False [ IThingAll SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 27 90 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 90 38 90 39 , SrcSpan "tests/examples/Directory.hs" 90 39 90 41 , SrcSpan "tests/examples/Directory.hs" 90 41 90 42 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 27 90 38 , srcInfoPoints = [] } "IOException") , IThingAll SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 44 90 59 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 90 55 90 56 , SrcSpan "tests/examples/Directory.hs" 90 56 90 58 , SrcSpan "tests/examples/Directory.hs" 90 58 90 59 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 44 90 55 , srcInfoPoints = [] } "IOErrorType") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 61 90 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 90 61 90 72 , srcInfoPoints = [] } "ioException") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 92 1 92 26 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 92 1 92 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 92 8 92 26 , srcInfoPoints = [] } "System.Posix.Types" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 93 1 93 30 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 93 1 93 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 93 8 93 30 , srcInfoPoints = [] } "System.Posix.Internals" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 94 1 94 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 94 1 94 7 , SrcSpan "tests/examples/Directory.hs" 94 8 94 17 , SrcSpan "tests/examples/Directory.hs" 94 31 94 33 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 94 18 94 30 , srcInfoPoints = [] } "System.Win32" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 94 34 94 39 , srcInfoPoints = [] } "Win32") , importSpecs = Nothing } ] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 134 1 138 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 135 2 135 3 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 134 1 134 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 134 6 134 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 134 6 134 17 , srcInfoPoints = [] } "Permissions")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 135 4 138 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 135 16 135 17 , SrcSpan "tests/examples/Directory.hs" 138 4 138 5 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 135 4 138 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 135 16 135 17 , SrcSpan "tests/examples/Directory.hs" 138 4 138 5 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 135 4 135 15 , srcInfoPoints = [] } "Permissions") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 136 5 137 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 136 13 136 14 , SrcSpan "tests/examples/Directory.hs" 136 25 136 26 , SrcSpan "tests/examples/Directory.hs" 137 15 137 16 , SrcSpan "tests/examples/Directory.hs" 137 28 137 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 136 5 136 13 , srcInfoPoints = [] } "readable" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 136 17 136 25 , srcInfoPoints = [] } "writable" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 137 5 137 15 , srcInfoPoints = [] } "executable" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 137 17 137 27 , srcInfoPoints = [] } "searchable" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 137 31 137 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 137 31 137 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 137 31 137 35 , srcInfoPoints = [] } "Bool"))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 6 138 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 138 6 138 14 , SrcSpan "tests/examples/Directory.hs" 138 15 138 16 , SrcSpan "tests/examples/Directory.hs" 138 18 138 19 , SrcSpan "tests/examples/Directory.hs" 138 23 138 24 , SrcSpan "tests/examples/Directory.hs" 138 29 138 30 , SrcSpan "tests/examples/Directory.hs" 138 35 138 36 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 16 138 18 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 16 138 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 16 138 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 16 138 18 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 20 138 23 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 20 138 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 20 138 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 20 138 23 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 25 138 29 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 25 138 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 25 138 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 25 138 29 , srcInfoPoints = [] } "Read"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 31 138 35 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 31 138 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 31 138 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 138 31 138 35 , srcInfoPoints = [] } "Show"))) ])) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 1 152 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 152 16 152 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 1 152 15 , srcInfoPoints = [] } "getPermissions" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 19 152 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 152 28 152 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 19 152 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 19 152 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 19 152 27 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 31 152 45 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 31 152 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 31 152 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 31 152 33 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 34 152 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 34 152 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 152 34 152 45 , srcInfoPoints = [] } "Permissions"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 153 1 175 5 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 153 1 175 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 153 1 153 15 , srcInfoPoints = [] } "getPermissions") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 153 16 153 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 153 16 153 20 , srcInfoPoints = [] } "name") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 153 21 175 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 153 21 153 22 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 153 23 175 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 153 23 153 25 , SrcSpan "tests/examples/Directory.hs" 154 3 154 3 , SrcSpan "tests/examples/Directory.hs" 189 1 189 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 3 175 5 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 3 175 5 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 3 154 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 3 154 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 3 154 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 3 154 15 , srcInfoPoints = [] } "withFilePath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 16 154 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 16 154 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 16 154 20 , srcInfoPoints = [] } "name")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 21 154 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 21 154 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 21 154 22 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 23 175 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 154 23 154 24 , SrcSpan "tests/examples/Directory.hs" 154 26 154 28 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 24 154 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 24 154 25 , srcInfoPoints = [] } "s") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 154 29 175 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 154 29 154 31 , SrcSpan "tests/examples/Directory.hs" 161 3 161 3 , SrcSpan "tests/examples/Directory.hs" 161 3 161 3 , SrcSpan "tests/examples/Directory.hs" 189 1 189 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 3 175 5 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 3 175 5 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 3 161 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 3 161 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 3 161 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 3 161 14 , srcInfoPoints = [] } "allocaBytes"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 15 161 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 15 161 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 15 161 26 , srcInfoPoints = [] } "sizeof_stat")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 27 161 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 27 161 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 27 161 28 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 29 175 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 161 29 161 30 , SrcSpan "tests/examples/Directory.hs" 161 38 161 40 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 31 161 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 31 161 37 , srcInfoPoints = [] } "p_stat") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 161 41 175 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 161 41 161 43 , SrcSpan "tests/examples/Directory.hs" 162 3 162 3 , SrcSpan "tests/examples/Directory.hs" 162 3 162 3 , SrcSpan "tests/examples/Directory.hs" 163 3 163 3 , SrcSpan "tests/examples/Directory.hs" 164 3 164 3 , SrcSpan "tests/examples/Directory.hs" 165 3 165 3 , SrcSpan "tests/examples/Directory.hs" 166 3 166 3 , SrcSpan "tests/examples/Directory.hs" 167 3 167 3 , SrcSpan "tests/examples/Directory.hs" 168 3 168 3 , SrcSpan "tests/examples/Directory.hs" 189 1 189 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 3 162 57 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 3 162 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 3 162 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 3 162 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 3 162 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 3 162 22 , srcInfoPoints = [] } "throwErrnoIfMinus1_"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 23 162 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 23 162 39 , srcInfoPoints = [] } "getPermissions" "getPermissions"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 40 162 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 40 162 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 40 162 41 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 42 162 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 42 162 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 42 162 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 42 162 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 42 162 48 , srcInfoPoints = [] } "c_stat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 49 162 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 49 162 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 49 162 50 , srcInfoPoints = [] } "s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 51 162 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 51 162 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 162 51 162 57 , srcInfoPoints = [] } "p_stat"))))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 3 163 25 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 163 8 163 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 3 163 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 3 163 7 , srcInfoPoints = [] } "mode")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 11 163 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 11 163 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 11 163 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 11 163 18 , srcInfoPoints = [] } "st_mode"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 19 163 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 19 163 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 163 19 163 25 , srcInfoPoints = [] } "p_stat")))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 3 164 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 164 3 164 6 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 7 164 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 164 7 164 7 , SrcSpan "tests/examples/Directory.hs" 165 3 165 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 7 164 36 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 7 164 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 7 164 15 , srcInfoPoints = [] } "usr_read")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 18 164 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 164 18 164 19 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 20 164 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 20 164 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 20 164 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 20 164 24 , srcInfoPoints = [] } "mode"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 25 164 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 25 164 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 25 164 28 , srcInfoPoints = [] } ".&."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 29 164 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 29 164 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 164 29 164 36 , srcInfoPoints = [] } "s_IRUSR"))))) Nothing ]) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 3 165 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 165 3 165 6 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 7 165 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 165 7 165 7 , SrcSpan "tests/examples/Directory.hs" 166 3 166 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 7 165 36 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 7 165 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 7 165 16 , srcInfoPoints = [] } "usr_write")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 18 165 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 165 18 165 19 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 20 165 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 20 165 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 20 165 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 20 165 24 , srcInfoPoints = [] } "mode"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 25 165 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 25 165 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 25 165 28 , srcInfoPoints = [] } ".&."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 29 165 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 29 165 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 165 29 165 36 , srcInfoPoints = [] } "s_IWUSR"))))) Nothing ]) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 3 166 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 166 3 166 6 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 7 166 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 166 7 166 7 , SrcSpan "tests/examples/Directory.hs" 167 3 167 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 7 166 36 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 7 166 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 7 166 15 , srcInfoPoints = [] } "usr_exec")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 18 166 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 166 18 166 19 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 20 166 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 20 166 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 20 166 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 20 166 24 , srcInfoPoints = [] } "mode"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 25 166 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 25 166 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 25 166 28 , srcInfoPoints = [] } ".&."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 29 166 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 29 166 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 166 29 166 36 , srcInfoPoints = [] } "s_IXUSR"))))) Nothing ]) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 3 167 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 167 3 167 6 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 7 167 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 167 7 167 7 , SrcSpan "tests/examples/Directory.hs" 168 3 168 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 7 167 32 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 7 167 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 7 167 13 , srcInfoPoints = [] } "is_dir")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 14 167 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 167 14 167 15 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 16 167 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 16 167 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 16 167 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 16 167 20 , srcInfoPoints = [] } "mode"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 21 167 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 21 167 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 21 167 24 , srcInfoPoints = [] } ".&."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 25 167 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 25 167 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 167 25 167 32 , srcInfoPoints = [] } "s_IFDIR"))))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 168 3 175 5 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 168 3 175 5 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 168 3 168 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 168 3 168 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 168 3 168 9 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 168 10 175 5 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 168 10 168 11 , SrcSpan "tests/examples/Directory.hs" 175 4 175 5 ] } (RecConstr SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 169 5 174 6 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 169 17 169 18 , SrcSpan "tests/examples/Directory.hs" 170 34 170 35 , SrcSpan "tests/examples/Directory.hs" 171 34 171 35 , SrcSpan "tests/examples/Directory.hs" 172 48 172 49 , SrcSpan "tests/examples/Directory.hs" 174 5 174 6 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 169 5 169 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 169 5 169 16 , srcInfoPoints = [] } "Permissions")) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 7 170 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 170 18 170 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 7 170 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 7 170 15 , srcInfoPoints = [] } "readable")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 20 170 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 20 170 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 20 170 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 20 170 28 , srcInfoPoints = [] } "usr_read"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 30 170 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 30 170 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 30 170 32 , srcInfoPoints = [] } "/="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 33 170 34 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 170 33 170 34 , srcInfoPoints = [] } 0 "0"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 7 171 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 171 18 171 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 7 171 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 7 171 15 , srcInfoPoints = [] } "writable")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 20 171 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 20 171 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 20 171 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 20 171 29 , srcInfoPoints = [] } "usr_write"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 30 171 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 30 171 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 30 171 32 , srcInfoPoints = [] } "/="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 33 171 34 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 171 33 171 34 , srcInfoPoints = [] } 0 "0"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 7 172 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 172 18 172 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 7 172 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 7 172 17 , srcInfoPoints = [] } "executable")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 20 172 48 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 20 172 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 20 172 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 20 172 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 20 172 26 , srcInfoPoints = [] } "is_dir"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 27 172 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 27 172 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 27 172 29 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 30 172 31 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 30 172 31 , srcInfoPoints = [] } 0 "0"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 32 172 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 32 172 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 32 172 34 , srcInfoPoints = [] } "&&"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 35 172 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 35 172 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 35 172 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 35 172 43 , srcInfoPoints = [] } "usr_exec"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 44 172 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 44 172 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 44 172 46 , srcInfoPoints = [] } "/="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 47 172 48 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 172 47 172 48 , srcInfoPoints = [] } 0 "0")))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 7 173 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 173 18 173 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 7 173 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 7 173 17 , srcInfoPoints = [] } "searchable")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 20 173 48 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 20 173 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 20 173 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 20 173 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 20 173 26 , srcInfoPoints = [] } "is_dir"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 27 173 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 27 173 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 27 173 29 , srcInfoPoints = [] } "/="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 30 173 31 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 30 173 31 , srcInfoPoints = [] } 0 "0"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 32 173 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 32 173 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 32 173 34 , srcInfoPoints = [] } "&&"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 35 173 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 35 173 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 35 173 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 35 173 43 , srcInfoPoints = [] } "usr_exec"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 44 173 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 44 173 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 44 173 46 , srcInfoPoints = [] } "/="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 47 173 48 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 173 47 173 48 , srcInfoPoints = [] } 0 "0")))) ]))) ]))) ]))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 1 189 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 189 16 189 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 1 189 15 , srcInfoPoints = [] } "setPermissions" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 19 189 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 189 28 189 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 19 189 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 19 189 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 19 189 27 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 31 189 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 189 43 189 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 31 189 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 31 189 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 31 189 42 , srcInfoPoints = [] } "Permissions"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 46 189 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 46 189 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 46 189 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 46 189 48 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 49 189 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 189 49 189 50 , SrcSpan "tests/examples/Directory.hs" 189 50 189 51 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 49 189 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 189 49 189 50 , SrcSpan "tests/examples/Directory.hs" 189 50 189 51 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 189 49 189 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 189 49 189 50 , SrcSpan "tests/examples/Directory.hs" 189 50 189 51 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 1 203 33 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 200 2 200 7 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 1 203 33 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 200 2 200 7 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 1 190 15 , srcInfoPoints = [] } "setPermissions") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 16 190 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 16 190 20 , srcInfoPoints = [] } "name") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 21 190 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 190 21 190 22 , SrcSpan "tests/examples/Directory.hs" 190 41 190 42 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 22 190 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 22 190 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 22 190 33 , srcInfoPoints = [] } "Permissions")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 34 190 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 34 190 35 , srcInfoPoints = [] } "r") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 36 190 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 36 190 37 , srcInfoPoints = [] } "w") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 38 190 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 38 190 39 , srcInfoPoints = [] } "e") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 40 190 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 40 190 41 , srcInfoPoints = [] } "s") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 43 199 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 190 43 190 44 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 190 45 199 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 190 45 190 47 , SrcSpan "tests/examples/Directory.hs" 191 3 191 3 , SrcSpan "tests/examples/Directory.hs" 200 2 200 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 3 199 28 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 3 199 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 3 191 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 3 191 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 3 191 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 3 191 14 , srcInfoPoints = [] } "allocaBytes"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 15 191 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 15 191 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 15 191 26 , srcInfoPoints = [] } "sizeof_stat")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 27 191 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 27 191 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 27 191 28 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 29 199 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 191 29 191 30 , SrcSpan "tests/examples/Directory.hs" 191 38 191 40 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 31 191 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 31 191 37 , srcInfoPoints = [] } "p_stat") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 191 41 199 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 191 41 191 43 , SrcSpan "tests/examples/Directory.hs" 192 3 192 3 , SrcSpan "tests/examples/Directory.hs" 192 3 192 3 , SrcSpan "tests/examples/Directory.hs" 200 2 200 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 3 199 28 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 3 199 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 3 192 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 3 192 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 3 192 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 3 192 15 , srcInfoPoints = [] } "withFilePath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 16 192 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 16 192 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 16 192 20 , srcInfoPoints = [] } "name")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 21 192 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 21 192 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 21 192 22 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 23 199 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 192 23 192 24 , SrcSpan "tests/examples/Directory.hs" 192 31 192 33 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 24 192 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 24 192 30 , srcInfoPoints = [] } "p_name") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 192 34 199 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 192 34 192 36 , SrcSpan "tests/examples/Directory.hs" 193 5 193 5 , SrcSpan "tests/examples/Directory.hs" 200 2 200 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 5 199 28 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 5 199 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 5 193 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 5 193 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 5 193 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 5 193 24 , srcInfoPoints = [] } "throwErrnoIfMinus1_"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 25 193 41 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 25 193 41 , srcInfoPoints = [] } "setPermissions" "setPermissions"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 42 193 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 42 193 43 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 42 193 43 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 193 44 199 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 193 44 193 46 , SrcSpan "tests/examples/Directory.hs" 194 7 194 7 , SrcSpan "tests/examples/Directory.hs" 195 7 195 7 , SrcSpan "tests/examples/Directory.hs" 196 7 196 7 , SrcSpan "tests/examples/Directory.hs" 197 7 197 7 , SrcSpan "tests/examples/Directory.hs" 198 7 198 7 , SrcSpan "tests/examples/Directory.hs" 199 7 199 7 , SrcSpan "tests/examples/Directory.hs" 200 2 200 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 7 194 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 7 194 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 7 194 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 7 194 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 7 194 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 7 194 13 , srcInfoPoints = [] } "c_stat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 14 194 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 14 194 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 14 194 20 , srcInfoPoints = [] } "p_name")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 21 194 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 21 194 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 194 21 194 27 , srcInfoPoints = [] } "p_stat")))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 7 195 29 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 195 12 195 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 7 195 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 7 195 11 , srcInfoPoints = [] } "mode")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 15 195 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 15 195 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 15 195 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 15 195 22 , srcInfoPoints = [] } "st_mode"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 23 195 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 23 195 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 195 23 195 29 , srcInfoPoints = [] } "p_stat")))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 7 196 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 196 7 196 10 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 11 196 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 196 11 196 11 , SrcSpan "tests/examples/Directory.hs" 197 7 197 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 11 196 43 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 11 196 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 11 196 16 , srcInfoPoints = [] } "mode1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 17 196 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 196 17 196 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 19 196 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 19 196 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 19 196 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 19 196 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 19 196 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 19 196 28 , srcInfoPoints = [] } "modifyBit"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 29 196 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 29 196 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 29 196 30 , srcInfoPoints = [] } "r")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 31 196 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 31 196 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 31 196 35 , srcInfoPoints = [] } "mode")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 36 196 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 36 196 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 196 36 196 43 , srcInfoPoints = [] } "s_IRUSR"))))) Nothing ]) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 7 197 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 197 7 197 10 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 11 197 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 197 11 197 11 , SrcSpan "tests/examples/Directory.hs" 198 7 198 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 11 197 44 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 11 197 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 11 197 16 , srcInfoPoints = [] } "mode2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 17 197 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 197 17 197 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 19 197 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 19 197 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 19 197 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 19 197 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 19 197 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 19 197 28 , srcInfoPoints = [] } "modifyBit"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 29 197 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 29 197 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 29 197 30 , srcInfoPoints = [] } "w")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 31 197 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 31 197 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 31 197 36 , srcInfoPoints = [] } "mode1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 37 197 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 37 197 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 197 37 197 44 , srcInfoPoints = [] } "s_IWUSR"))))) Nothing ]) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 7 198 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 198 7 198 10 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 11 198 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 198 11 198 11 , SrcSpan "tests/examples/Directory.hs" 199 7 199 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 11 198 51 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 11 198 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 11 198 16 , srcInfoPoints = [] } "mode3")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 17 198 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 198 17 198 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 19 198 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 19 198 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 19 198 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 19 198 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 19 198 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 19 198 28 , srcInfoPoints = [] } "modifyBit"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 29 198 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 198 29 198 30 , SrcSpan "tests/examples/Directory.hs" 198 36 198 37 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 30 198 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 30 198 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 30 198 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 30 198 31 , srcInfoPoints = [] } "e"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 32 198 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 32 198 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 32 198 34 , srcInfoPoints = [] } "||"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 35 198 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 35 198 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 35 198 36 , srcInfoPoints = [] } "s")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 38 198 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 38 198 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 38 198 43 , srcInfoPoints = [] } "mode2")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 44 198 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 44 198 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 198 44 198 51 , srcInfoPoints = [] } "s_IXUSR"))))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 7 199 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 7 199 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 7 199 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 7 199 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 7 199 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 7 199 15 , srcInfoPoints = [] } "c_wchmod"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 16 199 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 16 199 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 16 199 22 , srcInfoPoints = [] } "p_name")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 23 199 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 23 199 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 199 23 199 28 , srcInfoPoints = [] } "mode3")))) ])) ]))) ]))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 4 203 33 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 201 4 201 4 , SrcSpan "tests/examples/Directory.hs" 202 4 202 4 , SrcSpan "tests/examples/Directory.hs" 203 4 203 4 , SrcSpan "tests/examples/Directory.hs" 205 1 205 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 4 201 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 201 14 201 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 4 201 13 , srcInfoPoints = [] } "modifyBit" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 17 201 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 201 22 201 24 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 17 201 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 17 201 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 17 201 21 , srcInfoPoints = [] } "Bool"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 25 201 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 201 31 201 33 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 25 201 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 25 201 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 25 201 30 , srcInfoPoints = [] } "CMode"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 34 201 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 201 40 201 42 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 34 201 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 34 201 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 34 201 39 , srcInfoPoints = [] } "CMode"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 43 201 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 43 201 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 201 43 201 48 , srcInfoPoints = [] } "CMode")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 4 203 33 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 4 202 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 4 202 13 , srcInfoPoints = [] } "modifyBit") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 14 202 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 14 202 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 14 202 19 , srcInfoPoints = [] } "False")) [] , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 20 202 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 20 202 21 , srcInfoPoints = [] } "m") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 22 202 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 22 202 23 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 24 202 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 202 24 202 25 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 26 202 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 26 202 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 26 202 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 26 202 27 , srcInfoPoints = [] } "m"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 28 202 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 28 202 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 28 202 31 , srcInfoPoints = [] } ".&."))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 32 202 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 202 32 202 33 , SrcSpan "tests/examples/Directory.hs" 202 45 202 46 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 33 202 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 33 202 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 33 202 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 33 202 43 , srcInfoPoints = [] } "complement"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 44 202 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 44 202 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 202 44 202 45 , srcInfoPoints = [] } "b"))))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 4 203 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 4 203 13 , srcInfoPoints = [] } "modifyBit") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 14 203 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 14 203 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 14 203 18 , srcInfoPoints = [] } "True")) [] , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 20 203 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 20 203 21 , srcInfoPoints = [] } "m") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 22 203 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 22 203 23 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 24 203 33 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 203 24 203 25 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 26 203 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 26 203 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 26 203 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 26 203 27 , srcInfoPoints = [] } "m"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 28 203 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 28 203 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 28 203 31 , srcInfoPoints = [] } ".|."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 32 203 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 32 203 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 203 32 203 33 , srcInfoPoints = [] } "b"))))) Nothing ] ])) ] , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 205 1 206 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 205 1 205 8 , SrcSpan "tests/examples/Directory.hs" 205 9 205 15 , SrcSpan "tests/examples/Directory.hs" 205 29 205 38 , SrcSpan "tests/examples/Directory.hs" 206 13 206 15 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 205 16 205 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 205 22 205 28 , srcInfoPoints = [] })) (Just "_wchmod") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 4 206 12 , srcInfoPoints = [] } "c_wchmod") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 16 206 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 206 25 206 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 16 206 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 16 206 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 16 206 24 , srcInfoPoints = [] } "CWString"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 28 206 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 206 34 206 36 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 28 206 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 28 206 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 28 206 33 , srcInfoPoints = [] } "CMode"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 37 206 44 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 37 206 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 37 206 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 37 206 39 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 40 206 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 40 206 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 206 40 206 44 , srcInfoPoints = [] } "CInt")))))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 1 208 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 208 17 208 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 1 208 16 , srcInfoPoints = [] } "copyPermissions" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 20 208 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 208 29 208 31 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 20 208 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 20 208 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 20 208 28 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 32 208 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 208 41 208 43 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 32 208 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 32 208 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 32 208 40 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 44 208 49 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 44 208 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 44 208 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 44 208 46 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 47 208 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 208 47 208 48 , SrcSpan "tests/examples/Directory.hs" 208 48 208 49 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 47 208 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 208 47 208 48 , SrcSpan "tests/examples/Directory.hs" 208 48 208 49 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 208 47 208 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 208 47 208 48 , SrcSpan "tests/examples/Directory.hs" 208 48 208 49 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 1 215 65 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 1 215 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 1 209 16 , srcInfoPoints = [] } "copyPermissions") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 17 209 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 17 209 23 , srcInfoPoints = [] } "source") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 24 209 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 24 209 28 , srcInfoPoints = [] } "dest") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 29 215 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 209 29 209 30 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 209 31 215 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 209 31 209 33 , SrcSpan "tests/examples/Directory.hs" 210 3 210 3 , SrcSpan "tests/examples/Directory.hs" 257 1 257 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 3 215 65 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 3 215 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 3 210 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 3 210 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 3 210 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 3 210 14 , srcInfoPoints = [] } "allocaBytes"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 15 210 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 15 210 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 15 210 26 , srcInfoPoints = [] } "sizeof_stat")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 27 210 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 27 210 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 27 210 28 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 29 215 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 210 29 210 30 , SrcSpan "tests/examples/Directory.hs" 210 38 210 40 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 31 210 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 31 210 37 , srcInfoPoints = [] } "p_stat") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 210 41 215 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 210 41 210 43 , SrcSpan "tests/examples/Directory.hs" 211 3 211 3 , SrcSpan "tests/examples/Directory.hs" 211 3 211 3 , SrcSpan "tests/examples/Directory.hs" 257 1 257 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 3 215 65 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 3 215 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 3 211 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 3 211 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 3 211 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 3 211 15 , srcInfoPoints = [] } "withFilePath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 16 211 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 16 211 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 16 211 22 , srcInfoPoints = [] } "source")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 23 211 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 23 211 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 23 211 24 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 25 215 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 211 25 211 26 , SrcSpan "tests/examples/Directory.hs" 211 35 211 37 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 26 211 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 26 211 34 , srcInfoPoints = [] } "p_source") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 211 38 215 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 211 38 211 40 , SrcSpan "tests/examples/Directory.hs" 212 3 212 3 , SrcSpan "tests/examples/Directory.hs" 212 3 212 3 , SrcSpan "tests/examples/Directory.hs" 257 1 257 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 3 215 65 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 3 215 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 3 212 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 3 212 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 3 212 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 3 212 15 , srcInfoPoints = [] } "withFilePath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 16 212 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 16 212 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 16 212 20 , srcInfoPoints = [] } "dest")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 21 212 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 21 212 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 21 212 22 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 23 215 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 212 23 212 24 , SrcSpan "tests/examples/Directory.hs" 212 31 212 33 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 24 212 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 24 212 30 , srcInfoPoints = [] } "p_dest") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 212 34 215 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 212 34 212 36 , SrcSpan "tests/examples/Directory.hs" 213 5 213 5 , SrcSpan "tests/examples/Directory.hs" 214 5 214 5 , SrcSpan "tests/examples/Directory.hs" 215 5 215 5 , SrcSpan "tests/examples/Directory.hs" 257 1 257 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 5 213 67 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 5 213 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 5 213 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 5 213 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 5 213 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 5 213 24 , srcInfoPoints = [] } "throwErrnoIfMinus1_"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 25 213 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 25 213 42 , srcInfoPoints = [] } "copyPermissions" "copyPermissions"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 43 213 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 43 213 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 43 213 44 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 45 213 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 45 213 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 45 213 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 45 213 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 45 213 51 , srcInfoPoints = [] } "c_stat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 52 213 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 52 213 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 52 213 60 , srcInfoPoints = [] } "p_source")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 61 213 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 61 213 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 213 61 213 67 , srcInfoPoints = [] } "p_stat"))))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 5 214 27 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 214 10 214 12 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 5 214 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 5 214 9 , srcInfoPoints = [] } "mode")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 13 214 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 13 214 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 13 214 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 13 214 20 , srcInfoPoints = [] } "st_mode"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 21 214 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 21 214 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 214 21 214 27 , srcInfoPoints = [] } "p_stat")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 5 215 65 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 5 215 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 5 215 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 5 215 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 5 215 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 5 215 24 , srcInfoPoints = [] } "throwErrnoIfMinus1_"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 25 215 42 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 25 215 42 , srcInfoPoints = [] } "copyPermissions" "copyPermissions"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 43 215 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 43 215 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 43 215 44 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 45 215 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 45 215 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 45 215 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 45 215 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 45 215 53 , srcInfoPoints = [] } "c_wchmod"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 54 215 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 54 215 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 54 215 60 , srcInfoPoints = [] } "p_dest")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 61 215 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 61 215 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 215 61 215 65 , srcInfoPoints = [] } "mode"))))) ]))) ]))) ]))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 1 257 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 257 17 257 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 1 257 16 , srcInfoPoints = [] } "createDirectory" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 20 257 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 257 29 257 31 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 20 257 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 20 257 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 20 257 28 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 32 257 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 32 257 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 32 257 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 32 257 34 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 35 257 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 257 35 257 36 , SrcSpan "tests/examples/Directory.hs" 257 36 257 37 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 35 257 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 257 35 257 36 , SrcSpan "tests/examples/Directory.hs" 257 36 257 37 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 257 35 257 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 257 35 257 36 , SrcSpan "tests/examples/Directory.hs" 257 36 257 37 ] }))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 258 1 259 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 258 1 259 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 258 1 258 16 , srcInfoPoints = [] } "createDirectory") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 258 17 258 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 258 17 258 21 , srcInfoPoints = [] } "path") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 258 22 259 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 258 22 258 23 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 258 24 259 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 258 24 258 26 , SrcSpan "tests/examples/Directory.hs" 259 3 259 3 , SrcSpan "tests/examples/Directory.hs" 264 1 264 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 3 259 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 3 259 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 3 259 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 3 259 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 3 259 24 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 3 259 24 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 3 259 24 , srcInfoPoints = [] } "createDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 25 259 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 25 259 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 25 259 29 , srcInfoPoints = [] } "path")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 30 259 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 30 259 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 259 30 259 37 , srcInfoPoints = [] } "Nothing")))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 264 1 266 26 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 264 26 264 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 264 1 264 25 , srcInfoPoints = [] } "createDirectoryIfMissing" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 264 29 266 26 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 265 18 265 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 264 29 264 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 264 29 264 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 264 29 264 33 , srcInfoPoints = [] } "Bool"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 265 21 266 26 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 266 18 266 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 265 21 265 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 265 21 265 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 265 21 265 29 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 266 21 266 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 266 21 266 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 266 21 266 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 266 21 266 23 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 266 24 266 26 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 266 24 266 25 , SrcSpan "tests/examples/Directory.hs" 266 25 266 26 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 266 24 266 26 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 266 24 266 25 , SrcSpan "tests/examples/Directory.hs" 266 25 266 26 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 266 24 266 26 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 266 24 266 25 , SrcSpan "tests/examples/Directory.hs" 266 25 266 26 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 267 1 300 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 270 3 270 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 267 1 300 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 270 3 270 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 267 1 267 25 , srcInfoPoints = [] } "createDirectoryIfMissing") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 267 26 267 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 267 26 267 40 , srcInfoPoints = [] } "create_parents") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 267 41 267 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 267 41 267 46 , srcInfoPoints = [] } "path0") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 3 269 57 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 3 268 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 268 3 268 4 , SrcSpan "tests/examples/Directory.hs" 268 20 268 21 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 5 268 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 5 268 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 5 268 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 5 268 19 , srcInfoPoints = [] } "create_parents"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 22 268 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 22 268 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 22 268 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 22 268 32 , srcInfoPoints = [] } "createDirs"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 33 268 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 268 33 268 34 , SrcSpan "tests/examples/Directory.hs" 268 47 268 48 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 34 268 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 34 268 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 34 268 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 34 268 41 , srcInfoPoints = [] } "parents"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 42 268 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 42 268 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 268 42 268 47 , srcInfoPoints = [] } "path0")))))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 3 269 57 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 269 3 269 4 , SrcSpan "tests/examples/Directory.hs" 269 20 269 21 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 5 269 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 5 269 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 5 269 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 5 269 14 , srcInfoPoints = [] } "otherwise"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 22 269 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 22 269 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 22 269 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 22 269 32 , srcInfoPoints = [] } "createDirs"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 33 269 57 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 269 33 269 34 , SrcSpan "tests/examples/Directory.hs" 269 56 269 57 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 34 269 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 34 269 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 34 269 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 34 269 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 34 269 38 , srcInfoPoints = [] } "take"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 39 269 40 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 39 269 40 , srcInfoPoints = [] } 1 "1"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 41 269 56 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 269 41 269 42 , SrcSpan "tests/examples/Directory.hs" 269 55 269 56 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 42 269 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 42 269 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 42 269 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 42 269 49 , srcInfoPoints = [] } "parents"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 50 269 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 50 269 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 269 50 269 55 , srcInfoPoints = [] } "path0")))))))) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 5 300 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 271 5 271 5 , SrcSpan "tests/examples/Directory.hs" 273 5 273 5 , SrcSpan "tests/examples/Directory.hs" 274 5 274 5 , SrcSpan "tests/examples/Directory.hs" 275 5 275 5 , SrcSpan "tests/examples/Directory.hs" 280 5 280 5 , SrcSpan "tests/examples/Directory.hs" 281 5 281 5 , SrcSpan "tests/examples/Directory.hs" 343 1 343 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 5 271 68 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 5 271 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 5 271 12 , srcInfoPoints = [] } "parents")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 13 271 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 271 13 271 14 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 15 271 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 15 271 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 15 271 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 15 271 22 , srcInfoPoints = [] } "reverse"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 23 271 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 23 271 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 23 271 24 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 25 271 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 25 271 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 25 271 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 25 271 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 25 271 31 , srcInfoPoints = [] } "scanl1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 32 271 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 271 32 271 33 , SrcSpan "tests/examples/Directory.hs" 271 33 271 36 , SrcSpan "tests/examples/Directory.hs" 271 36 271 37 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 32 271 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 271 32 271 33 , SrcSpan "tests/examples/Directory.hs" 271 33 271 36 , SrcSpan "tests/examples/Directory.hs" 271 36 271 37 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 33 271 36 , srcInfoPoints = [] } "")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 38 271 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 38 271 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 38 271 39 , srcInfoPoints = [] } "."))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 40 271 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 40 271 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 40 271 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 40 271 56 , srcInfoPoints = [] } "splitDirectories"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 57 271 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 57 271 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 57 271 58 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 59 271 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 59 271 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 271 59 271 68 , srcInfoPoints = [] } "normalise"))))))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 5 278 28 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 5 273 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 5 273 15 , srcInfoPoints = [] } "createDirs") [ PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 16 273 18 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 273 16 273 17 , SrcSpan "tests/examples/Directory.hs" 273 17 273 18 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 27 273 38 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 273 27 273 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 29 273 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 29 273 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 29 273 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 29 273 35 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 36 273 38 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 273 36 273 37 , SrcSpan "tests/examples/Directory.hs" 273 37 273 38 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 36 273 38 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 273 36 273 37 , SrcSpan "tests/examples/Directory.hs" 273 37 273 38 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 273 36 273 38 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 273 36 273 37 , SrcSpan "tests/examples/Directory.hs" 273 37 273 38 ] }))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 5 274 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 5 274 15 , srcInfoPoints = [] } "createDirs") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 16 274 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 274 16 274 17 , SrcSpan "tests/examples/Directory.hs" 274 23 274 24 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 17 274 23 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 17 274 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 17 274 20 , srcInfoPoints = [] } "dir")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 20 274 21 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 20 274 21 , srcInfoPoints = [] })) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 21 274 23 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 274 21 274 22 , SrcSpan "tests/examples/Directory.hs" 274 22 274 23 ] } [])) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 27 274 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 274 27 274 28 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 29 274 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 29 274 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 29 274 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 29 274 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 29 274 38 , srcInfoPoints = [] } "createDir"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 39 274 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 39 274 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 39 274 42 , srcInfoPoints = [] } "dir")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 43 274 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 43 274 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 274 43 274 48 , srcInfoPoints = [] } "throw"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 5 278 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 5 275 15 , srcInfoPoints = [] } "createDirs") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 16 275 26 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 275 16 275 17 , SrcSpan "tests/examples/Directory.hs" 275 25 275 26 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 17 275 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 17 275 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 17 275 20 , srcInfoPoints = [] } "dir")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 20 275 21 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 20 275 21 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 21 275 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 21 275 25 , srcInfoPoints = [] } "dirs"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 275 27 278 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 275 27 275 28 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 7 278 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 7 276 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 7 276 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 7 276 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 7 276 16 , srcInfoPoints = [] } "createDir"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 17 276 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 17 276 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 17 276 20 , srcInfoPoints = [] } "dir")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 21 276 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 21 276 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 21 276 22 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 23 278 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 276 23 276 24 , SrcSpan "tests/examples/Directory.hs" 276 26 276 28 ] } [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 24 276 25 , srcInfoPoints = [] } ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 276 29 278 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 276 29 276 31 , SrcSpan "tests/examples/Directory.hs" 277 9 277 9 , SrcSpan "tests/examples/Directory.hs" 278 9 278 9 , SrcSpan "tests/examples/Directory.hs" 280 5 280 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 277 9 277 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 277 9 277 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 277 9 277 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 277 9 277 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 277 9 277 19 , srcInfoPoints = [] } "createDirs"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 277 20 277 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 277 20 277 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 277 20 277 24 , srcInfoPoints = [] } "dirs")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 9 278 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 9 278 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 9 278 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 9 278 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 9 278 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 9 278 18 , srcInfoPoints = [] } "createDir"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 19 278 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 19 278 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 19 278 22 , srcInfoPoints = [] } "dir")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 23 278 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 23 278 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 278 23 278 28 , srcInfoPoints = [] } "throw")))) ])))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 5 280 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 15 280 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 5 280 14 , srcInfoPoints = [] } "createDir" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 18 280 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 27 280 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 18 280 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 18 280 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 18 280 26 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 30 280 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 53 280 55 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 30 280 52 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 30 280 31 , SrcSpan "tests/examples/Directory.hs" 280 51 280 52 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 31 280 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 43 280 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 31 280 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 31 280 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 31 280 42 , srcInfoPoints = [] } "IOException"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 46 280 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 46 280 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 46 280 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 46 280 48 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 49 280 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 49 280 50 , SrcSpan "tests/examples/Directory.hs" 280 50 280 51 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 49 280 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 49 280 50 , SrcSpan "tests/examples/Directory.hs" 280 50 280 51 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 49 280 51 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 49 280 50 , SrcSpan "tests/examples/Directory.hs" 280 50 280 51 ] })))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 56 280 61 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 56 280 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 56 280 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 56 280 58 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 59 280 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 59 280 60 , SrcSpan "tests/examples/Directory.hs" 280 60 280 61 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 59 280 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 59 280 60 , SrcSpan "tests/examples/Directory.hs" 280 60 280 61 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 280 59 280 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 280 59 280 60 , SrcSpan "tests/examples/Directory.hs" 280 60 280 61 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 5 300 46 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 5 300 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 5 281 14 , srcInfoPoints = [] } "createDir") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 15 281 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 15 281 18 , srcInfoPoints = [] } "dir") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 19 281 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 19 281 34 , srcInfoPoints = [] } "notExistHandler") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 35 300 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 281 35 281 36 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 281 37 300 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 281 37 281 39 , SrcSpan "tests/examples/Directory.hs" 282 7 282 7 , SrcSpan "tests/examples/Directory.hs" 283 7 283 7 , SrcSpan "tests/examples/Directory.hs" 343 1 343 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 7 282 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 282 9 282 11 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 7 282 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 7 282 8 , srcInfoPoints = [] } "r")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 12 282 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 12 282 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 12 282 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 12 282 15 , srcInfoPoints = [] } "try"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 16 282 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 16 282 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 16 282 17 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 18 282 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 18 282 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 18 282 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 18 282 33 , srcInfoPoints = [] } "createDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 34 282 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 34 282 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 282 34 282 37 , srcInfoPoints = [] } "dir"))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 7 300 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 283 7 283 11 , SrcSpan "tests/examples/Directory.hs" 283 41 283 43 , SrcSpan "tests/examples/Directory.hs" 284 9 284 9 , SrcSpan "tests/examples/Directory.hs" 285 9 285 9 , SrcSpan "tests/examples/Directory.hs" 343 1 343 0 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 7 300 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 283 7 283 11 , SrcSpan "tests/examples/Directory.hs" 283 41 283 43 , SrcSpan "tests/examples/Directory.hs" 284 9 284 9 , SrcSpan "tests/examples/Directory.hs" 285 9 285 9 , SrcSpan "tests/examples/Directory.hs" 343 1 343 0 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 12 283 40 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 283 12 283 13 , SrcSpan "tests/examples/Directory.hs" 283 39 283 40 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 13 283 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 283 15 283 17 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 13 283 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 13 283 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 13 283 14 , srcInfoPoints = [] } "r"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 18 283 39 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 18 283 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 18 283 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 18 283 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 18 283 24 , srcInfoPoints = [] } "Either"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 25 283 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 25 283 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 25 283 36 , srcInfoPoints = [] } "IOException")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 37 283 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 283 37 283 38 , SrcSpan "tests/examples/Directory.hs" 283 38 283 39 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 37 283 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 283 37 283 38 , SrcSpan "tests/examples/Directory.hs" 283 38 283 39 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 283 37 283 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 283 37 283 38 , SrcSpan "tests/examples/Directory.hs" 283 38 283 39 ] })))))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 9 284 48 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 9 284 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 9 284 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 9 284 14 , srcInfoPoints = [] } "Right")) [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 15 284 17 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 284 15 284 16 , SrcSpan "tests/examples/Directory.hs" 284 16 284 17 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 15 284 17 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 284 15 284 16 , SrcSpan "tests/examples/Directory.hs" 284 16 284 17 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 15 284 17 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 284 15 284 16 , SrcSpan "tests/examples/Directory.hs" 284 16 284 17 ] })) [] ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 36 284 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 284 36 284 38 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 39 284 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 39 284 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 39 284 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 39 284 45 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 46 284 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 284 46 284 47 , SrcSpan "tests/examples/Directory.hs" 284 47 284 48 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 46 284 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 284 46 284 47 , SrcSpan "tests/examples/Directory.hs" 284 47 284 48 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 284 46 284 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 284 46 284 47 , SrcSpan "tests/examples/Directory.hs" 284 47 284 48 ] }))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 285 9 300 46 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 285 9 285 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 285 9 285 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 285 9 285 13 , srcInfoPoints = [] } "Left")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 285 15 285 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 285 15 285 16 , srcInfoPoints = [] } "e") ]) (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 11 300 46 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 11 286 56 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 286 11 286 12 , SrcSpan "tests/examples/Directory.hs" 286 36 286 38 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 13 286 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 13 286 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 13 286 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 13 286 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 13 286 32 , srcInfoPoints = [] } "isDoesNotExistError"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 34 286 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 34 286 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 34 286 35 , srcInfoPoints = [] } "e")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 39 286 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 39 286 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 39 286 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 39 286 54 , srcInfoPoints = [] } "notExistHandler"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 55 286 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 55 286 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 286 55 286 56 , srcInfoPoints = [] } "e")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 11 299 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 294 11 294 12 , SrcSpan "tests/examples/Directory.hs" 294 36 294 38 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 13 294 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 13 294 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 13 294 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 13 294 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 13 294 33 , srcInfoPoints = [] } "isAlreadyExistsError"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 34 294 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 34 294 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 34 294 35 , srcInfoPoints = [] } "e")))) ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 39 299 68 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 39 299 16 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 294 39 294 40 , SrcSpan "tests/examples/Directory.hs" 299 15 299 16 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 294 40 298 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 294 40 294 42 , SrcSpan "tests/examples/Directory.hs" 295 15 295 15 , SrcSpan "tests/examples/Directory.hs" 299 15 299 15 , SrcSpan "tests/examples/Directory.hs" 299 15 299 15 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 15 298 39 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 15 298 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 15 295 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 15 295 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 15 295 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 15 295 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 15 295 29 , srcInfoPoints = [] } "withFileStatus"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 30 295 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 30 295 56 , srcInfoPoints = [] } "createDirectoryIfMissing" "createDirectoryIfMissing"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 57 295 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 57 295 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 57 295 60 , srcInfoPoints = [] } "dir")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 61 295 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 61 295 62 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 61 295 62 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 63 298 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 295 63 295 64 , SrcSpan "tests/examples/Directory.hs" 295 67 295 69 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 64 295 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 64 295 66 , srcInfoPoints = [] } "st") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 295 70 298 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 295 70 295 72 , SrcSpan "tests/examples/Directory.hs" 296 18 296 18 , SrcSpan "tests/examples/Directory.hs" 297 18 297 18 , SrcSpan "tests/examples/Directory.hs" 299 15 299 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 18 296 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 296 24 296 26 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 18 296 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 18 296 23 , srcInfoPoints = [] } "isDir")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 27 296 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 27 296 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 27 296 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 27 296 38 , srcInfoPoints = [] } "isDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 39 296 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 39 296 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 296 39 296 41 , srcInfoPoints = [] } "st")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 18 298 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 297 18 297 20 , SrcSpan "tests/examples/Directory.hs" 297 27 297 31 , SrcSpan "tests/examples/Directory.hs" 298 27 298 31 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 18 298 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 297 18 297 20 , SrcSpan "tests/examples/Directory.hs" 297 27 297 31 , SrcSpan "tests/examples/Directory.hs" 298 27 298 31 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 21 297 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 21 297 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 21 297 26 , srcInfoPoints = [] } "isDir"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 32 297 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 32 297 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 32 297 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 32 297 38 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 39 297 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 297 39 297 40 , SrcSpan "tests/examples/Directory.hs" 297 40 297 41 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 39 297 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 297 39 297 40 , SrcSpan "tests/examples/Directory.hs" 297 40 297 41 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 297 39 297 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 297 39 297 40 , SrcSpan "tests/examples/Directory.hs" 297 40 297 41 ] })))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 298 32 298 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 298 32 298 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 298 32 298 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 298 32 298 37 , srcInfoPoints = [] } "throw"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 298 38 298 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 298 38 298 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 298 38 298 39 , srcInfoPoints = [] } "e"))))) ]))) ])) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 17 299 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 17 299 18 , SrcSpan "tests/examples/Directory.hs" 299 18 299 23 , SrcSpan "tests/examples/Directory.hs" 299 23 299 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 17 299 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 17 299 18 , SrcSpan "tests/examples/Directory.hs" 299 18 299 23 , SrcSpan "tests/examples/Directory.hs" 299 23 299 24 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 18 299 23 , srcInfoPoints = [] } "catch"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 25 299 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 25 299 26 , SrcSpan "tests/examples/Directory.hs" 299 67 299 68 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 26 299 67 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 44 299 46 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 26 299 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 26 299 27 , SrcSpan "tests/examples/Directory.hs" 299 42 299 43 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 27 299 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 27 299 28 , SrcSpan "tests/examples/Directory.hs" 299 30 299 32 ] } [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 28 299 29 , srcInfoPoints = [] } ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 33 299 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 33 299 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 33 299 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 33 299 39 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 40 299 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 40 299 41 , SrcSpan "tests/examples/Directory.hs" 299 41 299 42 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 40 299 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 40 299 41 , SrcSpan "tests/examples/Directory.hs" 299 41 299 42 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 40 299 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 40 299 41 , SrcSpan "tests/examples/Directory.hs" 299 41 299 42 ] })))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 47 299 67 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 59 299 61 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 47 299 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 47 299 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 47 299 58 , srcInfoPoints = [] } "IOException"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 62 299 67 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 62 299 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 62 299 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 62 299 64 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 65 299 67 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 65 299 66 , SrcSpan "tests/examples/Directory.hs" 299 66 299 67 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 65 299 67 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 65 299 66 , SrcSpan "tests/examples/Directory.hs" 299 66 299 67 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 299 65 299 67 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 299 65 299 66 , SrcSpan "tests/examples/Directory.hs" 299 66 299 67 ] })))))))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 11 300 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 300 11 300 12 , SrcSpan "tests/examples/Directory.hs" 300 36 300 38 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 13 300 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 13 300 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 13 300 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 13 300 22 , srcInfoPoints = [] } "otherwise"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 39 300 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 39 300 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 39 300 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 39 300 44 , srcInfoPoints = [] } "throw"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 45 300 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 45 300 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 300 45 300 46 , srcInfoPoints = [] } "e")))) ]) Nothing ]) ])) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 1 343 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 343 17 343 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 1 343 16 , srcInfoPoints = [] } "removeDirectory" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 20 343 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 343 29 343 31 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 20 343 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 20 343 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 20 343 28 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 32 343 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 32 343 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 32 343 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 32 343 34 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 35 343 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 343 35 343 36 , SrcSpan "tests/examples/Directory.hs" 343 36 343 37 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 35 343 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 343 35 343 36 , SrcSpan "tests/examples/Directory.hs" 343 36 343 37 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 343 35 343 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 343 35 343 36 , SrcSpan "tests/examples/Directory.hs" 343 36 343 37 ] }))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 344 1 345 29 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 344 1 345 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 344 1 344 16 , srcInfoPoints = [] } "removeDirectory") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 344 17 344 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 344 17 344 21 , srcInfoPoints = [] } "path") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 344 22 345 29 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 344 22 344 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 345 3 345 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 345 3 345 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 345 3 345 24 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 345 3 345 24 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 345 3 345 24 , srcInfoPoints = [] } "removeDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 345 25 345 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 345 25 345 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 345 25 345 29 , srcInfoPoints = [] } "path"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 1 350 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 350 26 350 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 1 350 25 , srcInfoPoints = [] } "removeDirectoryRecursive" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 29 350 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 350 38 350 40 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 29 350 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 29 350 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 29 350 37 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 41 350 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 41 350 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 41 350 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 41 350 43 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 44 350 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 350 44 350 45 , SrcSpan "tests/examples/Directory.hs" 350 45 350 46 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 44 350 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 350 44 350 45 , SrcSpan "tests/examples/Directory.hs" 350 45 350 46 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 350 44 350 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 350 44 350 45 , SrcSpan "tests/examples/Directory.hs" 350 45 350 46 ] }))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 351 1 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 355 3 355 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 351 1 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 355 3 355 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 351 1 351 25 , srcInfoPoints = [] } "removeDirectoryRecursive") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 351 26 351 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 351 26 351 34 , srcInfoPoints = [] } "startLoc") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 351 35 354 27 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 351 35 351 36 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 351 37 354 27 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 351 37 351 39 , SrcSpan "tests/examples/Directory.hs" 352 3 352 3 , SrcSpan "tests/examples/Directory.hs" 353 3 353 3 , SrcSpan "tests/examples/Directory.hs" 354 3 354 3 , SrcSpan "tests/examples/Directory.hs" 355 3 355 3 , SrcSpan "tests/examples/Directory.hs" 355 3 355 3 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 3 352 40 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 352 8 352 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 3 352 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 3 352 7 , srcInfoPoints = [] } "cont")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 11 352 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 11 352 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 11 352 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 11 352 31 , srcInfoPoints = [] } "getDirectoryContents"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 32 352 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 32 352 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 352 32 352 40 , srcInfoPoints = [] } "startLoc")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 3 353 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 3 353 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 3 353 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 3 353 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 3 353 12 , srcInfoPoints = [] } "sequence_"))) (ListComp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 13 353 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 353 13 353 14 , SrcSpan "tests/examples/Directory.hs" 353 34 353 35 , SrcSpan "tests/examples/Directory.hs" 353 45 353 46 , SrcSpan "tests/examples/Directory.hs" 353 68 353 69 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 14 353 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 14 353 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 14 353 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 14 353 16 , srcInfoPoints = [] } "rm"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 17 353 33 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 353 17 353 18 , SrcSpan "tests/examples/Directory.hs" 353 32 353 33 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 18 353 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 18 353 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 18 353 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 18 353 26 , srcInfoPoints = [] } "startLoc"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 27 353 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 27 353 30 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 27 353 30 , srcInfoPoints = [] } ""))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 31 353 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 31 353 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 31 353 32 , srcInfoPoints = [] } "x")))))) [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 36 353 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 353 38 353 40 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 36 353 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 353 38 353 40 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 36 353 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 36 353 37 , srcInfoPoints = [] } "x")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 41 353 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 41 353 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 41 353 45 , srcInfoPoints = [] } "cont")))) , QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 47 353 68 , srcInfoPoints = [] } (Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 47 353 68 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 47 353 68 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 47 353 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 47 353 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 47 353 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 47 353 48 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 49 353 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 49 353 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 49 353 51 , srcInfoPoints = [] } "/="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 52 353 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 52 353 55 , srcInfoPoints = [] } "." "."))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 56 353 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 56 353 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 56 353 58 , srcInfoPoints = [] } "&&"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 59 353 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 59 353 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 59 353 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 59 353 60 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 61 353 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 61 353 63 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 61 353 63 , srcInfoPoints = [] } "/="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 64 353 68 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 353 64 353 68 , srcInfoPoints = [] } ".." ".."))))) ])) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 354 3 354 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 354 3 354 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 354 3 354 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 354 3 354 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 354 3 354 18 , srcInfoPoints = [] } "removeDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 354 19 354 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 354 19 354 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 354 19 354 27 , srcInfoPoints = [] } "startLoc")))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 5 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 356 5 356 5 , SrcSpan "tests/examples/Directory.hs" 357 5 357 5 , SrcSpan "tests/examples/Directory.hs" 399 1 399 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 5 356 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 356 8 356 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 5 356 7 , srcInfoPoints = [] } "rm" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 11 356 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 356 20 356 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 11 356 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 11 356 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 11 356 19 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 23 356 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 23 356 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 23 356 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 23 356 25 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 26 356 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 356 26 356 27 , SrcSpan "tests/examples/Directory.hs" 356 27 356 28 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 26 356 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 356 26 356 27 , SrcSpan "tests/examples/Directory.hs" 356 27 356 28 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 356 26 356 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 356 26 356 27 , SrcSpan "tests/examples/Directory.hs" 356 27 356 28 ] }))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 5 363 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 5 363 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 5 357 7 , srcInfoPoints = [] } "rm") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 8 357 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 8 357 9 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 10 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 357 10 357 11 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 12 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 357 12 357 14 , SrcSpan "tests/examples/Directory.hs" 357 15 357 15 , SrcSpan "tests/examples/Directory.hs" 358 15 358 15 , SrcSpan "tests/examples/Directory.hs" 399 1 399 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 15 357 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 357 20 357 22 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 15 357 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 15 357 19 , srcInfoPoints = [] } "temp")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 23 357 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 23 357 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 23 357 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 23 357 26 , srcInfoPoints = [] } "try"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 27 357 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 357 27 357 28 , SrcSpan "tests/examples/Directory.hs" 357 40 357 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 28 357 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 28 357 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 28 357 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 28 357 38 , srcInfoPoints = [] } "removeFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 39 357 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 39 357 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 357 39 357 40 , srcInfoPoints = [] } "f")))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 358 15 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 358 15 358 19 , SrcSpan "tests/examples/Directory.hs" 358 25 358 27 , SrcSpan "tests/examples/Directory.hs" 359 17 359 17 , SrcSpan "tests/examples/Directory.hs" 363 17 363 17 , SrcSpan "tests/examples/Directory.hs" 399 1 399 0 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 358 15 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 358 15 358 19 , SrcSpan "tests/examples/Directory.hs" 358 25 358 27 , SrcSpan "tests/examples/Directory.hs" 359 17 359 17 , SrcSpan "tests/examples/Directory.hs" 363 17 363 17 , SrcSpan "tests/examples/Directory.hs" 399 1 399 0 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 358 20 358 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 358 20 358 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 358 20 358 24 , srcInfoPoints = [] } "temp"))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 17 362 57 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 17 359 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 17 359 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 17 359 21 , srcInfoPoints = [] } "Left")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 22 359 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 22 359 23 , srcInfoPoints = [] } "e") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 25 362 57 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 359 25 359 27 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 28 362 57 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 359 28 359 30 , SrcSpan "tests/examples/Directory.hs" 359 31 359 31 , SrcSpan "tests/examples/Directory.hs" 361 31 361 31 , SrcSpan "tests/examples/Directory.hs" 362 31 362 31 , SrcSpan "tests/examples/Directory.hs" 363 17 363 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 31 359 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 359 37 359 39 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 31 359 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 31 359 36 , srcInfoPoints = [] } "isDir")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 40 359 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 40 359 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 40 359 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 40 359 58 , srcInfoPoints = [] } "doesDirectoryExist"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 59 359 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 59 359 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 359 59 359 60 , srcInfoPoints = [] } "f")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 31 361 72 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 31 361 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 31 361 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 31 361 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 31 361 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 31 361 37 , srcInfoPoints = [] } "unless"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 38 361 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 38 361 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 38 361 43 , srcInfoPoints = [] } "isDir")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 44 361 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 44 361 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 44 361 45 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 46 361 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 46 361 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 46 361 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 46 361 51 , srcInfoPoints = [] } "throw"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 52 361 72 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 361 52 361 53 , SrcSpan "tests/examples/Directory.hs" 361 71 361 72 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 53 361 71 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 361 55 361 57 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 53 361 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 53 361 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 53 361 54 , srcInfoPoints = [] } "e"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 58 361 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 58 361 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 361 58 361 71 , srcInfoPoints = [] } "SomeException"))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 362 31 362 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 362 31 362 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 362 31 362 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 362 31 362 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 362 31 362 55 , srcInfoPoints = [] } "removeDirectoryRecursive"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 362 56 362 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 362 56 362 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 362 56 362 57 , srcInfoPoints = [] } "f")))) ])) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 17 363 37 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 17 363 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 17 363 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 17 363 22 , srcInfoPoints = [] } "Right")) [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 23 363 24 , srcInfoPoints = [] } ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 25 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 363 25 363 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 28 363 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 28 363 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 28 363 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 28 363 34 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 35 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 363 35 363 36 , SrcSpan "tests/examples/Directory.hs" 363 36 363 37 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 35 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 363 35 363 36 , SrcSpan "tests/examples/Directory.hs" 363 36 363 37 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 363 35 363 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 363 35 363 36 , SrcSpan "tests/examples/Directory.hs" 363 36 363 37 ] }))))) Nothing ]) ])) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 1 399 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 399 12 399 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 1 399 11 , srcInfoPoints = [] } "removeFile" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 15 399 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 399 24 399 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 15 399 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 15 399 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 15 399 23 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 27 399 32 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 27 399 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 27 399 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 27 399 29 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 30 399 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 399 30 399 31 , SrcSpan "tests/examples/Directory.hs" 399 31 399 32 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 30 399 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 399 30 399 31 , SrcSpan "tests/examples/Directory.hs" 399 31 399 32 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 399 30 399 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 399 30 399 31 , SrcSpan "tests/examples/Directory.hs" 399 31 399 32 ] }))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 400 1 401 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 400 1 401 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 400 1 400 11 , srcInfoPoints = [] } "removeFile") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 400 12 400 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 400 12 400 16 , srcInfoPoints = [] } "path") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 400 17 401 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 400 17 400 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 401 3 401 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 401 3 401 19 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 401 3 401 19 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 401 3 401 19 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 401 3 401 19 , srcInfoPoints = [] } "deleteFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 401 20 401 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 401 20 401 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 401 20 401 24 , srcInfoPoints = [] } "path"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 1 452 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 452 17 452 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 1 452 16 , srcInfoPoints = [] } "renameDirectory" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 20 452 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 452 29 452 31 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 20 452 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 20 452 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 20 452 28 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 32 452 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 452 41 452 43 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 32 452 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 32 452 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 32 452 40 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 44 452 49 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 44 452 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 44 452 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 44 452 46 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 47 452 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 452 47 452 48 , SrcSpan "tests/examples/Directory.hs" 452 48 452 49 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 47 452 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 452 47 452 48 , SrcSpan "tests/examples/Directory.hs" 452 48 452 49 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 452 47 452 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 452 47 452 48 , SrcSpan "tests/examples/Directory.hs" 452 48 452 49 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 1 463 64 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 1 463 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 1 453 16 , srcInfoPoints = [] } "renameDirectory") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 17 453 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 17 453 22 , srcInfoPoints = [] } "opath") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 23 453 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 23 453 28 , srcInfoPoints = [] } "npath") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 29 463 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 453 29 453 30 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 453 31 463 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 453 31 453 33 , SrcSpan "tests/examples/Directory.hs" 456 4 456 4 , SrcSpan "tests/examples/Directory.hs" 509 1 509 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 4 463 64 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 4 463 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 4 456 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 4 456 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 4 456 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 4 456 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 4 456 18 , srcInfoPoints = [] } "withFileStatus"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 19 456 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 19 456 36 , srcInfoPoints = [] } "renameDirectory" "renameDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 37 456 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 37 456 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 37 456 42 , srcInfoPoints = [] } "opath")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 43 456 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 43 456 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 43 456 44 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 45 463 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 456 45 456 46 , SrcSpan "tests/examples/Directory.hs" 456 49 456 51 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 46 456 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 46 456 48 , srcInfoPoints = [] } "st") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 456 52 463 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 456 52 456 54 , SrcSpan "tests/examples/Directory.hs" 457 4 457 4 , SrcSpan "tests/examples/Directory.hs" 457 4 457 4 , SrcSpan "tests/examples/Directory.hs" 458 4 458 4 , SrcSpan "tests/examples/Directory.hs" 509 1 509 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 4 457 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 457 11 457 13 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 4 457 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 4 457 10 , srcInfoPoints = [] } "is_dir")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 14 457 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 14 457 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 14 457 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 14 457 25 , srcInfoPoints = [] } "isDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 26 457 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 26 457 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 457 26 457 28 , srcInfoPoints = [] } "st")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 4 463 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 458 4 458 6 , SrcSpan "tests/examples/Directory.hs" 459 5 459 9 , SrcSpan "tests/examples/Directory.hs" 462 5 462 9 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 4 463 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 458 4 458 6 , SrcSpan "tests/examples/Directory.hs" 459 5 459 9 , SrcSpan "tests/examples/Directory.hs" 462 5 462 9 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 7 458 19 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 458 7 458 8 , SrcSpan "tests/examples/Directory.hs" 458 18 458 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 8 458 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 8 458 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 8 458 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 8 458 11 , srcInfoPoints = [] } "not"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 12 458 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 12 458 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 458 12 458 18 , srcInfoPoints = [] } "is_dir"))))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 10 461 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 10 459 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 10 459 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 10 459 21 , srcInfoPoints = [] } "ioException"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 22 461 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 459 22 459 23 , SrcSpan "tests/examples/Directory.hs" 461 44 461 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 23 461 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 23 460 95 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 23 459 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 23 459 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 459 23 459 40 , srcInfoPoints = [] } "ioeSetErrorString"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 27 460 95 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 460 27 460 28 , SrcSpan "tests/examples/Directory.hs" 460 94 460 95 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 28 460 94 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 28 460 81 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 28 460 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 28 460 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 28 460 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 28 460 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 28 460 37 , srcInfoPoints = [] } "mkIOError"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 38 460 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 38 460 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 38 460 55 , srcInfoPoints = [] } "InappropriateType")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 56 460 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 56 460 73 , srcInfoPoints = [] } "renameDirectory" "renameDirectory"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 74 460 81 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 74 460 81 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 74 460 81 , srcInfoPoints = [] } "Nothing")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 82 460 94 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 460 82 460 83 , SrcSpan "tests/examples/Directory.hs" 460 93 460 94 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 83 460 93 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 83 460 87 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 83 460 87 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 83 460 87 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 88 460 93 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 88 460 93 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 460 88 460 93 , srcInfoPoints = [] } "opath")))))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 461 27 461 44 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 461 27 461 44 , srcInfoPoints = [] } "not a directory" "not a directory"))))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 462 10 463 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 462 10 462 12 , SrcSpan "tests/examples/Directory.hs" 463 4 463 4 , SrcSpan "tests/examples/Directory.hs" 463 4 463 4 , SrcSpan "tests/examples/Directory.hs" 509 1 509 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 4 463 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 4 463 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 4 463 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 4 463 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 4 463 20 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 4 463 20 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 4 463 20 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 4 463 20 , srcInfoPoints = [] } "moveFileEx"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 21 463 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 21 463 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 21 463 26 , srcInfoPoints = [] } "opath")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 27 463 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 27 463 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 27 463 32 , srcInfoPoints = [] } "npath")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 33 463 64 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 33 463 64 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 33 463 64 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 463 33 463 64 , srcInfoPoints = [] } "mOVEFILE_REPLACE_EXISTING")))) ])) ]))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 1 509 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 509 12 509 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 1 509 11 , srcInfoPoints = [] } "renameFile" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 15 509 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 509 24 509 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 15 509 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 15 509 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 15 509 23 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 27 509 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 509 36 509 38 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 27 509 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 27 509 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 27 509 35 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 39 509 44 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 39 509 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 39 509 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 39 509 41 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 42 509 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 509 42 509 43 , SrcSpan "tests/examples/Directory.hs" 509 43 509 44 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 42 509 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 509 42 509 43 , SrcSpan "tests/examples/Directory.hs" 509 43 509 44 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 509 42 509 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 509 42 509 43 , SrcSpan "tests/examples/Directory.hs" 509 43 509 44 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 1 520 64 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 1 520 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 1 510 11 , srcInfoPoints = [] } "renameFile") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 12 510 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 12 510 17 , srcInfoPoints = [] } "opath") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 18 510 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 18 510 23 , srcInfoPoints = [] } "npath") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 24 520 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 510 24 510 25 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 510 26 520 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 510 26 510 28 , SrcSpan "tests/examples/Directory.hs" 513 4 513 4 , SrcSpan "tests/examples/Directory.hs" 528 1 528 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 4 520 64 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 4 520 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 4 513 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 4 513 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 4 513 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 4 513 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 4 513 27 , srcInfoPoints = [] } "withFileOrSymlinkStatus"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 28 513 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 28 513 40 , srcInfoPoints = [] } "renameFile" "renameFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 41 513 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 41 513 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 41 513 46 , srcInfoPoints = [] } "opath")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 47 513 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 47 513 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 47 513 48 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 49 520 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 513 49 513 50 , SrcSpan "tests/examples/Directory.hs" 513 53 513 55 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 50 513 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 50 513 52 , srcInfoPoints = [] } "st") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 513 56 520 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 513 56 513 58 , SrcSpan "tests/examples/Directory.hs" 514 4 514 4 , SrcSpan "tests/examples/Directory.hs" 514 4 514 4 , SrcSpan "tests/examples/Directory.hs" 515 4 515 4 , SrcSpan "tests/examples/Directory.hs" 528 1 528 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 4 514 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 514 11 514 13 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 4 514 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 4 514 10 , srcInfoPoints = [] } "is_dir")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 14 514 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 14 514 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 14 514 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 14 514 25 , srcInfoPoints = [] } "isDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 26 514 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 26 514 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 514 26 514 28 , srcInfoPoints = [] } "st")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 515 4 520 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 515 4 515 6 , SrcSpan "tests/examples/Directory.hs" 516 5 516 9 , SrcSpan "tests/examples/Directory.hs" 519 5 519 9 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 515 4 520 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 515 4 515 6 , SrcSpan "tests/examples/Directory.hs" 516 5 516 9 , SrcSpan "tests/examples/Directory.hs" 519 5 519 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 515 7 515 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 515 7 515 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 515 7 515 13 , srcInfoPoints = [] } "is_dir"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 10 518 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 10 516 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 10 516 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 10 516 21 , srcInfoPoints = [] } "ioException"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 22 518 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 516 22 516 23 , SrcSpan "tests/examples/Directory.hs" 518 31 518 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 23 518 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 23 517 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 23 516 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 23 516 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 516 23 516 40 , srcInfoPoints = [] } "ioeSetErrorString"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 15 517 78 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 517 15 517 16 , SrcSpan "tests/examples/Directory.hs" 517 77 517 78 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 16 517 77 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 16 517 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 16 517 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 16 517 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 16 517 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 16 517 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 16 517 25 , srcInfoPoints = [] } "mkIOError"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 26 517 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 26 517 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 26 517 43 , srcInfoPoints = [] } "InappropriateType")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 44 517 56 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 44 517 56 , srcInfoPoints = [] } "renameFile" "renameFile"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 57 517 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 57 517 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 57 517 64 , srcInfoPoints = [] } "Nothing")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 65 517 77 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 517 65 517 66 , SrcSpan "tests/examples/Directory.hs" 517 76 517 77 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 66 517 76 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 66 517 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 66 517 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 66 517 70 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 71 517 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 71 517 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 517 71 517 76 , srcInfoPoints = [] } "opath")))))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 518 15 518 31 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 518 15 518 31 , srcInfoPoints = [] } "is a directory" "is a directory"))))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 519 10 520 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 519 10 519 12 , SrcSpan "tests/examples/Directory.hs" 520 4 520 4 , SrcSpan "tests/examples/Directory.hs" 520 4 520 4 , SrcSpan "tests/examples/Directory.hs" 528 1 528 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 4 520 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 4 520 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 4 520 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 4 520 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 4 520 20 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 4 520 20 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 4 520 20 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 4 520 20 , srcInfoPoints = [] } "moveFileEx"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 21 520 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 21 520 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 21 520 26 , srcInfoPoints = [] } "opath")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 27 520 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 27 520 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 27 520 32 , srcInfoPoints = [] } "npath")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 33 520 64 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 33 520 64 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 33 520 64 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 520 33 520 64 , srcInfoPoints = [] } "mOVEFILE_REPLACE_EXISTING")))) ])) ]))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 1 528 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 528 10 528 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 1 528 9 , srcInfoPoints = [] } "copyFile" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 13 528 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 528 22 528 24 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 13 528 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 13 528 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 13 528 21 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 25 528 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 528 34 528 36 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 25 528 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 25 528 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 25 528 33 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 37 528 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 37 528 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 37 528 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 37 528 39 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 40 528 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 528 40 528 41 , SrcSpan "tests/examples/Directory.hs" 528 41 528 42 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 40 528 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 528 40 528 41 , SrcSpan "tests/examples/Directory.hs" 528 41 528 42 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 528 40 528 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 528 40 528 41 , SrcSpan "tests/examples/Directory.hs" 528 41 528 42 ] })))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 529 1 551 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 531 5 531 10 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 529 1 551 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 531 5 531 10 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 529 1 529 9 , srcInfoPoints = [] } "copyFile") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 529 10 529 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 529 10 529 19 , srcInfoPoints = [] } "fromFPath") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 529 20 529 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 529 20 529 27 , srcInfoPoints = [] } "toFPath") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 529 28 530 73 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 529 28 529 29 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 5 530 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 5 530 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 5 530 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 5 530 9 , srcInfoPoints = [] } "copy"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 10 530 25 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 530 10 530 11 , SrcSpan "tests/examples/Directory.hs" 530 11 530 24 , SrcSpan "tests/examples/Directory.hs" 530 24 530 25 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 10 530 25 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 530 10 530 11 , SrcSpan "tests/examples/Directory.hs" 530 11 530 24 , SrcSpan "tests/examples/Directory.hs" 530 24 530 25 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 11 530 24 , srcInfoPoints = [] } "Prelude") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 11 530 24 , srcInfoPoints = [] } "catch"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 26 530 73 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 530 26 530 27 , SrcSpan "tests/examples/Directory.hs" 530 72 530 73 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 27 530 72 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 530 27 530 28 , SrcSpan "tests/examples/Directory.hs" 530 32 530 34 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 28 530 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 28 530 31 , srcInfoPoints = [] } "exc") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 35 530 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 35 530 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 35 530 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 35 530 40 , srcInfoPoints = [] } "throw"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 41 530 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 41 530 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 41 530 42 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 43 530 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 43 530 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 43 530 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 43 530 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 43 530 57 , srcInfoPoints = [] } "ioeSetLocation"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 58 530 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 58 530 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 58 530 61 , srcInfoPoints = [] } "exc")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 62 530 72 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 530 62 530 72 , srcInfoPoints = [] } "copyFile" "copyFile")))))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 11 551 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 531 11 531 11 , SrcSpan "tests/examples/Directory.hs" 537 11 537 11 , SrcSpan "tests/examples/Directory.hs" 538 11 538 11 , SrcSpan "tests/examples/Directory.hs" 541 11 541 11 , SrcSpan "tests/examples/Directory.hs" 543 11 543 11 , SrcSpan "tests/examples/Directory.hs" 549 11 549 11 , SrcSpan "tests/examples/Directory.hs" 550 11 550 11 , SrcSpan "tests/examples/Directory.hs" 551 11 551 11 , SrcSpan "tests/examples/Directory.hs" 560 1 560 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 11 536 48 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 11 531 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 11 531 15 , srcInfoPoints = [] } "copy")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 16 536 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 531 16 531 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 18 536 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 18 531 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 18 531 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 18 531 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 18 531 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 18 531 25 , srcInfoPoints = [] } "bracket"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 26 531 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 531 26 531 27 , SrcSpan "tests/examples/Directory.hs" 531 60 531 61 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 27 531 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 27 531 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 27 531 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 27 531 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 27 531 41 , srcInfoPoints = [] } "openBinaryFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 42 531 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 42 531 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 42 531 51 , srcInfoPoints = [] } "fromFPath")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 52 531 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 52 531 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 52 531 60 , srcInfoPoints = [] } "ReadMode")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 62 531 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 62 531 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 62 531 68 , srcInfoPoints = [] } "hClose")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 69 531 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 69 531 70 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 69 531 70 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 71 536 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 531 71 531 72 , SrcSpan "tests/examples/Directory.hs" 531 78 531 80 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 72 531 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 531 72 531 77 , srcInfoPoints = [] } "hFrom") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 18 536 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 18 532 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 18 532 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 18 532 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 18 532 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 18 532 32 , srcInfoPoints = [] } "bracketOnError"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 33 532 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 33 532 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 33 532 40 , srcInfoPoints = [] } "openTmp")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 41 532 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 41 532 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 41 532 49 , srcInfoPoints = [] } "cleanTmp")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 50 532 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 50 532 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 50 532 51 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 52 536 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 532 52 532 53 , SrcSpan "tests/examples/Directory.hs" 532 70 532 72 ] } [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 53 532 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 532 53 532 54 , SrcSpan "tests/examples/Directory.hs" 532 62 532 63 , SrcSpan "tests/examples/Directory.hs" 532 68 532 69 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 54 532 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 54 532 62 , srcInfoPoints = [] } "tmpFPath") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 64 532 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 532 64 532 68 , srcInfoPoints = [] } "hTmp") ] ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 18 536 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 533 18 533 20 , SrcSpan "tests/examples/Directory.hs" 533 21 533 21 , SrcSpan "tests/examples/Directory.hs" 534 21 534 21 , SrcSpan "tests/examples/Directory.hs" 535 21 535 21 , SrcSpan "tests/examples/Directory.hs" 536 21 536 21 , SrcSpan "tests/examples/Directory.hs" 537 11 537 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 21 533 69 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 21 533 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 21 533 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 21 533 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 21 533 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 21 533 32 , srcInfoPoints = [] } "allocaBytes"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 33 533 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 33 533 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 33 533 43 , srcInfoPoints = [] } "bufferSize")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 44 533 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 44 533 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 44 533 45 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 46 533 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 46 533 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 46 533 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 46 533 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 46 533 58 , srcInfoPoints = [] } "copyContents"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 59 533 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 59 533 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 59 533 64 , srcInfoPoints = [] } "hFrom")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 65 533 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 65 533 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 533 65 533 69 , srcInfoPoints = [] } "hTmp"))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 534 21 534 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 534 21 534 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 534 21 534 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 534 21 534 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 534 21 534 27 , srcInfoPoints = [] } "hClose"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 534 28 534 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 534 28 534 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 534 28 534 32 , srcInfoPoints = [] } "hTmp")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 21 535 76 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 21 535 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 21 535 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 21 535 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 21 535 39 , srcInfoPoints = [] } "ignoreIOExceptions"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 40 535 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 40 535 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 40 535 41 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 42 535 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 42 535 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 42 535 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 42 535 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 42 535 57 , srcInfoPoints = [] } "copyPermissions"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 58 535 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 58 535 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 58 535 67 , srcInfoPoints = [] } "fromFPath")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 68 535 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 68 535 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 535 68 535 76 , srcInfoPoints = [] } "tmpFPath"))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 21 536 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 21 536 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 21 536 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 21 536 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 21 536 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 21 536 31 , srcInfoPoints = [] } "renameFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 32 536 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 32 536 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 32 536 40 , srcInfoPoints = [] } "tmpFPath")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 41 536 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 41 536 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 536 41 536 48 , srcInfoPoints = [] } "toFPath")))) ])))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 11 537 79 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 11 537 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 11 537 18 , srcInfoPoints = [] } "openTmp")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 19 537 79 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 537 19 537 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 21 537 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 21 537 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 21 537 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 21 537 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 21 537 39 , srcInfoPoints = [] } "openBinaryTempFile"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 40 537 63 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 537 40 537 41 , SrcSpan "tests/examples/Directory.hs" 537 62 537 63 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 41 537 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 41 537 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 41 537 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 41 537 54 , srcInfoPoints = [] } "takeDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 55 537 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 55 537 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 55 537 62 , srcInfoPoints = [] } "toFPath")))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 64 537 79 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 537 64 537 79 , srcInfoPoints = [] } ".copyFile.tmp" ".copyFile.tmp")))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 538 11 540 60 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 538 11 540 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 538 11 538 19 , srcInfoPoints = [] } "cleanTmp") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 538 20 538 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 538 20 538 21 , SrcSpan "tests/examples/Directory.hs" 538 29 538 30 , SrcSpan "tests/examples/Directory.hs" 538 35 538 36 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 538 21 538 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 538 21 538 29 , srcInfoPoints = [] } "tmpFPath") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 538 31 538 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 538 31 538 35 , srcInfoPoints = [] } "hTmp") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 15 540 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 539 15 539 16 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 17 540 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 539 17 539 19 , SrcSpan "tests/examples/Directory.hs" 539 20 539 20 , SrcSpan "tests/examples/Directory.hs" 540 20 540 20 , SrcSpan "tests/examples/Directory.hs" 541 11 541 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 20 539 52 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 20 539 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 20 539 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 20 539 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 20 539 38 , srcInfoPoints = [] } "ignoreIOExceptions"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 39 539 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 39 539 40 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 39 539 40 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 41 539 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 41 539 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 41 539 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 41 539 47 , srcInfoPoints = [] } "hClose"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 48 539 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 48 539 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 539 48 539 52 , srcInfoPoints = [] } "hTmp"))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 20 540 60 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 20 540 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 20 540 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 20 540 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 20 540 38 , srcInfoPoints = [] } "ignoreIOExceptions"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 39 540 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 39 540 40 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 39 540 40 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 41 540 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 41 540 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 41 540 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 41 540 51 , srcInfoPoints = [] } "removeFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 52 540 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 52 540 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 540 52 540 60 , srcInfoPoints = [] } "tmpFPath"))))) ])) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 541 11 541 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 541 11 541 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 541 11 541 21 , srcInfoPoints = [] } "bufferSize")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 541 22 541 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 541 22 541 23 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 541 24 541 28 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 541 24 541 28 , srcInfoPoints = [] } 1024 "1024"))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 11 547 56 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 11 547 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 11 543 23 , srcInfoPoints = [] } "copyContents") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 24 543 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 24 543 29 , srcInfoPoints = [] } "hFrom") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 30 543 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 30 543 33 , srcInfoPoints = [] } "hTo") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 34 543 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 34 543 40 , srcInfoPoints = [] } "buffer") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 41 547 56 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 543 41 543 42 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 543 43 547 56 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 543 43 543 45 , SrcSpan "tests/examples/Directory.hs" 544 19 544 19 , SrcSpan "tests/examples/Directory.hs" 545 19 545 19 , SrcSpan "tests/examples/Directory.hs" 549 11 549 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 19 544 59 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 544 25 544 27 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 19 544 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 19 544 24 , srcInfoPoints = [] } "count")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 28 544 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 28 544 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 28 544 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 28 544 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 28 544 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 28 544 35 , srcInfoPoints = [] } "hGetBuf"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 36 544 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 36 544 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 36 544 41 , srcInfoPoints = [] } "hFrom")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 42 544 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 42 544 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 42 544 48 , srcInfoPoints = [] } "buffer")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 49 544 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 49 544 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 544 49 544 59 , srcInfoPoints = [] } "bufferSize")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 19 547 56 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 19 547 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 19 545 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 19 545 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 19 545 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 19 545 23 , srcInfoPoints = [] } "when"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 24 545 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 545 24 545 25 , SrcSpan "tests/examples/Directory.hs" 545 34 545 35 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 25 545 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 25 545 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 25 545 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 25 545 30 , srcInfoPoints = [] } "count"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 31 545 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 31 545 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 31 545 32 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 33 545 34 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 33 545 34 , srcInfoPoints = [] } 0 "0"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 36 545 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 36 545 37 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 36 545 37 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 545 38 547 56 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 545 38 545 40 , SrcSpan "tests/examples/Directory.hs" 546 27 546 27 , SrcSpan "tests/examples/Directory.hs" 547 27 547 27 , SrcSpan "tests/examples/Directory.hs" 549 11 549 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 27 546 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 27 546 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 27 546 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 27 546 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 27 546 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 27 546 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 27 546 34 , srcInfoPoints = [] } "hPutBuf"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 35 546 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 35 546 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 35 546 38 , srcInfoPoints = [] } "hTo")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 39 546 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 39 546 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 39 546 45 , srcInfoPoints = [] } "buffer")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 46 546 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 46 546 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 546 46 546 51 , srcInfoPoints = [] } "count")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 27 547 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 27 547 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 27 547 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 27 547 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 27 547 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 27 547 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 27 547 39 , srcInfoPoints = [] } "copyContents"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 40 547 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 40 547 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 40 547 45 , srcInfoPoints = [] } "hFrom")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 46 547 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 46 547 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 46 547 49 , srcInfoPoints = [] } "hTo")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 50 547 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 50 547 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 547 50 547 56 , srcInfoPoints = [] } "buffer")))) ])) ])) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 11 549 64 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 11 549 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 11 549 29 , srcInfoPoints = [] } "ignoreIOExceptions") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 30 549 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 30 549 32 , srcInfoPoints = [] } "io") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 33 549 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 549 33 549 34 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 35 549 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 35 549 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 35 549 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 35 549 37 , srcInfoPoints = [] } "io"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 38 549 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 549 38 549 39 , SrcSpan "tests/examples/Directory.hs" 549 39 549 44 , SrcSpan "tests/examples/Directory.hs" 549 44 549 45 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 38 549 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 549 38 549 39 , SrcSpan "tests/examples/Directory.hs" 549 39 549 44 , SrcSpan "tests/examples/Directory.hs" 549 44 549 45 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 39 549 44 , srcInfoPoints = [] } "catch"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 46 549 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 46 549 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 549 46 549 64 , srcInfoPoints = [] } "ioExceptionIgnorer"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 11 550 53 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 550 30 550 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 11 550 29 , srcInfoPoints = [] } "ioExceptionIgnorer" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 33 550 53 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 550 45 550 47 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 33 550 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 33 550 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 33 550 44 , srcInfoPoints = [] } "IOException"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 48 550 53 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 48 550 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 48 550 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 48 550 50 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 51 550 53 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 550 51 550 52 , SrcSpan "tests/examples/Directory.hs" 550 52 550 53 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 51 550 53 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 550 51 550 52 , SrcSpan "tests/examples/Directory.hs" 550 52 550 53 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 550 51 550 53 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 550 51 550 52 , SrcSpan "tests/examples/Directory.hs" 550 52 550 53 ] }))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 11 551 43 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 11 551 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 11 551 29 , srcInfoPoints = [] } "ioExceptionIgnorer") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 30 551 31 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 32 551 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 551 32 551 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 34 551 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 34 551 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 34 551 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 34 551 40 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 41 551 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 551 41 551 42 , SrcSpan "tests/examples/Directory.hs" 551 42 551 43 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 41 551 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 551 41 551 42 , SrcSpan "tests/examples/Directory.hs" 551 42 551 43 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 551 41 551 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 551 41 551 42 , SrcSpan "tests/examples/Directory.hs" 551 42 551 43 ] }))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 1 560 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 560 18 560 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 1 560 17 , srcInfoPoints = [] } "canonicalizePath" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 21 560 44 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 560 30 560 32 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 21 560 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 21 560 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 21 560 29 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 33 560 44 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 33 560 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 33 560 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 33 560 35 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 36 560 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 36 560 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 560 36 560 44 , srcInfoPoints = [] } "FilePath"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 561 1 563 31 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 561 1 563 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 561 1 561 17 , srcInfoPoints = [] } "canonicalizePath") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 561 18 561 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 561 18 561 23 , srcInfoPoints = [] } "fpath") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 561 24 563 31 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 561 24 561 25 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 5 563 31 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 562 5 562 7 , SrcSpan "tests/examples/Directory.hs" 562 8 562 8 , SrcSpan "tests/examples/Directory.hs" 563 8 563 8 , SrcSpan "tests/examples/Directory.hs" 568 1 568 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 8 562 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 562 13 562 15 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 8 562 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 8 562 12 , srcInfoPoints = [] } "path")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 16 562 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 16 562 37 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 16 562 37 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 16 562 37 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 16 562 37 , srcInfoPoints = [] } "getFullPathName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 38 562 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 38 562 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 562 38 562 43 , srcInfoPoints = [] } "fpath")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 8 563 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 8 563 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 8 563 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 8 563 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 8 563 14 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 15 563 31 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 563 15 563 16 , SrcSpan "tests/examples/Directory.hs" 563 30 563 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 16 563 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 16 563 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 16 563 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 16 563 25 , srcInfoPoints = [] } "normalise"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 26 563 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 26 563 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 563 26 563 30 , srcInfoPoints = [] } "path")))))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 1 568 58 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 568 32 568 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 1 568 31 , srcInfoPoints = [] } "makeRelativeToCurrentDirectory" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 35 568 58 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 568 44 568 46 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 35 568 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 35 568 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 35 568 43 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 47 568 58 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 47 568 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 47 568 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 47 568 49 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 50 568 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 50 568 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 568 50 568 58 , srcInfoPoints = [] } "FilePath"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 569 1 571 32 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 569 1 571 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 569 1 569 31 , srcInfoPoints = [] } "makeRelativeToCurrentDirectory") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 569 32 569 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 569 32 569 33 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 569 34 571 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 569 34 569 35 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 569 36 571 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 569 36 569 38 , SrcSpan "tests/examples/Directory.hs" 570 5 570 5 , SrcSpan "tests/examples/Directory.hs" 571 5 571 5 , SrcSpan "tests/examples/Directory.hs" 591 1 591 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 570 5 570 31 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 570 9 570 11 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 570 5 570 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 570 5 570 8 , srcInfoPoints = [] } "cur")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 570 12 570 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 570 12 570 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 570 12 570 31 , srcInfoPoints = [] } "getCurrentDirectory"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 5 571 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 5 571 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 5 571 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 5 571 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 5 571 11 , srcInfoPoints = [] } "return"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 12 571 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 12 571 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 12 571 13 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 14 571 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 14 571 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 14 571 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 14 571 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 14 571 26 , srcInfoPoints = [] } "makeRelative"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 27 571 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 27 571 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 27 571 30 , srcInfoPoints = [] } "cur")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 31 571 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 31 571 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 571 31 571 32 , srcInfoPoints = [] } "x"))))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 1 591 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 591 16 591 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 1 591 15 , srcInfoPoints = [] } "findExecutable" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 19 591 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 591 26 591 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 19 591 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 19 591 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 19 591 25 , srcInfoPoints = [] } "String"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 29 591 48 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 29 591 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 29 591 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 29 591 31 , srcInfoPoints = [] } "IO"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 32 591 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 591 32 591 33 , SrcSpan "tests/examples/Directory.hs" 591 47 591 48 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 33 591 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 33 591 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 33 591 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 33 591 38 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 39 591 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 39 591 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 591 39 591 47 , srcInfoPoints = [] } "FilePath"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 592 1 593 53 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 592 1 593 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 592 1 592 15 , srcInfoPoints = [] } "findExecutable") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 592 16 592 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 592 16 592 22 , srcInfoPoints = [] } "binary") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 592 23 593 53 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 592 23 592 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 3 593 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 3 593 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 3 593 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 3 593 19 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 3 593 19 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 3 593 19 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 3 593 19 , srcInfoPoints = [] } "searchPath"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 20 593 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 20 593 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 20 593 27 , srcInfoPoints = [] } "Nothing")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 28 593 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 28 593 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 28 593 34 , srcInfoPoints = [] } "binary")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 35 593 53 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 593 35 593 36 , SrcSpan "tests/examples/Directory.hs" 593 52 593 53 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 36 593 52 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 36 593 39 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 36 593 39 , srcInfoPoints = [] } '.' ".")) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 39 593 40 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 39 593 40 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 39 593 40 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 40 593 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 40 593 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 593 40 593 52 , srcInfoPoints = [] } "exeExtension"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 1 627 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 627 22 627 24 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 1 627 21 , srcInfoPoints = [] } "getDirectoryContents" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 25 627 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 627 34 627 36 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 25 627 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 25 627 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 25 627 33 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 37 627 50 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 37 627 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 37 627 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 37 627 39 , srcInfoPoints = [] } "IO"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 40 627 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 627 40 627 41 , SrcSpan "tests/examples/Directory.hs" 627 49 627 50 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 41 627 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 41 627 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 627 41 627 49 , srcInfoPoints = [] } "FilePath")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 628 1 644 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 635 3 635 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 628 1 644 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 635 3 635 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 628 1 628 21 , srcInfoPoints = [] } "getDirectoryContents") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 628 22 628 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 628 22 628 26 , srcInfoPoints = [] } "path") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 628 27 634 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 628 27 628 28 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 3 634 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 3 630 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 3 629 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 3 629 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 3 629 16 , srcInfoPoints = [] } "modifyIOError"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 17 630 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 629 17 629 18 , SrcSpan "tests/examples/Directory.hs" 630 59 630 60 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 18 630 59 , srcInfoPoints = [] } (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 18 629 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 629 18 629 19 , SrcSpan "tests/examples/Directory.hs" 629 40 629 41 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 19 629 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 629 19 629 20 , SrcSpan "tests/examples/Directory.hs" 629 20 629 34 , SrcSpan "tests/examples/Directory.hs" 629 34 629 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 19 629 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 629 19 629 20 , SrcSpan "tests/examples/Directory.hs" 629 20 629 34 , SrcSpan "tests/examples/Directory.hs" 629 34 629 35 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 20 629 34 , srcInfoPoints = [] } "ioeSetFileName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 36 629 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 36 629 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 36 629 40 , srcInfoPoints = [] } "path")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 42 629 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 42 629 43 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 629 42 629 43 , srcInfoPoints = [] } "."))) (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 18 630 59 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 630 18 630 19 , SrcSpan "tests/examples/Directory.hs" 630 58 630 59 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 19 630 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 630 19 630 20 , SrcSpan "tests/examples/Directory.hs" 630 20 630 34 , SrcSpan "tests/examples/Directory.hs" 630 34 630 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 19 630 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 630 19 630 20 , SrcSpan "tests/examples/Directory.hs" 630 20 630 34 , SrcSpan "tests/examples/Directory.hs" 630 34 630 35 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 20 630 34 , srcInfoPoints = [] } "ioeSetLocation"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 36 630 58 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 36 630 58 , srcInfoPoints = [] } "getDirectoryContents" "getDirectoryContents")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 61 630 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 61 630 62 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 61 630 62 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 630 63 634 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 630 63 630 65 , SrcSpan "tests/examples/Directory.hs" 631 3 631 3 , SrcSpan "tests/examples/Directory.hs" 635 3 635 3 , SrcSpan "tests/examples/Directory.hs" 635 3 635 3 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 631 3 634 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 631 3 634 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 631 3 633 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 631 3 632 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 631 3 631 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 631 3 631 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 631 3 631 10 , srcInfoPoints = [] } "bracket"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 6 632 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 632 6 632 7 , SrcSpan "tests/examples/Directory.hs" 632 41 632 42 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 7 632 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 7 632 26 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 7 632 26 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 7 632 26 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 7 632 26 , srcInfoPoints = [] } "findFirstFile"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 27 632 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 632 27 632 28 , SrcSpan "tests/examples/Directory.hs" 632 40 632 41 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 28 632 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 28 632 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 28 632 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 28 632 32 , srcInfoPoints = [] } "path"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 33 632 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 33 632 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 33 632 36 , srcInfoPoints = [] } ""))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 37 632 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 632 37 632 40 , srcInfoPoints = [] } "*" "*"))))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 6 633 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 633 6 633 7 , SrcSpan "tests/examples/Directory.hs" 633 34 633 35 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 7 633 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 633 7 633 8 , SrcSpan "tests/examples/Directory.hs" 633 14 633 16 ] } [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 8 633 13 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 633 8 633 9 , SrcSpan "tests/examples/Directory.hs" 633 10 633 11 , SrcSpan "tests/examples/Directory.hs" 633 12 633 13 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 9 633 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 9 633 10 , srcInfoPoints = [] } "h") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 11 633 12 , srcInfoPoints = [] } ] ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 17 633 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 17 633 32 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 17 633 32 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 17 633 32 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 17 633 32 , srcInfoPoints = [] } "findClose"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 33 633 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 33 633 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 633 33 633 34 , srcInfoPoints = [] } "h"))))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 6 634 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 634 6 634 7 , SrcSpan "tests/examples/Directory.hs" 634 34 634 35 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 7 634 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 634 7 634 8 , SrcSpan "tests/examples/Directory.hs" 634 17 634 19 ] } [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 8 634 16 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 634 8 634 9 , SrcSpan "tests/examples/Directory.hs" 634 10 634 11 , SrcSpan "tests/examples/Directory.hs" 634 15 634 16 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 9 634 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 9 634 10 , srcInfoPoints = [] } "h") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 11 634 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 11 634 15 , srcInfoPoints = [] } "fdat") ] ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 20 634 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 20 634 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 20 634 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 20 634 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 20 634 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 20 634 24 , srcInfoPoints = [] } "loop"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 25 634 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 25 634 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 25 634 26 , srcInfoPoints = [] } "h")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 27 634 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 27 634 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 27 634 31 , srcInfoPoints = [] } "fdat")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 634 32 634 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 634 32 634 33 , SrcSpan "tests/examples/Directory.hs" 634 33 634 34 ] } []))))) ]))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 5 644 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 638 5 638 5 , SrcSpan "tests/examples/Directory.hs" 639 5 639 5 , SrcSpan "tests/examples/Directory.hs" 672 1 672 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 5 638 74 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 638 10 638 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 5 638 9 , srcInfoPoints = [] } "loop" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 13 638 74 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 638 26 638 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 13 638 25 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 13 638 25 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 13 638 25 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 13 638 25 , srcInfoPoints = [] } "HANDLE"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 29 638 74 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 638 44 638 46 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 29 638 43 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 29 638 43 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 29 638 43 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 29 638 43 , srcInfoPoints = [] } "FindData"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 47 638 74 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 638 58 638 60 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 47 638 57 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 638 47 638 48 , SrcSpan "tests/examples/Directory.hs" 638 56 638 57 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 48 638 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 48 638 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 48 638 56 , srcInfoPoints = [] } "FilePath")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 61 638 74 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 61 638 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 61 638 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 61 638 63 , srcInfoPoints = [] } "IO"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 64 638 74 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 638 64 638 65 , SrcSpan "tests/examples/Directory.hs" 638 73 638 74 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 65 638 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 65 638 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 638 65 638 73 , srcInfoPoints = [] } "FilePath")))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 5 644 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 5 644 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 5 639 9 , srcInfoPoints = [] } "loop") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 10 639 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 10 639 11 , srcInfoPoints = [] } "h") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 12 639 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 12 639 16 , srcInfoPoints = [] } "fdat") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 17 639 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 17 639 20 , srcInfoPoints = [] } "acc") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 21 644 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 639 21 639 22 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 639 23 644 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 639 23 639 25 , SrcSpan "tests/examples/Directory.hs" 640 8 640 8 , SrcSpan "tests/examples/Directory.hs" 641 8 641 8 , SrcSpan "tests/examples/Directory.hs" 642 8 642 8 , SrcSpan "tests/examples/Directory.hs" 672 1 672 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 8 640 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 640 17 640 19 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 8 640 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 8 640 16 , srcInfoPoints = [] } "filename")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 20 640 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 20 640 45 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 20 640 45 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 20 640 45 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 20 640 45 , srcInfoPoints = [] } "getFindDataFileName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 46 640 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 46 640 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 640 46 640 50 , srcInfoPoints = [] } "fdat")))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 8 641 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 641 13 641 15 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 8 641 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 8 641 12 , srcInfoPoints = [] } "more")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 16 641 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 16 641 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 16 641 34 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 16 641 34 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 16 641 34 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 16 641 34 , srcInfoPoints = [] } "findNextFile"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 35 641 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 35 641 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 35 641 36 , srcInfoPoints = [] } "h")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 37 641 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 37 641 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 641 37 641 41 , srcInfoPoints = [] } "fdat")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 642 8 644 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 642 8 642 10 , SrcSpan "tests/examples/Directory.hs" 643 11 643 15 , SrcSpan "tests/examples/Directory.hs" 644 11 644 15 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 642 8 644 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 642 8 642 10 , SrcSpan "tests/examples/Directory.hs" 643 11 643 15 , SrcSpan "tests/examples/Directory.hs" 644 11 644 15 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 642 11 642 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 642 11 642 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 642 11 642 15 , srcInfoPoints = [] } "more"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 16 643 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 16 643 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 16 643 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 16 643 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 16 643 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 16 643 20 , srcInfoPoints = [] } "loop"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 21 643 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 21 643 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 21 643 22 , srcInfoPoints = [] } "h")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 23 643 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 23 643 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 23 643 27 , srcInfoPoints = [] } "fdat")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 28 643 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 643 28 643 29 , SrcSpan "tests/examples/Directory.hs" 643 41 643 42 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 29 643 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 29 643 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 29 643 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 29 643 37 , srcInfoPoints = [] } "filename"))) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 37 643 38 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 37 643 38 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 37 643 38 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 38 643 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 38 643 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 643 38 643 41 , srcInfoPoints = [] } "acc")))))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 16 644 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 16 644 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 16 644 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 16 644 22 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 23 644 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 644 23 644 24 , SrcSpan "tests/examples/Directory.hs" 644 36 644 37 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 24 644 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 24 644 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 24 644 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 24 644 32 , srcInfoPoints = [] } "filename"))) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 32 644 33 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 32 644 33 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 32 644 33 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 33 644 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 33 644 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 644 33 644 36 , srcInfoPoints = [] } "acc"))))))) ])) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 1 672 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 672 21 672 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 1 672 20 , srcInfoPoints = [] } "getCurrentDirectory" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 24 672 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 24 672 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 24 672 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 24 672 26 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 27 672 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 27 672 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 672 27 672 35 , srcInfoPoints = [] } "FilePath")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 673 1 674 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 673 1 673 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 673 1 673 20 , srcInfoPoints = [] } "getCurrentDirectory")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 673 21 674 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 673 21 673 22 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 673 23 674 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 673 23 673 25 , SrcSpan "tests/examples/Directory.hs" 674 3 674 3 , SrcSpan "tests/examples/Directory.hs" 708 1 708 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 674 3 674 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 674 3 674 28 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 674 3 674 28 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 674 3 674 28 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 674 3 674 28 , srcInfoPoints = [] } "getCurrentDirectory"))) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 1 708 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 708 21 708 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 1 708 20 , srcInfoPoints = [] } "setCurrentDirectory" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 24 708 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 708 33 708 35 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 24 708 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 24 708 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 24 708 32 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 36 708 41 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 36 708 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 36 708 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 36 708 38 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 39 708 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 708 39 708 40 , SrcSpan "tests/examples/Directory.hs" 708 40 708 41 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 39 708 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 708 39 708 40 , SrcSpan "tests/examples/Directory.hs" 708 40 708 41 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 708 39 708 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 708 39 708 40 , SrcSpan "tests/examples/Directory.hs" 708 40 708 41 ] }))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 709 1 710 33 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 709 1 710 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 709 1 709 20 , srcInfoPoints = [] } "setCurrentDirectory") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 709 21 709 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 709 21 709 25 , srcInfoPoints = [] } "path") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 709 26 710 33 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 709 26 709 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 710 3 710 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 710 3 710 28 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 710 3 710 28 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 710 3 710 28 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 710 3 710 28 , srcInfoPoints = [] } "setCurrentDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 710 29 710 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 710 29 710 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 710 29 710 33 , srcInfoPoints = [] } "path"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 1 716 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 716 20 716 22 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 1 716 19 , srcInfoPoints = [] } "doesDirectoryExist" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 23 716 42 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 716 32 716 34 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 23 716 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 23 716 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 23 716 31 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 35 716 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 35 716 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 35 716 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 35 716 37 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 38 716 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 38 716 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 716 38 716 42 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 717 1 719 61 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 717 1 719 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 717 1 717 19 , srcInfoPoints = [] } "doesDirectoryExist") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 717 20 717 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 717 20 717 24 , srcInfoPoints = [] } "name") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 717 25 719 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 717 25 717 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 4 719 61 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 4 718 70 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 718 4 718 5 , SrcSpan "tests/examples/Directory.hs" 718 69 718 70 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 5 718 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 5 718 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 5 718 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 5 718 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 5 718 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 5 718 19 , srcInfoPoints = [] } "withFileStatus"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 20 718 40 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 20 718 40 , srcInfoPoints = [] } "doesDirectoryExist" "doesDirectoryExist"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 41 718 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 41 718 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 41 718 45 , srcInfoPoints = [] } "name")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 46 718 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 46 718 47 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 46 718 47 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 48 718 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 718 48 718 49 , SrcSpan "tests/examples/Directory.hs" 718 52 718 54 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 49 718 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 49 718 51 , srcInfoPoints = [] } "st") ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 55 718 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 55 718 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 55 718 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 55 718 66 , srcInfoPoints = [] } "isDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 67 718 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 67 718 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 718 67 718 69 , srcInfoPoints = [] } "st"))))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 4 719 11 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 719 4 719 5 , SrcSpan "tests/examples/Directory.hs" 719 5 719 10 , SrcSpan "tests/examples/Directory.hs" 719 10 719 11 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 4 719 11 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 719 4 719 5 , SrcSpan "tests/examples/Directory.hs" 719 5 719 10 , SrcSpan "tests/examples/Directory.hs" 719 10 719 11 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 5 719 10 , srcInfoPoints = [] } "catch"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 12 719 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 719 12 719 13 , SrcSpan "tests/examples/Directory.hs" 719 60 719 61 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 13 719 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 719 35 719 37 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 13 719 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 719 13 719 14 , SrcSpan "tests/examples/Directory.hs" 719 33 719 34 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 14 719 33 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 719 14 719 15 , SrcSpan "tests/examples/Directory.hs" 719 18 719 20 ] } [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 16 719 17 , srcInfoPoints = [] } ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 21 719 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 21 719 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 21 719 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 21 719 27 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 28 719 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 28 719 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 28 719 33 , srcInfoPoints = [] } "False")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 38 719 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 719 50 719 52 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 38 719 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 38 719 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 38 719 49 , srcInfoPoints = [] } "IOException"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 53 719 60 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 53 719 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 53 719 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 53 719 55 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 56 719 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 56 719 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 719 56 719 60 , srcInfoPoints = [] } "Bool"))))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 1 725 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 725 15 725 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 1 725 14 , srcInfoPoints = [] } "doesFileExist" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 18 725 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 725 27 725 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 18 725 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 18 725 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 18 725 26 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 30 725 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 30 725 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 30 725 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 30 725 32 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 33 725 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 33 725 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 725 33 725 37 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 726 1 728 61 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 726 1 728 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 726 1 726 14 , srcInfoPoints = [] } "doesFileExist") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 726 15 726 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 726 15 726 19 , srcInfoPoints = [] } "name") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 726 20 728 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 726 20 726 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 4 728 61 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 4 727 89 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 727 4 727 5 , SrcSpan "tests/examples/Directory.hs" 727 88 727 89 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 5 727 88 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 5 727 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 5 727 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 5 727 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 5 727 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 5 727 19 , srcInfoPoints = [] } "withFileStatus"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 20 727 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 20 727 35 , srcInfoPoints = [] } "doesFileExist" "doesFileExist"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 36 727 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 36 727 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 36 727 40 , srcInfoPoints = [] } "name")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 41 727 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 41 727 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 41 727 42 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 43 727 88 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 727 43 727 44 , SrcSpan "tests/examples/Directory.hs" 727 47 727 49 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 44 727 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 44 727 46 , srcInfoPoints = [] } "st") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 50 727 88 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 727 50 727 52 , SrcSpan "tests/examples/Directory.hs" 727 53 727 53 , SrcSpan "tests/examples/Directory.hs" 727 72 727 73 , SrcSpan "tests/examples/Directory.hs" 727 88 727 88 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 53 727 72 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 727 55 727 57 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 53 727 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 53 727 54 , srcInfoPoints = [] } "b")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 58 727 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 58 727 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 58 727 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 58 727 69 , srcInfoPoints = [] } "isDirectory"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 70 727 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 70 727 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 70 727 72 , srcInfoPoints = [] } "st")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 74 727 88 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 74 727 88 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 74 727 80 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 74 727 80 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 74 727 80 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 81 727 88 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 727 81 727 82 , SrcSpan "tests/examples/Directory.hs" 727 87 727 88 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 82 727 87 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 82 727 85 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 82 727 85 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 82 727 85 , srcInfoPoints = [] } "not"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 86 727 87 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 86 727 87 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 727 86 727 87 , srcInfoPoints = [] } "b")))))) ])))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 4 728 11 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 728 4 728 5 , SrcSpan "tests/examples/Directory.hs" 728 5 728 10 , SrcSpan "tests/examples/Directory.hs" 728 10 728 11 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 4 728 11 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 728 4 728 5 , SrcSpan "tests/examples/Directory.hs" 728 5 728 10 , SrcSpan "tests/examples/Directory.hs" 728 10 728 11 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 5 728 10 , srcInfoPoints = [] } "catch"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 12 728 61 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 728 12 728 13 , SrcSpan "tests/examples/Directory.hs" 728 60 728 61 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 13 728 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 728 35 728 37 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 13 728 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 728 13 728 14 , SrcSpan "tests/examples/Directory.hs" 728 33 728 34 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 14 728 33 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 728 14 728 15 , SrcSpan "tests/examples/Directory.hs" 728 18 728 20 ] } [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 16 728 17 , srcInfoPoints = [] } ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 21 728 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 21 728 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 21 728 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 21 728 27 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 28 728 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 28 728 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 28 728 33 , srcInfoPoints = [] } "False")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 38 728 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 728 50 728 52 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 38 728 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 38 728 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 38 728 49 , srcInfoPoints = [] } "IOException"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 53 728 60 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 53 728 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 53 728 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 53 728 55 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 56 728 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 56 728 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 728 56 728 60 , srcInfoPoints = [] } "Bool"))))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 1 742 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 742 21 742 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 1 742 20 , srcInfoPoints = [] } "getModificationTime" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 24 742 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 742 33 742 35 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 24 742 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 24 742 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 24 742 32 , srcInfoPoints = [] } "FilePath"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 36 742 48 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 36 742 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 36 742 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 36 742 38 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 39 742 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 39 742 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 742 39 742 48 , srcInfoPoints = [] } "ClockTime"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 743 1 746 21 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 743 1 746 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 743 1 743 20 , srcInfoPoints = [] } "getModificationTime") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 743 21 743 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 743 21 743 25 , srcInfoPoints = [] } "name") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 743 26 746 21 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 743 26 743 27 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 743 28 746 21 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 743 28 743 30 , SrcSpan "tests/examples/Directory.hs" 745 2 745 2 , SrcSpan "tests/examples/Directory.hs" 749 1 749 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 2 746 21 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 2 746 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 2 745 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 2 745 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 2 745 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 2 745 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 2 745 16 , srcInfoPoints = [] } "withFileStatus"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 17 745 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 17 745 38 , srcInfoPoints = [] } "getModificationTime" "getModificationTime"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 39 745 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 39 745 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 39 745 43 , srcInfoPoints = [] } "name")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 44 745 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 44 745 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 44 745 45 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 46 746 21 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 745 46 745 47 , SrcSpan "tests/examples/Directory.hs" 745 51 745 53 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 48 745 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 48 745 50 , srcInfoPoints = [] } "st") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 745 54 746 21 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 745 54 745 56 , SrcSpan "tests/examples/Directory.hs" 746 2 746 2 , SrcSpan "tests/examples/Directory.hs" 746 2 746 2 , SrcSpan "tests/examples/Directory.hs" 749 1 749 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 746 2 746 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 746 2 746 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 746 2 746 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 746 2 746 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 746 2 746 18 , srcInfoPoints = [] } "modificationTime"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 746 19 746 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 746 19 746 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 746 19 746 21 , srcInfoPoints = [] } "st")))) ]))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 1 749 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 749 16 749 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 1 749 15 , srcInfoPoints = [] } "withFileStatus" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 19 749 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 749 26 749 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 19 749 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 19 749 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 19 749 25 , srcInfoPoints = [] } "String"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 29 749 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 749 38 749 40 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 29 749 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 29 749 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 29 749 37 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 41 749 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 749 61 749 63 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 41 749 60 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 749 41 749 42 , SrcSpan "tests/examples/Directory.hs" 749 59 749 60 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 42 749 59 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 749 52 749 54 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 42 749 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 42 749 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 42 749 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 42 749 45 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 46 749 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 46 749 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 46 749 51 , srcInfoPoints = [] } "CStat")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 55 749 59 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 55 749 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 55 749 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 55 749 57 , srcInfoPoints = [] } "IO"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 58 749 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 58 749 59 , srcInfoPoints = [] } "a"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 64 749 68 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 64 749 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 64 749 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 64 749 66 , srcInfoPoints = [] } "IO"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 67 749 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 749 67 749 68 , srcInfoPoints = [] } "a")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 1 754 50 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 1 754 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 1 750 15 , srcInfoPoints = [] } "withFileStatus") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 16 750 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 16 750 19 , srcInfoPoints = [] } "loc") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 20 750 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 20 750 24 , srcInfoPoints = [] } "name") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 25 750 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 25 750 26 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 27 754 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 750 27 750 28 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 750 29 754 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 750 29 750 31 , SrcSpan "tests/examples/Directory.hs" 751 3 751 3 , SrcSpan "tests/examples/Directory.hs" 756 1 756 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 3 754 50 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 3 754 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 3 751 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 3 751 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 3 751 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 3 751 16 , srcInfoPoints = [] } "modifyIOError"))) (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 17 751 40 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 751 17 751 18 , SrcSpan "tests/examples/Directory.hs" 751 39 751 40 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 18 751 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 751 18 751 19 , SrcSpan "tests/examples/Directory.hs" 751 19 751 33 , SrcSpan "tests/examples/Directory.hs" 751 33 751 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 18 751 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 751 18 751 19 , SrcSpan "tests/examples/Directory.hs" 751 19 751 33 , SrcSpan "tests/examples/Directory.hs" 751 33 751 34 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 19 751 33 , srcInfoPoints = [] } "ioeSetFileName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 35 751 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 35 751 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 35 751 39 , srcInfoPoints = [] } "name"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 41 751 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 41 751 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 751 41 751 42 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 5 754 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 5 752 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 5 752 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 5 752 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 5 752 16 , srcInfoPoints = [] } "allocaBytes"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 17 752 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 17 752 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 17 752 28 , srcInfoPoints = [] } "sizeof_stat")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 29 752 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 29 752 30 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 29 752 30 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 31 754 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 752 31 752 32 , SrcSpan "tests/examples/Directory.hs" 752 34 752 36 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 32 752 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 752 32 752 33 , srcInfoPoints = [] } "p") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 7 754 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 7 753 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 7 753 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 7 753 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 7 753 19 , srcInfoPoints = [] } "withFilePath"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 20 753 43 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 753 20 753 21 , SrcSpan "tests/examples/Directory.hs" 753 42 753 43 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 21 753 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 21 753 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 21 753 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 21 753 37 , srcInfoPoints = [] } "fileNameEndClean"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 38 753 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 38 753 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 38 753 42 , srcInfoPoints = [] } "name")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 44 753 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 44 753 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 44 753 45 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 46 754 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 753 46 753 47 , SrcSpan "tests/examples/Directory.hs" 753 49 753 51 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 47 753 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 47 753 48 , srcInfoPoints = [] } "s") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 753 52 754 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 753 52 753 54 , SrcSpan "tests/examples/Directory.hs" 754 9 754 9 , SrcSpan "tests/examples/Directory.hs" 756 1 756 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 9 754 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 9 754 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 9 754 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 9 754 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 9 754 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 9 754 33 , srcInfoPoints = [] } "throwErrnoIfMinus1Retry_"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 34 754 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 34 754 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 34 754 37 , srcInfoPoints = [] } "loc")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 38 754 50 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 754 38 754 39 , SrcSpan "tests/examples/Directory.hs" 754 49 754 50 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 39 754 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 39 754 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 39 754 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 39 754 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 39 754 45 , srcInfoPoints = [] } "c_stat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 46 754 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 46 754 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 46 754 47 , srcInfoPoints = [] } "s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 48 754 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 48 754 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 754 48 754 49 , srcInfoPoints = [] } "p")))))) ])))))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 1 756 77 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 756 25 756 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 1 756 24 , srcInfoPoints = [] } "withFileOrSymlinkStatus" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 28 756 77 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 756 35 756 37 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 28 756 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 28 756 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 28 756 34 , srcInfoPoints = [] } "String"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 38 756 77 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 756 47 756 49 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 38 756 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 38 756 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 38 756 46 , srcInfoPoints = [] } "FilePath"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 50 756 77 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 756 70 756 72 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 50 756 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 756 50 756 51 , SrcSpan "tests/examples/Directory.hs" 756 68 756 69 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 51 756 68 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 756 61 756 63 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 51 756 60 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 51 756 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 51 756 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 51 756 54 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 55 756 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 55 756 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 55 756 60 , srcInfoPoints = [] } "CStat")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 64 756 68 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 64 756 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 64 756 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 64 756 66 , srcInfoPoints = [] } "IO"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 67 756 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 67 756 68 , srcInfoPoints = [] } "a"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 73 756 77 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 73 756 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 73 756 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 73 756 75 , srcInfoPoints = [] } "IO"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 76 756 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 756 76 756 77 , srcInfoPoints = [] } "a")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 1 761 49 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 1 761 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 1 757 24 , srcInfoPoints = [] } "withFileOrSymlinkStatus") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 25 757 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 25 757 28 , srcInfoPoints = [] } "loc") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 29 757 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 29 757 33 , srcInfoPoints = [] } "name") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 34 757 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 34 757 35 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 36 761 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 757 36 757 37 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 757 38 761 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 757 38 757 40 , SrcSpan "tests/examples/Directory.hs" 758 3 758 3 , SrcSpan "tests/examples/Directory.hs" 763 1 763 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 3 761 49 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 3 761 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 3 758 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 3 758 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 3 758 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 3 758 16 , srcInfoPoints = [] } "modifyIOError"))) (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 17 758 40 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 758 17 758 18 , SrcSpan "tests/examples/Directory.hs" 758 39 758 40 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 18 758 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 758 18 758 19 , SrcSpan "tests/examples/Directory.hs" 758 19 758 33 , SrcSpan "tests/examples/Directory.hs" 758 33 758 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 18 758 34 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 758 18 758 19 , SrcSpan "tests/examples/Directory.hs" 758 19 758 33 , SrcSpan "tests/examples/Directory.hs" 758 33 758 34 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 19 758 33 , srcInfoPoints = [] } "ioeSetFileName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 35 758 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 35 758 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 35 758 39 , srcInfoPoints = [] } "name"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 41 758 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 41 758 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 758 41 758 42 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 5 761 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 5 759 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 5 759 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 5 759 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 5 759 16 , srcInfoPoints = [] } "allocaBytes"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 17 759 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 17 759 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 17 759 28 , srcInfoPoints = [] } "sizeof_stat")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 29 759 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 29 759 30 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 29 759 30 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 31 761 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 759 31 759 32 , SrcSpan "tests/examples/Directory.hs" 759 34 759 36 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 32 759 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 759 32 759 33 , srcInfoPoints = [] } "p") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 7 761 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 7 760 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 7 760 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 7 760 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 7 760 19 , srcInfoPoints = [] } "withFilePath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 20 760 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 20 760 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 20 760 24 , srcInfoPoints = [] } "name")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 25 760 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 25 760 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 25 760 26 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 27 761 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 760 27 760 28 , SrcSpan "tests/examples/Directory.hs" 760 30 760 32 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 28 760 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 28 760 29 , srcInfoPoints = [] } "s") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 760 33 761 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 760 33 760 35 , SrcSpan "tests/examples/Directory.hs" 761 9 761 9 , SrcSpan "tests/examples/Directory.hs" 763 1 763 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 9 761 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 9 761 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 9 761 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 9 761 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 9 761 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 9 761 33 , srcInfoPoints = [] } "throwErrnoIfMinus1Retry_"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 34 761 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 34 761 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 34 761 37 , srcInfoPoints = [] } "loc")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 38 761 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 761 38 761 39 , SrcSpan "tests/examples/Directory.hs" 761 48 761 49 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 39 761 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 39 761 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 39 761 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 39 761 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 39 761 44 , srcInfoPoints = [] } "lstat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 45 761 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 45 761 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 45 761 46 , srcInfoPoints = [] } "s")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 47 761 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 47 761 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 761 47 761 48 , srcInfoPoints = [] } "p")))))) ])))))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 1 763 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 763 18 763 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 1 763 17 , srcInfoPoints = [] } "modificationTime" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 21 763 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 763 31 763 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 21 763 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 21 763 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 21 763 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 21 763 24 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 25 763 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 25 763 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 25 763 30 , srcInfoPoints = [] } "CStat")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 34 763 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 34 763 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 34 763 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 34 763 36 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 37 763 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 37 763 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 763 37 763 46 , srcInfoPoints = [] } "ClockTime"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 764 1 767 52 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 764 1 767 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 764 1 764 17 , srcInfoPoints = [] } "modificationTime") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 764 18 764 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 764 18 764 22 , srcInfoPoints = [] } "stat") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 764 23 767 52 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 764 23 764 24 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 764 25 767 52 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 764 25 764 27 , SrcSpan "tests/examples/Directory.hs" 765 5 765 5 , SrcSpan "tests/examples/Directory.hs" 766 5 766 5 , SrcSpan "tests/examples/Directory.hs" 767 5 767 5 , SrcSpan "tests/examples/Directory.hs" 769 1 769 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 5 765 27 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 765 11 765 13 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 5 765 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 5 765 10 , srcInfoPoints = [] } "mtime")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 14 765 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 14 765 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 14 765 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 14 765 22 , srcInfoPoints = [] } "st_mtime"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 23 765 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 23 765 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 765 23 765 27 , srcInfoPoints = [] } "stat")))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 5 766 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 766 5 766 8 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 9 766 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 766 9 766 9 , SrcSpan "tests/examples/Directory.hs" 767 5 767 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 9 766 69 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 9 766 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 9 766 22 , srcInfoPoints = [] } "realToInteger")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 23 766 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 766 23 766 24 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 25 766 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 766 44 766 46 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 25 766 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 25 766 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 25 766 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 25 766 30 , srcInfoPoints = [] } "round"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 31 766 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 31 766 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 31 766 32 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 33 766 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 33 766 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 33 766 43 , srcInfoPoints = [] } "realToFrac")))) (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 47 766 69 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 47 766 56 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 766 54 766 56 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 47 766 56 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 766 54 766 56 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 47 766 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 47 766 51 , srcInfoPoints = [] } "Real")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 52 766 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 52 766 53 , srcInfoPoints = [] } "a") ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 57 766 69 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 766 59 766 61 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 57 766 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 57 766 58 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 62 766 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 62 766 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 766 62 766 69 , srcInfoPoints = [] } "Integer"))))))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 5 767 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 5 767 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 5 767 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 5 767 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 5 767 11 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 12 767 52 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 767 12 767 13 , SrcSpan "tests/examples/Directory.hs" 767 51 767 52 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 13 767 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 13 767 49 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 13 767 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 13 767 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 13 767 16 , srcInfoPoints = [] } "TOD"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 17 767 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 767 17 767 18 , SrcSpan "tests/examples/Directory.hs" 767 48 767 49 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 18 767 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 18 767 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 18 767 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 18 767 31 , srcInfoPoints = [] } "realToInteger"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 32 767 48 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 767 32 767 33 , SrcSpan "tests/examples/Directory.hs" 767 47 767 48 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 33 767 47 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 767 39 767 41 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 33 767 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 33 767 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 33 767 38 , srcInfoPoints = [] } "mtime"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 42 767 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 42 767 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 42 767 47 , srcInfoPoints = [] } "CTime")))))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 50 767 51 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 767 50 767 51 , srcInfoPoints = [] } 0 "0"))))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 1 769 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 769 13 769 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 1 769 12 , srcInfoPoints = [] } "isDirectory" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 16 769 36 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 769 26 769 28 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 16 769 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 16 769 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 16 769 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 16 769 19 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 20 769 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 20 769 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 20 769 25 , srcInfoPoints = [] } "CStat")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 29 769 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 29 769 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 29 769 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 29 769 31 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 32 769 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 32 769 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 769 32 769 36 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 770 1 772 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 770 1 772 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 770 1 770 12 , srcInfoPoints = [] } "isDirectory") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 770 13 770 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 770 13 770 17 , srcInfoPoints = [] } "stat") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 770 18 772 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 770 18 770 19 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 770 20 772 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 770 20 770 22 , SrcSpan "tests/examples/Directory.hs" 771 3 771 3 , SrcSpan "tests/examples/Directory.hs" 772 3 772 3 , SrcSpan "tests/examples/Directory.hs" 774 1 774 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 3 771 23 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 771 8 771 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 3 771 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 3 771 7 , srcInfoPoints = [] } "mode")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 11 771 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 11 771 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 11 771 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 11 771 18 , srcInfoPoints = [] } "st_mode"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 19 771 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 19 771 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 771 19 771 23 , srcInfoPoints = [] } "stat")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 3 772 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 3 772 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 3 772 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 3 772 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 3 772 9 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 10 772 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 772 10 772 11 , SrcSpan "tests/examples/Directory.hs" 772 23 772 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 11 772 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 11 772 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 11 772 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 11 772 18 , srcInfoPoints = [] } "s_isdir"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 19 772 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 19 772 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 772 19 772 23 , srcInfoPoints = [] } "mode")))))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 1 774 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 774 18 774 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 1 774 17 , srcInfoPoints = [] } "fileNameEndClean" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 21 774 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 774 28 774 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 21 774 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 21 774 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 21 774 27 , srcInfoPoints = [] } "String"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 31 774 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 31 774 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 774 31 774 37 , srcInfoPoints = [] } "String")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 1 776 76 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 1 776 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 1 775 17 , srcInfoPoints = [] } "fileNameEndClean") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 18 775 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 18 775 22 , srcInfoPoints = [] } "name") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 23 776 76 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 775 23 775 24 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 25 776 76 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 775 25 775 27 , SrcSpan "tests/examples/Directory.hs" 775 41 775 45 , SrcSpan "tests/examples/Directory.hs" 776 41 776 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 28 775 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 28 775 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 28 775 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 28 775 35 , srcInfoPoints = [] } "isDrive"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 36 775 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 36 775 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 36 775 40 , srcInfoPoints = [] } "name")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 46 775 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 46 775 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 46 775 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 46 775 70 , srcInfoPoints = [] } "addTrailingPathSeparator"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 71 775 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 71 775 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 775 71 775 75 , srcInfoPoints = [] } "name")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 776 46 776 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 776 46 776 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 776 46 776 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 776 46 776 71 , srcInfoPoints = [] } "dropTrailingPathSeparator"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 776 72 776 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 776 72 776 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 776 72 776 76 , srcInfoPoints = [] } "name")))))) Nothing ] , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 778 1 778 78 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 778 1 778 8 , SrcSpan "tests/examples/Directory.hs" 778 9 778 15 , SrcSpan "tests/examples/Directory.hs" 778 29 778 61 , SrcSpan "tests/examples/Directory.hs" 778 70 778 72 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 778 16 778 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 778 22 778 28 , srcInfoPoints = [] })) (Just "HsDirectory.h __hscore_S_IRUSR") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 778 62 778 69 , srcInfoPoints = [] } "s_IRUSR") (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 778 73 778 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 778 73 778 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 778 73 778 78 , srcInfoPoints = [] } "CMode"))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 779 1 779 78 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 779 1 779 8 , SrcSpan "tests/examples/Directory.hs" 779 9 779 15 , SrcSpan "tests/examples/Directory.hs" 779 29 779 61 , SrcSpan "tests/examples/Directory.hs" 779 70 779 72 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 779 16 779 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 779 22 779 28 , srcInfoPoints = [] })) (Just "HsDirectory.h __hscore_S_IWUSR") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 779 62 779 69 , srcInfoPoints = [] } "s_IWUSR") (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 779 73 779 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 779 73 779 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 779 73 779 78 , srcInfoPoints = [] } "CMode"))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 780 1 780 78 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 780 1 780 8 , SrcSpan "tests/examples/Directory.hs" 780 9 780 15 , SrcSpan "tests/examples/Directory.hs" 780 29 780 61 , SrcSpan "tests/examples/Directory.hs" 780 70 780 72 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 780 16 780 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 780 22 780 28 , srcInfoPoints = [] })) (Just "HsDirectory.h __hscore_S_IXUSR") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 780 62 780 69 , srcInfoPoints = [] } "s_IXUSR") (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 780 73 780 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 780 73 780 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 780 73 780 78 , srcInfoPoints = [] } "CMode"))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 781 1 781 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 781 1 781 8 , SrcSpan "tests/examples/Directory.hs" 781 9 781 15 , SrcSpan "tests/examples/Directory.hs" 781 29 781 47 , SrcSpan "tests/examples/Directory.hs" 781 56 781 58 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 781 16 781 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 781 22 781 28 , srcInfoPoints = [] })) (Just "__hscore_S_IFDIR") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 781 48 781 55 , srcInfoPoints = [] } "s_IFDIR") (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 781 59 781 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 781 59 781 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 781 59 781 64 , srcInfoPoints = [] } "CMode"))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 784 1 785 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 784 1 784 8 , SrcSpan "tests/examples/Directory.hs" 784 9 784 15 , SrcSpan "tests/examples/Directory.hs" 784 29 784 54 , SrcSpan "tests/examples/Directory.hs" 785 18 785 20 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 784 16 784 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 784 22 784 28 , srcInfoPoints = [] })) (Just "__hscore_long_path_size") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 785 3 785 17 , srcInfoPoints = [] } "long_path_size") (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 785 21 785 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 785 21 785 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 785 21 785 24 , srcInfoPoints = [] } "Int"))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 1 808 32 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 808 18 808 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 1 808 17 , srcInfoPoints = [] } "getHomeDirectory" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 21 808 32 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 21 808 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 21 808 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 21 808 23 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 24 808 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 24 808 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 808 24 808 32 , srcInfoPoints = [] } "FilePath")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 809 1 818 46 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 809 1 809 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 809 1 809 17 , srcInfoPoints = [] } "getHomeDirectory")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 809 18 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 809 18 809 19 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 3 818 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 3 810 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 3 810 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 3 810 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 3 810 16 , srcInfoPoints = [] } "modifyIOError"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 17 810 56 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 810 17 810 18 , SrcSpan "tests/examples/Directory.hs" 810 55 810 56 ] } (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 18 810 55 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 810 18 810 19 , SrcSpan "tests/examples/Directory.hs" 810 54 810 55 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 19 810 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 810 19 810 20 , SrcSpan "tests/examples/Directory.hs" 810 20 810 34 , SrcSpan "tests/examples/Directory.hs" 810 34 810 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 19 810 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 810 19 810 20 , SrcSpan "tests/examples/Directory.hs" 810 20 810 34 , SrcSpan "tests/examples/Directory.hs" 810 34 810 35 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 20 810 34 , srcInfoPoints = [] } "ioeSetLocation"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 36 810 54 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 36 810 54 , srcInfoPoints = [] } "getHomeDirectory" "getHomeDirectory"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 57 810 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 57 810 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 57 810 58 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 810 59 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 810 59 810 61 , SrcSpan "tests/examples/Directory.hs" 811 3 811 3 , SrcSpan "tests/examples/Directory.hs" 812 3 812 3 , SrcSpan "tests/examples/Directory.hs" 847 1 847 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 3 811 73 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 811 5 811 7 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 3 811 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 3 811 4 , srcInfoPoints = [] } "r")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 8 811 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 8 811 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 8 811 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 8 811 11 , srcInfoPoints = [] } "try"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 12 811 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 12 811 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 12 811 13 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 14 811 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 14 811 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 14 811 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 14 811 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 14 811 35 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 14 811 35 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 14 811 35 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 14 811 35 , srcInfoPoints = [] } "sHGetFolderPath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 36 811 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 36 811 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 36 811 43 , srcInfoPoints = [] } "nullPtr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 44 811 63 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 44 811 63 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 44 811 63 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 44 811 63 , srcInfoPoints = [] } "cSIDL_PROFILE")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 64 811 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 64 811 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 64 811 71 , srcInfoPoints = [] } "nullPtr")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 72 811 73 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 811 72 811 73 , srcInfoPoints = [] } 0 "0")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 3 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 812 3 812 7 , SrcSpan "tests/examples/Directory.hs" 812 41 812 43 , SrcSpan "tests/examples/Directory.hs" 813 5 813 5 , SrcSpan "tests/examples/Directory.hs" 814 5 814 5 , SrcSpan "tests/examples/Directory.hs" 847 1 847 0 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 3 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 812 3 812 7 , SrcSpan "tests/examples/Directory.hs" 812 41 812 43 , SrcSpan "tests/examples/Directory.hs" 813 5 813 5 , SrcSpan "tests/examples/Directory.hs" 814 5 814 5 , SrcSpan "tests/examples/Directory.hs" 847 1 847 0 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 8 812 40 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 812 8 812 9 , SrcSpan "tests/examples/Directory.hs" 812 39 812 40 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 9 812 39 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 812 11 812 13 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 9 812 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 9 812 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 9 812 10 , srcInfoPoints = [] } "r"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 14 812 39 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 14 812 32 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 14 812 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 14 812 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 14 812 20 , srcInfoPoints = [] } "Either"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 21 812 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 21 812 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 21 812 32 , srcInfoPoints = [] } "IOException")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 33 812 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 33 812 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 812 33 812 39 , srcInfoPoints = [] } "String")))))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 5 813 24 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 5 813 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 5 813 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 5 813 10 , srcInfoPoints = [] } "Right")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 11 813 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 11 813 12 , srcInfoPoints = [] } "s") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 13 813 24 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 813 13 813 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 16 813 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 16 813 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 16 813 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 16 813 22 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 23 813 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 23 813 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 813 23 813 24 , srcInfoPoints = [] } "s"))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 814 5 818 46 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 814 5 814 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 814 5 814 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 814 5 814 9 , srcInfoPoints = [] } "Left")) [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 814 11 814 12 , srcInfoPoints = [] } ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 814 13 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 814 13 814 15 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 814 16 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 814 16 814 18 , SrcSpan "tests/examples/Directory.hs" 815 7 815 7 , SrcSpan "tests/examples/Directory.hs" 816 7 816 7 , SrcSpan "tests/examples/Directory.hs" 847 1 847 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 7 815 78 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 815 10 815 12 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 7 815 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 7 815 9 , srcInfoPoints = [] } "r1")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 13 815 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 13 815 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 13 815 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 13 815 16 , srcInfoPoints = [] } "try"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 17 815 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 17 815 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 17 815 18 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 19 815 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 19 815 76 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 19 815 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 19 815 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 19 815 40 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 19 815 40 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 19 815 40 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 19 815 40 , srcInfoPoints = [] } "sHGetFolderPath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 41 815 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 41 815 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 41 815 48 , srcInfoPoints = [] } "nullPtr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 49 815 68 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 49 815 68 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 49 815 68 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 49 815 68 , srcInfoPoints = [] } "cSIDL_WINDOWS")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 69 815 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 69 815 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 69 815 76 , srcInfoPoints = [] } "nullPtr")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 77 815 78 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 815 77 815 78 , srcInfoPoints = [] } 0 "0")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 816 7 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 816 7 816 11 , SrcSpan "tests/examples/Directory.hs" 816 15 816 17 , SrcSpan "tests/examples/Directory.hs" 817 9 817 9 , SrcSpan "tests/examples/Directory.hs" 818 9 818 9 , SrcSpan "tests/examples/Directory.hs" 847 1 847 0 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 816 7 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 816 7 816 11 , SrcSpan "tests/examples/Directory.hs" 816 15 816 17 , SrcSpan "tests/examples/Directory.hs" 817 9 817 9 , SrcSpan "tests/examples/Directory.hs" 818 9 818 9 , SrcSpan "tests/examples/Directory.hs" 847 1 847 0 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 816 12 816 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 816 12 816 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 816 12 816 14 , srcInfoPoints = [] } "r1"))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 9 817 28 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 9 817 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 9 817 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 9 817 14 , srcInfoPoints = [] } "Right")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 15 817 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 15 817 16 , srcInfoPoints = [] } "s") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 17 817 28 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 817 17 817 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 20 817 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 20 817 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 20 817 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 20 817 26 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 27 817 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 27 817 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 817 27 817 28 , srcInfoPoints = [] } "s"))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 9 818 46 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 9 818 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 9 818 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 9 818 13 , srcInfoPoints = [] } "Left")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 15 818 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 15 818 16 , srcInfoPoints = [] } "e") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 17 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 818 17 818 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 20 818 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 20 818 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 20 818 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 20 818 27 , srcInfoPoints = [] } "ioError"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 28 818 46 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 818 28 818 29 , SrcSpan "tests/examples/Directory.hs" 818 45 818 46 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 29 818 45 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 818 31 818 33 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 29 818 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 29 818 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 29 818 30 , srcInfoPoints = [] } "e"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 34 818 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 34 818 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 818 34 818 45 , srcInfoPoints = [] } "IOException"))))))) Nothing ]) ])) Nothing ]) ]))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 1 847 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 847 25 847 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 1 847 24 , srcInfoPoints = [] } "getAppUserDataDirectory" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 28 847 49 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 847 35 847 37 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 28 847 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 28 847 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 28 847 34 , srcInfoPoints = [] } "String"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 38 847 49 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 38 847 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 38 847 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 38 847 40 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 41 847 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 41 847 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 847 41 847 49 , srcInfoPoints = [] } "FilePath"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 848 1 851 27 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 848 1 851 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 848 1 848 24 , srcInfoPoints = [] } "getAppUserDataDirectory") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 848 25 848 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 848 25 848 32 , srcInfoPoints = [] } "appName") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 848 33 851 27 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 848 33 848 34 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 848 35 851 27 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 848 35 848 37 , SrcSpan "tests/examples/Directory.hs" 849 3 849 3 , SrcSpan "tests/examples/Directory.hs" 874 1 874 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 3 851 27 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 3 851 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 3 849 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 3 849 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 3 849 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 3 849 16 , srcInfoPoints = [] } "modifyIOError"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 17 849 63 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 849 17 849 18 , SrcSpan "tests/examples/Directory.hs" 849 62 849 63 ] } (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 18 849 62 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 849 18 849 19 , SrcSpan "tests/examples/Directory.hs" 849 61 849 62 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 19 849 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 849 19 849 20 , SrcSpan "tests/examples/Directory.hs" 849 20 849 34 , SrcSpan "tests/examples/Directory.hs" 849 34 849 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 19 849 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 849 19 849 20 , SrcSpan "tests/examples/Directory.hs" 849 20 849 34 , SrcSpan "tests/examples/Directory.hs" 849 34 849 35 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 20 849 34 , srcInfoPoints = [] } "ioeSetLocation"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 36 849 61 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 36 849 61 , srcInfoPoints = [] } "getAppUserDataDirectory" "getAppUserDataDirectory"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 64 849 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 64 849 65 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 64 849 65 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 849 66 851 27 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 849 66 849 68 , SrcSpan "tests/examples/Directory.hs" 850 3 850 3 , SrcSpan "tests/examples/Directory.hs" 850 3 850 3 , SrcSpan "tests/examples/Directory.hs" 851 3 851 3 , SrcSpan "tests/examples/Directory.hs" 874 1 874 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 3 850 67 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 850 5 850 7 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 3 850 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 3 850 4 , srcInfoPoints = [] } "s")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 8 850 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 8 850 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 8 850 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 8 850 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 8 850 29 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 8 850 29 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 8 850 29 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 8 850 29 , srcInfoPoints = [] } "sHGetFolderPath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 30 850 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 30 850 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 30 850 37 , srcInfoPoints = [] } "nullPtr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 38 850 57 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 38 850 57 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 38 850 57 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 38 850 57 , srcInfoPoints = [] } "cSIDL_APPDATA")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 58 850 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 58 850 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 58 850 65 , srcInfoPoints = [] } "nullPtr")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 66 850 67 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 850 66 850 67 , srcInfoPoints = [] } 0 "0"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 3 851 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 3 851 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 3 851 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 3 851 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 3 851 9 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 10 851 27 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 851 10 851 11 , SrcSpan "tests/examples/Directory.hs" 851 26 851 27 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 11 851 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 11 851 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 11 851 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 11 851 12 , srcInfoPoints = [] } "s"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 12 851 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 12 851 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 12 851 14 , srcInfoPoints = [] } "++"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 14 851 26 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 14 851 18 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 14 851 18 , srcInfoPoints = [] } '\\' "\\\\")) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 18 851 19 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 18 851 19 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 18 851 19 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 19 851 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 19 851 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 851 19 851 26 , srcInfoPoints = [] } "appName"))))))) ])) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 1 874 41 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 874 27 874 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 1 874 26 , srcInfoPoints = [] } "getUserDocumentsDirectory" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 30 874 41 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 30 874 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 30 874 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 30 874 32 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 33 874 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 33 874 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 874 33 874 41 , srcInfoPoints = [] } "FilePath")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 875 1 877 63 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 875 1 875 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 875 1 875 26 , srcInfoPoints = [] } "getUserDocumentsDirectory")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 875 27 877 63 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 875 27 875 28 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 875 29 877 63 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 875 29 875 31 , SrcSpan "tests/examples/Directory.hs" 876 3 876 3 , SrcSpan "tests/examples/Directory.hs" 905 1 905 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 3 877 63 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 3 877 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 3 876 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 3 876 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 3 876 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 3 876 16 , srcInfoPoints = [] } "modifyIOError"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 17 876 65 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 876 17 876 18 , SrcSpan "tests/examples/Directory.hs" 876 64 876 65 ] } (RightSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 18 876 64 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 876 18 876 19 , SrcSpan "tests/examples/Directory.hs" 876 63 876 64 ] } (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 19 876 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 876 19 876 20 , SrcSpan "tests/examples/Directory.hs" 876 20 876 34 , SrcSpan "tests/examples/Directory.hs" 876 34 876 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 19 876 35 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 876 19 876 20 , SrcSpan "tests/examples/Directory.hs" 876 20 876 34 , SrcSpan "tests/examples/Directory.hs" 876 34 876 35 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 20 876 34 , srcInfoPoints = [] } "ioeSetLocation"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 36 876 63 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 36 876 63 , srcInfoPoints = [] } "getUserDocumentsDirectory" "getUserDocumentsDirectory"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 66 876 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 66 876 67 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 66 876 67 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 876 68 877 63 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 876 68 876 70 , SrcSpan "tests/examples/Directory.hs" 877 3 877 3 , SrcSpan "tests/examples/Directory.hs" 877 3 877 3 , SrcSpan "tests/examples/Directory.hs" 905 1 905 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 61 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 24 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 24 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 24 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 3 877 24 , srcInfoPoints = [] } "sHGetFolderPath"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 25 877 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 25 877 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 25 877 32 , srcInfoPoints = [] } "nullPtr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 33 877 53 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 33 877 53 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 33 877 53 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 33 877 53 , srcInfoPoints = [] } "cSIDL_PERSONAL")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 54 877 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 54 877 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 54 877 61 , srcInfoPoints = [] } "nullPtr")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 62 877 63 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 877 62 877 63 , srcInfoPoints = [] } 0 "0"))) ])) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 1 905 37 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 905 23 905 25 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 1 905 22 , srcInfoPoints = [] } "getTemporaryDirectory" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 26 905 37 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 26 905 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 26 905 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 26 905 28 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 29 905 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 29 905 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 905 29 905 37 , srcInfoPoints = [] } "FilePath")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 906 1 907 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 906 1 906 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 906 1 906 22 , srcInfoPoints = [] } "getTemporaryDirectory")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 906 23 907 30 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 906 23 906 24 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 906 25 907 30 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 906 25 906 27 , SrcSpan "tests/examples/Directory.hs" 907 3 907 3 , SrcSpan "tests/examples/Directory.hs" 912 1 912 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 907 3 907 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 907 3 907 30 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 907 3 907 30 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 907 3 907 30 , srcInfoPoints = [] } "Win32") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 907 3 907 30 , srcInfoPoints = [] } "getTemporaryDirectory"))) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 912 1 912 23 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 912 14 912 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 912 1 912 13 , srcInfoPoints = [] } "exeExtension" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 912 17 912 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 912 17 912 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 912 17 912 23 , srcInfoPoints = [] } "String"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 913 1 913 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 913 1 913 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 913 1 913 13 , srcInfoPoints = [] } "exeExtension")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 913 14 913 21 , srcInfoPoints = [ SrcSpan "tests/examples/Directory.hs" 913 14 913 15 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 913 16 913 21 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Directory.hs" 913 16 913 21 , srcInfoPoints = [] } "exe" "exe"))) Nothing ] , [ Comment False (SrcSpan "tests/examples/Directory.hs" 3 1 3 78) "---------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Directory.hs" 4 1 4 5) " |" , Comment False (SrcSpan "tests/examples/Directory.hs" 5 1 5 35) " Module : System.Directory" , Comment False (SrcSpan "tests/examples/Directory.hs" 6 1 6 53) " Copyright : (c) The University of Glasgow 2001" , Comment False (SrcSpan "tests/examples/Directory.hs" 7 1 7 66) " License : BSD-style (see the file libraries/base/LICENSE)" , Comment False (SrcSpan "tests/examples/Directory.hs" 8 1 8 3) "" , Comment False (SrcSpan "tests/examples/Directory.hs" 9 1 9 40) " Maintainer : libraries@haskell.org" , Comment False (SrcSpan "tests/examples/Directory.hs" 10 1 10 25) " Stability : stable" , Comment False (SrcSpan "tests/examples/Directory.hs" 11 1 11 27) " Portability : portable" , Comment False (SrcSpan "tests/examples/Directory.hs" 12 1 12 3) "" , Comment False (SrcSpan "tests/examples/Directory.hs" 13 1 13 59) " System-independent interface to directory manipulation." , Comment False (SrcSpan "tests/examples/Directory.hs" 14 1 14 3) "" , Comment False (SrcSpan "tests/examples/Directory.hs" 15 1 15 78) "---------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Directory.hs" 19 5 19 14) " $intro" , Comment False (SrcSpan "tests/examples/Directory.hs" 21 5 21 32) " * Actions on directories" , Comment False (SrcSpan "tests/examples/Directory.hs" 22 29 22 52) " :: FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 23 33 23 64) " :: Bool -> FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 24 29 24 52) " :: FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 25 33 25 56) " :: FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 26 29 26 64) " :: FilePath -> FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 28 33 28 64) " :: FilePath -> IO [FilePath]" , Comment False (SrcSpan "tests/examples/Directory.hs" 29 33 29 50) " :: IO FilePath" , Comment False (SrcSpan "tests/examples/Directory.hs" 30 33 30 56) " :: FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 32 5 32 33) " * Pre-defined directories" , Comment False (SrcSpan "tests/examples/Directory.hs" 38 5 38 26) " * Actions on files" , Comment False (SrcSpan "tests/examples/Directory.hs" 39 25 39 48) " :: FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 40 33 40 68) " :: FilePath -> FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 41 33 41 68) " :: FilePath -> FilePath -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 47 5 47 25) " * Existence tests" , Comment False (SrcSpan "tests/examples/Directory.hs" 48 25 48 50) " :: FilePath -> IO Bool" , Comment False (SrcSpan "tests/examples/Directory.hs" 49 33 49 58) " :: FilePath -> IO Bool" , Comment False (SrcSpan "tests/examples/Directory.hs" 51 5 51 21) " * Permissions" , Comment False (SrcSpan "tests/examples/Directory.hs" 53 5 53 20) " $permissions" , Comment False (SrcSpan "tests/examples/Directory.hs" 57 21 57 46) " :: Permissions -> Bool" , Comment False (SrcSpan "tests/examples/Directory.hs" 58 21 58 46) " :: Permissions -> Bool" , Comment False (SrcSpan "tests/examples/Directory.hs" 59 21 59 46) " :: Permissions -> Bool" , Comment False (SrcSpan "tests/examples/Directory.hs" 60 21 60 46) " :: Permissions -> Bool" , Comment False (SrcSpan "tests/examples/Directory.hs" 63 33 63 65) " :: FilePath -> IO Permissions" , Comment False (SrcSpan "tests/examples/Directory.hs" 64 33 64 71) " :: FilePath -> Permissions -> IO ()" , Comment False (SrcSpan "tests/examples/Directory.hs" 67 5 67 20) " * Timestamps" , Comment False (SrcSpan "tests/examples/Directory.hs" 69 33 69 63) " :: FilePath -> IO ClockTime" , Comment True (SrcSpan "tests/examples/Directory.hs" 86 1 86 33) "# CFILES cbits/directory.c #" , Comment True (SrcSpan "tests/examples/Directory.hs" 96 1 110 3) " $intro\nA directory contains a series of entries, each of which is a named\nreference to a file system object (file, directory etc.). Some\nentries may be hidden, inaccessible, or have some administrative\nfunction (e.g. `.' or `..' under POSIX\n), but in\nthis standard all such entries are considered to form part of the\ndirectory contents. Entries in sub-directories are not, however,\nconsidered to form part of the directory contents.\n\nEach file system object is referenced by a /path/. There is\nnormally at least one absolute path to each file system object. In\nsome operating systems, it may also be possible to have paths which\nare relative to the current directory.\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 112 1 112 78) "---------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Directory.hs" 113 1 113 15) " Permissions" , Comment True (SrcSpan "tests/examples/Directory.hs" 115 1 132 3) " $permissions\n\n The 'Permissions' type is used to record whether certain operations are\n permissible on a file\\/directory. 'getPermissions' and 'setPermissions'\n get and set these permissions, respectively. Permissions apply both to\n files and directories. For directories, the executable field will be\n 'False', and for files the searchable field will be 'False'. Note that\n directories may be searchable without being readable, if permission has\n been given to use them as part of a path, but not to examine the\n directory contents.\n\nNote that to change some, but not all permissions, a construct on the following lines must be used.\n\n> makeReadable f = do\n> p <- getPermissions f\n> setPermissions f (p {readable = True})\n\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 140 1 150 3) " |The 'getPermissions' operation returns the\npermissions for the file or directory.\n\nThe operation may fail with:\n\n* 'isPermissionError' if the user is not permitted to access\n the permissions; or\n\n* 'isDoesNotExistError' if the file or directory does not exist.\n\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 155 3 155 69) " stat() does a better job of guessing the permissions on Windows" , Comment False (SrcSpan "tests/examples/Directory.hs" 156 3 156 71) " than access() does. e.g. for execute permission, it looks at the" , Comment False (SrcSpan "tests/examples/Directory.hs" 157 3 157 28) " filename extension :-)" , Comment False (SrcSpan "tests/examples/Directory.hs" 158 3 158 5) "" , Comment False (SrcSpan "tests/examples/Directory.hs" 159 3 159 78) " I tried for a while to do this properly, using the Windows security API," , Comment False (SrcSpan "tests/examples/Directory.hs" 160 3 160 79) " and eventually gave up. getPermissions is a flawed API anyway. -- SimonM" , Comment True (SrcSpan "tests/examples/Directory.hs" 177 1 187 3) " |The 'setPermissions' operation sets the\npermissions for the file or directory.\n\nThe operation may fail with:\n\n* 'isPermissionError' if the user is not permitted to set\n the permissions; or\n\n* 'isDoesNotExistError' if the file or directory does not exist.\n\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 217 1 217 78) "---------------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/Directory.hs" 218 1 218 18) " Implementation" , Comment True (SrcSpan "tests/examples/Directory.hs" 220 1 255 3) " |@'createDirectory' dir@ creates a new directory @dir@ which is\ninitially empty, or as near to empty as the operating system\nallows.\n\nThe operation may fail with:\n\n* 'isPermissionError' \\/ 'PermissionDenied'\nThe process has insufficient privileges to perform the operation.\n@[EROFS, EACCES]@\n\n* 'isAlreadyExistsError' \\/ 'AlreadyExists'\nThe operand refers to a directory that already exists.\n@ [EEXIST]@\n\n* 'HardwareFault'\nA physical I\\/O error has occurred.\n@[EIO]@\n\n* 'InvalidArgument'\nThe operand is not a valid directory name.\n@[ENAMETOOLONG, ELOOP]@\n\n* 'NoSuchThing'\nThere is no path to the directory.\n@[ENOENT, ENOTDIR]@\n\n* 'ResourceExhausted'\nInsufficient resources (virtual memory, process file descriptors,\nphysical disk space, etc.) are available to perform the operation.\n@[EDQUOT, ENOSPC, ENOMEM, EMLINK]@\n\n* 'InappropriateType'\nThe path refers to an existing non-directory object.\n@[EEXIST]@\n\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 261 1 261 70) " | @'createDirectoryIfMissing' parents dir@ creates a new directory" , Comment False (SrcSpan "tests/examples/Directory.hs" 262 1 262 63) " @dir@ if it doesn\\'t exist. If the first argument is 'True'" , Comment False (SrcSpan "tests/examples/Directory.hs" 263 1 263 77) " the function will also create all parent directories if they are missing." , Comment False (SrcSpan "tests/examples/Directory.hs" 264 38 264 66) " ^ Create its parents too?" , Comment False (SrcSpan "tests/examples/Directory.hs" 265 30 265 77) " ^ The path to the directory you want to make" , Comment False (SrcSpan "tests/examples/Directory.hs" 287 11 287 75) " createDirectory (and indeed POSIX mkdir) does not distinguish" , Comment False (SrcSpan "tests/examples/Directory.hs" 288 11 288 79) " between a dir already existing and a file already existing. So we" , Comment False (SrcSpan "tests/examples/Directory.hs" 289 11 289 79) " check for it here. Unfortunately there is a slight race condition" , Comment False (SrcSpan "tests/examples/Directory.hs" 290 11 290 77) " here, but we think it is benign. It could report an exeption in" , Comment False (SrcSpan "tests/examples/Directory.hs" 291 11 291 77) " the case that the dir did exist but another process deletes the" , Comment False (SrcSpan "tests/examples/Directory.hs" 292 11 292 75) " directory and creates a file in its place before we can check" , Comment False (SrcSpan "tests/examples/Directory.hs" 293 11 293 50) " that the directory did indeed exist." , Comment True (SrcSpan "tests/examples/Directory.hs" 302 1 341 3) " | @'removeDirectory' dir@ removes an existing directory /dir/. The\nimplementation may specify additional constraints which must be\nsatisfied before a directory can be removed (e.g. the directory has to\nbe empty, or may not be in use by other processes). It is not legal\nfor an implementation to partially remove a directory unless the\nentire directory is removed. A conformant implementation need not\nsupport directory removal in all situations (e.g. removal of the root\ndirectory).\n\nThe operation may fail with:\n\n* 'HardwareFault'\nA physical I\\/O error has occurred.\nEIO\n\n* 'InvalidArgument'\nThe operand is not a valid directory name.\n[ENAMETOOLONG, ELOOP]\n\n* 'isDoesNotExistError' \\/ 'NoSuchThing'\nThe directory does not exist.\n@[ENOENT, ENOTDIR]@\n\n* 'isPermissionError' \\/ 'PermissionDenied'\nThe process has insufficient privileges to perform the operation.\n@[EROFS, EACCES, EPERM]@\n\n* 'UnsatisfiedConstraints'\nImplementation-dependent constraints are not satisfied.\n@[EBUSY, ENOTEMPTY, EEXIST]@\n\n* 'UnsupportedOperation'\nThe implementation does not support removal in this situation.\n@[EINVAL]@\n\n* 'InappropriateType'\nThe operand refers to an existing non-directory object.\n@[ENOTDIR]@\n\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 347 1 347 75) " | @'removeDirectoryRecursive' dir@ removes an existing directory /dir/" , Comment False (SrcSpan "tests/examples/Directory.hs" 348 1 348 65) " together with its content and all subdirectories. Be careful," , Comment False (SrcSpan "tests/examples/Directory.hs" 349 1 349 70) " if the directory contains symlinks, the function will follow them." , Comment False (SrcSpan "tests/examples/Directory.hs" 360 31 360 77) " If f is not a directory, re-throw the error" , Comment True (SrcSpan "tests/examples/Directory.hs" 365 1 397 3) " |'removeFile' /file/ removes the directory entry for an existing file\n/file/, where /file/ is not itself a directory. The\nimplementation may specify additional constraints which must be\nsatisfied before a file can be removed (e.g. the file may not be in\nuse by other processes).\n\nThe operation may fail with:\n\n* 'HardwareFault'\nA physical I\\/O error has occurred.\n@[EIO]@\n\n* 'InvalidArgument'\nThe operand is not a valid file name.\n@[ENAMETOOLONG, ELOOP]@\n\n* 'isDoesNotExistError' \\/ 'NoSuchThing'\nThe file does not exist.\n@[ENOENT, ENOTDIR]@\n\n* 'isPermissionError' \\/ 'PermissionDenied'\nThe process has insufficient privileges to perform the operation.\n@[EROFS, EACCES, EPERM]@\n\n* 'UnsatisfiedConstraints'\nImplementation-dependent constraints are not satisfied.\n@[EBUSY]@\n\n* 'InappropriateType'\nThe operand refers to an existing directory.\n@[EPERM, EINVAL]@\n\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 403 1 450 3) " |@'renameDirectory' old new@ changes the name of an existing\ndirectory from /old/ to /new/. If the /new/ directory\nalready exists, it is atomically replaced by the /old/ directory.\nIf the /new/ directory is neither the /old/ directory nor an\nalias of the /old/ directory, it is removed as if by\n'removeDirectory'. A conformant implementation need not support\nrenaming directories in all situations (e.g. renaming to an existing\ndirectory, or across different physical devices), but the constraints\nmust be documented.\n\nOn Win32 platforms, @renameDirectory@ fails if the /new/ directory already\nexists.\n\nThe operation may fail with:\n\n* 'HardwareFault'\nA physical I\\/O error has occurred.\n@[EIO]@\n\n* 'InvalidArgument'\nEither operand is not a valid directory name.\n@[ENAMETOOLONG, ELOOP]@\n\n* 'isDoesNotExistError' \\/ 'NoSuchThing'\nThe original directory does not exist, or there is no path to the target.\n@[ENOENT, ENOTDIR]@\n\n* 'isPermissionError' \\/ 'PermissionDenied'\nThe process has insufficient privileges to perform the operation.\n@[EROFS, EACCES, EPERM]@\n\n* 'ResourceExhausted'\nInsufficient resources are available to perform the operation.\n@[EDQUOT, ENOSPC, ENOMEM, EMLINK]@\n\n* 'UnsatisfiedConstraints'\nImplementation-dependent constraints are not satisfied.\n@[EBUSY, ENOTEMPTY, EEXIST]@\n\n* 'UnsupportedOperation'\nThe implementation does not support renaming in this situation.\n@[EINVAL, EXDEV]@\n\n* 'InappropriateType'\nEither path refers to an existing non-directory object.\n@[ENOTDIR, EISDIR]@\n\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 454 4 454 73) " XXX this test isn't performed atomically with the following rename" , Comment False (SrcSpan "tests/examples/Directory.hs" 455 4 455 26) " ToDo: use Win32 API" , Comment True (SrcSpan "tests/examples/Directory.hs" 465 1 507 3) " |@'renameFile' old new@ changes the name of an existing file system\nobject from /old/ to /new/. If the /new/ object already\nexists, it is atomically replaced by the /old/ object. Neither\npath may refer to an existing directory. A conformant implementation\nneed not support renaming files in all situations (e.g. renaming\nacross different physical devices), but the constraints must be\ndocumented.\n\nThe operation may fail with:\n\n* 'HardwareFault'\nA physical I\\/O error has occurred.\n@[EIO]@\n\n* 'InvalidArgument'\nEither operand is not a valid file name.\n@[ENAMETOOLONG, ELOOP]@\n\n* 'isDoesNotExistError' \\/ 'NoSuchThing'\nThe original file does not exist, or there is no path to the target.\n@[ENOENT, ENOTDIR]@\n\n* 'isPermissionError' \\/ 'PermissionDenied'\nThe process has insufficient privileges to perform the operation.\n@[EROFS, EACCES, EPERM]@\n\n* 'ResourceExhausted'\nInsufficient resources are available to perform the operation.\n@[EDQUOT, ENOSPC, ENOMEM, EMLINK]@\n\n* 'UnsatisfiedConstraints'\nImplementation-dependent constraints are not satisfied.\n@[EBUSY]@\n\n* 'UnsupportedOperation'\nThe implementation does not support renaming in this situation.\n@[EXDEV]@\n\n* 'InappropriateType'\nEither path refers to an existing directory.\n@[ENOTDIR, EISDIR, EINVAL, EEXIST, ENOTEMPTY]@\n\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 511 4 511 73) " XXX this test isn't performed atomically with the following rename" , Comment False (SrcSpan "tests/examples/Directory.hs" 512 4 512 26) " ToDo: use Win32 API" , Comment True (SrcSpan "tests/examples/Directory.hs" 522 1 526 3) " |@'copyFile' old new@ copies the existing file from /old/ to /new/.\nIf the /new/ file already exists, it is atomically replaced by the /old/ file.\nNeither path may refer to an existing directory. The permissions of /old/ are\ncopied to /new/, if possible.\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 553 1 553 60) " | Given path referring to a file or directory, returns a" , Comment False (SrcSpan "tests/examples/Directory.hs" 554 1 554 64) " canonicalized path, with the intent that two paths referring" , Comment False (SrcSpan "tests/examples/Directory.hs" 555 1 555 66) " to the same file\\/directory will map to the same canonicalized" , Comment False (SrcSpan "tests/examples/Directory.hs" 556 1 556 58) " path. Note that it is impossible to guarantee that the" , Comment False (SrcSpan "tests/examples/Directory.hs" 557 1 557 67) " implication (same file\\/dir \\<=\\> same canonicalizedPath) holds" , Comment False (SrcSpan "tests/examples/Directory.hs" 558 1 558 66) " in either direction: this function can make only a best-effort" , Comment False (SrcSpan "tests/examples/Directory.hs" 559 1 559 12) " attempt." , Comment False (SrcSpan "tests/examples/Directory.hs" 564 9 564 73) " normalise does more stuff, like upper-casing the drive letter" , Comment False (SrcSpan "tests/examples/Directory.hs" 567 1 567 43) " | 'makeRelative' the current directory." , Comment False (SrcSpan "tests/examples/Directory.hs" 573 1 573 66) " | Given an executable file name, searches for such file in the" , Comment False (SrcSpan "tests/examples/Directory.hs" 574 1 574 69) " directories listed in system PATH. The returned value is the path" , Comment False (SrcSpan "tests/examples/Directory.hs" 575 1 575 70) " to the found executable or Nothing if an executable with the given" , Comment False (SrcSpan "tests/examples/Directory.hs" 576 1 576 70) " name was not found. For example (findExecutable \\\"ghc\\\") gives you" , Comment False (SrcSpan "tests/examples/Directory.hs" 577 1 577 20) " the path to GHC." , Comment False (SrcSpan "tests/examples/Directory.hs" 578 1 578 3) "" , Comment False (SrcSpan "tests/examples/Directory.hs" 579 1 579 60) " The path returned by 'findExecutable' corresponds to the" , Comment False (SrcSpan "tests/examples/Directory.hs" 580 1 580 68) " program that would be executed by 'System.Process.createProcess'" , Comment False (SrcSpan "tests/examples/Directory.hs" 581 1 581 70) " when passed the same string (as a RawCommand, not a ShellCommand)." , Comment False (SrcSpan "tests/examples/Directory.hs" 582 1 582 3) "" , Comment False (SrcSpan "tests/examples/Directory.hs" 583 1 583 71) " On Windows, 'findExecutable' calls the Win32 function 'SearchPath'," , Comment False (SrcSpan "tests/examples/Directory.hs" 584 1 584 68) " which may search other places before checking the directories in" , Comment False (SrcSpan "tests/examples/Directory.hs" 585 1 585 69) " @PATH@. Where it actually searches depends on registry settings," , Comment False (SrcSpan "tests/examples/Directory.hs" 586 1 586 61) " but notably includes the directory containing the current" , Comment False (SrcSpan "tests/examples/Directory.hs" 587 1 587 19) " executable. See" , Comment False (SrcSpan "tests/examples/Directory.hs" 588 1 588 68) " for more" , Comment False (SrcSpan "tests/examples/Directory.hs" 589 1 589 12) " details." , Comment False (SrcSpan "tests/examples/Directory.hs" 590 1 590 3) "" , Comment True (SrcSpan "tests/examples/Directory.hs" 596 1 625 3) " |@'getDirectoryContents' dir@ returns a list of /all/ entries\nin /dir/.\n\nThe operation may fail with:\n\n* 'HardwareFault'\nA physical I\\/O error has occurred.\n@[EIO]@\n\n* 'InvalidArgument'\nThe operand is not a valid directory name.\n@[ENAMETOOLONG, ELOOP]@\n\n* 'isDoesNotExistError' \\/ 'NoSuchThing'\nThe directory does not exist.\n@[ENOENT, ENOTDIR]@\n\n* 'isPermissionError' \\/ 'PermissionDenied'\nThe process has insufficient privileges to perform the operation.\n@[EACCES]@\n\n* 'ResourceExhausted'\nInsufficient resources are available to perform the operation.\n@[EMFILE, ENFILE]@\n\n* 'InappropriateType'\nThe path refers to an existing non-directory object.\n@[ENOTDIR]@\n\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 636 9 636 71) " we needn't worry about empty directories: adirectory always" , Comment False (SrcSpan "tests/examples/Directory.hs" 637 9 637 45) " has at least \".\" and \"..\" entries" , Comment False (SrcSpan "tests/examples/Directory.hs" 645 18 645 62) " no need to reverse, ordering is undefined" , Comment True (SrcSpan "tests/examples/Directory.hs" 647 1 671 3) " |If the operating system has a notion of current directories,\n'getCurrentDirectory' returns an absolute path to the\ncurrent directory of the calling process.\n\nThe operation may fail with:\n\n* 'HardwareFault'\nA physical I\\/O error has occurred.\n@[EIO]@\n\n* 'isDoesNotExistError' \\/ 'NoSuchThing'\nThere is no path referring to the current directory.\n@[EPERM, ENOENT, ESTALE...]@\n\n* 'isPermissionError' \\/ 'PermissionDenied'\nThe process has insufficient privileges to perform the operation.\n@[EACCES]@\n\n* 'ResourceExhausted'\nInsufficient resources are available to perform the operation.\n\n* 'UnsupportedOperation'\nThe operating system has no notion of current directory.\n\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 676 1 706 3) " |If the operating system has a notion of current directories,\n@'setCurrentDirectory' dir@ changes the current\ndirectory of the calling process to /dir/.\n\nThe operation may fail with:\n\n* 'HardwareFault'\nA physical I\\/O error has occurred.\n@[EIO]@\n\n* 'InvalidArgument'\nThe operand is not a valid directory name.\n@[ENAMETOOLONG, ELOOP]@\n\n* 'isDoesNotExistError' \\/ 'NoSuchThing'\nThe directory does not exist.\n@[ENOENT, ENOTDIR]@\n\n* 'isPermissionError' \\/ 'PermissionDenied'\nThe process has insufficient privileges to perform the operation.\n@[EACCES]@\n\n* 'UnsupportedOperation'\nThe operating system has no notion of current directory, or the\ncurrent directory cannot be dynamically changed.\n\n* 'InappropriateType'\nThe path refers to an existing non-directory object.\n@[ENOTDIR]@\n\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 712 1 714 3) " |The operation 'doesDirectoryExist' returns 'True' if the argument file\nexists and is a directory, and 'False' otherwise.\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 721 1 723 3) " |The operation 'doesFileExist' returns 'True'\nif the argument file exists and is not a directory, and 'False' otherwise.\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 730 1 740 3) " |The 'getModificationTime' operation returns the\nclock time at which the file or directory was last modified.\n\nThe operation may fail with:\n\n* 'isPermissionError' if the user is not permitted to access\n the modification time; or\n\n* 'isDoesNotExistError' if the file or directory does not exist.\n\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 744 2 744 24) " ToDo: use Win32 API" , Comment True (SrcSpan "tests/examples/Directory.hs" 787 1 807 3) " | Returns the current user's home directory.\n\nThe directory returned is expected to be writable by the current user,\nbut note that it isn't generally considered good practice to store\napplication-specific data here; use 'getAppUserDataDirectory'\ninstead.\n\nOn Unix, 'getHomeDirectory' returns the value of the @HOME@\nenvironment variable. On Windows, the system is queried for a\nsuitable path; a typical path might be\n@C:/Documents And Settings/user@.\n\nThe operation may fail with:\n\n* 'UnsupportedOperation'\nThe operating system has no notion of home directory.\n\n* 'isDoesNotExistError'\nThe home directory for the current user does not exist, or\ncannot be found.\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 820 1 846 3) " | Returns the pathname of a directory in which application-specific\ndata for the current user can be stored. The result of\n'getAppUserDataDirectory' for a given application is specific to\nthe current user.\n\nThe argument should be the name of the application, which will be used\nto construct the pathname (so avoid using unusual characters that\nmight result in an invalid pathname).\n\nNote: the directory may not actually exist, and may need to be created\nfirst. It is expected that the parent directory exists and is\nwritable.\n\nOn Unix, this function returns @$HOME\\/.appName@. On Windows, a\ntypical path might be\n\n> C:/Documents And Settings/user/Application Data/appName\n\nThe operation may fail with:\n\n* 'UnsupportedOperation'\nThe operating system has no notion of application-specific data directory.\n\n* 'isDoesNotExistError'\nThe home directory for the current user does not exist, or\ncannot be found.\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 853 1 873 3) " | Returns the current user's document directory.\n\nThe directory returned is expected to be writable by the current user,\nbut note that it isn't generally considered good practice to store\napplication-specific data here; use 'getAppUserDataDirectory'\ninstead.\n\nOn Unix, 'getUserDocumentsDirectory' returns the value of the @HOME@\nenvironment variable. On Windows, the system is queried for a\nsuitable path; a typical path might be\n@C:\\/Documents and Settings\\/user\\/My Documents@.\n\nThe operation may fail with:\n\n* 'UnsupportedOperation'\nThe operating system has no notion of document directory.\n\n* 'isDoesNotExistError'\nThe document directory for the current user does not exist, or\ncannot be found.\n" , Comment True (SrcSpan "tests/examples/Directory.hs" 879 1 904 3) " | Returns the current directory for temporary files.\n\nOn Unix, 'getTemporaryDirectory' returns the value of the @TMPDIR@\nenvironment variable or \\\"\\/tmp\\\" if the variable isn\\'t defined.\nOn Windows, the function checks for the existence of environment variables in\nthe following order and uses the first path found:\n\n*\nTMP environment variable.\n\n*\nTEMP environment variable.\n\n*\nUSERPROFILE environment variable.\n\n*\nThe Windows directory\n\nThe operation may fail with:\n\n* 'UnsupportedOperation'\nThe operating system has no notion of temporary directory.\n\nThe function doesn\\'t verify whether the path exists.\n" , Comment False (SrcSpan "tests/examples/Directory.hs" 909 1 909 60) " ToDo: This should be determined via autoconf (AC_EXEEXT)" , Comment False (SrcSpan "tests/examples/Directory.hs" 910 1 910 36) " | Extension for executable files" , Comment False (SrcSpan "tests/examples/Directory.hs" 911 1 911 64) " (typically @\\\"\\\"@ on Unix and @\\\"exe\\\"@ on Windows or OS\\/2)" ] ) haskell-src-exts-1.18.2/tests/examples/Directory.hs.prettyparser.golden0000644000000000000000000000000612746233113024452 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Directory.hs.prettyprinter.golden0000644000000000000000000003046612746233113024656 0ustar0000000000000000{-# LANGUAGE ForeignFunctionInterface, NondecreasingIndentation #-} module System.Directory (createDirectory, createDirectoryIfMissing, removeDirectory, removeDirectoryRecursive, renameDirectory, getDirectoryContents, getCurrentDirectory, setCurrentDirectory, getHomeDirectory, getAppUserDataDirectory, getUserDocumentsDirectory, getTemporaryDirectory, removeFile, renameFile, copyFile, canonicalizePath, makeRelativeToCurrentDirectory, findExecutable, doesFileExist, doesDirectoryExist, Permissions(Permissions, readable, writable, executable, searchable), getPermissions, setPermissions, copyPermissions, getModificationTime) where import Prelude hiding (catch) import qualified Prelude import Control.Monad (guard) import System.Environment (getEnv) import System.FilePath import System.IO import System.IO.Error hiding (catch, try) import Control.Monad (when, unless) import Control.Exception.Base import Foreign import Foreign.C import System.Time (ClockTime(..)) import GHC.IO.Exception (IOException(..), IOErrorType(..), ioException) import System.Posix.Types import System.Posix.Internals import qualified System.Win32 as Win32 data Permissions = Permissions{readable, writable, executable, searchable :: Bool} deriving (Eq, Ord, Read, Show) getPermissions :: FilePath -> IO Permissions getPermissions name = do withFilePath name $ \ s -> do allocaBytes sizeof_stat $ \ p_stat -> do throwErrnoIfMinus1_ "getPermissions" $ c_stat s p_stat mode <- st_mode p_stat let usr_read = mode .&. s_IRUSR let usr_write = mode .&. s_IWUSR let usr_exec = mode .&. s_IXUSR let is_dir = mode .&. s_IFDIR return (Permissions{readable = usr_read /= 0, writable = usr_write /= 0, executable = is_dir == 0 && usr_exec /= 0, searchable = is_dir /= 0 && usr_exec /= 0}) setPermissions :: FilePath -> Permissions -> IO () setPermissions name (Permissions r w e s) = do allocaBytes sizeof_stat $ \ p_stat -> do withFilePath name $ \ p_name -> do throwErrnoIfMinus1_ "setPermissions" $ do c_stat p_name p_stat mode <- st_mode p_stat let mode1 = modifyBit r mode s_IRUSR let mode2 = modifyBit w mode1 s_IWUSR let mode3 = modifyBit (e || s) mode2 s_IXUSR c_wchmod p_name mode3 where modifyBit :: Bool -> CMode -> CMode -> CMode modifyBit False m b = m .&. (complement b) modifyBit True m b = m .|. b foreign import ccall unsafe "_wchmod" c_wchmod :: CWString -> CMode -> IO CInt copyPermissions :: FilePath -> FilePath -> IO () copyPermissions source dest = do allocaBytes sizeof_stat $ \ p_stat -> do withFilePath source $ \ p_source -> do withFilePath dest $ \ p_dest -> do throwErrnoIfMinus1_ "copyPermissions" $ c_stat p_source p_stat mode <- st_mode p_stat throwErrnoIfMinus1_ "copyPermissions" $ c_wchmod p_dest mode createDirectory :: FilePath -> IO () createDirectory path = do Win32.createDirectory path Nothing createDirectoryIfMissing :: Bool -> FilePath -> IO () createDirectoryIfMissing create_parents path0 | create_parents = createDirs (parents path0) | otherwise = createDirs (take 1 (parents path0)) where parents = reverse . scanl1 () . splitDirectories . normalise createDirs [] = return () createDirs (dir : []) = createDir dir throw createDirs (dir : dirs) = createDir dir $ \ _ -> do createDirs dirs createDir dir throw createDir :: FilePath -> (IOException -> IO ()) -> IO () createDir dir notExistHandler = do r <- try $ createDirectory dir case (r :: Either IOException ()) of Right () -> return () Left e | isDoesNotExistError e -> notExistHandler e | isAlreadyExistsError e -> (do withFileStatus "createDirectoryIfMissing" dir $ \ st -> do isDir <- isDirectory st if isDir then return () else throw e) `catch` ((\ _ -> return ()) :: IOException -> IO ()) | otherwise -> throw e removeDirectory :: FilePath -> IO () removeDirectory path = Win32.removeDirectory path removeDirectoryRecursive :: FilePath -> IO () removeDirectoryRecursive startLoc = do cont <- getDirectoryContents startLoc sequence_ [rm (startLoc x) | x <- cont, x /= "." && x /= ".."] removeDirectory startLoc where rm :: FilePath -> IO () rm f = do temp <- try (removeFile f) case temp of Left e -> do isDir <- doesDirectoryExist f unless isDir $ throw (e :: SomeException) removeDirectoryRecursive f Right _ -> return () removeFile :: FilePath -> IO () removeFile path = Win32.deleteFile path renameDirectory :: FilePath -> FilePath -> IO () renameDirectory opath npath = do withFileStatus "renameDirectory" opath $ \ st -> do is_dir <- isDirectory st if (not is_dir) then ioException (ioeSetErrorString (mkIOError InappropriateType "renameDirectory" Nothing (Just opath)) "not a directory") else do Win32.moveFileEx opath npath Win32.mOVEFILE_REPLACE_EXISTING renameFile :: FilePath -> FilePath -> IO () renameFile opath npath = do withFileOrSymlinkStatus "renameFile" opath $ \ st -> do is_dir <- isDirectory st if is_dir then ioException (ioeSetErrorString (mkIOError InappropriateType "renameFile" Nothing (Just opath)) "is a directory") else do Win32.moveFileEx opath npath Win32.mOVEFILE_REPLACE_EXISTING copyFile :: FilePath -> FilePath -> IO () copyFile fromFPath toFPath = copy `Prelude.catch` (\ exc -> throw $ ioeSetLocation exc "copyFile") where copy = bracket (openBinaryFile fromFPath ReadMode) hClose $ \ hFrom -> bracketOnError openTmp cleanTmp $ \ (tmpFPath, hTmp) -> do allocaBytes bufferSize $ copyContents hFrom hTmp hClose hTmp ignoreIOExceptions $ copyPermissions fromFPath tmpFPath renameFile tmpFPath toFPath openTmp = openBinaryTempFile (takeDirectory toFPath) ".copyFile.tmp" cleanTmp (tmpFPath, hTmp) = do ignoreIOExceptions $ hClose hTmp ignoreIOExceptions $ removeFile tmpFPath bufferSize = 1024 copyContents hFrom hTo buffer = do count <- hGetBuf hFrom buffer bufferSize when (count > 0) $ do hPutBuf hTo buffer count copyContents hFrom hTo buffer ignoreIOExceptions io = io `catch` ioExceptionIgnorer ioExceptionIgnorer :: IOException -> IO () ioExceptionIgnorer _ = return () canonicalizePath :: FilePath -> IO FilePath canonicalizePath fpath = do path <- Win32.getFullPathName fpath return (normalise path) makeRelativeToCurrentDirectory :: FilePath -> IO FilePath makeRelativeToCurrentDirectory x = do cur <- getCurrentDirectory return $ makeRelative cur x findExecutable :: String -> IO (Maybe FilePath) findExecutable binary = Win32.searchPath Nothing binary ('.' : exeExtension) getDirectoryContents :: FilePath -> IO [FilePath] getDirectoryContents path = modifyIOError ((`ioeSetFileName` path) . (`ioeSetLocation` "getDirectoryContents")) $ do bracket (Win32.findFirstFile (path "*")) (\ (h, _) -> Win32.findClose h) (\ (h, fdat) -> loop h fdat []) where loop :: Win32.HANDLE -> Win32.FindData -> [FilePath] -> IO [FilePath] loop h fdat acc = do filename <- Win32.getFindDataFileName fdat more <- Win32.findNextFile h fdat if more then loop h fdat (filename : acc) else return (filename : acc) getCurrentDirectory :: IO FilePath getCurrentDirectory = do Win32.getCurrentDirectory setCurrentDirectory :: FilePath -> IO () setCurrentDirectory path = Win32.setCurrentDirectory path doesDirectoryExist :: FilePath -> IO Bool doesDirectoryExist name = (withFileStatus "doesDirectoryExist" name $ \ st -> isDirectory st) `catch` ((\ _ -> return False) :: IOException -> IO Bool) doesFileExist :: FilePath -> IO Bool doesFileExist name = (withFileStatus "doesFileExist" name $ \ st -> do b <- isDirectory st return (not b)) `catch` ((\ _ -> return False) :: IOException -> IO Bool) getModificationTime :: FilePath -> IO ClockTime getModificationTime name = do withFileStatus "getModificationTime" name $ \ st -> do modificationTime st withFileStatus :: String -> FilePath -> (Ptr CStat -> IO a) -> IO a withFileStatus loc name f = do modifyIOError (`ioeSetFileName` name) $ allocaBytes sizeof_stat $ \ p -> withFilePath (fileNameEndClean name) $ \ s -> do throwErrnoIfMinus1Retry_ loc (c_stat s p) withFileOrSymlinkStatus :: String -> FilePath -> (Ptr CStat -> IO a) -> IO a withFileOrSymlinkStatus loc name f = do modifyIOError (`ioeSetFileName` name) $ allocaBytes sizeof_stat $ \ p -> withFilePath name $ \ s -> do throwErrnoIfMinus1Retry_ loc (lstat s p) modificationTime :: Ptr CStat -> IO ClockTime modificationTime stat = do mtime <- st_mtime stat let realToInteger = round . realToFrac :: Real a => a -> Integer return (TOD (realToInteger (mtime :: CTime)) 0) isDirectory :: Ptr CStat -> IO Bool isDirectory stat = do mode <- st_mode stat return (s_isdir mode) fileNameEndClean :: String -> String fileNameEndClean name = if isDrive name then addTrailingPathSeparator name else dropTrailingPathSeparator name foreign import ccall unsafe "HsDirectory.h __hscore_S_IRUSR" s_IRUSR :: CMode foreign import ccall unsafe "HsDirectory.h __hscore_S_IWUSR" s_IWUSR :: CMode foreign import ccall unsafe "HsDirectory.h __hscore_S_IXUSR" s_IXUSR :: CMode foreign import ccall unsafe "__hscore_S_IFDIR" s_IFDIR :: CMode foreign import ccall unsafe "__hscore_long_path_size" long_path_size :: Int getHomeDirectory :: IO FilePath getHomeDirectory = modifyIOError ((`ioeSetLocation` "getHomeDirectory")) $ do r <- try $ Win32.sHGetFolderPath nullPtr Win32.cSIDL_PROFILE nullPtr 0 case (r :: Either IOException String) of Right s -> return s Left _ -> do r1 <- try $ Win32.sHGetFolderPath nullPtr Win32.cSIDL_WINDOWS nullPtr 0 case r1 of Right s -> return s Left e -> ioError (e :: IOException) getAppUserDataDirectory :: String -> IO FilePath getAppUserDataDirectory appName = do modifyIOError ((`ioeSetLocation` "getAppUserDataDirectory")) $ do s <- Win32.sHGetFolderPath nullPtr Win32.cSIDL_APPDATA nullPtr 0 return (s ++ '\\' : appName) getUserDocumentsDirectory :: IO FilePath getUserDocumentsDirectory = do modifyIOError ((`ioeSetLocation` "getUserDocumentsDirectory")) $ do Win32.sHGetFolderPath nullPtr Win32.cSIDL_PERSONAL nullPtr 0 getTemporaryDirectory :: IO FilePath getTemporaryDirectory = do Win32.getTemporaryDirectory exeExtension :: String exeExtension = "exe" haskell-src-exts-1.18.2/tests/examples/DoRec.hs0000644000000000000000000000010412746233113017467 0ustar0000000000000000{-# LANGUAGE DoRec #-} main = do rec let x = 1 return () haskell-src-exts-1.18.2/tests/examples/DoRec.hs.exactprinter.golden0000644000000000000000000000000612746233113023446 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DoRec.hs.parser.golden0000644000000000000000000001761212746233113022245 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 1 1 1 1 , SrcSpan "tests/examples/DoRec.hs" 3 1 3 1 , SrcSpan "tests/examples/DoRec.hs" 3 1 3 1 , SrcSpan "tests/examples/DoRec.hs" 3 1 3 1 , SrcSpan "tests/examples/DoRec.hs" 5 1 5 1 , SrcSpan "tests/examples/DoRec.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 1 1 1 13 , SrcSpan "tests/examples/DoRec.hs" 1 20 1 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 1 14 1 19 , srcInfoPoints = [] } "DoRec" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 1 4 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 1 3 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 1 3 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 6 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 3 6 3 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 8 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 3 8 3 10 , SrcSpan "tests/examples/DoRec.hs" 3 11 3 11 , SrcSpan "tests/examples/DoRec.hs" 4 11 4 11 , SrcSpan "tests/examples/DoRec.hs" 5 1 5 0 ] } [ RecStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 11 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 3 11 3 14 , SrcSpan "tests/examples/DoRec.hs" 3 15 3 15 , SrcSpan "tests/examples/DoRec.hs" 4 11 4 0 ] } [ LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 15 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 3 15 3 18 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 19 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 3 19 3 19 , SrcSpan "tests/examples/DoRec.hs" 4 11 4 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 19 3 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 19 3 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 19 3 20 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 21 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 3 21 3 22 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 23 3 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 3 23 3 24 , srcInfoPoints = [] } 1 "1"))) Nothing ]) ] , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 4 11 4 20 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 4 11 4 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 4 11 4 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 4 11 4 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 4 11 4 17 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 4 18 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 4 18 4 19 , SrcSpan "tests/examples/DoRec.hs" 4 19 4 20 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 4 18 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 4 18 4 19 , SrcSpan "tests/examples/DoRec.hs" 4 19 4 20 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoRec.hs" 4 18 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/DoRec.hs" 4 18 4 19 , SrcSpan "tests/examples/DoRec.hs" 4 19 4 20 ] })))) ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/DoRec.hs.prettyparser.golden0000644000000000000000000000000612746233113023502 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DoRec.hs.prettyprinter.golden0000644000000000000000000000010212746233113023666 0ustar0000000000000000{-# LANGUAGE DoRec #-} main = do rec let x = 1 return () haskell-src-exts-1.18.2/tests/examples/DoubleHashOp.hs0000644000000000000000000000030712746233113021015 0ustar0000000000000000{-# LANGUAGE UnboxedTuples #-} module DoubleHashOp where (##) :: a -> b -> Int a ## b = 0 (#*) :: a -> b -> Int a #* b = 1 -- This still does not work though: -- (#) :: a -> b -> Int -- a # b = 2 haskell-src-exts-1.18.2/tests/examples/DoubleHashOp.hs.exactprinter.golden0000644000000000000000000000000612746233113024767 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DoubleHashOp.hs.parser.golden0000644000000000000000000003005512746233113023562 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 1 1 13 1 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 1 1 1 1 , SrcSpan "tests/examples/DoubleHashOp.hs" 2 1 2 1 , SrcSpan "tests/examples/DoubleHashOp.hs" 2 1 2 1 , SrcSpan "tests/examples/DoubleHashOp.hs" 4 1 4 1 , SrcSpan "tests/examples/DoubleHashOp.hs" 5 1 5 1 , SrcSpan "tests/examples/DoubleHashOp.hs" 7 1 7 1 , SrcSpan "tests/examples/DoubleHashOp.hs" 8 1 8 1 , SrcSpan "tests/examples/DoubleHashOp.hs" 13 1 13 1 , SrcSpan "tests/examples/DoubleHashOp.hs" 13 1 13 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 2 1 2 26 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 2 1 2 7 , SrcSpan "tests/examples/DoubleHashOp.hs" 2 21 2 26 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 2 8 2 20 , srcInfoPoints = [] } "DoubleHashOp") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 1 1 1 13 , SrcSpan "tests/examples/DoubleHashOp.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 1 14 1 27 , srcInfoPoints = [] } "UnboxedTuples" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 1 4 22 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 4 6 4 8 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 1 4 5 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 4 1 4 2 , SrcSpan "tests/examples/DoubleHashOp.hs" 4 2 4 4 , SrcSpan "tests/examples/DoubleHashOp.hs" 4 4 4 5 ] } "##" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 9 4 22 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 4 11 4 13 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 9 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 9 4 10 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 14 4 22 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 4 16 4 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 14 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 14 4 15 , srcInfoPoints = [] } "b")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 19 4 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 19 4 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 4 19 4 22 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 1 5 11 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 1 5 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 1 5 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 1 5 2 , srcInfoPoints = [] } "a")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 3 5 5 , srcInfoPoints = [] } "##") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 6 5 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 6 5 7 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 8 5 11 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 5 8 5 9 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 10 5 11 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 5 10 5 11 , srcInfoPoints = [] } 0 "0"))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 1 7 22 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 7 6 7 8 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 1 7 5 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 7 1 7 2 , SrcSpan "tests/examples/DoubleHashOp.hs" 7 2 7 4 , SrcSpan "tests/examples/DoubleHashOp.hs" 7 4 7 5 ] } "#*" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 9 7 22 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 7 11 7 13 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 9 7 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 9 7 10 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 14 7 22 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 7 16 7 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 14 7 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 14 7 15 , srcInfoPoints = [] } "b")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 19 7 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 19 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 7 19 7 22 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 1 8 11 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 1 8 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 1 8 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 1 8 2 , srcInfoPoints = [] } "a")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 3 8 5 , srcInfoPoints = [] } "#*") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 6 8 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 6 8 7 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 8 8 11 , srcInfoPoints = [ SrcSpan "tests/examples/DoubleHashOp.hs" 8 8 8 9 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 10 8 11 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DoubleHashOp.hs" 8 10 8 11 , srcInfoPoints = [] } 1 "1"))) Nothing ] ] , [ Comment False (SrcSpan "tests/examples/DoubleHashOp.hs" 10 1 10 36) " This still does not work though:" , Comment False (SrcSpan "tests/examples/DoubleHashOp.hs" 11 1 11 24) " (#) :: a -> b -> Int" , Comment False (SrcSpan "tests/examples/DoubleHashOp.hs" 12 1 12 13) " a # b = 2" ] ) haskell-src-exts-1.18.2/tests/examples/DoubleHashOp.hs.prettyparser.golden0000644000000000000000000000000612746233113025023 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DoubleHashOp.hs.prettyprinter.golden0000644000000000000000000000020112746233113025207 0ustar0000000000000000{-# LANGUAGE UnboxedTuples #-} module DoubleHashOp where ( ## ) :: a -> b -> Int a ## b = 0 ( #* ) :: a -> b -> Int a #* b = 1 haskell-src-exts-1.18.2/tests/examples/DsStrictData.hs0000644000000000000000000000262212746233113021033 0ustar0000000000000000{-# LANGUAGE ScopedTypeVariables, StrictData, GADTs #-} -- | Tests the StrictData LANGUAGE pragma. module Main where import qualified Control.Exception as E import System.IO.Unsafe (unsafePerformIO) data Strict a = S a data Strict2 b = S2 !b data Strict3 c where S3 :: c -> Strict3 c data UStrict = US {-# UNPACK #-} Int data Lazy d = L ~d data Lazy2 e where L2 :: ~e -> Lazy2 e main :: IO () main = do print (isBottom (S bottom)) print (isBottom (S2 bottom)) print (isBottom (US bottom)) print (isBottom (S3 bottom)) putStrLn "" print (not (isBottom (L bottom))) print (not (isBottom (L2 bottom))) print (not (isBottom (Just bottom))) -- sanity check ------------------------------------------------------------------------ -- Support for testing for bottom bottom :: a bottom = error "_|_" isBottom :: a -> Bool isBottom f = unsafePerformIO $ (E.evaluate f >> return False) `E.catches` [ E.Handler (\(_ :: E.ArrayException) -> return True) , E.Handler (\(_ :: E.ErrorCall) -> return True) , E.Handler (\(_ :: E.NoMethodError) -> return True) , E.Handler (\(_ :: E.NonTermination) -> return True) , E.Handler (\(_ :: E.PatternMatchFail) -> return True) , E.Handler (\(_ :: E.RecConError) -> return True) , E.Handler (\(_ :: E.RecSelError) -> return True) , E.Handler (\(_ :: E.RecUpdError) -> return True) ] haskell-src-exts-1.18.2/tests/examples/DsStrictData.hs.exactprinter.golden0000644000000000000000000000000612746233113025003 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DsStrictData.hs.parser.golden0000644000000000000000000056657612746233113023624 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 1 1 49 1 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 1 1 1 1 , SrcSpan "tests/examples/DsStrictData.hs" 4 1 4 1 , SrcSpan "tests/examples/DsStrictData.hs" 4 1 4 1 , SrcSpan "tests/examples/DsStrictData.hs" 6 1 6 1 , SrcSpan "tests/examples/DsStrictData.hs" 7 1 7 1 , SrcSpan "tests/examples/DsStrictData.hs" 9 1 9 1 , SrcSpan "tests/examples/DsStrictData.hs" 10 1 10 1 , SrcSpan "tests/examples/DsStrictData.hs" 11 1 11 1 , SrcSpan "tests/examples/DsStrictData.hs" 14 1 14 1 , SrcSpan "tests/examples/DsStrictData.hs" 16 1 16 1 , SrcSpan "tests/examples/DsStrictData.hs" 17 1 17 1 , SrcSpan "tests/examples/DsStrictData.hs" 20 1 20 1 , SrcSpan "tests/examples/DsStrictData.hs" 21 1 21 1 , SrcSpan "tests/examples/DsStrictData.hs" 34 1 34 1 , SrcSpan "tests/examples/DsStrictData.hs" 35 1 35 1 , SrcSpan "tests/examples/DsStrictData.hs" 37 1 37 1 , SrcSpan "tests/examples/DsStrictData.hs" 38 1 38 1 , SrcSpan "tests/examples/DsStrictData.hs" 49 1 49 1 , SrcSpan "tests/examples/DsStrictData.hs" 49 1 49 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 4 1 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 4 1 4 7 , SrcSpan "tests/examples/DsStrictData.hs" 4 13 4 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 4 8 4 12 , srcInfoPoints = [] } "Main") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 1 1 1 56 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 1 1 1 13 , SrcSpan "tests/examples/DsStrictData.hs" 1 33 1 34 , SrcSpan "tests/examples/DsStrictData.hs" 1 45 1 46 , SrcSpan "tests/examples/DsStrictData.hs" 1 53 1 56 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 1 14 1 33 , srcInfoPoints = [] } "ScopedTypeVariables" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 1 35 1 45 , srcInfoPoints = [] } "StrictData" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 1 47 1 52 , srcInfoPoints = [] } "GADTs" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 6 1 6 40 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 6 1 6 7 , SrcSpan "tests/examples/DsStrictData.hs" 6 8 6 17 , SrcSpan "tests/examples/DsStrictData.hs" 6 36 6 38 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 6 18 6 35 , srcInfoPoints = [] } "Control.Exception" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 6 39 6 40 , srcInfoPoints = [] } "E") , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 7 1 7 42 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 7 1 7 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 7 8 7 24 , srcInfoPoints = [] } "System.IO.Unsafe" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 7 25 7 42 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 7 25 7 26 , SrcSpan "tests/examples/DsStrictData.hs" 7 41 7 42 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 7 26 7 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 7 26 7 41 , srcInfoPoints = [] } "unsafePerformIO") ]) } ] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 1 9 20 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 9 15 9 16 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 1 9 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 6 9 14 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 6 9 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 6 9 12 , srcInfoPoints = [] } "Strict")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 13 9 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 13 9 14 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 17 9 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 17 9 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 17 9 18 , srcInfoPoints = [] } "S") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 19 9 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 9 19 9 20 , srcInfoPoints = [] } "a") ]) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 1 10 23 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 10 16 10 17 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 1 10 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 6 10 15 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 6 10 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 6 10 13 , srcInfoPoints = [] } "Strict2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 14 10 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 14 10 15 , srcInfoPoints = [] } "b"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 18 10 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 18 10 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 18 10 20 , srcInfoPoints = [] } "S2") [ TyBang SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 21 10 23 , srcInfoPoints = [] } (BangedTy SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 21 10 22 , srcInfoPoints = [] }) (NoUnpackPragma SrcSpanInfo { srcInfoSpan = SrcSpan "" (-1) (-1) (-1) (-1) , srcInfoPoints = [] }) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 22 10 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 10 22 10 23 , srcInfoPoints = [] } "b")) ]) ] Nothing , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 11 1 14 0 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 11 16 11 21 , SrcSpan "tests/examples/DsStrictData.hs" 12 3 12 3 , SrcSpan "tests/examples/DsStrictData.hs" 14 1 14 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 11 1 11 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 11 6 11 15 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 11 6 11 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 11 6 11 13 , srcInfoPoints = [] } "Strict3")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 11 14 11 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 11 14 11 15 , srcInfoPoints = [] } "c"))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 3 12 23 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 12 6 12 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 3 12 5 , srcInfoPoints = [] } "S3") Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 9 12 23 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 12 11 12 13 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 9 12 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 9 12 10 , srcInfoPoints = [] } "c")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 14 12 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 14 12 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 14 12 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 14 12 21 , srcInfoPoints = [] } "Strict3"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 22 12 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 12 22 12 23 , srcInfoPoints = [] } "c")))) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 1 14 37 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 14 14 14 15 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 1 14 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 6 14 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 6 14 13 , srcInfoPoints = [] } "UStrict")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 16 14 37 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 16 14 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 16 14 18 , srcInfoPoints = [] } "US") [ TyBang SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 19 14 37 , srcInfoPoints = [] } (NoStrictAnnot SrcSpanInfo { srcInfoSpan = SrcSpan "" (-1) (-1) (-1) (-1) , srcInfoPoints = [] }) (Unpack SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 19 14 33 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 14 19 14 29 , SrcSpan "tests/examples/DsStrictData.hs" 14 30 14 33 ] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 34 14 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 34 14 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 14 34 14 37 , srcInfoPoints = [] } "Int"))) ]) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 1 16 19 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 16 13 16 14 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 1 16 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 6 16 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 6 16 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 6 16 10 , srcInfoPoints = [] } "Lazy")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 11 16 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 11 16 12 , srcInfoPoints = [] } "d"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 15 16 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 15 16 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 15 16 16 , srcInfoPoints = [] } "L") [ TyBang SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 17 16 19 , srcInfoPoints = [] } (LazyTy SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 17 16 18 , srcInfoPoints = [] }) (NoUnpackPragma SrcSpanInfo { srcInfoSpan = SrcSpan "" (-1) (-1) (-1) (-1) , srcInfoPoints = [] }) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 18 16 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 16 18 16 19 , srcInfoPoints = [] } "d")) ]) ] Nothing , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 17 1 20 0 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 17 14 17 19 , SrcSpan "tests/examples/DsStrictData.hs" 18 3 18 3 , SrcSpan "tests/examples/DsStrictData.hs" 20 1 20 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 17 1 17 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 17 6 17 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 17 6 17 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 17 6 17 11 , srcInfoPoints = [] } "Lazy2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 17 12 17 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 17 12 17 13 , srcInfoPoints = [] } "e"))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 3 18 22 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 18 6 18 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 3 18 5 , srcInfoPoints = [] } "L2") Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 9 18 22 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 18 12 18 14 ] } (TyBang SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 9 18 11 , srcInfoPoints = [] } (LazyTy SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 9 18 10 , srcInfoPoints = [] }) (NoUnpackPragma SrcSpanInfo { srcInfoSpan = SrcSpan "" (-1) (-1) (-1) (-1) , srcInfoPoints = [] }) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 10 18 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 10 18 11 , srcInfoPoints = [] } "e"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 15 18 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 15 18 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 15 18 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 15 18 20 , srcInfoPoints = [] } "Lazy2"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 21 18 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 18 21 18 22 , srcInfoPoints = [] } "e")))) ] Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 1 20 14 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 20 6 20 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 1 20 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 9 20 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 9 20 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 9 20 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 9 20 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 12 20 14 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 20 12 20 13 , SrcSpan "tests/examples/DsStrictData.hs" 20 13 20 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 12 20 14 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 20 12 20 13 , SrcSpan "tests/examples/DsStrictData.hs" 20 13 20 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 20 12 20 14 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 20 12 20 13 , SrcSpan "tests/examples/DsStrictData.hs" 20 13 20 14 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 21 1 29 42 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 21 1 21 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 21 1 21 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 21 6 29 42 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 21 6 21 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 3 29 42 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 22 3 22 5 , SrcSpan "tests/examples/DsStrictData.hs" 22 6 22 6 , SrcSpan "tests/examples/DsStrictData.hs" 23 6 23 6 , SrcSpan "tests/examples/DsStrictData.hs" 24 6 24 6 , SrcSpan "tests/examples/DsStrictData.hs" 25 6 25 6 , SrcSpan "tests/examples/DsStrictData.hs" 26 6 26 6 , SrcSpan "tests/examples/DsStrictData.hs" 27 6 27 6 , SrcSpan "tests/examples/DsStrictData.hs" 28 6 28 6 , SrcSpan "tests/examples/DsStrictData.hs" 29 6 29 6 , SrcSpan "tests/examples/DsStrictData.hs" 34 1 34 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 6 22 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 6 22 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 6 22 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 6 22 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 6 22 11 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 12 22 33 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 22 12 22 13 , SrcSpan "tests/examples/DsStrictData.hs" 22 32 22 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 13 22 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 13 22 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 13 22 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 13 22 21 , srcInfoPoints = [] } "isBottom"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 22 22 32 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 22 22 22 23 , SrcSpan "tests/examples/DsStrictData.hs" 22 31 22 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 23 22 31 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 23 22 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 23 22 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 23 22 24 , srcInfoPoints = [] } "S"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 25 22 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 25 22 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 22 25 22 31 , srcInfoPoints = [] } "bottom")))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 6 23 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 6 23 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 6 23 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 6 23 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 6 23 11 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 12 23 34 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 23 12 23 13 , SrcSpan "tests/examples/DsStrictData.hs" 23 33 23 34 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 13 23 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 13 23 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 13 23 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 13 23 21 , srcInfoPoints = [] } "isBottom"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 22 23 33 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 23 22 23 23 , SrcSpan "tests/examples/DsStrictData.hs" 23 32 23 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 23 23 32 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 23 23 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 23 23 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 23 23 25 , srcInfoPoints = [] } "S2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 26 23 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 26 23 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 23 26 23 32 , srcInfoPoints = [] } "bottom")))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 6 24 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 6 24 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 6 24 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 6 24 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 6 24 11 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 12 24 34 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 24 12 24 13 , SrcSpan "tests/examples/DsStrictData.hs" 24 33 24 34 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 13 24 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 13 24 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 13 24 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 13 24 21 , srcInfoPoints = [] } "isBottom"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 22 24 33 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 24 22 24 23 , SrcSpan "tests/examples/DsStrictData.hs" 24 32 24 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 23 24 32 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 23 24 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 23 24 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 23 24 25 , srcInfoPoints = [] } "US"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 26 24 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 26 24 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 24 26 24 32 , srcInfoPoints = [] } "bottom")))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 6 25 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 6 25 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 6 25 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 6 25 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 6 25 11 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 12 25 34 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 25 12 25 13 , SrcSpan "tests/examples/DsStrictData.hs" 25 33 25 34 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 13 25 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 13 25 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 13 25 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 13 25 21 , srcInfoPoints = [] } "isBottom"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 22 25 33 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 25 22 25 23 , SrcSpan "tests/examples/DsStrictData.hs" 25 32 25 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 23 25 32 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 23 25 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 23 25 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 23 25 25 , srcInfoPoints = [] } "S3"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 26 25 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 26 25 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 25 26 25 32 , srcInfoPoints = [] } "bottom")))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 26 6 26 17 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 26 6 26 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 26 6 26 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 26 6 26 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 26 6 26 14 , srcInfoPoints = [] } "putStrLn"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 26 15 26 17 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 26 15 26 17 , srcInfoPoints = [] } "" ""))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 6 27 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 6 27 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 6 27 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 6 27 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 6 27 11 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 12 27 39 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 27 12 27 13 , SrcSpan "tests/examples/DsStrictData.hs" 27 38 27 39 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 13 27 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 13 27 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 13 27 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 13 27 16 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 17 27 38 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 27 17 27 18 , SrcSpan "tests/examples/DsStrictData.hs" 27 37 27 38 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 18 27 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 18 27 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 18 27 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 18 27 26 , srcInfoPoints = [] } "isBottom"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 27 27 37 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 27 27 27 28 , SrcSpan "tests/examples/DsStrictData.hs" 27 36 27 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 28 27 36 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 28 27 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 28 27 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 28 27 29 , srcInfoPoints = [] } "L"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 30 27 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 30 27 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 27 30 27 36 , srcInfoPoints = [] } "bottom")))))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 6 28 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 6 28 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 6 28 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 6 28 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 6 28 11 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 12 28 40 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 28 12 28 13 , SrcSpan "tests/examples/DsStrictData.hs" 28 39 28 40 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 13 28 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 13 28 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 13 28 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 13 28 16 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 17 28 39 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 28 17 28 18 , SrcSpan "tests/examples/DsStrictData.hs" 28 38 28 39 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 18 28 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 18 28 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 18 28 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 18 28 26 , srcInfoPoints = [] } "isBottom"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 27 28 38 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 28 27 28 28 , SrcSpan "tests/examples/DsStrictData.hs" 28 37 28 38 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 28 28 37 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 28 28 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 28 28 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 28 28 30 , srcInfoPoints = [] } "L2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 31 28 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 31 28 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 28 31 28 37 , srcInfoPoints = [] } "bottom")))))))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 6 29 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 6 29 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 6 29 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 6 29 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 6 29 11 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 12 29 42 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 29 12 29 13 , SrcSpan "tests/examples/DsStrictData.hs" 29 41 29 42 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 13 29 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 13 29 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 13 29 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 13 29 16 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 17 29 41 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 29 17 29 18 , SrcSpan "tests/examples/DsStrictData.hs" 29 40 29 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 18 29 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 18 29 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 18 29 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 18 29 26 , srcInfoPoints = [] } "isBottom"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 27 29 40 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 29 27 29 28 , SrcSpan "tests/examples/DsStrictData.hs" 29 39 29 40 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 28 29 39 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 28 29 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 28 29 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 28 29 32 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 33 29 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 33 29 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 29 33 29 39 , srcInfoPoints = [] } "bottom")))))))))) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 34 1 34 12 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 34 8 34 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 34 1 34 7 , srcInfoPoints = [] } "bottom" ] (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 34 11 34 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 34 11 34 12 , srcInfoPoints = [] } "a")) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 1 35 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 1 35 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 1 35 7 , srcInfoPoints = [] } "bottom")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 8 35 21 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 35 8 35 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 10 35 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 10 35 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 10 35 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 10 35 15 , srcInfoPoints = [] } "error"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 16 35 21 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 35 16 35 21 , srcInfoPoints = [] } "_|_" "_|_")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 37 1 37 22 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 37 10 37 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 37 1 37 9 , srcInfoPoints = [] } "isBottom" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 37 13 37 22 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 37 15 37 17 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 37 13 37 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 37 13 37 14 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 37 18 37 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 37 18 37 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 37 18 37 22 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 1 48 6 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 1 48 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 1 38 9 , srcInfoPoints = [] } "isBottom") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 10 38 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 10 38 11 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 12 48 6 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 38 12 38 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 14 48 6 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 14 38 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 14 38 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 14 38 29 , srcInfoPoints = [] } "unsafePerformIO"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 30 38 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 30 38 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 38 30 38 31 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 3 48 6 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 3 39 33 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 39 3 39 4 , SrcSpan "tests/examples/DsStrictData.hs" 39 32 39 33 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 4 39 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 4 39 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 4 39 14 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 4 39 14 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 4 39 14 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 4 39 14 , srcInfoPoints = [] } "evaluate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 15 39 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 15 39 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 15 39 16 , srcInfoPoints = [] } "f")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 17 39 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 17 39 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 17 39 19 , srcInfoPoints = [] } ">>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 20 39 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 20 39 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 20 39 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 20 39 26 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 27 39 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 27 39 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 27 39 32 , srcInfoPoints = [] } "False")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 34 39 45 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 39 34 39 35 , SrcSpan "tests/examples/DsStrictData.hs" 39 35 39 44 , SrcSpan "tests/examples/DsStrictData.hs" 39 44 39 45 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 34 39 45 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 39 34 39 35 , SrcSpan "tests/examples/DsStrictData.hs" 39 35 39 44 , SrcSpan "tests/examples/DsStrictData.hs" 39 44 39 45 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 35 39 44 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 39 35 39 44 , srcInfoPoints = [] } "catches"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 5 48 6 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 40 5 40 6 , SrcSpan "tests/examples/DsStrictData.hs" 41 5 41 6 , SrcSpan "tests/examples/DsStrictData.hs" 42 5 42 6 , SrcSpan "tests/examples/DsStrictData.hs" 43 5 43 6 , SrcSpan "tests/examples/DsStrictData.hs" 44 5 44 6 , SrcSpan "tests/examples/DsStrictData.hs" 45 5 45 6 , SrcSpan "tests/examples/DsStrictData.hs" 46 5 46 6 , SrcSpan "tests/examples/DsStrictData.hs" 47 5 47 6 , SrcSpan "tests/examples/DsStrictData.hs" 48 5 48 6 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 7 40 60 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 7 40 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 7 40 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 7 40 16 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 7 40 16 , srcInfoPoints = [] } "Handler"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 17 40 60 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 40 17 40 18 , SrcSpan "tests/examples/DsStrictData.hs" 40 59 40 60 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 18 40 59 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 40 18 40 19 , SrcSpan "tests/examples/DsStrictData.hs" 40 45 40 47 ] } [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 19 40 42 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 40 19 40 20 , SrcSpan "tests/examples/DsStrictData.hs" 40 41 40 42 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 20 40 41 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 40 22 40 24 ] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 20 40 21 , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 25 40 41 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 25 40 41 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 25 40 41 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 25 40 41 , srcInfoPoints = [] } "ArrayException")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 48 40 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 48 40 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 48 40 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 48 40 54 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 55 40 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 55 40 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 40 55 40 59 , srcInfoPoints = [] } "True")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 7 41 60 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 7 41 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 7 41 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 7 41 16 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 7 41 16 , srcInfoPoints = [] } "Handler"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 17 41 60 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 41 17 41 18 , SrcSpan "tests/examples/DsStrictData.hs" 41 59 41 60 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 18 41 59 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 41 18 41 19 , SrcSpan "tests/examples/DsStrictData.hs" 41 45 41 47 ] } [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 19 41 37 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 41 19 41 20 , SrcSpan "tests/examples/DsStrictData.hs" 41 36 41 37 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 20 41 36 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 41 22 41 24 ] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 20 41 21 , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 25 41 36 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 25 41 36 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 25 41 36 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 25 41 36 , srcInfoPoints = [] } "ErrorCall")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 48 41 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 48 41 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 48 41 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 48 41 54 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 55 41 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 55 41 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 41 55 41 59 , srcInfoPoints = [] } "True")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 7 42 60 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 7 42 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 7 42 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 7 42 16 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 7 42 16 , srcInfoPoints = [] } "Handler"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 17 42 60 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 42 17 42 18 , SrcSpan "tests/examples/DsStrictData.hs" 42 59 42 60 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 18 42 59 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 42 18 42 19 , SrcSpan "tests/examples/DsStrictData.hs" 42 45 42 47 ] } [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 19 42 41 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 42 19 42 20 , SrcSpan "tests/examples/DsStrictData.hs" 42 40 42 41 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 20 42 40 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 42 22 42 24 ] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 20 42 21 , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 25 42 40 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 25 42 40 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 25 42 40 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 25 42 40 , srcInfoPoints = [] } "NoMethodError")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 48 42 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 48 42 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 48 42 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 48 42 54 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 55 42 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 55 42 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 42 55 42 59 , srcInfoPoints = [] } "True")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 7 43 60 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 7 43 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 7 43 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 7 43 16 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 7 43 16 , srcInfoPoints = [] } "Handler"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 17 43 60 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 43 17 43 18 , SrcSpan "tests/examples/DsStrictData.hs" 43 59 43 60 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 18 43 59 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 43 18 43 19 , SrcSpan "tests/examples/DsStrictData.hs" 43 45 43 47 ] } [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 19 43 42 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 43 19 43 20 , SrcSpan "tests/examples/DsStrictData.hs" 43 41 43 42 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 20 43 41 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 43 22 43 24 ] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 20 43 21 , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 25 43 41 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 25 43 41 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 25 43 41 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 25 43 41 , srcInfoPoints = [] } "NonTermination")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 48 43 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 48 43 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 48 43 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 48 43 54 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 55 43 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 55 43 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 43 55 43 59 , srcInfoPoints = [] } "True")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 7 44 60 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 7 44 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 7 44 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 7 44 16 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 7 44 16 , srcInfoPoints = [] } "Handler"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 17 44 60 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 44 17 44 18 , SrcSpan "tests/examples/DsStrictData.hs" 44 59 44 60 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 18 44 59 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 44 18 44 19 , SrcSpan "tests/examples/DsStrictData.hs" 44 45 44 47 ] } [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 19 44 44 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 44 19 44 20 , SrcSpan "tests/examples/DsStrictData.hs" 44 43 44 44 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 20 44 43 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 44 22 44 24 ] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 20 44 21 , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 25 44 43 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 25 44 43 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 25 44 43 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 25 44 43 , srcInfoPoints = [] } "PatternMatchFail")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 48 44 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 48 44 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 48 44 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 48 44 54 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 55 44 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 55 44 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 44 55 44 59 , srcInfoPoints = [] } "True")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 7 45 60 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 7 45 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 7 45 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 7 45 16 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 7 45 16 , srcInfoPoints = [] } "Handler"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 17 45 60 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 45 17 45 18 , SrcSpan "tests/examples/DsStrictData.hs" 45 59 45 60 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 18 45 59 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 45 18 45 19 , SrcSpan "tests/examples/DsStrictData.hs" 45 45 45 47 ] } [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 19 45 39 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 45 19 45 20 , SrcSpan "tests/examples/DsStrictData.hs" 45 38 45 39 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 20 45 38 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 45 22 45 24 ] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 20 45 21 , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 25 45 38 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 25 45 38 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 25 45 38 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 25 45 38 , srcInfoPoints = [] } "RecConError")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 48 45 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 48 45 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 48 45 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 48 45 54 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 55 45 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 55 45 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 45 55 45 59 , srcInfoPoints = [] } "True")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 7 46 60 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 7 46 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 7 46 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 7 46 16 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 7 46 16 , srcInfoPoints = [] } "Handler"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 17 46 60 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 46 17 46 18 , SrcSpan "tests/examples/DsStrictData.hs" 46 59 46 60 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 18 46 59 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 46 18 46 19 , SrcSpan "tests/examples/DsStrictData.hs" 46 45 46 47 ] } [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 19 46 39 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 46 19 46 20 , SrcSpan "tests/examples/DsStrictData.hs" 46 38 46 39 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 20 46 38 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 46 22 46 24 ] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 20 46 21 , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 25 46 38 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 25 46 38 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 25 46 38 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 25 46 38 , srcInfoPoints = [] } "RecSelError")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 48 46 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 48 46 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 48 46 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 48 46 54 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 55 46 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 55 46 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 46 55 46 59 , srcInfoPoints = [] } "True")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 7 47 60 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 7 47 16 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 7 47 16 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 7 47 16 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 7 47 16 , srcInfoPoints = [] } "Handler"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 17 47 60 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 47 17 47 18 , SrcSpan "tests/examples/DsStrictData.hs" 47 59 47 60 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 18 47 59 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 47 18 47 19 , SrcSpan "tests/examples/DsStrictData.hs" 47 45 47 47 ] } [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 19 47 39 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 47 19 47 20 , SrcSpan "tests/examples/DsStrictData.hs" 47 38 47 39 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 20 47 38 , srcInfoPoints = [ SrcSpan "tests/examples/DsStrictData.hs" 47 22 47 24 ] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 20 47 21 , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 25 47 38 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 25 47 38 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 25 47 38 , srcInfoPoints = [] } "E") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 25 47 38 , srcInfoPoints = [] } "RecUpdError")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 48 47 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 48 47 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 48 47 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 48 47 54 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 55 47 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 55 47 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/DsStrictData.hs" 47 55 47 59 , srcInfoPoints = [] } "True")))))) ])))) Nothing ] ] , [ Comment False (SrcSpan "tests/examples/DsStrictData.hs" 3 1 3 43) " | Tests the StrictData LANGUAGE pragma." , Comment False (SrcSpan "tests/examples/DsStrictData.hs" 29 43 29 58) " sanity check" , Comment False (SrcSpan "tests/examples/DsStrictData.hs" 31 1 31 73) "----------------------------------------------------------------------" , Comment False (SrcSpan "tests/examples/DsStrictData.hs" 32 1 32 34) " Support for testing for bottom" ] ) haskell-src-exts-1.18.2/tests/examples/DsStrictData.hs.prettyparser.golden0000644000000000000000000000000612746233113025037 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/DsStrictData.hs.prettyprinter.golden0000644000000000000000000000242112746233113025231 0ustar0000000000000000{-# LANGUAGE ScopedTypeVariables, StrictData, GADTs #-} module Main where import qualified Control.Exception as E import System.IO.Unsafe (unsafePerformIO) data Strict a = S a data Strict2 b = S2 !b data Strict3 c where S3 :: c -> Strict3 c data UStrict = US {-# UNPACK #-} Int data Lazy d = L ~d data Lazy2 e where L2 :: ~e -> Lazy2 e main :: IO () main = do print (isBottom (S bottom)) print (isBottom (S2 bottom)) print (isBottom (US bottom)) print (isBottom (S3 bottom)) putStrLn "" print (not (isBottom (L bottom))) print (not (isBottom (L2 bottom))) print (not (isBottom (Just bottom))) bottom :: a bottom = error "_|_" isBottom :: a -> Bool isBottom f = unsafePerformIO $ (E.evaluate f >> return False) `E.catches` [E.Handler (\ (_ :: E.ArrayException) -> return True), E.Handler (\ (_ :: E.ErrorCall) -> return True), E.Handler (\ (_ :: E.NoMethodError) -> return True), E.Handler (\ (_ :: E.NonTermination) -> return True), E.Handler (\ (_ :: E.PatternMatchFail) -> return True), E.Handler (\ (_ :: E.RecConError) -> return True), E.Handler (\ (_ :: E.RecSelError) -> return True), E.Handler (\ (_ :: E.RecUpdError) -> return True)] haskell-src-exts-1.18.2/tests/examples/EmptyAnn.hs0000644000000000000000000000004612746233113020233 0ustar0000000000000000{-# ANN foo "Hlint: ignore Test4" #-} haskell-src-exts-1.18.2/tests/examples/EmptyAnn.hs.exactprinter.golden0000644000000000000000000000000612746233113024205 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyAnn.hs.parser.golden0000644000000000000000000000320312746233113022773 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyAnn.hs" 1 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyAnn.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyAnn.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyAnn.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyAnn.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyAnn.hs" 2 1 2 1 ] } Nothing [ AnnModulePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyAnn.hs" 1 1 1 38 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyAnn.hs" 1 1 1 8 , SrcSpan "tests/examples/EmptyAnn.hs" 1 35 1 38 ] } (Ann SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyAnn.hs" 1 9 1 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyAnn.hs" 1 9 1 12 , srcInfoPoints = [] } "foo") (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyAnn.hs" 1 13 1 34 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyAnn.hs" 1 13 1 34 , srcInfoPoints = [] } "Hlint: ignore Test4" "Hlint: ignore Test4"))) ] [] [] , [] ) haskell-src-exts-1.18.2/tests/examples/EmptyAnn.hs.prettyparser.golden0000644000000000000000000000000612746233113024241 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyAnn.hs.prettyprinter.golden0000644000000000000000000000004612746233113024434 0ustar0000000000000000{-# ANN foo "Hlint: ignore Test4" #-} haskell-src-exts-1.18.2/tests/examples/EmptyContext.hs0000644000000000000000000000002712746233113021142 0ustar0000000000000000happyThen :: () => P a haskell-src-exts-1.18.2/tests/examples/EmptyContext.hs.exactprinter.golden0000644000000000000000000000000612746233113025115 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyContext.hs.parser.golden0000644000000000000000000000570712746233113023716 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyContext.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyContext.hs" 2 1 2 1 ] } Nothing [] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyContext.hs" 1 11 1 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 1 1 10 , srcInfoPoints = [] } "happyThen" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 14 1 23 , srcInfoPoints = [] } Nothing (Just (CxEmpty SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 14 1 19 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyContext.hs" 1 14 1 15 , SrcSpan "tests/examples/EmptyContext.hs" 1 15 1 16 , SrcSpan "tests/examples/EmptyContext.hs" 1 17 1 19 ] })) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 20 1 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 20 1 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 20 1 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 20 1 21 , srcInfoPoints = [] } "P"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 22 1 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyContext.hs" 1 22 1 23 , srcInfoPoints = [] } "a")))) ] , [] ) haskell-src-exts-1.18.2/tests/examples/EmptyContext.hs.prettyparser.golden0000644000000000000000000000000612746233113025151 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyContext.hs.prettyprinter.golden0000644000000000000000000000002712746233113025343 0ustar0000000000000000happyThen :: () => P a haskell-src-exts-1.18.2/tests/examples/EmptyFunDepPremise.hs0000644000000000000000000000013212746233113022221 0ustar0000000000000000{-# LANGUAGE FunctionalDependencies #-} module EmptyFunDepPremise where class C a | -> a haskell-src-exts-1.18.2/tests/examples/EmptyFunDepPremise.hs.exactprinter.golden0000644000000000000000000000000612746233113026177 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyFunDepPremise.hs.parser.golden0000644000000000000000000000773512746233113025003 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyFunDepPremise.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyFunDepPremise.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyFunDepPremise.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 1 4 1 , SrcSpan "tests/examples/EmptyFunDepPremise.hs" 5 1 5 1 , SrcSpan "tests/examples/EmptyFunDepPremise.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 2 1 2 32 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyFunDepPremise.hs" 2 1 2 7 , SrcSpan "tests/examples/EmptyFunDepPremise.hs" 2 27 2 32 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 2 8 2 26 , srcInfoPoints = [] } "EmptyFunDepPremise") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 1 1 1 40 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyFunDepPremise.hs" 1 1 1 13 , SrcSpan "tests/examples/EmptyFunDepPremise.hs" 1 37 1 40 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 1 14 1 36 , srcInfoPoints = [] } "FunctionalDependencies" ] ] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 1 4 17 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 1 4 6 , SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 11 4 12 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 7 4 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 7 4 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 7 4 8 , srcInfoPoints = [] } "C")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 9 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 9 4 10 , srcInfoPoints = [] } "a"))) [ FunDep SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 13 4 17 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 13 4 15 ] } [] [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyFunDepPremise.hs" 4 16 4 17 , srcInfoPoints = [] } "a" ] ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/EmptyFunDepPremise.hs.prettyparser.golden0000644000000000000000000000000612746233113026233 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyFunDepPremise.hs.prettyprinter.golden0000644000000000000000000000013212746233113026422 0ustar0000000000000000{-# LANGUAGE FunctionalDependencies #-} module EmptyFunDepPremise where class C a | -> a haskell-src-exts-1.18.2/tests/examples/EmptyInstance.hs0000644000000000000000000000006012746233113021257 0ustar0000000000000000instance Traversable Tree where x :: Int x = 1 haskell-src-exts-1.18.2/tests/examples/EmptyInstance.hs.exactprinter.golden0000644000000000000000000000000612746233113025235 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyInstance.hs.parser.golden0000644000000000000000000001235412746233113024032 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyInstance.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyInstance.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyInstance.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyInstance.hs" 3 1 3 1 , SrcSpan "tests/examples/EmptyInstance.hs" 4 1 4 1 , SrcSpan "tests/examples/EmptyInstance.hs" 5 1 5 1 , SrcSpan "tests/examples/EmptyInstance.hs" 5 1 5 1 ] } Nothing [] [] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 1 3 0 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyInstance.hs" 1 1 1 9 , SrcSpan "tests/examples/EmptyInstance.hs" 1 27 1 32 , SrcSpan "tests/examples/EmptyInstance.hs" 3 1 3 1 , SrcSpan "tests/examples/EmptyInstance.hs" 3 1 3 1 , SrcSpan "tests/examples/EmptyInstance.hs" 3 0 3 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 10 1 26 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 10 1 26 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 10 1 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 10 1 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 10 1 21 , srcInfoPoints = [] } "Traversable"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 22 1 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 22 1 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 1 22 1 26 , srcInfoPoints = [] } "Tree"))))) (Just []) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 3 1 3 9 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyInstance.hs" 3 3 3 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 3 1 3 2 , srcInfoPoints = [] } "x" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 3 6 3 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 3 6 3 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 3 6 3 9 , srcInfoPoints = [] } "Int"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 4 1 4 6 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 4 1 4 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 4 1 4 2 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 4 3 4 6 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyInstance.hs" 4 3 4 4 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 4 5 4 6 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyInstance.hs" 4 5 4 6 , srcInfoPoints = [] } 1 "1"))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/EmptyInstance.hs.prettyparser.golden0000644000000000000000000000000612746233113025271 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyInstance.hs.prettyprinter.golden0000644000000000000000000000006012746233113025460 0ustar0000000000000000instance Traversable Tree where x :: Int x = 1 haskell-src-exts-1.18.2/tests/examples/EmptyList.hs0000644000000000000000000000004412746233113020430 0ustar0000000000000000module EmptyList where eAttrs = [] haskell-src-exts-1.18.2/tests/examples/EmptyList.hs.exactprinter.golden0000644000000000000000000000000612746233113024404 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyList.hs.parser.golden0000644000000000000000000000431412746233113023176 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyList.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyList.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyList.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyList.hs" 3 1 3 1 , SrcSpan "tests/examples/EmptyList.hs" 4 1 4 1 , SrcSpan "tests/examples/EmptyList.hs" 4 1 4 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyList.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyList.hs" 1 1 1 7 , SrcSpan "tests/examples/EmptyList.hs" 1 18 1 23 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyList.hs" 1 8 1 17 , srcInfoPoints = [] } "EmptyList") Nothing Nothing)) [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyList.hs" 3 1 3 12 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyList.hs" 3 1 3 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyList.hs" 3 1 3 7 , srcInfoPoints = [] } "eAttrs")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyList.hs" 3 8 3 12 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyList.hs" 3 8 3 9 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyList.hs" 3 10 3 12 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyList.hs" 3 10 3 11 , SrcSpan "tests/examples/EmptyList.hs" 3 11 3 12 ] } [])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/EmptyList.hs.prettyparser.golden0000644000000000000000000000000612746233113024440 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyList.hs.prettyprinter.golden0000644000000000000000000000004312746233113024630 0ustar0000000000000000module EmptyList where eAttrs = [] haskell-src-exts-1.18.2/tests/examples/EmptyWhere.hs0000644000000000000000000000001612746233113020566 0ustar0000000000000000foo = 5 where haskell-src-exts-1.18.2/tests/examples/EmptyWhere.hs.exactprinter.golden0000644000000000000000000000000612746233113024543 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyWhere.hs.parser.golden0000644000000000000000000000433012746233113023333 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyWhere.hs" 1 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyWhere.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyWhere.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyWhere.hs" 1 1 1 1 , SrcSpan "tests/examples/EmptyWhere.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyWhere.hs" 2 1 2 1 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyWhere.hs" 1 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyWhere.hs" 1 9 1 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyWhere.hs" 1 1 1 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyWhere.hs" 1 1 1 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyWhere.hs" 1 5 1 8 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyWhere.hs" 1 5 1 6 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyWhere.hs" 1 7 1 8 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyWhere.hs" 1 7 1 8 , srcInfoPoints = [] } 5 "5"))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EmptyWhere.hs" 2 0 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/EmptyWhere.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyWhere.hs" 2 1 2 1 , SrcSpan "tests/examples/EmptyWhere.hs" 2 0 2 0 ] } [])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/EmptyWhere.hs.prettyparser.golden0000644000000000000000000000000612746233113024577 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EmptyWhere.hs.prettyprinter.golden0000644000000000000000000000002012746233113024762 0ustar0000000000000000foo = 5 where haskell-src-exts-1.18.2/tests/examples/EqualityConstraints1.hs0000644000000000000000000000016312746233113022606 0ustar0000000000000000-- https://github.com/haskell-suite/haskell-src-exts/issues/91 {-# LANGUAGE GADTs #-} one :: a ~ Int => a one = 1 haskell-src-exts-1.18.2/tests/examples/EqualityConstraints1.hs.exactprinter.golden0000644000000000000000000000000612746233113026560 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EqualityConstraints1.hs.parser.golden0000644000000000000000000001434112746233113025353 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 2 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/EqualityConstraints1.hs" 2 1 2 1 , SrcSpan "tests/examples/EqualityConstraints1.hs" 4 1 4 1 , SrcSpan "tests/examples/EqualityConstraints1.hs" 4 1 4 1 , SrcSpan "tests/examples/EqualityConstraints1.hs" 4 1 4 1 , SrcSpan "tests/examples/EqualityConstraints1.hs" 5 1 5 1 , SrcSpan "tests/examples/EqualityConstraints1.hs" 6 1 6 1 , SrcSpan "tests/examples/EqualityConstraints1.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 2 1 2 23 , srcInfoPoints = [ SrcSpan "tests/examples/EqualityConstraints1.hs" 2 1 2 13 , SrcSpan "tests/examples/EqualityConstraints1.hs" 2 20 2 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 2 14 2 19 , srcInfoPoints = [] } "GADTs" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 1 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/EqualityConstraints1.hs" 4 5 4 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 1 4 4 , srcInfoPoints = [] } "one" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 8 4 20 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 8 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/EqualityConstraints1.hs" 4 16 4 18 ] } (EqualP SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 8 4 15 , srcInfoPoints = [ SrcSpan "tests/examples/EqualityConstraints1.hs" 4 10 4 11 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 8 4 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 8 4 9 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 12 4 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 12 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 12 4 15 , srcInfoPoints = [] } "Int")))))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 19 4 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 4 19 4 20 , srcInfoPoints = [] } "a"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 5 1 5 8 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 5 1 5 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 5 1 5 4 , srcInfoPoints = [] } "one")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 5 5 5 8 , srcInfoPoints = [ SrcSpan "tests/examples/EqualityConstraints1.hs" 5 5 5 6 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 5 7 5 8 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/EqualityConstraints1.hs" 5 7 5 8 , srcInfoPoints = [] } 1 "1"))) Nothing ] , [ Comment False (SrcSpan "tests/examples/EqualityConstraints1.hs" 1 1 1 63) " https://github.com/haskell-suite/haskell-src-exts/issues/91" ] ) haskell-src-exts-1.18.2/tests/examples/EqualityConstraints1.hs.prettyparser.golden0000644000000000000000000000000612746233113026614 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/EqualityConstraints1.hs.prettyprinter.golden0000644000000000000000000000006412746233113027007 0ustar0000000000000000{-# LANGUAGE GADTs #-} one :: a ~ Int => a one = 1 haskell-src-exts-1.18.2/tests/examples/EqualityConstraints2.hs0000644000000000000000000000003412746233113022604 0ustar0000000000000000one :: a ~ Int => a one = 1 haskell-src-exts-1.18.2/tests/examples/EqualityConstraints2.hs.exactprinter.golden0000644000000000000000000000040312746233113026562 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/EqualityConstraints2.hs" 1 19) "At least one of TypeFamilies or GADTs language extensions needs to be enabled. Please add: {-# LANGUAGE TypeFamilies #-} or {-# LANGUAGE GADTs #-} language pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/EqualityConstraints2.hs.parser.golden0000644000000000000000000000040712746233113025352 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/EqualityConstraints2.hs" 1 19) "At least one of TypeFamilies or GADTs language extensions needs to be enabled. Please add: {-# LANGUAGE TypeFamilies #-} or {-# LANGUAGE GADTs #-} language pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/EqualityConstraints2.hs.prettyparser.golden0000644000000000000000000000040312746233113026616 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/EqualityConstraints2.hs" 1 19) "At least one of TypeFamilies or GADTs language extensions needs to be enabled. Please add: {-# LANGUAGE TypeFamilies #-} or {-# LANGUAGE GADTs #-} language pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/EqualityConstraints2.hs.prettyprinter.golden0000644000000000000000000000040312746233113027005 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/EqualityConstraints2.hs" 1 19) "At least one of TypeFamilies or GADTs language extensions needs to be enabled. Please add: {-# LANGUAGE TypeFamilies #-} or {-# LANGUAGE GADTs #-} language pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces1.hs0000644000000000000000000000031512746233113022341 0ustar0000000000000000{-# LANGUAGE ExplicitNamespaces #-} import Data.Array.Repa ( type (++) ) import Data.Array.Repa ( type {- comment here -} (++) ) import Data.Array.Repa ( type {- comment2 here -} (++) {- and here -} ) haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces1.hs.exactprinter.golden0000644000000000000000000000000612746233113026314 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces1.hs.parser.golden0000644000000000000000000002353412746233113025113 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 1 1 1 1 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 1 2 1 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 1 2 1 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 1 2 1 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 1 3 1 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 1 4 1 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 5 1 5 1 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 1 1 1 36 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 1 1 1 13 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 1 33 1 36 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 1 14 1 32 , srcInfoPoints = [] } "ExplicitNamespaces" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 1 2 37 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 1 2 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 8 2 23 , srcInfoPoints = [] } "Data.Array.Repa" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 24 2 37 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 24 2 25 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 36 2 37 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 26 2 35 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 26 2 30 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 31 2 35 ] } (TypeNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 26 2 30 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 26 2 30 ] }) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 31 2 35 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 31 2 32 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 32 2 34 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 2 34 2 35 ] } "++") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 1 3 56 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 1 3 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 8 3 23 , srcInfoPoints = [] } "Data.Array.Repa" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 24 3 56 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 24 3 25 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 55 3 56 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 26 3 54 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 26 3 30 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 50 3 54 ] } (TypeNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 26 3 30 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 26 3 30 ] }) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 50 3 54 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 50 3 51 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 51 3 53 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 53 3 54 ] } "++") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 1 4 76 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 8 4 23 , srcInfoPoints = [] } "Data.Array.Repa" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 24 4 76 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 24 4 25 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 75 4 76 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 29 4 58 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 29 4 33 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 54 4 58 ] } (TypeNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 29 4 33 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 29 4 33 ] }) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 54 4 58 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 54 4 55 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 55 4 57 , SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 57 4 58 ] } "++") ]) } ] [] , [ Comment True (SrcSpan "tests/examples/ExplicitNamespaces1.hs" 3 31 3 49) " comment here " , Comment True (SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 34 4 53) " comment2 here " , Comment True (SrcSpan "tests/examples/ExplicitNamespaces1.hs" 4 60 4 74) " and here " ] ) haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces1.hs.prettyparser.golden0000644000000000000000000000000612746233113026350 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces1.hs.prettyprinter.golden0000644000000000000000000000021512746233113026541 0ustar0000000000000000{-# LANGUAGE ExplicitNamespaces #-} import Data.Array.Repa (type (++)) import Data.Array.Repa (type (++)) import Data.Array.Repa (type (++)) haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces2.hs0000644000000000000000000000014512746233113022343 0ustar0000000000000000{-# LANGUAGE ExplicitNamespaces #-} module ExplicitNamespaces2 ( f, type (++) ) where f = undefined haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces2.hs.exactprinter.golden0000644000000000000000000000000612746233113026315 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces2.hs.parser.golden0000644000000000000000000001513712746233113025114 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces2.hs" 1 1 1 1 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 1 2 1 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 1 2 1 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 1 4 1 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 5 1 5 1 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 1 2 50 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 1 2 7 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 45 2 50 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 8 2 27 , srcInfoPoints = [] } "ExplicitNamespaces2") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 28 2 44 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 28 2 29 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 31 2 32 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 43 2 44 ] } [ EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 30 2 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 30 2 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 30 2 31 , srcInfoPoints = [] } "f")) , EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 33 2 42 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 33 2 37 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 38 2 42 ] } (TypeNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 33 2 37 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 33 2 37 ] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 38 2 42 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 38 2 39 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 39 2 41 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 41 2 42 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 2 39 2 41 , srcInfoPoints = [] } "++")) ])))) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 1 1 1 36 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces2.hs" 1 1 1 13 , SrcSpan "tests/examples/ExplicitNamespaces2.hs" 1 33 1 36 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 1 14 1 32 , srcInfoPoints = [] } "ExplicitNamespaces" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 1 4 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 1 4 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 1 4 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 3 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 3 4 4 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 5 4 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 5 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces2.hs" 4 5 4 14 , srcInfoPoints = [] } "undefined")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces2.hs.prettyparser.golden0000644000000000000000000000000612746233113026351 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces2.hs.prettyprinter.golden0000644000000000000000000000014212746233113026541 0ustar0000000000000000{-# LANGUAGE ExplicitNamespaces #-} module ExplicitNamespaces2 (f, type (++)) where f = undefined haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces3.hs0000644000000000000000000000012012746233113022335 0ustar0000000000000000{-# LANGUAGE ExplicitNamespaces #-} module Foo(type Str) where data Str = Str haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces3.hs.exactprinter.golden0000644000000000000000000000000612746233113026316 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces3.hs.parser.golden0000644000000000000000000001265412746233113025116 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces3.hs" 1 1 1 1 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 1 3 1 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 1 3 1 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 1 5 1 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 6 1 6 1 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 6 1 6 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 1 3 27 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 1 3 7 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 22 3 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 8 3 11 , srcInfoPoints = [] } "Foo") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 11 3 21 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 11 3 12 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 20 3 21 ] } [ EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 12 3 20 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 12 3 16 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 17 3 20 ] } (TypeNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 12 3 16 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 12 3 16 ] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 17 3 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 3 17 3 20 , srcInfoPoints = [] } "Str")) ])))) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 1 1 1 36 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces3.hs" 1 1 1 13 , SrcSpan "tests/examples/ExplicitNamespaces3.hs" 1 33 1 36 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 1 14 1 32 , srcInfoPoints = [] } "ExplicitNamespaces" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 1 5 15 , srcInfoPoints = [ SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 10 5 11 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 1 5 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 6 5 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 6 5 9 , srcInfoPoints = [] } "Str")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 12 5 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 12 5 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExplicitNamespaces3.hs" 5 12 5 15 , srcInfoPoints = [] } "Str") []) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces3.hs.prettyparser.golden0000644000000000000000000000000612746233113026352 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExplicitNamespaces3.hs.prettyprinter.golden0000644000000000000000000000012012746233113026536 0ustar0000000000000000{-# LANGUAGE ExplicitNamespaces #-} module Foo (type Str) where data Str = Str haskell-src-exts-1.18.2/tests/examples/ExprHole.hs0000644000000000000000000000010312746233113020220 0ustar0000000000000000 foo = _ foo = _ x foo = _ foo x = baz where foo _ = _ haskell-src-exts-1.18.2/tests/examples/ExprHole.hs.exactprinter.golden0000644000000000000000000000000612746233113024200 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExprHole.hs.parser.golden0000644000000000000000000002106412746233113022773 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 2 1 11 1 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 2 1 2 1 , SrcSpan "tests/examples/ExprHole.hs" 2 1 2 1 , SrcSpan "tests/examples/ExprHole.hs" 2 1 2 1 , SrcSpan "tests/examples/ExprHole.hs" 4 1 4 1 , SrcSpan "tests/examples/ExprHole.hs" 6 1 6 1 , SrcSpan "tests/examples/ExprHole.hs" 8 1 8 1 , SrcSpan "tests/examples/ExprHole.hs" 11 1 11 1 , SrcSpan "tests/examples/ExprHole.hs" 11 1 11 1 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 2 1 2 8 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 2 1 2 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 2 1 2 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 2 5 2 8 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 2 5 2 6 ] } (ExprHole SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 2 7 2 8 , srcInfoPoints = [] })) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 1 4 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 1 4 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 1 4 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 5 4 10 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 4 5 4 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 7 4 10 , srcInfoPoints = [] } (ExprHole SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 7 4 8 , srcInfoPoints = [] }) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 9 4 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 9 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 4 9 4 10 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 6 1 6 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 6 1 6 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 6 1 6 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 6 5 6 11 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 6 5 6 6 ] } (ExprHole SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 6 10 6 11 , srcInfoPoints = [] })) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 1 10 14 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 9 3 9 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 1 10 14 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 9 3 9 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 1 8 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 5 8 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 5 8 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 7 8 12 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 8 7 8 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 9 8 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 9 8 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 8 9 8 12 , srcInfoPoints = [] } "baz")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 10 5 10 14 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 10 5 10 5 , SrcSpan "tests/examples/ExprHole.hs" 11 1 11 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 10 5 10 14 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 10 5 10 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 10 5 10 8 , srcInfoPoints = [] } "foo") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 10 9 10 10 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 10 11 10 14 , srcInfoPoints = [ SrcSpan "tests/examples/ExprHole.hs" 10 11 10 12 ] } (ExprHole SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExprHole.hs" 10 13 10 14 , srcInfoPoints = [] })) Nothing ] ])) ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/ExprHole.hs.prettyparser.golden0000644000000000000000000000000612746233113024234 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExprHole.hs.prettyprinter.golden0000644000000000000000000000007012746233113024424 0ustar0000000000000000foo = _ foo = _ x foo = _ foo x = baz where foo _ = _ haskell-src-exts-1.18.2/tests/examples/ExtraEndBrace.hs0000644000000000000000000000006112746233113021144 0ustar0000000000000000module ExtraEndBrace where data A = B {c :: D}} haskell-src-exts-1.18.2/tests/examples/ExtraEndBrace.hs.exactprinter.golden0000644000000000000000000000011312746233113025120 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ExtraEndBrace.hs" 3 20) "Unexpected }" haskell-src-exts-1.18.2/tests/examples/ExtraEndBrace.hs.parser.golden0000644000000000000000000000011512746233113023706 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ExtraEndBrace.hs" 3 20) "Unexpected }" haskell-src-exts-1.18.2/tests/examples/ExtraEndBrace.hs.prettyparser.golden0000644000000000000000000000011312746233113025154 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ExtraEndBrace.hs" 3 20) "Unexpected }" haskell-src-exts-1.18.2/tests/examples/ExtraEndBrace.hs.prettyprinter.golden0000644000000000000000000000011312746233113025343 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ExtraEndBrace.hs" 3 20) "Unexpected }" haskell-src-exts-1.18.2/tests/examples/ExtraPrettyParentheses.hs0000644000000000000000000000042112746233113023172 0ustar0000000000000000data Q a = Q a a -- In this example, the pretty-printer should insert extra parentheses around -- the negative literal pattern. x * - 1 = negate x -- In these examples, the pretty-printer should not insert extra parentheses. Just x <> Nothing = Just x f (- 1 `Q` _) = () haskell-src-exts-1.18.2/tests/examples/ExtraPrettyParentheses.hs.exactprinter.golden0000644000000000000000000000000612746233113027147 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ExtraPrettyParentheses.hs.parser.golden0000644000000000000000000004715612746233113025754 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 1 10 1 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 1 1 1 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 1 1 1 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 1 1 1 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 1 5 1 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 1 8 1 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 1 9 1 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 10 1 10 1 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 10 1 10 1 ] } Nothing [] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 1 1 17 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 10 1 11 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 1 1 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 6 1 9 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 6 1 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 6 1 7 , srcInfoPoints = [] } "Q")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 8 1 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 8 1 9 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 12 1 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 12 1 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 12 1 13 , srcInfoPoints = [] } "Q") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 14 1 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 14 1 15 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 16 1 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 1 16 1 17 , srcInfoPoints = [] } "a") ]) ] Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 1 5 19 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 1 5 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 1 5 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 1 5 2 , srcInfoPoints = [] } "x")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 3 5 4 , srcInfoPoints = [] } "*") [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 5 5 8 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 5 5 6 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 5 5 6 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 5 5 6 ] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 7 5 8 , srcInfoPoints = [] } 1 "1") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 9 5 19 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 9 5 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 11 5 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 11 5 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 11 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 11 5 17 , srcInfoPoints = [] } "negate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 18 5 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 18 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 5 18 5 19 , srcInfoPoints = [] } "x"))))) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 1 8 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 1 8 27 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 1 8 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 1 8 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 1 8 5 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 6 8 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 6 8 7 , srcInfoPoints = [] } "x") ]) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 8 8 10 , srcInfoPoints = [] } "<>") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 11 8 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 11 8 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 11 8 18 , srcInfoPoints = [] } "Nothing")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 19 8 27 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 19 8 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 21 8 27 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 21 8 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 21 8 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 21 8 25 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 26 8 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 26 8 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 8 26 8 27 , srcInfoPoints = [] } "x"))))) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 1 9 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 1 9 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 1 9 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 3 9 14 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 3 9 4 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 13 9 14 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 4 9 13 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 4 9 7 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 4 9 5 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 4 9 5 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 4 9 5 ] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 6 9 7 , srcInfoPoints = [] } 1 "1")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 8 9 11 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 8 9 9 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 9 9 10 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 10 9 11 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 9 9 10 , srcInfoPoints = [] } "Q")) (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 12 9 13 , srcInfoPoints = [] })) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 15 9 19 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 15 9 16 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 17 9 19 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 17 9 18 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 18 9 19 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 17 9 19 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 17 9 18 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 18 9 19 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 17 9 19 , srcInfoPoints = [ SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 17 9 18 , SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 9 18 9 19 ] })))) Nothing ] ] , [ Comment False (SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 3 1 3 78) " In this example, the pretty-printer should insert extra parentheses around" , Comment False (SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 4 1 4 33) " the negative literal pattern." , Comment False (SrcSpan "tests/examples/ExtraPrettyParentheses.hs" 7 1 7 78) " In these examples, the pretty-printer should not insert extra parentheses." ] ) haskell-src-exts-1.18.2/tests/examples/ExtraPrettyParentheses.hs.prettyparser.golden0000644000000000000000000000361112746233113027210 0ustar0000000000000000Roundtrip test failed AST 1: Module () Nothing [] [] [DataDecl () (DataType ()) Nothing (DHApp () (DHead () (Ident () "Q")) (UnkindedVar () (Ident () "a"))) [QualConDecl () Nothing Nothing (ConDecl () (Ident () "Q") [TyVar () (Ident () "a"),TyVar () (Ident () "a")])] Nothing,FunBind () [InfixMatch () (PVar () (Ident () "x")) (Symbol () "*") [PLit () (Negative ()) (Int () 1 "1")] (UnGuardedRhs () (App () (Var () (UnQual () (Ident () "negate"))) (Var () (UnQual () (Ident () "x"))))) Nothing],FunBind () [InfixMatch () (PApp () (UnQual () (Ident () "Just")) [PVar () (Ident () "x")]) (Symbol () "<>") [PApp () (UnQual () (Ident () "Nothing")) []] (UnGuardedRhs () (App () (Con () (UnQual () (Ident () "Just"))) (Var () (UnQual () (Ident () "x"))))) Nothing],FunBind () [Match () (Ident () "f") [PParen () (PInfixApp () (PLit () (Negative ()) (Int () 1 "1")) (UnQual () (Ident () "Q")) (PWildCard ()))] (UnGuardedRhs () (Con () (Special () (UnitCon ())))) Nothing]] AST 2: Module () Nothing [] [] [DataDecl () (DataType ()) Nothing (DHApp () (DHead () (Ident () "Q")) (UnkindedVar () (Ident () "a"))) [QualConDecl () Nothing Nothing (ConDecl () (Ident () "Q") [TyVar () (Ident () "a"),TyVar () (Ident () "a")])] Nothing,FunBind () [InfixMatch () (PVar () (Ident () "x")) (Symbol () "*") [PParen () (PLit () (Negative ()) (Int () 1 "1"))] (UnGuardedRhs () (App () (Var () (UnQual () (Ident () "negate"))) (Var () (UnQual () (Ident () "x"))))) Nothing],FunBind () [InfixMatch () (PApp () (UnQual () (Ident () "Just")) [PVar () (Ident () "x")]) (Symbol () "<>") [PApp () (UnQual () (Ident () "Nothing")) []] (UnGuardedRhs () (App () (Con () (UnQual () (Ident () "Just"))) (Var () (UnQual () (Ident () "x"))))) Nothing],FunBind () [Match () (Ident () "f") [PParen () (PInfixApp () (PLit () (Negative ()) (Int () 1 "1")) (UnQual () (Ident () "Q")) (PWildCard ()))] (UnGuardedRhs () (Con () (Special () (UnitCon ())))) Nothing]] haskell-src-exts-1.18.2/tests/examples/ExtraPrettyParentheses.hs.prettyprinter.golden0000644000000000000000000000012212746233113027371 0ustar0000000000000000data Q a = Q a a x * (-1) = negate x Just x <> Nothing = Just x f (-1 `Q` _) = () haskell-src-exts-1.18.2/tests/examples/FamilyKindSig.hs0000644000000000000000000000014012746233113021165 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} module FamilyKindSig where type family WithKindSig (a :: * -> *) haskell-src-exts-1.18.2/tests/examples/FamilyKindSig.hs.exactprinter.golden0000644000000000000000000000000612746233113025144 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FamilyKindSig.hs.parser.golden0000644000000000000000000001005012746233113023730 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyKindSig.hs" 1 1 1 1 , SrcSpan "tests/examples/FamilyKindSig.hs" 2 1 2 1 , SrcSpan "tests/examples/FamilyKindSig.hs" 2 1 2 1 , SrcSpan "tests/examples/FamilyKindSig.hs" 4 1 4 1 , SrcSpan "tests/examples/FamilyKindSig.hs" 5 1 5 1 , SrcSpan "tests/examples/FamilyKindSig.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyKindSig.hs" 2 1 2 7 , SrcSpan "tests/examples/FamilyKindSig.hs" 2 22 2 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 2 8 2 21 , srcInfoPoints = [] } "FamilyKindSig") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyKindSig.hs" 1 1 1 13 , SrcSpan "tests/examples/FamilyKindSig.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" ] ] [] [ TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 1 4 38 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyKindSig.hs" 4 1 4 5 , SrcSpan "tests/examples/FamilyKindSig.hs" 4 6 4 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 13 4 38 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 13 4 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 13 4 24 , srcInfoPoints = [] } "WithKindSig")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 25 4 38 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyKindSig.hs" 4 25 4 26 , SrcSpan "tests/examples/FamilyKindSig.hs" 4 28 4 30 , SrcSpan "tests/examples/FamilyKindSig.hs" 4 37 4 38 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 26 4 27 , srcInfoPoints = [] } "a") (KindFn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 31 4 37 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyKindSig.hs" 4 33 4 35 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 31 4 32 , srcInfoPoints = [] }) (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyKindSig.hs" 4 36 4 37 , srcInfoPoints = [] })))) Nothing Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/FamilyKindSig.hs.prettyparser.golden0000644000000000000000000000000612746233113025200 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FamilyKindSig.hs.prettyprinter.golden0000644000000000000000000000014012746233113025366 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} module FamilyKindSig where type family WithKindSig (a :: * -> *) haskell-src-exts-1.18.2/tests/examples/FamilyVarid.hs0000644000000000000000000000012412746233113020704 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} module FamilyVarid where f family forall = undefined haskell-src-exts-1.18.2/tests/examples/FamilyVarid.hs.exactprinter.golden0000644000000000000000000000000612746233113024661 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FamilyVarid.hs.parser.golden0000644000000000000000000001015612746233113023454 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyVarid.hs" 1 1 1 1 , SrcSpan "tests/examples/FamilyVarid.hs" 2 1 2 1 , SrcSpan "tests/examples/FamilyVarid.hs" 2 1 2 1 , SrcSpan "tests/examples/FamilyVarid.hs" 4 1 4 1 , SrcSpan "tests/examples/FamilyVarid.hs" 5 1 5 1 , SrcSpan "tests/examples/FamilyVarid.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 2 1 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyVarid.hs" 2 1 2 7 , SrcSpan "tests/examples/FamilyVarid.hs" 2 20 2 25 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 2 8 2 19 , srcInfoPoints = [] } "FamilyVarid") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyVarid.hs" 1 1 1 13 , SrcSpan "tests/examples/FamilyVarid.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 1 4 28 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 1 4 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 1 4 2 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 3 4 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 3 4 9 , srcInfoPoints = [] } "family") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 10 4 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 10 4 16 , srcInfoPoints = [] } "forall") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 17 4 28 , srcInfoPoints = [ SrcSpan "tests/examples/FamilyVarid.hs" 4 17 4 18 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 19 4 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 19 4 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FamilyVarid.hs" 4 19 4 28 , srcInfoPoints = [] } "undefined")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/FamilyVarid.hs.prettyparser.golden0000644000000000000000000000000612746233113024715 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FamilyVarid.hs.prettyprinter.golden0000644000000000000000000000012312746233113025104 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} module FamilyVarid where f family forall = undefined haskell-src-exts-1.18.2/tests/examples/FFIExtensions.hs0000644000000000000000000000034112746233113021162 0ustar0000000000000000{-# LANGUAGE ForeignFunctionInterface, InterruptibleFFI, CApiFFI #-} module FFIExtensions where foreign import ccall interruptible "sleep" sleep :: CUint -> IO CUint foreign import capi "header.h f" f :: CInt -> IO CInt haskell-src-exts-1.18.2/tests/examples/FFIExtensions.hs.exactprinter.golden0000644000000000000000000000000612746233113025136 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FFIExtensions.hs.parser.golden0000644000000000000000000002222312746233113023727 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/FFIExtensions.hs" 1 1 1 1 , SrcSpan "tests/examples/FFIExtensions.hs" 2 1 2 1 , SrcSpan "tests/examples/FFIExtensions.hs" 2 1 2 1 , SrcSpan "tests/examples/FFIExtensions.hs" 4 1 4 1 , SrcSpan "tests/examples/FFIExtensions.hs" 7 1 7 1 , SrcSpan "tests/examples/FFIExtensions.hs" 8 1 8 1 , SrcSpan "tests/examples/FFIExtensions.hs" 8 1 8 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/FFIExtensions.hs" 2 1 2 7 , SrcSpan "tests/examples/FFIExtensions.hs" 2 22 2 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 2 8 2 21 , srcInfoPoints = [] } "FFIExtensions") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 1 1 1 69 , srcInfoPoints = [ SrcSpan "tests/examples/FFIExtensions.hs" 1 1 1 13 , SrcSpan "tests/examples/FFIExtensions.hs" 1 38 1 39 , SrcSpan "tests/examples/FFIExtensions.hs" 1 56 1 57 , SrcSpan "tests/examples/FFIExtensions.hs" 1 66 1 69 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 1 14 1 38 , srcInfoPoints = [] } "ForeignFunctionInterface" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 1 40 1 56 , srcInfoPoints = [] } "InterruptibleFFI" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 1 58 1 65 , srcInfoPoints = [] } "CApiFFI" ] ] [] [ ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 4 1 5 38 , srcInfoPoints = [ SrcSpan "tests/examples/FFIExtensions.hs" 4 1 4 8 , SrcSpan "tests/examples/FFIExtensions.hs" 4 9 4 15 , SrcSpan "tests/examples/FFIExtensions.hs" 5 4 5 11 , SrcSpan "tests/examples/FFIExtensions.hs" 5 18 5 20 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 4 16 4 21 , srcInfoPoints = [] }) (Just (PlayInterruptible SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 4 22 4 35 , srcInfoPoints = [] })) (Just "sleep") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 12 5 17 , srcInfoPoints = [] } "sleep") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 21 5 38 , srcInfoPoints = [ SrcSpan "tests/examples/FFIExtensions.hs" 5 27 5 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 21 5 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 21 5 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 21 5 26 , srcInfoPoints = [] } "CUint"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 30 5 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 30 5 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 30 5 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 30 5 32 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 33 5 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 33 5 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 5 33 5 38 , srcInfoPoints = [] } "CUint"))))) , ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 1 7 54 , srcInfoPoints = [ SrcSpan "tests/examples/FFIExtensions.hs" 7 1 7 8 , SrcSpan "tests/examples/FFIExtensions.hs" 7 9 7 15 , SrcSpan "tests/examples/FFIExtensions.hs" 7 21 7 33 , SrcSpan "tests/examples/FFIExtensions.hs" 7 36 7 38 ] } (CApi SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 16 7 20 , srcInfoPoints = [] }) Nothing (Just "header.h f") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 34 7 35 , srcInfoPoints = [] } "f") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 39 7 54 , srcInfoPoints = [ SrcSpan "tests/examples/FFIExtensions.hs" 7 44 7 46 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 39 7 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 39 7 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 39 7 43 , srcInfoPoints = [] } "CInt"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 47 7 54 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 47 7 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 47 7 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 47 7 49 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 50 7 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 50 7 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIExtensions.hs" 7 50 7 54 , srcInfoPoints = [] } "CInt"))))) ] , [] ) haskell-src-exts-1.18.2/tests/examples/FFIExtensions.hs.prettyparser.golden0000644000000000000000000000000612746233113025172 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FFIExtensions.hs.prettyprinter.golden0000644000000000000000000000035712746233113025372 0ustar0000000000000000{-# LANGUAGE ForeignFunctionInterface, InterruptibleFFI, CApiFFI #-} module FFIExtensions where foreign import ccall interruptible "sleep" sleep :: CUint -> IO CUint foreign import capi "header.h f" f :: CInt -> IO CInt haskell-src-exts-1.18.2/tests/examples/FFIInterruptible.hs0000644000000000000000000000006712746233113021660 0ustar0000000000000000{-# LANGUAGE InterruptibleFFI #-} foo = interruptible haskell-src-exts-1.18.2/tests/examples/FFIInterruptible.hs.exactprinter.golden0000644000000000000000000000000612746233113025627 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FFIInterruptible.hs.parser.golden0000644000000000000000000000551412746233113024424 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/FFIInterruptible.hs" 1 1 1 1 , SrcSpan "tests/examples/FFIInterruptible.hs" 2 1 2 1 , SrcSpan "tests/examples/FFIInterruptible.hs" 2 1 2 1 , SrcSpan "tests/examples/FFIInterruptible.hs" 2 1 2 1 , SrcSpan "tests/examples/FFIInterruptible.hs" 4 1 4 1 , SrcSpan "tests/examples/FFIInterruptible.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 1 1 1 34 , srcInfoPoints = [ SrcSpan "tests/examples/FFIInterruptible.hs" 1 1 1 13 , SrcSpan "tests/examples/FFIInterruptible.hs" 1 31 1 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 1 14 1 30 , srcInfoPoints = [] } "InterruptibleFFI" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 2 1 2 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 2 1 2 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 2 1 2 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 2 5 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/FFIInterruptible.hs" 2 5 2 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 2 7 2 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 2 7 2 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FFIInterruptible.hs" 2 7 2 20 , srcInfoPoints = [] } "interruptible")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/FFIInterruptible.hs.prettyparser.golden0000644000000000000000000000000612746233113025663 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FFIInterruptible.hs.prettyprinter.golden0000644000000000000000000000006612746233113026060 0ustar0000000000000000{-# LANGUAGE InterruptibleFFI #-} foo = interruptible haskell-src-exts-1.18.2/tests/examples/Fixity2.hs0000644000000000000000000000011712746233113020035 0ustar0000000000000000foo = pure 1 <^> pure 2 <^> pure (+) where (<^>) = flip (<*>) infixr 4 <^> haskell-src-exts-1.18.2/tests/examples/Fixity2.hs.exactprinter.golden0000644000000000000000000000000612746233113024010 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Fixity2.hs.parser.golden0000644000000000000000000003253112746233113022604 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 1 1 1 1 , SrcSpan "tests/examples/Fixity2.hs" 1 1 1 1 , SrcSpan "tests/examples/Fixity2.hs" 1 1 1 1 , SrcSpan "tests/examples/Fixity2.hs" 4 1 4 1 , SrcSpan "tests/examples/Fixity2.hs" 4 1 4 1 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 1 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 1 38 1 43 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 1 1 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 1 1 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 5 1 37 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 1 5 1 6 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 7 1 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 7 1 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 7 1 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 7 1 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 7 1 11 , srcInfoPoints = [] } "pure"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 12 1 13 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 12 1 13 , srcInfoPoints = [] } 1 "1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 14 1 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 14 1 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 14 1 17 , srcInfoPoints = [] } "<^>"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 18 1 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 18 1 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 18 1 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 18 1 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 18 1 22 , srcInfoPoints = [] } "pure"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 23 1 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 23 1 24 , srcInfoPoints = [] } 2 "2"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 25 1 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 25 1 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 25 1 28 , srcInfoPoints = [] } "<^>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 29 1 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 29 1 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 29 1 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 29 1 33 , srcInfoPoints = [] } "pure"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 34 1 37 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 1 34 1 35 , SrcSpan "tests/examples/Fixity2.hs" 1 35 1 36 , SrcSpan "tests/examples/Fixity2.hs" 1 36 1 37 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 34 1 37 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 1 34 1 35 , SrcSpan "tests/examples/Fixity2.hs" 1 35 1 36 , SrcSpan "tests/examples/Fixity2.hs" 1 36 1 37 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 1 35 1 36 , srcInfoPoints = [] } "+"))))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 3 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 2 3 2 3 , SrcSpan "tests/examples/Fixity2.hs" 3 3 3 3 , SrcSpan "tests/examples/Fixity2.hs" 4 1 4 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 3 2 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 3 2 8 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 2 3 2 4 , SrcSpan "tests/examples/Fixity2.hs" 2 4 2 7 , SrcSpan "tests/examples/Fixity2.hs" 2 7 2 8 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 4 2 7 , srcInfoPoints = [] } "<^>")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 9 2 21 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 2 9 2 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 11 2 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 11 2 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 11 2 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 11 2 15 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 16 2 21 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 2 16 2 17 , SrcSpan "tests/examples/Fixity2.hs" 2 17 2 20 , SrcSpan "tests/examples/Fixity2.hs" 2 20 2 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 16 2 21 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 2 16 2 17 , SrcSpan "tests/examples/Fixity2.hs" 2 17 2 20 , SrcSpan "tests/examples/Fixity2.hs" 2 20 2 21 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 2 17 2 20 , srcInfoPoints = [] } "<*>"))))) Nothing , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 3 3 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity2.hs" 3 10 3 11 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 3 3 3 9 , srcInfoPoints = [] }) (Just 4) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 3 12 3 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity2.hs" 3 12 3 15 , srcInfoPoints = [] } "<^>") ] ])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/Fixity2.hs.prettyparser.golden0000644000000000000000000000000612746233113024044 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Fixity2.hs.prettyprinter.golden0000644000000000000000000000013612746233113024237 0ustar0000000000000000foo = pure 1 <^> pure 2 <^> pure (+) where (<^>) = flip (<*>) infixr 4 <^> haskell-src-exts-1.18.2/tests/examples/Fixity3.hs0000644000000000000000000000017412746233113020041 0ustar0000000000000000class Foo f where (<^>) :: Applicative f => f a -> f (a -> b) -> f b infixr 4 <^> foo = pure 1 <^> pure 2 <^> pure (+) haskell-src-exts-1.18.2/tests/examples/Fixity3.hs.exactprinter.golden0000644000000000000000000000000612746233113024011 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Fixity3.hs.parser.golden0000644000000000000000000005231012746233113022602 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 1 1 1 1 , SrcSpan "tests/examples/Fixity3.hs" 1 1 1 1 , SrcSpan "tests/examples/Fixity3.hs" 1 1 1 1 , SrcSpan "tests/examples/Fixity3.hs" 5 1 5 1 , SrcSpan "tests/examples/Fixity3.hs" 6 1 6 1 , SrcSpan "tests/examples/Fixity3.hs" 6 1 6 1 ] } Nothing [] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 1 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 1 1 1 6 , SrcSpan "tests/examples/Fixity3.hs" 1 13 1 18 , SrcSpan "tests/examples/Fixity3.hs" 2 3 2 3 , SrcSpan "tests/examples/Fixity3.hs" 3 3 3 3 , SrcSpan "tests/examples/Fixity3.hs" 5 1 5 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 7 1 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 7 1 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 7 1 10 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 11 1 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 1 11 1 12 , srcInfoPoints = [] } "f"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 3 2 53 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 9 2 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 3 2 53 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 9 2 11 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 3 2 8 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 3 2 4 , SrcSpan "tests/examples/Fixity3.hs" 2 4 2 7 , SrcSpan "tests/examples/Fixity3.hs" 2 7 2 8 ] } "<^>" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 53 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 26 2 28 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 26 2 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 12 2 23 , srcInfoPoints = [] } "Applicative")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 24 2 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 24 2 25 , srcInfoPoints = [] } "f") ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 29 2 53 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 33 2 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 29 2 32 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 29 2 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 29 2 30 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 31 2 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 31 2 32 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 36 2 53 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 47 2 49 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 36 2 46 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 36 2 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 36 2 37 , srcInfoPoints = [] } "f")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 38 2 46 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 38 2 39 , SrcSpan "tests/examples/Fixity3.hs" 2 45 2 46 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 39 2 45 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 2 41 2 43 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 39 2 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 39 2 40 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 44 2 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 44 2 45 , srcInfoPoints = [] } "b"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 50 2 53 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 50 2 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 50 2 51 , srcInfoPoints = [] } "f")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 52 2 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 2 52 2 53 , srcInfoPoints = [] } "b"))))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 3 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 3 10 3 11 ] } (InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 3 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 3 10 3 11 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 3 3 9 , srcInfoPoints = [] }) (Just 4) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 12 3 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 3 12 3 15 , srcInfoPoints = [] } "<^>") ]) ]) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 1 5 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 1 5 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 1 5 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 5 5 37 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 5 5 5 6 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 7 5 11 , srcInfoPoints = [] } "pure"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 12 5 13 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 12 5 13 , srcInfoPoints = [] } 1 "1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 14 5 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 14 5 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 14 5 17 , srcInfoPoints = [] } "<^>"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 18 5 22 , srcInfoPoints = [] } "pure"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 23 5 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 23 5 24 , srcInfoPoints = [] } 2 "2"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 25 5 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 25 5 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 25 5 28 , srcInfoPoints = [] } "<^>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 29 5 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 29 5 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 29 5 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 29 5 33 , srcInfoPoints = [] } "pure"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 34 5 37 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 5 34 5 35 , SrcSpan "tests/examples/Fixity3.hs" 5 35 5 36 , SrcSpan "tests/examples/Fixity3.hs" 5 36 5 37 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 34 5 37 , srcInfoPoints = [ SrcSpan "tests/examples/Fixity3.hs" 5 34 5 35 , SrcSpan "tests/examples/Fixity3.hs" 5 35 5 36 , SrcSpan "tests/examples/Fixity3.hs" 5 36 5 37 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Fixity3.hs" 5 35 5 36 , srcInfoPoints = [] } "+"))))))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/Fixity3.hs.prettyparser.golden0000644000000000000000000000000612746233113024045 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Fixity3.hs.prettyprinter.golden0000644000000000000000000000022012746233113024232 0ustar0000000000000000class Foo f where (<^>) :: Applicative f => f a -> f (a -> b) -> f b infixr 4 <^> foo = pure 1 <^> pure 2 <^> pure (+) haskell-src-exts-1.18.2/tests/examples/FixityTests.hs0000644000000000000000000000020412746233113020773 0ustar0000000000000000main = forM_ cmdReports $ \x -> do putStrLn $ "Writing report to " ++ x ++ " ..." writeReport x ideas haskell-src-exts-1.18.2/tests/examples/FixityTests.hs.exactprinter.golden0000644000000000000000000000000612746233113024751 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FixityTests.hs.parser.golden0000644000000000000000000004201112746233113023537 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/FixityTests.hs" 1 1 1 1 , SrcSpan "tests/examples/FixityTests.hs" 1 1 1 1 , SrcSpan "tests/examples/FixityTests.hs" 1 1 1 1 , SrcSpan "tests/examples/FixityTests.hs" 4 1 4 1 , SrcSpan "tests/examples/FixityTests.hs" 4 1 4 1 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 1 3 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 1 1 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 1 1 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 6 3 35 , srcInfoPoints = [ SrcSpan "tests/examples/FixityTests.hs" 1 6 1 7 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 8 3 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 8 1 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 8 1 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 8 1 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 8 1 13 , srcInfoPoints = [] } "forM_"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 14 1 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 14 1 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 14 1 24 , srcInfoPoints = [] } "cmdReports")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 25 1 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 25 1 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 25 1 26 , srcInfoPoints = [] } "$"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 27 3 35 , srcInfoPoints = [ SrcSpan "tests/examples/FixityTests.hs" 1 27 1 28 , SrcSpan "tests/examples/FixityTests.hs" 1 30 1 32 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 28 1 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 28 1 29 , srcInfoPoints = [] } "x") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 1 33 3 35 , srcInfoPoints = [ SrcSpan "tests/examples/FixityTests.hs" 1 33 1 35 , SrcSpan "tests/examples/FixityTests.hs" 2 16 2 16 , SrcSpan "tests/examples/FixityTests.hs" 3 16 3 16 , SrcSpan "tests/examples/FixityTests.hs" 4 1 4 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 16 2 62 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 16 2 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 16 2 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 16 2 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 16 2 24 , srcInfoPoints = [] } "putStrLn"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 25 2 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 25 2 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 25 2 26 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 27 2 62 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 27 2 47 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 27 2 47 , srcInfoPoints = [] } "Writing report to " "Writing report to ")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 48 2 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 48 2 50 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 48 2 50 , srcInfoPoints = [] } "++"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 51 2 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 51 2 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 51 2 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 51 2 52 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 53 2 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 53 2 55 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 53 2 55 , srcInfoPoints = [] } "++"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 56 2 62 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 2 56 2 62 , srcInfoPoints = [] } " ..." " ..."))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 16 3 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 16 3 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 16 3 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 16 3 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 16 3 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 16 3 27 , srcInfoPoints = [] } "writeReport"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 28 3 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 28 3 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 28 3 29 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 30 3 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 30 3 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FixityTests.hs" 3 30 3 35 , srcInfoPoints = [] } "ideas")))) ])))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/FixityTests.hs.prettyparser.golden0000644000000000000000000000000612746233113025005 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FixityTests.hs.prettyprinter.golden0000644000000000000000000000020212746233113025172 0ustar0000000000000000main = forM_ cmdReports $ \ x -> do putStrLn $ "Writing report to " ++ x ++ " ..." writeReport x ideas haskell-src-exts-1.18.2/tests/examples/FlexibleContextsWithoutVars.hs0000644000000000000000000000010212746233113024173 0ustar0000000000000000{-# LANGUAGE FlexibleContexts #-} f :: Log.Stack => a -> a f = id haskell-src-exts-1.18.2/tests/examples/FlexibleContextsWithoutVars.hs.exactprinter.golden0000644000000000000000000000000612746233113030154 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FlexibleContextsWithoutVars.hs.parser.golden0000644000000000000000000001567112746233113026756 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 1 1 1 1 , SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 1 2 1 , SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 1 2 1 , SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 1 2 1 , SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 1 3 1 , SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 4 1 4 1 , SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 1 1 1 34 , srcInfoPoints = [ SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 1 1 1 13 , SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 1 31 1 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 1 14 1 30 , srcInfoPoints = [] } "FlexibleContexts" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 1 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 3 2 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 1 2 2 , srcInfoPoints = [] } "f" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 6 2 25 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 6 2 18 , srcInfoPoints = [ SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 16 2 18 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 6 2 18 , srcInfoPoints = [ SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 16 2 18 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 6 2 15 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 6 2 15 , srcInfoPoints = [] } "Log") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 6 2 15 , srcInfoPoints = [] } "Stack")) []))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 19 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 21 2 23 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 19 2 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 19 2 20 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 24 2 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 2 24 2 25 , srcInfoPoints = [] } "a")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 1 3 7 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 1 3 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 1 3 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 3 3 7 , srcInfoPoints = [ SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 3 3 4 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 5 3 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 5 3 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/FlexibleContextsWithoutVars.hs" 3 5 3 7 , srcInfoPoints = [] } "id")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/FlexibleContextsWithoutVars.hs.prettyparser.golden0000644000000000000000000000000612746233113030210 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/FlexibleContextsWithoutVars.hs.prettyprinter.golden0000644000000000000000000000010312746233113030375 0ustar0000000000000000{-# LANGUAGE FlexibleContexts #-} f :: Log.Stack => a -> a f = id haskell-src-exts-1.18.2/tests/examples/ForallInInstance.hs0000644000000000000000000000016612746233113021676 0ustar0000000000000000{-# LANGUAGE ScopedTypeVariables #-} module ForallInInstance where instance forall a. MyClass a => MyClass [a] where haskell-src-exts-1.18.2/tests/examples/ForallInInstance.hs.exactprinter.golden0000644000000000000000000000000612746233113025645 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ForallInInstance.hs.parser.golden0000644000000000000000000001625712746233113024450 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/ForallInInstance.hs" 1 1 1 1 , SrcSpan "tests/examples/ForallInInstance.hs" 2 1 2 1 , SrcSpan "tests/examples/ForallInInstance.hs" 2 1 2 1 , SrcSpan "tests/examples/ForallInInstance.hs" 4 1 4 1 , SrcSpan "tests/examples/ForallInInstance.hs" 5 1 5 1 , SrcSpan "tests/examples/ForallInInstance.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 2 1 2 30 , srcInfoPoints = [ SrcSpan "tests/examples/ForallInInstance.hs" 2 1 2 7 , SrcSpan "tests/examples/ForallInInstance.hs" 2 25 2 30 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 2 8 2 24 , srcInfoPoints = [] } "ForallInInstance") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 1 1 1 37 , srcInfoPoints = [ SrcSpan "tests/examples/ForallInInstance.hs" 1 1 1 13 , SrcSpan "tests/examples/ForallInInstance.hs" 1 34 1 37 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 1 14 1 33 , srcInfoPoints = [] } "ScopedTypeVariables" ] ] [] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 1 5 0 , srcInfoPoints = [ SrcSpan "tests/examples/ForallInInstance.hs" 4 1 4 9 , SrcSpan "tests/examples/ForallInInstance.hs" 4 45 4 50 , SrcSpan "tests/examples/ForallInInstance.hs" 5 1 5 1 , SrcSpan "tests/examples/ForallInInstance.hs" 5 1 5 1 , SrcSpan "tests/examples/ForallInInstance.hs" 5 0 5 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 10 4 44 , srcInfoPoints = [ SrcSpan "tests/examples/ForallInInstance.hs" 4 10 4 16 , SrcSpan "tests/examples/ForallInInstance.hs" 4 18 4 19 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 17 4 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 17 4 18 , srcInfoPoints = [] } "a") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 20 4 32 , srcInfoPoints = [ SrcSpan "tests/examples/ForallInInstance.hs" 4 30 4 32 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 20 4 32 , srcInfoPoints = [ SrcSpan "tests/examples/ForallInInstance.hs" 4 30 4 32 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 20 4 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 20 4 27 , srcInfoPoints = [] } "MyClass")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 28 4 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 28 4 29 , srcInfoPoints = [] } "a") ]))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 33 4 44 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 33 4 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 33 4 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 33 4 40 , srcInfoPoints = [] } "MyClass"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 41 4 44 , srcInfoPoints = [ SrcSpan "tests/examples/ForallInInstance.hs" 4 41 4 42 , SrcSpan "tests/examples/ForallInInstance.hs" 4 43 4 44 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 42 4 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForallInInstance.hs" 4 42 4 43 , srcInfoPoints = [] } "a"))))) (Just []) ] , [] ) haskell-src-exts-1.18.2/tests/examples/ForallInInstance.hs.prettyparser.golden0000644000000000000000000000000612746233113025701 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ForallInInstance.hs.prettyprinter.golden0000644000000000000000000000016712746233113026100 0ustar0000000000000000{-# LANGUAGE ScopedTypeVariables #-} module ForallInInstance where instance forall a . MyClass a => MyClass [a] where haskell-src-exts-1.18.2/tests/examples/ForeignImport.hs0000644000000000000000000000035312746233113021265 0ustar0000000000000000{- If compiled without ForeignFunctionInterface (part of Haskell2010), it complains not about FFI but about missing TemplateHaskell -} foreign import ccall unsafe "getProgArgv" getProgArgv :: Ptr CInt -> Ptr (Ptr CString) -> IO () haskell-src-exts-1.18.2/tests/examples/ForeignImport.hs.exactprinter.golden0000644000000000000000000000000612746233113025236 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ForeignImport.hs.parser.golden0000644000000000000000000002266212746233113024036 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 3 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImport.hs" 3 1 3 1 , SrcSpan "tests/examples/ForeignImport.hs" 3 1 3 1 , SrcSpan "tests/examples/ForeignImport.hs" 3 1 3 1 , SrcSpan "tests/examples/ForeignImport.hs" 5 1 5 1 , SrcSpan "tests/examples/ForeignImport.hs" 5 1 5 1 ] } Nothing [] [] [ ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 3 1 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImport.hs" 3 1 3 8 , SrcSpan "tests/examples/ForeignImport.hs" 3 9 3 15 , SrcSpan "tests/examples/ForeignImport.hs" 3 29 3 42 , SrcSpan "tests/examples/ForeignImport.hs" 4 14 4 16 ] } (CCall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 3 16 3 21 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 3 22 3 28 , srcInfoPoints = [] })) (Just "getProgArgv") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 2 4 13 , srcInfoPoints = [] } "getProgArgv") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 17 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImport.hs" 4 26 4 28 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 17 4 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 17 4 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 17 4 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 17 4 20 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 21 4 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 21 4 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 21 4 25 , srcInfoPoints = [] } "CInt")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 29 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImport.hs" 4 47 4 49 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 29 4 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 29 4 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 29 4 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 29 4 32 , srcInfoPoints = [] } "Ptr"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 33 4 46 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImport.hs" 4 33 4 34 , SrcSpan "tests/examples/ForeignImport.hs" 4 45 4 46 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 34 4 45 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 34 4 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 34 4 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 34 4 37 , srcInfoPoints = [] } "Ptr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 38 4 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 38 4 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 38 4 45 , srcInfoPoints = [] } "CString")))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 50 4 55 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 50 4 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 50 4 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 50 4 52 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 53 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImport.hs" 4 53 4 54 , SrcSpan "tests/examples/ForeignImport.hs" 4 54 4 55 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 53 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImport.hs" 4 53 4 54 , SrcSpan "tests/examples/ForeignImport.hs" 4 54 4 55 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImport.hs" 4 53 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImport.hs" 4 53 4 54 , SrcSpan "tests/examples/ForeignImport.hs" 4 54 4 55 ] })))))) ] , [ Comment True (SrcSpan "tests/examples/ForeignImport.hs" 1 1 2 67) " If compiled without ForeignFunctionInterface (part of Haskell2010),\n it complains not about FFI but about missing TemplateHaskell " ] ) haskell-src-exts-1.18.2/tests/examples/ForeignImport.hs.prettyparser.golden0000644000000000000000000000000612746233113025272 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ForeignImport.hs.prettyprinter.golden0000644000000000000000000000015712746233113025470 0ustar0000000000000000foreign import ccall unsafe "getProgArgv" getProgArgv :: Ptr CInt -> Ptr (Ptr CString) -> IO () haskell-src-exts-1.18.2/tests/examples/ForeignImportJavascript.hs0000644000000000000000000000021012746233113023304 0ustar0000000000000000{-# LANGUAGE JavascriptFFI #-} foreign import javascript unsafe "somethingUseful_ = $1" js_set_somethingUseful :: JSFun a -> IO () haskell-src-exts-1.18.2/tests/examples/ForeignImportJavascript.hs.exactprinter.golden0000644000000000000000000000000612746233113027265 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ForeignImportJavascript.hs.parser.golden0000644000000000000000000001537012746233113026063 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImportJavascript.hs" 1 1 1 1 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 1 3 1 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 1 3 1 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 1 3 1 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 5 1 5 1 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImportJavascript.hs" 1 1 1 13 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 1 14 1 27 , srcInfoPoints = [] } "JavascriptFFI" ] ] [] [ ForImp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 1 4 47 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 1 3 8 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 9 3 15 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 34 3 57 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 28 4 30 ] } (JavaScript SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 16 3 26 , srcInfoPoints = [] }) (Just (PlayRisky SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 3 27 3 33 , srcInfoPoints = [] })) (Just "somethingUseful_ = $1") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 5 4 27 , srcInfoPoints = [] } "js_set_somethingUseful") (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 31 4 47 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 39 4 41 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 31 4 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 31 4 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 31 4 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 31 4 36 , srcInfoPoints = [] } "JSFun"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 37 4 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 37 4 38 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 42 4 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 42 4 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 42 4 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 42 4 44 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 45 4 47 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 45 4 46 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 46 4 47 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 45 4 47 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 45 4 46 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 46 4 47 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 45 4 47 , srcInfoPoints = [ SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 45 4 46 , SrcSpan "tests/examples/ForeignImportJavascript.hs" 4 46 4 47 ] }))))) ] , [] ) haskell-src-exts-1.18.2/tests/examples/ForeignImportJavascript.hs.prettyparser.golden0000644000000000000000000000000612746233113027321 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ForeignImportJavascript.hs.prettyprinter.golden0000644000000000000000000000022312746233113027511 0ustar0000000000000000{-# LANGUAGE JavascriptFFI #-} foreign import javascript unsafe "somethingUseful_ = $1" js_set_somethingUseful :: JSFun a -> IO () haskell-src-exts-1.18.2/tests/examples/GadtDeriving.hs0000644000000000000000000000013412746233113021045 0ustar0000000000000000{-# LANGUAGE GADTs #-} data Foo where Foo :: Int -> Foo deriving (Eq,Ord,Typeable) haskell-src-exts-1.18.2/tests/examples/GadtDeriving.hs.exactprinter.golden0000644000000000000000000000000612746233113025021 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GadtDeriving.hs.parser.golden0000644000000000000000000001767312746233113023627 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/GadtDeriving.hs" 1 1 1 1 , SrcSpan "tests/examples/GadtDeriving.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtDeriving.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtDeriving.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtDeriving.hs" 6 1 6 1 , SrcSpan "tests/examples/GadtDeriving.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/GadtDeriving.hs" 1 1 1 13 , SrcSpan "tests/examples/GadtDeriving.hs" 1 20 1 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 1 14 1 19 , srcInfoPoints = [] } "GADTs" ] ] [] [ GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 3 1 5 31 , srcInfoPoints = [ SrcSpan "tests/examples/GadtDeriving.hs" 3 10 3 15 , SrcSpan "tests/examples/GadtDeriving.hs" 4 5 4 5 , SrcSpan "tests/examples/GadtDeriving.hs" 5 5 5 5 , SrcSpan "tests/examples/GadtDeriving.hs" 5 5 5 5 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 3 6 3 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 3 6 3 9 , srcInfoPoints = [] } "Foo")) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 5 4 22 , srcInfoPoints = [ SrcSpan "tests/examples/GadtDeriving.hs" 4 9 4 11 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 5 4 8 , srcInfoPoints = [] } "Foo") Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 12 4 22 , srcInfoPoints = [ SrcSpan "tests/examples/GadtDeriving.hs" 4 16 4 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 12 4 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 12 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 12 4 15 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 19 4 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 19 4 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 4 19 4 22 , srcInfoPoints = [] } "Foo")))) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 5 5 31 , srcInfoPoints = [ SrcSpan "tests/examples/GadtDeriving.hs" 5 5 5 13 , SrcSpan "tests/examples/GadtDeriving.hs" 5 14 5 15 , SrcSpan "tests/examples/GadtDeriving.hs" 5 17 5 18 , SrcSpan "tests/examples/GadtDeriving.hs" 5 21 5 22 , SrcSpan "tests/examples/GadtDeriving.hs" 5 30 5 31 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 15 5 17 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 15 5 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 15 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 15 5 17 , srcInfoPoints = [] } "Eq"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 18 5 21 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 18 5 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 18 5 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 18 5 21 , srcInfoPoints = [] } "Ord"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 22 5 30 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 22 5 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 22 5 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtDeriving.hs" 5 22 5 30 , srcInfoPoints = [] } "Typeable"))) ])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/GadtDeriving.hs.prettyparser.golden0000644000000000000000000000000612746233113025055 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GadtDeriving.hs.prettyprinter.golden0000644000000000000000000000014212746233113025245 0ustar0000000000000000{-# LANGUAGE GADTs #-} data Foo where Foo :: Int -> Foo deriving (Eq, Ord, Typeable) haskell-src-exts-1.18.2/tests/examples/GADTRecord.hs0000644000000000000000000000010212746233113020347 0ustar0000000000000000{-# LANGUAGE GADTs #-} data T where T :: { field :: Int } -> T haskell-src-exts-1.18.2/tests/examples/GADTRecord.hs.exactprinter.golden0000644000000000000000000000000612746233113024330 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GADTRecord.hs.parser.golden0000644000000000000000000001137612746233113023130 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/GADTRecord.hs" 1 1 1 1 , SrcSpan "tests/examples/GADTRecord.hs" 3 1 3 1 , SrcSpan "tests/examples/GADTRecord.hs" 3 1 3 1 , SrcSpan "tests/examples/GADTRecord.hs" 3 1 3 1 , SrcSpan "tests/examples/GADTRecord.hs" 5 1 5 1 , SrcSpan "tests/examples/GADTRecord.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/GADTRecord.hs" 1 1 1 13 , SrcSpan "tests/examples/GADTRecord.hs" 1 20 1 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 1 14 1 19 , srcInfoPoints = [] } "GADTs" ] ] [] [ GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 3 1 5 0 , srcInfoPoints = [ SrcSpan "tests/examples/GADTRecord.hs" 3 8 3 13 , SrcSpan "tests/examples/GADTRecord.hs" 4 3 4 3 , SrcSpan "tests/examples/GADTRecord.hs" 5 1 5 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 3 6 3 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 3 6 3 7 , srcInfoPoints = [] } "T")) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 3 4 29 , srcInfoPoints = [ SrcSpan "tests/examples/GADTRecord.hs" 4 5 4 7 , SrcSpan "tests/examples/GADTRecord.hs" 4 8 4 9 , SrcSpan "tests/examples/GADTRecord.hs" 4 23 4 24 , SrcSpan "tests/examples/GADTRecord.hs" 4 25 4 27 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 3 4 4 , srcInfoPoints = [] } "T") (Just [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 10 4 22 , srcInfoPoints = [ SrcSpan "tests/examples/GADTRecord.hs" 4 16 4 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 10 4 15 , srcInfoPoints = [] } "field" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 19 4 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 19 4 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 19 4 22 , srcInfoPoints = [] } "Int"))) ]) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 28 4 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 28 4 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GADTRecord.hs" 4 28 4 29 , srcInfoPoints = [] } "T"))) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/GADTRecord.hs.prettyparser.golden0000644000000000000000000000000612746233113024364 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GADTRecord.hs.prettyprinter.golden0000644000000000000000000000010612746233113024554 0ustar0000000000000000{-# LANGUAGE GADTs #-} data T where T :: {field :: Int} -> T haskell-src-exts-1.18.2/tests/examples/GadtRecordFields.hs0000644000000000000000000000014612746233113021646 0ustar0000000000000000{-# LANGUAGE GADTs #-} data Ty where TCon :: { field1 :: Int, field2 :: Bool } -> Ty TCon2 :: Ty haskell-src-exts-1.18.2/tests/examples/GadtRecordFields.hs.exactprinter.golden0000644000000000000000000000000612746233113025617 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GadtRecordFields.hs.parser.golden0000644000000000000000000002044712746233113024416 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/GadtRecordFields.hs" 1 1 1 1 , SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtRecordFields.hs" 6 1 6 1 , SrcSpan "tests/examples/GadtRecordFields.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/GadtRecordFields.hs" 1 1 1 13 , SrcSpan "tests/examples/GadtRecordFields.hs" 1 20 1 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 1 14 1 19 , srcInfoPoints = [] } "GADTs" ] ] [] [ GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 6 0 , srcInfoPoints = [ SrcSpan "tests/examples/GadtRecordFields.hs" 3 9 3 14 , SrcSpan "tests/examples/GadtRecordFields.hs" 4 3 4 3 , SrcSpan "tests/examples/GadtRecordFields.hs" 5 3 5 3 , SrcSpan "tests/examples/GadtRecordFields.hs" 6 1 6 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 3 6 3 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 3 6 3 8 , srcInfoPoints = [] } "Ty")) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 3 4 50 , srcInfoPoints = [ SrcSpan "tests/examples/GadtRecordFields.hs" 4 8 4 10 , SrcSpan "tests/examples/GadtRecordFields.hs" 4 11 4 12 , SrcSpan "tests/examples/GadtRecordFields.hs" 4 43 4 44 , SrcSpan "tests/examples/GadtRecordFields.hs" 4 45 4 47 , SrcSpan "tests/examples/GadtRecordFields.hs" 4 26 4 27 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 3 4 7 , srcInfoPoints = [] } "TCon") (Just [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 13 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/GadtRecordFields.hs" 4 20 4 22 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 13 4 19 , srcInfoPoints = [] } "field1" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 23 4 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 23 4 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 23 4 26 , srcInfoPoints = [] } "Int"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 28 4 42 , srcInfoPoints = [ SrcSpan "tests/examples/GadtRecordFields.hs" 4 35 4 37 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 28 4 34 , srcInfoPoints = [] } "field2" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 38 4 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 38 4 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 38 4 42 , srcInfoPoints = [] } "Bool"))) ]) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 48 4 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 48 4 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 4 48 4 50 , srcInfoPoints = [] } "Ty"))) , GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 5 3 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/GadtRecordFields.hs" 5 9 5 11 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 5 3 5 8 , srcInfoPoints = [] } "TCon2") Nothing (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 5 12 5 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 5 12 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtRecordFields.hs" 5 12 5 14 , srcInfoPoints = [] } "Ty"))) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/GadtRecordFields.hs.prettyparser.golden0000644000000000000000000000000612746233113025653 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GadtRecordFields.hs.prettyprinter.golden0000644000000000000000000000016012746233113026043 0ustar0000000000000000{-# LANGUAGE GADTs #-} data Ty where TCon :: {field1 :: Int, field2 :: Bool} -> Ty TCon2 :: Ty haskell-src-exts-1.18.2/tests/examples/GadtStrictness.hs0000644000000000000000000000006612746233113021443 0ustar0000000000000000{-# LANGUAGE GADTs #-} data X where X :: !Int -> X haskell-src-exts-1.18.2/tests/examples/GadtStrictness.hs.exactprinter.golden0000644000000000000000000000000612746233113025413 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GadtStrictness.hs.parser.golden0000644000000000000000000001213112746233113024201 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/GadtStrictness.hs" 1 1 1 1 , SrcSpan "tests/examples/GadtStrictness.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtStrictness.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtStrictness.hs" 3 1 3 1 , SrcSpan "tests/examples/GadtStrictness.hs" 5 1 5 1 , SrcSpan "tests/examples/GadtStrictness.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/GadtStrictness.hs" 1 1 1 13 , SrcSpan "tests/examples/GadtStrictness.hs" 1 20 1 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 1 14 1 19 , srcInfoPoints = [] } "GADTs" ] ] [] [ GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 3 1 5 0 , srcInfoPoints = [ SrcSpan "tests/examples/GadtStrictness.hs" 3 8 3 13 , SrcSpan "tests/examples/GadtStrictness.hs" 4 3 4 3 , SrcSpan "tests/examples/GadtStrictness.hs" 5 1 5 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 3 6 3 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 3 6 3 7 , srcInfoPoints = [] } "X")) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 3 4 17 , srcInfoPoints = [ SrcSpan "tests/examples/GadtStrictness.hs" 4 5 4 7 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 3 4 4 , srcInfoPoints = [] } "X") Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 8 4 17 , srcInfoPoints = [ SrcSpan "tests/examples/GadtStrictness.hs" 4 13 4 15 ] } (TyBang SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 8 4 12 , srcInfoPoints = [] } (BangedTy SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 8 4 9 , srcInfoPoints = [] }) (NoUnpackPragma SrcSpanInfo { srcInfoSpan = SrcSpan "" (-1) (-1) (-1) (-1) , srcInfoPoints = [] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 9 4 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 9 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 9 4 12 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 16 4 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 16 4 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GadtStrictness.hs" 4 16 4 17 , srcInfoPoints = [] } "X")))) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/GadtStrictness.hs.prettyparser.golden0000644000000000000000000000000612746233113025447 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GadtStrictness.hs.prettyprinter.golden0000644000000000000000000000007412746233113025643 0ustar0000000000000000{-# LANGUAGE GADTs #-} data X where X :: !Int -> X haskell-src-exts-1.18.2/tests/examples/GenericTree.hs0000644000000000000000000000030312746233113020670 0ustar0000000000000000{-# LANGUAGE RankNTypes #-} module GenericTree where import Data.Typeable dynRep :: (Typeable a) => a -> (TypeRep, forall b. (Typeable b) => b -> (Maybe b)) dynRep a = (typeOf a, \_ -> cast a) haskell-src-exts-1.18.2/tests/examples/GenericTree.hs.exactprinter.golden0000644000000000000000000000000612746233113024646 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GenericTree.hs.parser.golden0000644000000000000000000005217312746233113023446 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 1 1 1 1 , SrcSpan "tests/examples/GenericTree.hs" 2 1 2 1 , SrcSpan "tests/examples/GenericTree.hs" 2 1 2 1 , SrcSpan "tests/examples/GenericTree.hs" 4 1 4 1 , SrcSpan "tests/examples/GenericTree.hs" 6 1 6 1 , SrcSpan "tests/examples/GenericTree.hs" 7 1 7 1 , SrcSpan "tests/examples/GenericTree.hs" 8 1 8 1 , SrcSpan "tests/examples/GenericTree.hs" 8 1 8 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 2 1 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 2 1 2 7 , SrcSpan "tests/examples/GenericTree.hs" 2 20 2 25 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 2 8 2 19 , srcInfoPoints = [] } "GenericTree") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 1 1 1 28 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 1 1 1 13 , SrcSpan "tests/examples/GenericTree.hs" 1 25 1 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 1 14 1 24 , srcInfoPoints = [] } "RankNTypes" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 4 8 4 21 , srcInfoPoints = [] } "Data.Typeable" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 1 6 83 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 8 6 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 1 6 7 , srcInfoPoints = [] } "dynRep" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 11 6 83 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 11 6 26 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 11 6 12 , SrcSpan "tests/examples/GenericTree.hs" 6 22 6 23 , SrcSpan "tests/examples/GenericTree.hs" 6 24 6 26 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 11 6 26 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 11 6 12 , SrcSpan "tests/examples/GenericTree.hs" 6 22 6 23 , SrcSpan "tests/examples/GenericTree.hs" 6 24 6 26 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 12 6 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 12 6 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 12 6 20 , srcInfoPoints = [] } "Typeable")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 21 6 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 21 6 22 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 27 6 83 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 29 6 31 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 27 6 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 27 6 28 , srcInfoPoints = [] } "a")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 32 6 83 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 32 6 33 , SrcSpan "tests/examples/GenericTree.hs" 6 40 6 41 , SrcSpan "tests/examples/GenericTree.hs" 6 82 6 83 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 33 6 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 33 6 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 33 6 40 , srcInfoPoints = [] } "TypeRep")) , TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 42 6 82 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 42 6 48 , SrcSpan "tests/examples/GenericTree.hs" 6 50 6 51 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 49 6 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 49 6 50 , srcInfoPoints = [] } "b") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 52 6 67 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 52 6 53 , SrcSpan "tests/examples/GenericTree.hs" 6 63 6 64 , SrcSpan "tests/examples/GenericTree.hs" 6 65 6 67 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 52 6 67 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 52 6 53 , SrcSpan "tests/examples/GenericTree.hs" 6 63 6 64 , SrcSpan "tests/examples/GenericTree.hs" 6 65 6 67 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 53 6 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 53 6 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 53 6 61 , srcInfoPoints = [] } "Typeable")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 62 6 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 62 6 63 , srcInfoPoints = [] } "b") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 68 6 82 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 70 6 72 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 68 6 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 68 6 69 , srcInfoPoints = [] } "b")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 73 6 82 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 6 73 6 74 , SrcSpan "tests/examples/GenericTree.hs" 6 81 6 82 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 74 6 81 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 74 6 79 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 74 6 79 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 74 6 79 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 80 6 81 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 6 80 6 81 , srcInfoPoints = [] } "b"))))) ]))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 1 7 36 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 1 7 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 1 7 7 , srcInfoPoints = [] } "dynRep") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 8 7 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 8 7 9 , srcInfoPoints = [] } "a") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 10 7 36 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 7 10 7 11 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 12 7 36 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 7 12 7 13 , SrcSpan "tests/examples/GenericTree.hs" 7 21 7 22 , SrcSpan "tests/examples/GenericTree.hs" 7 35 7 36 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 13 7 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 13 7 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 13 7 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 13 7 19 , srcInfoPoints = [] } "typeOf"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 20 7 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 20 7 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 20 7 21 , srcInfoPoints = [] } "a"))) , Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 23 7 35 , srcInfoPoints = [ SrcSpan "tests/examples/GenericTree.hs" 7 23 7 24 , SrcSpan "tests/examples/GenericTree.hs" 7 26 7 28 ] } [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 24 7 25 , srcInfoPoints = [] } ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 29 7 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 29 7 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 29 7 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 29 7 33 , srcInfoPoints = [] } "cast"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 34 7 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 34 7 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GenericTree.hs" 7 34 7 35 , srcInfoPoints = [] } "a")))) ])) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/GenericTree.hs.prettyparser.golden0000644000000000000000000000000612746233113024702 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GenericTree.hs.prettyprinter.golden0000644000000000000000000000032612746233113025076 0ustar0000000000000000{-# LANGUAGE RankNTypes #-} module GenericTree where import Data.Typeable dynRep :: (Typeable a) => a -> (TypeRep, forall b . (Typeable b) => b -> (Maybe b)) dynRep a = (typeOf a, \ _ -> cast a) haskell-src-exts-1.18.2/tests/examples/GhcDeriving.hs0000644000000000000000000000014412746233113020670 0ustar0000000000000000 newtype CodeGenModule a = CGM (StateT CGMState IO a) deriving (Monad, MonadState [s], MonadIO) haskell-src-exts-1.18.2/tests/examples/GhcDeriving.hs.exactprinter.golden0000644000000000000000000000000612746233113024643 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GhcDeriving.hs.parser.golden0000644000000000000000000003002412746233113023432 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/GhcDeriving.hs" 3 1 3 1 , SrcSpan "tests/examples/GhcDeriving.hs" 3 1 3 1 , SrcSpan "tests/examples/GhcDeriving.hs" 3 1 3 1 , SrcSpan "tests/examples/GhcDeriving.hs" 5 1 5 1 , SrcSpan "tests/examples/GhcDeriving.hs" 5 1 5 1 ] } Nothing [] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 1 4 45 , srcInfoPoints = [ SrcSpan "tests/examples/GhcDeriving.hs" 3 25 3 26 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 1 3 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 9 3 24 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 9 3 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 9 3 22 , srcInfoPoints = [] } "CodeGenModule")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 23 3 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 23 3 24 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 27 3 53 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 27 3 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 27 3 30 , srcInfoPoints = [] } "CGM") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 31 3 53 , srcInfoPoints = [ SrcSpan "tests/examples/GhcDeriving.hs" 3 31 3 32 , SrcSpan "tests/examples/GhcDeriving.hs" 3 52 3 53 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 32 3 52 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 32 3 50 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 32 3 47 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 32 3 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 32 3 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 32 3 38 , srcInfoPoints = [] } "StateT"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 39 3 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 39 3 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 39 3 47 , srcInfoPoints = [] } "CGMState")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 48 3 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 48 3 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 48 3 50 , srcInfoPoints = [] } "IO")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 51 3 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 3 51 3 52 , srcInfoPoints = [] } "a"))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 4 4 45 , srcInfoPoints = [ SrcSpan "tests/examples/GhcDeriving.hs" 4 4 4 12 , SrcSpan "tests/examples/GhcDeriving.hs" 4 13 4 14 , SrcSpan "tests/examples/GhcDeriving.hs" 4 19 4 20 , SrcSpan "tests/examples/GhcDeriving.hs" 4 35 4 36 , SrcSpan "tests/examples/GhcDeriving.hs" 4 44 4 45 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 14 4 19 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 14 4 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 14 4 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 14 4 19 , srcInfoPoints = [] } "Monad"))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 21 4 35 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 21 4 35 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 21 4 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 21 4 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 21 4 31 , srcInfoPoints = [] } "MonadState"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 32 4 35 , srcInfoPoints = [ SrcSpan "tests/examples/GhcDeriving.hs" 4 32 4 33 , SrcSpan "tests/examples/GhcDeriving.hs" 4 34 4 35 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 33 4 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 33 4 34 , srcInfoPoints = [] } "s")))) , IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 37 4 44 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 37 4 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 37 4 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GhcDeriving.hs" 4 37 4 44 , srcInfoPoints = [] } "MonadIO"))) ])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/GhcDeriving.hs.prettyparser.golden0000644000000000000000000000000612746233113024677 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GhcDeriving.hs.prettyprinter.golden0000644000000000000000000000016712746233113025076 0ustar0000000000000000newtype CodeGenModule a = CGM (StateT CGMState IO a) deriving (Monad, MonadState [s], MonadIO) haskell-src-exts-1.18.2/tests/examples/GroupKeyword.hs0000644000000000000000000000014612746233113021142 0ustar0000000000000000-- {-# LANGUAGE TransformListComp #-} module GroupKeyword where a = map head $ group $ sort [1..100] haskell-src-exts-1.18.2/tests/examples/GroupKeyword.hs.exactprinter.golden0000644000000000000000000000000612746233113025113 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GroupKeyword.hs.parser.golden0000644000000000000000000002157612746233113023716 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 2 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/GroupKeyword.hs" 2 1 2 1 , SrcSpan "tests/examples/GroupKeyword.hs" 2 1 2 1 , SrcSpan "tests/examples/GroupKeyword.hs" 4 1 4 1 , SrcSpan "tests/examples/GroupKeyword.hs" 5 1 5 1 , SrcSpan "tests/examples/GroupKeyword.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 2 1 2 26 , srcInfoPoints = [ SrcSpan "tests/examples/GroupKeyword.hs" 2 1 2 7 , SrcSpan "tests/examples/GroupKeyword.hs" 2 21 2 26 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 2 8 2 20 , srcInfoPoints = [] } "GroupKeyword") Nothing Nothing)) [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 1 4 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 1 4 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 1 4 2 , srcInfoPoints = [] } "a")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 3 4 37 , srcInfoPoints = [ SrcSpan "tests/examples/GroupKeyword.hs" 4 3 4 4 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 5 4 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 5 4 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 5 4 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 5 4 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 5 4 8 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 9 4 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 9 4 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 9 4 13 , srcInfoPoints = [] } "head")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 14 4 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 14 4 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 14 4 15 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 16 4 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 16 4 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 16 4 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 16 4 21 , srcInfoPoints = [] } "group"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 22 4 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 22 4 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 22 4 23 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 24 4 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 24 4 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 24 4 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 24 4 28 , srcInfoPoints = [] } "sort"))) (EnumFromTo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 29 4 37 , srcInfoPoints = [ SrcSpan "tests/examples/GroupKeyword.hs" 4 29 4 30 , SrcSpan "tests/examples/GroupKeyword.hs" 4 31 4 33 , SrcSpan "tests/examples/GroupKeyword.hs" 4 36 4 37 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 30 4 31 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 30 4 31 , srcInfoPoints = [] } 1 "1")) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 33 4 36 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/GroupKeyword.hs" 4 33 4 36 , srcInfoPoints = [] } 100 "100"))))))) Nothing ] , [ Comment False (SrcSpan "tests/examples/GroupKeyword.hs" 1 1 1 38) " {-# LANGUAGE TransformListComp #-}" ] ) haskell-src-exts-1.18.2/tests/examples/GroupKeyword.hs.prettyparser.golden0000644000000000000000000000000612746233113025147 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/GroupKeyword.hs.prettyprinter.golden0000644000000000000000000000010112746233113025332 0ustar0000000000000000module GroupKeyword where a = map head $ group $ sort [1 .. 100] haskell-src-exts-1.18.2/tests/examples/HaddockComments.hs0000644000000000000000000000241712746233113021547 0ustar0000000000000000{-| Module : W Description : Short description Copyright : (c) Some Guy, 2013 Someone Else, 2014 License : GPL-3 Maintainer : sample@email.com Stability : experimental Portability : POSIX Here is a longer description of this module, containing some commentary with @some markup@. -} module HaddockComments where -- | Function1 comment fun1 :: Int -- ^ The 'Int' argument -> Float -- ^ The 'Float' argument -> IO () -- ^ The return value fun1 = undefined -- not a haddock comment fun2 = undefined fun3 :: Int -> Int -- ^ Function3 comment fun3 = undefined {-| The 'square' function squares an integer. It takes one argument, of type 'Int'. -} square :: Int -> Int square x = x * x -- beware! class C a where -- | This is the documentation for the 'f' method f :: a -> Int -- | This is the documentation for the 'g' method g :: Int -> a -- | Data type comment -- With a second line data MyData = -- | Constructor1 comment Cons1 { cons1Field1 :: Int -- ^ Constructor 1 field 1 comment -- spanning two lines -- | Constructor 1 field 2 comment , cons1Field2 :: Int , cons1Field3 :: String -- Not a haddock comment } | Cons2 -- ^ Constructor 2 comment Int -- ^ Last haskell-src-exts-1.18.2/tests/examples/HaddockComments.hs.exactprinter.golden0000644000000000000000000000000612746233113025515 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HaddockComments.hs.parser.golden0000644000000000000000000011601712746233113024313 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 14 1 57 1 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 14 1 14 1 , SrcSpan "tests/examples/HaddockComments.hs" 14 1 14 1 , SrcSpan "tests/examples/HaddockComments.hs" 17 1 17 1 , SrcSpan "tests/examples/HaddockComments.hs" 21 1 21 1 , SrcSpan "tests/examples/HaddockComments.hs" 25 1 25 1 , SrcSpan "tests/examples/HaddockComments.hs" 27 1 27 1 , SrcSpan "tests/examples/HaddockComments.hs" 29 1 29 1 , SrcSpan "tests/examples/HaddockComments.hs" 35 1 35 1 , SrcSpan "tests/examples/HaddockComments.hs" 36 1 36 1 , SrcSpan "tests/examples/HaddockComments.hs" 38 1 38 1 , SrcSpan "tests/examples/HaddockComments.hs" 46 1 46 1 , SrcSpan "tests/examples/HaddockComments.hs" 57 1 57 1 , SrcSpan "tests/examples/HaddockComments.hs" 57 1 57 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 14 1 14 29 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 14 1 14 7 , SrcSpan "tests/examples/HaddockComments.hs" 14 24 14 29 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 14 8 14 23 , srcInfoPoints = [] } "HaddockComments") Nothing Nothing)) [] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 17 1 20 12 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 18 4 18 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 17 1 17 5 , srcInfoPoints = [] } "fun1" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 18 7 20 12 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 19 4 19 6 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 18 7 18 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 18 7 18 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 18 7 18 10 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 19 7 20 12 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 20 4 20 6 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 19 7 19 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 19 7 19 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 19 7 19 12 , srcInfoPoints = [] } "Float"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 20 7 20 12 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 20 7 20 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 20 7 20 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 20 7 20 9 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 20 10 20 12 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 20 10 20 11 , SrcSpan "tests/examples/HaddockComments.hs" 20 11 20 12 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 20 10 20 12 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 20 10 20 11 , SrcSpan "tests/examples/HaddockComments.hs" 20 11 20 12 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 20 10 20 12 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 20 10 20 11 , SrcSpan "tests/examples/HaddockComments.hs" 20 11 20 12 ] })))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 21 1 21 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 21 1 21 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 21 1 21 5 , srcInfoPoints = [] } "fun1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 21 6 21 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 21 6 21 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 21 8 21 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 21 8 21 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 21 8 21 17 , srcInfoPoints = [] } "undefined")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 25 1 25 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 25 1 25 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 25 1 25 5 , srcInfoPoints = [] } "fun2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 25 6 25 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 25 6 25 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 25 8 25 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 25 8 25 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 25 8 25 17 , srcInfoPoints = [] } "undefined")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 1 27 19 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 27 6 27 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 1 27 5 , srcInfoPoints = [] } "fun3" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 9 27 19 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 27 13 27 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 9 27 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 9 27 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 9 27 12 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 16 27 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 16 27 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 27 16 27 19 , srcInfoPoints = [] } "Int")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 29 1 29 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 29 1 29 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 29 1 29 5 , srcInfoPoints = [] } "fun3")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 29 6 29 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 29 6 29 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 29 8 29 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 29 8 29 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 29 8 29 17 , srcInfoPoints = [] } "undefined")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 1 35 21 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 35 8 35 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 1 35 7 , srcInfoPoints = [] } "square" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 11 35 21 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 35 15 35 17 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 11 35 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 11 35 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 11 35 14 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 18 35 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 18 35 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 35 18 35 21 , srcInfoPoints = [] } "Int")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 1 36 17 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 1 36 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 1 36 7 , srcInfoPoints = [] } "square") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 8 36 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 8 36 9 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 10 36 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 36 10 36 11 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 12 36 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 12 36 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 12 36 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 12 36 13 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 14 36 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 14 36 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 14 36 15 , srcInfoPoints = [] } "*"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 16 36 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 16 36 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 36 16 36 17 , srcInfoPoints = [] } "x"))))) Nothing ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 38 1 42 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 38 1 38 6 , SrcSpan "tests/examples/HaddockComments.hs" 38 11 38 16 , SrcSpan "tests/examples/HaddockComments.hs" 40 4 40 4 , SrcSpan "tests/examples/HaddockComments.hs" 42 4 42 4 , SrcSpan "tests/examples/HaddockComments.hs" 46 1 46 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 38 7 38 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 38 7 38 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 38 7 38 8 , srcInfoPoints = [] } "C")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 38 9 38 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 38 9 38 10 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 4 40 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 40 6 40 8 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 4 40 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 40 6 40 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 4 40 5 , srcInfoPoints = [] } "f" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 9 40 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 40 11 40 13 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 9 40 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 9 40 10 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 14 40 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 14 40 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 40 14 40 17 , srcInfoPoints = [] } "Int"))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 4 42 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 42 6 42 8 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 4 42 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 42 6 42 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 4 42 5 , srcInfoPoints = [] } "g" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 9 42 17 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 42 13 42 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 9 42 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 9 42 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 9 42 12 , srcInfoPoints = [] } "Int"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 16 42 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 42 16 42 17 , srcInfoPoints = [] } "a")))) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 46 1 56 10 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 46 13 46 14 , SrcSpan "tests/examples/HaddockComments.hs" 55 3 55 4 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 46 1 46 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 46 6 46 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 46 6 46 12 , srcInfoPoints = [] } "MyData")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 48 3 54 6 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 49 5 49 6 , SrcSpan "tests/examples/HaddockComments.hs" 52 5 52 6 , SrcSpan "tests/examples/HaddockComments.hs" 53 5 53 6 , SrcSpan "tests/examples/HaddockComments.hs" 54 5 54 6 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 48 3 54 6 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 49 5 49 6 , SrcSpan "tests/examples/HaddockComments.hs" 52 5 52 6 , SrcSpan "tests/examples/HaddockComments.hs" 53 5 53 6 , SrcSpan "tests/examples/HaddockComments.hs" 54 5 54 6 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 48 3 48 8 , srcInfoPoints = [] } "Cons1") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 49 7 49 25 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 49 19 49 21 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 49 7 49 18 , srcInfoPoints = [] } "cons1Field1" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 49 22 49 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 49 22 49 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 49 22 49 25 , srcInfoPoints = [] } "Int"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 52 7 52 25 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 52 19 52 21 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 52 7 52 18 , srcInfoPoints = [] } "cons1Field2" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 52 22 52 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 52 22 52 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 52 22 52 25 , srcInfoPoints = [] } "Int"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 53 7 53 28 , srcInfoPoints = [ SrcSpan "tests/examples/HaddockComments.hs" 53 19 53 21 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 53 7 53 18 , srcInfoPoints = [] } "cons1Field3" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 53 22 53 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 53 22 53 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 53 22 53 28 , srcInfoPoints = [] } "String"))) ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 55 5 56 10 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 55 5 56 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 55 5 55 10 , srcInfoPoints = [] } "Cons2") [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 56 7 56 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 56 7 56 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaddockComments.hs" 56 7 56 10 , srcInfoPoints = [] } "Int")) ]) ] Nothing ] , [ Comment True (SrcSpan "tests/examples/HaddockComments.hs" 1 1 13 3) "|\nModule : W\nDescription : Short description\nCopyright : (c) Some Guy, 2013\n Someone Else, 2014\nLicense : GPL-3\nMaintainer : sample@email.com\nStability : experimental\nPortability : POSIX\n\nHere is a longer description of this module, containing some\ncommentary with @some markup@.\n" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 16 1 16 23) " | Function1 comment" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 18 16 18 39) " ^ The 'Int' argument" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 19 16 19 41) " ^ The 'Float' argument" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 20 16 20 37) " ^ The return value" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 24 1 24 25) " not a haddock comment" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 28 1 28 23) " ^ Function3 comment" , Comment True (SrcSpan "tests/examples/HaddockComments.hs" 31 1 34 3) "|\n The 'square' function squares an integer.\n It takes one argument, of type 'Int'.\n" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 36 18 36 28) " beware!" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 39 4 39 53) " | This is the documentation for the 'f' method" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 41 4 41 53) " | This is the documentation for the 'g' method" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 44 1 44 23) " | Data type comment" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 45 1 45 22) " With a second line" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 47 3 47 28) " | Constructor1 comment" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 49 26 49 60) " ^ Constructor 1 field 1 comment" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 50 26 50 47) " spanning two lines" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 51 7 51 41) " | Constructor 1 field 2 comment" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 53 29 53 53) " Not a haddock comment" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 55 11 55 37) " ^ Constructor 2 comment" , Comment False (SrcSpan "tests/examples/HaddockComments.hs" 56 11 56 20) " ^ Last" ] ) haskell-src-exts-1.18.2/tests/examples/HaddockComments.hs.prettyparser.golden0000644000000000000000000000000612746233113025551 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HaddockComments.hs.prettyprinter.golden0000644000000000000000000000056012746233113025745 0ustar0000000000000000module HaddockComments where fun1 :: Int -> Float -> IO () fun1 = undefined fun2 = undefined fun3 :: Int -> Int fun3 = undefined square :: Int -> Int square x = x * x class C a where f :: a -> Int g :: Int -> a data MyData = Cons1{cons1Field1 :: Int, cons1Field2 :: Int, cons1Field3 :: String} | Cons2 Int haskell-src-exts-1.18.2/tests/examples/HappyDoAction.hs0000644000000000000000000000171012746233113021201 0ustar0000000000000000{-# LANGUAGE MagicHash #-} module HappyDoAction where foo :: Int# happyDoAction i tk st = {- nothing -} case action of 0# -> {- nothing -} happyFail i tk st -1# -> {- nothing -} happyAccept i tk st n | (n <# (0# :: Int#)) -> {- nothing -} (happyReduceArr ! rule) i tk st where rule = (I# ((negateInt# ((n +# (1# :: Int#)))))) n -> {- nothing -} happyShift new_state i tk st where new_state = (n -# (1# :: Int#)) where off = indexShortOffAddr happyActOffsets st off_i = (off +# i) check = if (off_i >=# (0# :: Int#)) then (indexShortOffAddr happyCheck off_i ==# i) else False action | check = indexShortOffAddr happyTable off_i | otherwise = indexShortOffAddr happyDefActions st haskell-src-exts-1.18.2/tests/examples/HappyDoAction.hs.exactprinter.golden0000644000000000000000000000000612746233113025154 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HappyDoAction.hs.parser.golden0000644000000000000000000043751312746233113023761 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 1 1 31 1 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 1 1 1 1 , SrcSpan "tests/examples/HappyDoAction.hs" 2 1 2 1 , SrcSpan "tests/examples/HappyDoAction.hs" 2 1 2 1 , SrcSpan "tests/examples/HappyDoAction.hs" 4 1 4 1 , SrcSpan "tests/examples/HappyDoAction.hs" 6 1 6 1 , SrcSpan "tests/examples/HappyDoAction.hs" 31 1 31 1 , SrcSpan "tests/examples/HappyDoAction.hs" 31 1 31 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 2 1 2 7 , SrcSpan "tests/examples/HappyDoAction.hs" 2 22 2 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 2 8 2 21 , srcInfoPoints = [] } "HappyDoAction") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 1 1 1 27 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 1 1 1 13 , SrcSpan "tests/examples/HappyDoAction.hs" 1 24 1 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 1 14 1 23 , srcInfoPoints = [] } "MagicHash" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 4 1 4 12 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 4 5 4 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 4 1 4 4 , srcInfoPoints = [] } "foo" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 4 8 4 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 4 8 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 4 8 4 12 , srcInfoPoints = [] } "Int#"))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 1 30 67 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 24 4 24 9 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 1 30 67 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 24 4 24 9 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 1 6 14 , srcInfoPoints = [] } "happyDoAction") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 15 6 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 15 6 16 , srcInfoPoints = [] } "i") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 17 6 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 17 6 19 , srcInfoPoints = [] } "tk") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 20 6 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 6 20 6 22 , srcInfoPoints = [] } "st") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 7 5 23 59 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 7 5 7 6 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 10 7 23 59 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 10 7 10 11 , SrcSpan "tests/examples/HappyDoAction.hs" 10 19 10 21 , SrcSpan "tests/examples/HappyDoAction.hs" 11 9 11 9 , SrcSpan "tests/examples/HappyDoAction.hs" 13 9 13 9 , SrcSpan "tests/examples/HappyDoAction.hs" 15 9 15 9 , SrcSpan "tests/examples/HappyDoAction.hs" 19 9 19 9 , SrcSpan "tests/examples/HappyDoAction.hs" 24 4 24 0 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 10 12 10 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 10 12 10 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 10 12 10 18 , srcInfoPoints = [] } "action"))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 11 9 12 39 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 11 9 11 11 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 11 9 11 11 , srcInfoPoints = [] }) (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 11 9 11 11 , srcInfoPoints = [] } 0 "0")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 11 19 12 39 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 11 19 11 21 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 22 12 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 22 12 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 22 12 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 22 12 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 22 12 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 22 12 31 , srcInfoPoints = [] } "happyFail"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 32 12 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 32 12 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 32 12 33 , srcInfoPoints = [] } "i")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 34 12 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 34 12 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 34 12 36 , srcInfoPoints = [] } "tk")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 37 12 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 37 12 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 12 37 12 39 , srcInfoPoints = [] } "st"))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 13 9 14 41 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 13 9 13 12 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 13 9 13 10 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 13 9 13 10 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 13 9 13 10 ] }) (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 13 10 13 12 , srcInfoPoints = [] } 1 "1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 13 19 14 41 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 13 19 13 21 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 22 14 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 22 14 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 22 14 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 22 14 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 22 14 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 22 14 33 , srcInfoPoints = [] } "happyAccept"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 34 14 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 34 14 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 34 14 35 , srcInfoPoints = [] } "i")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 36 14 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 36 14 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 36 14 38 , srcInfoPoints = [] } "tk")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 39 14 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 39 14 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 14 39 14 41 , srcInfoPoints = [] } "st"))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 9 18 76 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 22 18 27 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 9 15 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 9 15 10 , srcInfoPoints = [] } "n")) (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 11 17 53 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 15 11 15 12 , SrcSpan "tests/examples/HappyDoAction.hs" 15 33 15 35 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 11 17 53 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 15 11 15 12 , SrcSpan "tests/examples/HappyDoAction.hs" 15 33 15 35 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 13 15 32 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 15 13 15 14 , SrcSpan "tests/examples/HappyDoAction.hs" 15 31 15 32 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 13 15 32 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 15 13 15 14 , SrcSpan "tests/examples/HappyDoAction.hs" 15 31 15 32 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 14 15 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 14 15 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 14 15 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 14 15 15 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 16 15 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 16 15 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 16 15 18 , srcInfoPoints = [] } "<#"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 19 15 31 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 15 19 15 20 , SrcSpan "tests/examples/HappyDoAction.hs" 15 30 15 31 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 20 15 30 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 15 23 15 25 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 20 15 22 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 20 15 22 , srcInfoPoints = [] } 0 "0")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 26 15 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 26 15 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 15 26 15 30 , srcInfoPoints = [] } "Int#"))))))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 22 17 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 22 17 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 22 17 47 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 22 17 45 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 17 22 17 23 , SrcSpan "tests/examples/HappyDoAction.hs" 17 44 17 45 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 23 17 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 23 17 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 23 17 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 23 17 37 , srcInfoPoints = [] } "happyReduceArr"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 38 17 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 38 17 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 38 17 39 , srcInfoPoints = [] } "!"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 40 17 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 40 17 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 40 17 44 , srcInfoPoints = [] } "rule"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 46 17 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 46 17 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 46 17 47 , srcInfoPoints = [] } "i")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 48 17 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 48 17 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 48 17 50 , srcInfoPoints = [] } "tk")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 51 17 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 51 17 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 17 51 17 53 , srcInfoPoints = [] } "st")))) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 28 18 76 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 28 18 28 , SrcSpan "tests/examples/HappyDoAction.hs" 19 9 19 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 28 18 76 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 28 18 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 28 18 32 , srcInfoPoints = [] } "rule")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 33 18 76 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 33 18 34 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 35 18 76 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 35 18 36 , SrcSpan "tests/examples/HappyDoAction.hs" 18 75 18 76 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 36 18 75 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 36 18 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 36 18 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 36 18 38 , srcInfoPoints = [] } "I#"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 39 18 75 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 39 18 40 , SrcSpan "tests/examples/HappyDoAction.hs" 18 74 18 75 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 40 18 74 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 40 18 41 , SrcSpan "tests/examples/HappyDoAction.hs" 18 73 18 74 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 41 18 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 41 18 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 41 18 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 41 18 51 , srcInfoPoints = [] } "negateInt#"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 52 18 73 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 52 18 53 , SrcSpan "tests/examples/HappyDoAction.hs" 18 72 18 73 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 53 18 72 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 53 18 54 , SrcSpan "tests/examples/HappyDoAction.hs" 18 71 18 72 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 54 18 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 54 18 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 54 18 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 54 18 55 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 56 18 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 56 18 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 56 18 58 , srcInfoPoints = [] } "+#"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 59 18 71 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 59 18 60 , SrcSpan "tests/examples/HappyDoAction.hs" 18 70 18 71 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 60 18 70 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 18 63 18 65 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 60 18 62 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 60 18 62 , srcInfoPoints = [] } 1 "1")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 66 18 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 66 18 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 18 66 18 70 , srcInfoPoints = [] } "Int#")))))))))))))) Nothing ])) , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 19 9 23 59 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 23 22 23 27 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 19 9 19 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 19 9 19 10 , srcInfoPoints = [] } "n")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 19 19 22 50 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 19 19 19 21 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 22 22 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 22 22 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 22 22 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 22 22 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 22 22 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 22 22 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 22 22 32 , srcInfoPoints = [] } "happyShift"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 33 22 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 33 22 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 33 22 42 , srcInfoPoints = [] } "new_state")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 43 22 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 43 22 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 43 22 44 , srcInfoPoints = [] } "i")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 45 22 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 45 22 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 45 22 47 , srcInfoPoints = [] } "tk")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 48 22 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 48 22 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 22 48 22 50 , srcInfoPoints = [] } "st"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 28 23 59 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 23 28 23 28 , SrcSpan "tests/examples/HappyDoAction.hs" 24 4 24 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 28 23 59 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 28 23 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 28 23 37 , srcInfoPoints = [] } "new_state")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 38 23 59 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 23 38 23 39 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 40 23 59 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 23 40 23 41 , SrcSpan "tests/examples/HappyDoAction.hs" 23 58 23 59 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 41 23 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 41 23 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 41 23 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 41 23 42 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 43 23 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 43 23 45 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 43 23 45 , srcInfoPoints = [] } "-#"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 46 23 58 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 23 46 23 47 , SrcSpan "tests/examples/HappyDoAction.hs" 23 57 23 58 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 47 23 57 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 23 50 23 52 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 47 23 49 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 47 23 49 , srcInfoPoints = [] } 1 "1")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 53 23 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 53 23 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 23 53 23 57 , srcInfoPoints = [] } "Int#")))))))) Nothing ])) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 10 30 67 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 24 10 24 10 , SrcSpan "tests/examples/HappyDoAction.hs" 25 10 25 10 , SrcSpan "tests/examples/HappyDoAction.hs" 26 10 26 10 , SrcSpan "tests/examples/HappyDoAction.hs" 29 10 29 10 , SrcSpan "tests/examples/HappyDoAction.hs" 31 1 31 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 10 24 55 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 10 24 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 10 24 13 , srcInfoPoints = [] } "off")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 17 24 55 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 24 17 24 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 19 24 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 19 24 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 19 24 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 19 24 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 19 24 36 , srcInfoPoints = [] } "indexShortOffAddr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 37 24 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 37 24 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 37 24 52 , srcInfoPoints = [] } "happyActOffsets")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 53 24 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 53 24 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 24 53 24 55 , srcInfoPoints = [] } "st"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 10 25 29 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 10 25 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 10 25 15 , srcInfoPoints = [] } "off_i")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 17 25 29 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 25 17 25 18 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 19 25 29 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 25 19 25 20 , SrcSpan "tests/examples/HappyDoAction.hs" 25 28 25 29 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 20 25 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 20 25 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 20 25 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 20 25 23 , srcInfoPoints = [] } "off"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 24 25 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 24 25 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 24 25 26 , srcInfoPoints = [] } "+#"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 27 25 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 27 25 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 25 27 25 28 , srcInfoPoints = [] } "i")))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 10 28 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 10 26 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 10 26 15 , srcInfoPoints = [] } "check")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 17 28 30 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 26 17 26 18 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 19 28 30 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 26 19 26 21 , SrcSpan "tests/examples/HappyDoAction.hs" 27 20 27 24 , SrcSpan "tests/examples/HappyDoAction.hs" 28 20 28 24 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 22 26 46 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 26 22 26 23 , SrcSpan "tests/examples/HappyDoAction.hs" 26 45 26 46 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 23 26 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 23 26 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 23 26 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 23 26 28 , srcInfoPoints = [] } "off_i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 29 26 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 29 26 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 29 26 32 , srcInfoPoints = [] } ">=#"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 33 26 45 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 26 33 26 34 , SrcSpan "tests/examples/HappyDoAction.hs" 26 44 26 45 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 34 26 44 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 26 37 26 39 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 34 26 36 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 34 26 36 , srcInfoPoints = [] } 0 "0")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 40 26 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 40 26 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 26 40 26 44 , srcInfoPoints = [] } "Int#"))))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 25 27 68 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 27 25 27 26 , SrcSpan "tests/examples/HappyDoAction.hs" 27 67 27 68 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 26 27 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 26 27 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 26 27 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 26 27 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 26 27 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 26 27 43 , srcInfoPoints = [] } "indexShortOffAddr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 44 27 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 44 27 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 44 27 54 , srcInfoPoints = [] } "happyCheck")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 55 27 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 55 27 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 55 27 60 , srcInfoPoints = [] } "off_i")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 61 27 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 61 27 64 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 61 27 64 , srcInfoPoints = [] } "==#"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 66 27 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 66 27 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 27 66 27 67 , srcInfoPoints = [] } "i"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 28 25 28 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 28 25 28 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 28 25 28 30 , srcInfoPoints = [] } "False"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 10 30 67 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 10 29 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 10 29 16 , srcInfoPoints = [] } "action")) (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 17 30 67 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 17 29 65 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 29 17 29 18 , SrcSpan "tests/examples/HappyDoAction.hs" 29 29 29 30 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 19 29 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 19 29 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 19 29 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 19 29 24 , srcInfoPoints = [] } "check"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 31 29 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 31 29 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 31 29 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 31 29 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 31 29 48 , srcInfoPoints = [] } "indexShortOffAddr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 49 29 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 49 29 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 49 29 59 , srcInfoPoints = [] } "happyTable")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 60 29 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 60 29 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 29 60 29 65 , srcInfoPoints = [] } "off_i")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 17 30 67 , srcInfoPoints = [ SrcSpan "tests/examples/HappyDoAction.hs" 30 17 30 18 , SrcSpan "tests/examples/HappyDoAction.hs" 30 29 30 30 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 19 30 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 19 30 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 19 30 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 19 30 28 , srcInfoPoints = [] } "otherwise"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 31 30 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 31 30 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 31 30 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 31 30 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 31 30 48 , srcInfoPoints = [] } "indexShortOffAddr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 49 30 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 49 30 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 49 30 64 , srcInfoPoints = [] } "happyDefActions")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 65 30 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 65 30 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HappyDoAction.hs" 30 65 30 67 , srcInfoPoints = [] } "st")))) ]) Nothing ])) ] ] , [ Comment True (SrcSpan "tests/examples/HappyDoAction.hs" 7 7 7 20) " nothing " , Comment True (SrcSpan "tests/examples/HappyDoAction.hs" 11 22 11 35) " nothing " , Comment True (SrcSpan "tests/examples/HappyDoAction.hs" 13 22 13 35) " nothing " , Comment True (SrcSpan "tests/examples/HappyDoAction.hs" 15 36 15 49) " nothing " , Comment True (SrcSpan "tests/examples/HappyDoAction.hs" 19 22 19 35) " nothing " ] ) haskell-src-exts-1.18.2/tests/examples/HappyDoAction.hs.prettyparser.golden0000644000000000000000000000000612746233113025210 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HappyDoAction.hs.prettyprinter.golden0000644000000000000000000000133512746233113025405 0ustar0000000000000000{-# LANGUAGE MagicHash #-} module HappyDoAction where foo :: Int# happyDoAction i tk st = case action of 0# -> happyFail i tk st -1# -> happyAccept i tk st n | (n <# (0# :: Int#)) -> (happyReduceArr ! rule) i tk st where rule = (I# ((negateInt# ((n +# (1# :: Int#)))))) n -> happyShift new_state i tk st where new_state = (n -# (1# :: Int#)) where off = indexShortOffAddr happyActOffsets st off_i = (off +# i) check = if (off_i >=# (0# :: Int#)) then (indexShortOffAddr happyCheck off_i ==# i) else False action | check = indexShortOffAddr happyTable off_i | otherwise = indexShortOffAddr happyDefActions st haskell-src-exts-1.18.2/tests/examples/HashOperator.hs0000644000000000000000000000013112746233113021072 0ustar0000000000000000{-# LANGUAGE OverloadedLabels #-} (#.) :: Int -> Int -> Int x #. y = x + y infixr 9 #. haskell-src-exts-1.18.2/tests/examples/HashOperator.hs.exactprinter.golden0000644000000000000000000000000612746233113025051 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HashOperator.hs.parser.golden0000644000000000000000000002262112746233113023644 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/HashOperator.hs" 1 1 1 1 , SrcSpan "tests/examples/HashOperator.hs" 3 1 3 1 , SrcSpan "tests/examples/HashOperator.hs" 3 1 3 1 , SrcSpan "tests/examples/HashOperator.hs" 3 1 3 1 , SrcSpan "tests/examples/HashOperator.hs" 4 1 4 1 , SrcSpan "tests/examples/HashOperator.hs" 6 1 6 1 , SrcSpan "tests/examples/HashOperator.hs" 7 1 7 1 , SrcSpan "tests/examples/HashOperator.hs" 7 1 7 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 1 1 1 34 , srcInfoPoints = [ SrcSpan "tests/examples/HashOperator.hs" 1 1 1 13 , SrcSpan "tests/examples/HashOperator.hs" 1 31 1 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 1 14 1 30 , srcInfoPoints = [] } "OverloadedLabels" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 1 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/HashOperator.hs" 3 6 3 8 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 1 3 5 , srcInfoPoints = [ SrcSpan "tests/examples/HashOperator.hs" 3 1 3 2 , SrcSpan "tests/examples/HashOperator.hs" 3 2 3 4 , SrcSpan "tests/examples/HashOperator.hs" 3 4 3 5 ] } "#." ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 9 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/HashOperator.hs" 3 13 3 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 9 3 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 9 3 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 9 3 12 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 16 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/HashOperator.hs" 3 20 3 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 16 3 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 16 3 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 16 3 19 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 23 3 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 23 3 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 3 23 3 26 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 1 4 15 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 1 4 15 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 1 4 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 1 4 2 , srcInfoPoints = [] } "x")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 3 4 5 , srcInfoPoints = [] } "#.") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 6 4 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 6 4 7 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 8 4 15 , srcInfoPoints = [ SrcSpan "tests/examples/HashOperator.hs" 4 8 4 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 10 4 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 10 4 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 10 4 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 10 4 11 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 12 4 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 12 4 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 12 4 13 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 14 4 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 14 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 4 14 4 15 , srcInfoPoints = [] } "y"))))) Nothing ] , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 6 1 6 12 , srcInfoPoints = [ SrcSpan "tests/examples/HashOperator.hs" 6 8 6 9 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 6 1 6 7 , srcInfoPoints = [] }) (Just 9) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 6 10 6 12 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HashOperator.hs" 6 10 6 12 , srcInfoPoints = [] } "#.") ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/HashOperator.hs.prettyparser.golden0000644000000000000000000000000612746233113025105 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HashOperator.hs.prettyprinter.golden0000644000000000000000000000013312746233113025275 0ustar0000000000000000{-# LANGUAGE OverloadedLabels #-} ( #. ) :: Int -> Int -> Int x #. y = x + y infixr 9 #. haskell-src-exts-1.18.2/tests/examples/HaskellParser.hs0000644000000000000000000000131512746233113021240 0ustar0000000000000000import qualified Language.Haskell.Exts.Annotated as Parser import qualified Language.Haskell.Exts.Annotated.Syntax as Syn import qualified Language.Haskell.Exts.Extension as Ext parse originalFileName input = Parser.parseModuleWithMode parseMode input where parseMode :: Parser.ParseMode parseMode = Parser.defaultParseMode { Parser.parseFilename = originalFileName , Parser.extensions = Ext.glasgowExts ++ [Ext.ExplicitForall] } main = do s <- readFile "Bug.hs" let x = parse "Bug.hs" s putStrLn (show x) haskell-src-exts-1.18.2/tests/examples/HaskellParser.hs.exactprinter.golden0000644000000000000000000000000612746233113025212 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HaskellParser.hs.parser.golden0000644000000000000000000011761012746233113024010 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 1 1 17 1 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 1 1 1 1 , SrcSpan "tests/examples/HaskellParser.hs" 1 1 1 1 , SrcSpan "tests/examples/HaskellParser.hs" 1 1 1 1 , SrcSpan "tests/examples/HaskellParser.hs" 2 1 2 1 , SrcSpan "tests/examples/HaskellParser.hs" 3 1 3 1 , SrcSpan "tests/examples/HaskellParser.hs" 5 1 5 1 , SrcSpan "tests/examples/HaskellParser.hs" 13 1 13 1 , SrcSpan "tests/examples/HaskellParser.hs" 17 1 17 1 , SrcSpan "tests/examples/HaskellParser.hs" 17 1 17 1 ] } Nothing [] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 1 1 1 59 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 1 1 1 7 , SrcSpan "tests/examples/HaskellParser.hs" 1 8 1 17 , SrcSpan "tests/examples/HaskellParser.hs" 1 50 1 52 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 1 18 1 49 , srcInfoPoints = [] } "Language.Haskell.Exts.Annotated" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 1 53 1 59 , srcInfoPoints = [] } "Parser") , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 2 1 2 63 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 2 1 2 7 , SrcSpan "tests/examples/HaskellParser.hs" 2 8 2 17 , SrcSpan "tests/examples/HaskellParser.hs" 2 57 2 59 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 2 18 2 56 , srcInfoPoints = [] } "Language.Haskell.Exts.Annotated.Syntax" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 2 60 2 63 , srcInfoPoints = [] } "Syn") , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 3 1 3 56 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 3 1 3 7 , SrcSpan "tests/examples/HaskellParser.hs" 3 8 3 17 , SrcSpan "tests/examples/HaskellParser.hs" 3 50 3 52 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 3 18 3 49 , srcInfoPoints = [] } "Language.Haskell.Exts.Extension" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 3 53 3 56 , srcInfoPoints = [] } "Ext") , importSpecs = Nothing } ] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 1 12 44 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 6 5 6 10 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 1 12 44 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 6 5 6 10 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 1 5 6 , srcInfoPoints = [] } "parse") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 7 5 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 7 5 23 , srcInfoPoints = [] } "originalFileName") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 24 5 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 24 5 29 , srcInfoPoints = [] } "input") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 30 5 74 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 5 30 5 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 32 5 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 32 5 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 32 5 58 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 32 5 58 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 32 5 58 , srcInfoPoints = [] } "Parser") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 32 5 58 , srcInfoPoints = [] } "parseModuleWithMode"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 59 5 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 59 5 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 59 5 68 , srcInfoPoints = [] } "parseMode")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 69 5 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 69 5 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 5 69 5 74 , srcInfoPoints = [] } "input"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 7 7 12 44 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 7 7 7 7 , SrcSpan "tests/examples/HaskellParser.hs" 8 7 8 7 , SrcSpan "tests/examples/HaskellParser.hs" 13 1 13 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 7 7 7 36 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 7 17 7 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 7 7 7 16 , srcInfoPoints = [] } "parseMode" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 7 20 7 36 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 7 20 7 36 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 7 20 7 36 , srcInfoPoints = [] } "Parser") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 7 20 7 36 , srcInfoPoints = [] } "ParseMode"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 7 12 44 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 7 8 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 7 8 16 , srcInfoPoints = [] } "parseMode")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 17 12 44 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 8 17 8 18 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 19 12 44 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 8 43 8 44 , SrcSpan "tests/examples/HaskellParser.hs" 9 43 9 44 , SrcSpan "tests/examples/HaskellParser.hs" 12 43 12 44 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 19 8 42 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 19 8 42 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 19 8 42 , srcInfoPoints = [] } "Parser") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 19 8 42 , srcInfoPoints = [] } "defaultParseMode"))) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 45 8 84 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 8 66 8 67 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 45 8 65 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 45 8 65 , srcInfoPoints = [] } "Parser") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 45 8 65 , srcInfoPoints = [] } "parseFilename")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 68 8 84 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 68 8 84 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 8 68 8 84 , srcInfoPoints = [] } "originalFileName"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 9 45 11 67 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 9 63 9 64 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 9 45 9 62 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 9 45 9 62 , srcInfoPoints = [] } "Parser") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 9 45 9 62 , srcInfoPoints = [] } "extensions")) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 10 47 11 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 10 47 10 62 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 10 47 10 62 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 10 47 10 62 , srcInfoPoints = [] } "Ext") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 10 47 10 62 , srcInfoPoints = [] } "glasgowExts"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 10 63 10 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 10 63 10 65 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 10 63 10 65 , srcInfoPoints = [] } "++"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 11 47 11 67 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 11 47 11 48 , SrcSpan "tests/examples/HaskellParser.hs" 11 66 11 67 ] } [ Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 11 48 11 66 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 11 48 11 66 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 11 48 11 66 , srcInfoPoints = [] } "Ext") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 11 48 11 66 , srcInfoPoints = [] } "ExplicitForall")) ])) ])) Nothing ])) ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 13 1 16 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 13 1 13 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 13 1 13 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 13 6 16 25 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 13 6 13 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 5 16 25 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 14 5 14 7 , SrcSpan "tests/examples/HaskellParser.hs" 14 8 14 8 , SrcSpan "tests/examples/HaskellParser.hs" 15 8 15 8 , SrcSpan "tests/examples/HaskellParser.hs" 16 8 16 8 , SrcSpan "tests/examples/HaskellParser.hs" 17 1 17 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 8 14 30 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 14 10 14 12 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 8 14 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 8 14 9 , srcInfoPoints = [] } "s")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 13 14 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 13 14 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 13 14 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 13 14 21 , srcInfoPoints = [] } "readFile"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 22 14 30 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 14 22 14 30 , srcInfoPoints = [] } "Bug.hs" "Bug.hs"))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 8 15 32 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 15 8 15 11 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 12 15 32 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 15 12 15 12 , SrcSpan "tests/examples/HaskellParser.hs" 16 8 16 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 12 15 32 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 12 15 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 12 15 13 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 14 15 32 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 15 14 15 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 16 15 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 16 15 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 16 15 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 16 15 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 16 15 21 , srcInfoPoints = [] } "parse"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 22 15 30 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 22 15 30 , srcInfoPoints = [] } "Bug.hs" "Bug.hs"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 31 15 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 31 15 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 15 31 15 32 , srcInfoPoints = [] } "s"))))) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 8 16 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 8 16 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 8 16 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 8 16 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 8 16 16 , srcInfoPoints = [] } "putStrLn"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 17 16 25 , srcInfoPoints = [ SrcSpan "tests/examples/HaskellParser.hs" 16 17 16 18 , SrcSpan "tests/examples/HaskellParser.hs" 16 24 16 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 18 16 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 18 16 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 18 16 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 18 16 22 , srcInfoPoints = [] } "show"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 23 16 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 23 16 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HaskellParser.hs" 16 23 16 24 , srcInfoPoints = [] } "x")))))) ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/HaskellParser.hs.prettyparser.golden0000644000000000000000000000000612746233113025246 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HaskellParser.hs.prettyprinter.golden0000644000000000000000000000110012746233113025431 0ustar0000000000000000import qualified Language.Haskell.Exts.Annotated as Parser import qualified Language.Haskell.Exts.Annotated.Syntax as Syn import qualified Language.Haskell.Exts.Extension as Ext parse originalFileName input = Parser.parseModuleWithMode parseMode input where parseMode :: Parser.ParseMode parseMode = Parser.defaultParseMode{Parser.parseFilename = originalFileName, Parser.extensions = Ext.glasgowExts ++ [Ext.ExplicitForall]} main = do s <- readFile "Bug.hs" let x = parse "Bug.hs" s putStrLn (show x) haskell-src-exts-1.18.2/tests/examples/HexPrec.hs0000644000000000000000000000011312746233113020031 0ustar0000000000000000module HexPrec where (%%) :: Int -> Int -> Int a %% b = 0 infixl 0x02 %% haskell-src-exts-1.18.2/tests/examples/HexPrec.hs.exactprinter.golden0000644000000000000000000000011412746233113024010 0ustar0000000000000000module HexPrec where (%%) :: Int -> Int -> Int a %% b = 0 infixl 2 %% haskell-src-exts-1.18.2/tests/examples/HexPrec.hs.parser.golden0000644000000000000000000001612312746233113022603 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/HexPrec.hs" 1 1 1 1 , SrcSpan "tests/examples/HexPrec.hs" 1 1 1 1 , SrcSpan "tests/examples/HexPrec.hs" 3 1 3 1 , SrcSpan "tests/examples/HexPrec.hs" 4 1 4 1 , SrcSpan "tests/examples/HexPrec.hs" 6 1 6 1 , SrcSpan "tests/examples/HexPrec.hs" 7 1 7 1 , SrcSpan "tests/examples/HexPrec.hs" 7 1 7 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 1 1 1 21 , srcInfoPoints = [ SrcSpan "tests/examples/HexPrec.hs" 1 1 1 7 , SrcSpan "tests/examples/HexPrec.hs" 1 16 1 21 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 1 8 1 15 , srcInfoPoints = [] } "HexPrec") Nothing Nothing)) [] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 1 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/HexPrec.hs" 3 6 3 8 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 1 3 5 , srcInfoPoints = [ SrcSpan "tests/examples/HexPrec.hs" 3 1 3 2 , SrcSpan "tests/examples/HexPrec.hs" 3 2 3 4 , SrcSpan "tests/examples/HexPrec.hs" 3 4 3 5 ] } "%%" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 9 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/HexPrec.hs" 3 13 3 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 9 3 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 9 3 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 9 3 12 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 16 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/HexPrec.hs" 3 20 3 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 16 3 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 16 3 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 16 3 19 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 23 3 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 23 3 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 3 23 3 26 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 1 4 11 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 1 4 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 1 4 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 1 4 2 , srcInfoPoints = [] } "a")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 3 4 5 , srcInfoPoints = [] } "%%") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 6 4 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 6 4 7 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 8 4 11 , srcInfoPoints = [ SrcSpan "tests/examples/HexPrec.hs" 4 8 4 9 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 10 4 11 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 4 10 4 11 , srcInfoPoints = [] } 0 "0"))) Nothing ] , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 6 1 6 15 , srcInfoPoints = [ SrcSpan "tests/examples/HexPrec.hs" 6 8 6 12 ] } (AssocLeft SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 6 1 6 7 , srcInfoPoints = [] }) (Just 2) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 6 13 6 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/HexPrec.hs" 6 13 6 15 , srcInfoPoints = [] } "%%") ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/HexPrec.hs.prettyparser.golden0000644000000000000000000000000612746233113024044 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/HexPrec.hs.prettyprinter.golden0000644000000000000000000000011012746233113024227 0ustar0000000000000000module HexPrec where (%%) :: Int -> Int -> Int a %% b = 0 infixl 2 %% haskell-src-exts-1.18.2/tests/examples/IfThenElseLayout.hs0000644000000000000000000000076212746233113021671 0ustar0000000000000000{-# LANGUAGE DoAndIfThenElse #-} module IfThenElseLayout where askCardsForExchange :: Hand -> IO [Card] askCardsForExchange h = do putStrLn "Wich card do you want to exchange? (Max. 3)" response <- getLine if length (readCards response) > 3 || not (all (flip elem h) h) then askCardsForExchange h else return (readCards response) haskell-src-exts-1.18.2/tests/examples/IfThenElseLayout.hs.exactprinter.golden0000644000000000000000000000000612746233113025636 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IfThenElseLayout.hs.parser.golden0000644000000000000000000013547512746233113024445 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 1 1 13 1 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 1 1 1 1 , SrcSpan "tests/examples/IfThenElseLayout.hs" 2 1 2 1 , SrcSpan "tests/examples/IfThenElseLayout.hs" 2 1 2 1 , SrcSpan "tests/examples/IfThenElseLayout.hs" 4 1 4 1 , SrcSpan "tests/examples/IfThenElseLayout.hs" 5 1 5 1 , SrcSpan "tests/examples/IfThenElseLayout.hs" 13 1 13 1 , SrcSpan "tests/examples/IfThenElseLayout.hs" 13 1 13 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 2 1 2 30 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 2 1 2 7 , SrcSpan "tests/examples/IfThenElseLayout.hs" 2 25 2 30 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 2 8 2 24 , srcInfoPoints = [] } "IfThenElseLayout") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 1 1 1 13 , SrcSpan "tests/examples/IfThenElseLayout.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 1 14 1 29 , srcInfoPoints = [] } "DoAndIfThenElse" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 1 4 41 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 4 21 4 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 1 4 20 , srcInfoPoints = [] } "askCardsForExchange" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 24 4 41 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 4 29 4 31 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 24 4 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 24 4 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 24 4 28 , srcInfoPoints = [] } "Hand"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 32 4 41 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 32 4 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 32 4 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 32 4 34 , srcInfoPoints = [] } "IO"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 35 4 41 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 4 35 4 36 , SrcSpan "tests/examples/IfThenElseLayout.hs" 4 40 4 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 36 4 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 36 4 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 4 36 4 40 , srcInfoPoints = [] } "Card")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 5 1 11 61 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 5 1 11 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 5 1 5 20 , srcInfoPoints = [] } "askCardsForExchange") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 5 21 5 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 5 21 5 22 , srcInfoPoints = [] } "h") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 5 23 11 61 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 5 23 5 24 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 5 25 11 61 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 5 25 5 27 , SrcSpan "tests/examples/IfThenElseLayout.hs" 6 26 6 26 , SrcSpan "tests/examples/IfThenElseLayout.hs" 7 26 7 26 , SrcSpan "tests/examples/IfThenElseLayout.hs" 8 26 8 26 , SrcSpan "tests/examples/IfThenElseLayout.hs" 13 1 13 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 6 26 6 80 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 6 26 6 80 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 6 26 6 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 6 26 6 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 6 26 6 34 , srcInfoPoints = [] } "putStrLn"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 6 35 6 80 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 6 35 6 80 , srcInfoPoints = [] } "Wich card do you want to exchange? (Max. 3)" "Wich card do you want to exchange? (Max. 3)"))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 7 26 7 45 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 7 35 7 37 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 7 26 7 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 7 26 7 34 , srcInfoPoints = [] } "response")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 7 38 7 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 7 38 7 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 7 38 7 45 , srcInfoPoints = [] } "getLine"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 26 11 61 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 8 26 8 28 , SrcSpan "tests/examples/IfThenElseLayout.hs" 8 90 8 94 , SrcSpan "tests/examples/IfThenElseLayout.hs" 10 26 10 26 , SrcSpan "tests/examples/IfThenElseLayout.hs" 10 26 10 30 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 26 11 61 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 8 26 8 28 , SrcSpan "tests/examples/IfThenElseLayout.hs" 8 90 8 94 , SrcSpan "tests/examples/IfThenElseLayout.hs" 10 26 10 26 , SrcSpan "tests/examples/IfThenElseLayout.hs" 10 26 10 30 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 29 8 89 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 29 8 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 29 8 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 29 8 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 29 8 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 29 8 35 , srcInfoPoints = [] } "length"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 36 8 56 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 8 36 8 37 , SrcSpan "tests/examples/IfThenElseLayout.hs" 8 55 8 56 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 37 8 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 37 8 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 37 8 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 37 8 46 , srcInfoPoints = [] } "readCards"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 47 8 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 47 8 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 47 8 55 , srcInfoPoints = [] } "response")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 57 8 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 57 8 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 57 8 58 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 59 8 60 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 59 8 60 , srcInfoPoints = [] } 3 "3"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 61 8 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 61 8 63 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 61 8 63 , srcInfoPoints = [] } "||"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 64 8 89 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 64 8 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 64 8 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 64 8 67 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 68 8 89 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 8 68 8 69 , SrcSpan "tests/examples/IfThenElseLayout.hs" 8 88 8 89 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 69 8 88 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 69 8 86 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 69 8 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 69 8 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 69 8 72 , srcInfoPoints = [] } "all"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 73 8 86 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 8 73 8 74 , SrcSpan "tests/examples/IfThenElseLayout.hs" 8 85 8 86 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 74 8 85 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 74 8 83 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 74 8 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 74 8 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 74 8 78 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 79 8 83 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 79 8 83 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 79 8 83 , srcInfoPoints = [] } "elem")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 84 8 85 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 84 8 85 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 84 8 85 , srcInfoPoints = [] } "h")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 87 8 88 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 87 8 88 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 8 87 8 88 , srcInfoPoints = [] } "h"))))))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 9 34 9 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 9 34 9 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 9 34 9 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 9 34 9 53 , srcInfoPoints = [] } "askCardsForExchange"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 9 54 9 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 9 54 9 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 9 54 9 55 , srcInfoPoints = [] } "h")))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 34 11 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 34 11 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 34 11 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 34 11 40 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 41 11 61 , srcInfoPoints = [ SrcSpan "tests/examples/IfThenElseLayout.hs" 11 41 11 42 , SrcSpan "tests/examples/IfThenElseLayout.hs" 11 60 11 61 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 42 11 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 42 11 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 42 11 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 42 11 51 , srcInfoPoints = [] } "readCards"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 52 11 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 52 11 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IfThenElseLayout.hs" 11 52 11 60 , srcInfoPoints = [] } "response"))))))) ])) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/IfThenElseLayout.hs.prettyparser.golden0000644000000000000000000000000612746233113025672 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IfThenElseLayout.hs.prettyprinter.golden0000644000000000000000000000054412746233113026070 0ustar0000000000000000{-# LANGUAGE DoAndIfThenElse #-} module IfThenElseLayout where askCardsForExchange :: Hand -> IO [Card] askCardsForExchange h = do putStrLn "Wich card do you want to exchange? (Max. 3)" response <- getLine if length (readCards response) > 3 || not (all (flip elem h) h) then askCardsForExchange h else return (readCards response) haskell-src-exts-1.18.2/tests/examples/IllDataTypeDecl.hs0000644000000000000000000000012212746233113021437 0ustar0000000000000000{-# LANGUAGE TypeOperators #-} module IllDataTypeDecl where data (f :+: g) p = L haskell-src-exts-1.18.2/tests/examples/IllDataTypeDecl.hs.exactprinter.golden0000644000000000000000000000000612746233113025416 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IllDataTypeDecl.hs.parser.golden0000644000000000000000000001366012746233113024214 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/IllDataTypeDecl.hs" 1 1 1 1 , SrcSpan "tests/examples/IllDataTypeDecl.hs" 2 1 2 1 , SrcSpan "tests/examples/IllDataTypeDecl.hs" 2 1 2 1 , SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 1 4 1 , SrcSpan "tests/examples/IllDataTypeDecl.hs" 5 1 5 1 , SrcSpan "tests/examples/IllDataTypeDecl.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 2 1 2 29 , srcInfoPoints = [ SrcSpan "tests/examples/IllDataTypeDecl.hs" 2 1 2 7 , SrcSpan "tests/examples/IllDataTypeDecl.hs" 2 24 2 29 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 2 8 2 23 , srcInfoPoints = [] } "IllDataTypeDecl") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/IllDataTypeDecl.hs" 1 1 1 13 , SrcSpan "tests/examples/IllDataTypeDecl.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 1 14 1 27 , srcInfoPoints = [] } "TypeOperators" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 18 4 19 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 1 4 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 6 4 17 , srcInfoPoints = [] } (DHParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 6 4 15 , srcInfoPoints = [ SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 6 4 7 , SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 14 4 15 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 7 4 14 , srcInfoPoints = [] } (DHInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 7 4 14 , srcInfoPoints = [] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 7 4 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 7 4 8 , srcInfoPoints = [] } "f")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 9 4 12 , srcInfoPoints = [] } ":+:")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 13 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 13 4 14 , srcInfoPoints = [] } "g")))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 16 4 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 16 4 17 , srcInfoPoints = [] } "p"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 20 4 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 20 4 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IllDataTypeDecl.hs" 4 20 4 21 , srcInfoPoints = [] } "L") []) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/IllDataTypeDecl.hs.prettyparser.golden0000644000000000000000000000000612746233113025452 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IllDataTypeDecl.hs.prettyprinter.golden0000644000000000000000000000012212746233113025640 0ustar0000000000000000{-# LANGUAGE TypeOperators #-} module IllDataTypeDecl where data (f :+: g) p = L haskell-src-exts-1.18.2/tests/examples/ImplicitWhereBlocks.hs0000644000000000000000000000006212746233113022401 0ustar0000000000000000foo = x where x = 1 z = 19 y = 2 haskell-src-exts-1.18.2/tests/examples/ImplicitWhereBlocks.hs.exactprinter.golden0000644000000000000000000000000612746233113026355 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ImplicitWhereBlocks.hs.parser.golden0000644000000000000000000001753712746233113025162 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 1 , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 1 , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 1 , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 1 , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 7 1 7 1 , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 7 1 7 1 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 2 21 , srcInfoPoints = [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 9 1 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 1 1 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 5 1 8 , srcInfoPoints = [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 5 1 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 7 1 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 7 1 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 7 1 8 , srcInfoPoints = [] } "x")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 2 21 , srcInfoPoints = [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 1 15 , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 15 2 15 , SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 1 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 1 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 15 1 16 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 17 1 20 , srcInfoPoints = [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 17 1 18 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 19 1 20 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 1 19 1 20 , srcInfoPoints = [] } 1 "1"))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 15 2 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 15 2 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 15 2 16 , srcInfoPoints = [] } "z")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 17 2 21 , srcInfoPoints = [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 17 2 18 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 19 2 21 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 2 19 2 21 , srcInfoPoints = [] } 19 "19"))) Nothing ])) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 6 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 1 5 2 , srcInfoPoints = [] } "y")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 3 5 6 , srcInfoPoints = [ SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 3 5 4 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 5 5 6 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ImplicitWhereBlocks.hs" 5 5 5 6 , srcInfoPoints = [] } 2 "2"))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ImplicitWhereBlocks.hs.prettyparser.golden0000644000000000000000000000000612746233113026411 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ImplicitWhereBlocks.hs.prettyprinter.golden0000644000000000000000000000005312746233113026602 0ustar0000000000000000foo = x where x = 1 z = 19 y = 2 haskell-src-exts-1.18.2/tests/examples/IndentedModule1.hs0000644000000000000000000000010712746233113021457 0ustar0000000000000000{-# LANGUAGE NamedFieldPuns #-} module Main where main = putStr "foo" haskell-src-exts-1.18.2/tests/examples/IndentedModule1.hs.exactprinter.golden0000644000000000000000000000000612746233113025433 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IndentedModule1.hs.parser.golden0000644000000000000000000001015112746233113024221 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedModule1.hs" 1 1 1 1 , SrcSpan "tests/examples/IndentedModule1.hs" 2 2 2 2 , SrcSpan "tests/examples/IndentedModule1.hs" 3 1 3 1 , SrcSpan "tests/examples/IndentedModule1.hs" 4 1 4 1 , SrcSpan "tests/examples/IndentedModule1.hs" 4 1 4 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 2 2 2 19 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedModule1.hs" 2 2 2 8 , SrcSpan "tests/examples/IndentedModule1.hs" 2 14 2 19 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 2 9 2 13 , srcInfoPoints = [] } "Main") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedModule1.hs" 1 1 1 13 , SrcSpan "tests/examples/IndentedModule1.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 1 14 1 28 , srcInfoPoints = [] } "NamedFieldPuns" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 1 3 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 1 3 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 1 3 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 6 3 20 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedModule1.hs" 3 6 3 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 8 3 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 8 3 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 8 3 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 8 3 14 , srcInfoPoints = [] } "putStr"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 15 3 20 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule1.hs" 3 15 3 20 , srcInfoPoints = [] } "foo" "foo")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/IndentedModule1.hs.prettyparser.golden0000644000000000000000000000000612746233113025467 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IndentedModule1.hs.prettyprinter.golden0000644000000000000000000000010612746233113025657 0ustar0000000000000000{-# LANGUAGE NamedFieldPuns #-} module Main where main = putStr "foo" haskell-src-exts-1.18.2/tests/examples/IndentedModule2.hs0000644000000000000000000000011412746233113021456 0ustar0000000000000000{-# LANGUAGE NamedFieldPuns #-} {- -} module Main where main = putStr "foo" haskell-src-exts-1.18.2/tests/examples/IndentedModule2.hs.exactprinter.golden0000644000000000000000000000000612746233113025434 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IndentedModule2.hs.parser.golden0000644000000000000000000001027712746233113024233 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedModule2.hs" 1 1 1 1 , SrcSpan "tests/examples/IndentedModule2.hs" 2 7 2 7 , SrcSpan "tests/examples/IndentedModule2.hs" 3 1 3 1 , SrcSpan "tests/examples/IndentedModule2.hs" 4 1 4 1 , SrcSpan "tests/examples/IndentedModule2.hs" 4 1 4 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 2 7 2 24 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedModule2.hs" 2 7 2 13 , SrcSpan "tests/examples/IndentedModule2.hs" 2 19 2 24 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 2 14 2 18 , srcInfoPoints = [] } "Main") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedModule2.hs" 1 1 1 13 , SrcSpan "tests/examples/IndentedModule2.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 1 14 1 28 , srcInfoPoints = [] } "NamedFieldPuns" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 1 3 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 1 3 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 1 3 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 6 3 20 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedModule2.hs" 3 6 3 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 8 3 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 8 3 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 8 3 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 8 3 14 , srcInfoPoints = [] } "putStr"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 15 3 20 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedModule2.hs" 3 15 3 20 , srcInfoPoints = [] } "foo" "foo")))) Nothing ] , [ Comment True (SrcSpan "tests/examples/IndentedModule2.hs" 2 1 2 6) " " ] ) haskell-src-exts-1.18.2/tests/examples/IndentedModule2.hs.prettyparser.golden0000644000000000000000000000000612746233113025470 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IndentedModule2.hs.prettyprinter.golden0000644000000000000000000000010612746233113025660 0ustar0000000000000000{-# LANGUAGE NamedFieldPuns #-} module Main where main = putStr "foo" haskell-src-exts-1.18.2/tests/examples/IndentedTopLevelWhere.hs0000644000000000000000000000012512746233113022676 0ustar0000000000000000module IndentedTopLevelWhere where foo :: Int foo = 5 where bar :: Int bar = 3 haskell-src-exts-1.18.2/tests/examples/IndentedTopLevelWhere.hs.exactprinter.golden0000644000000000000000000000013412746233113026654 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/IndentedTopLevelWhere.hs" 8 1) "Parse error: virtual }" haskell-src-exts-1.18.2/tests/examples/IndentedTopLevelWhere.hs.parser.golden0000644000000000000000000000014012746233113025435 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/IndentedTopLevelWhere.hs" 8 1) "Parse error: virtual }" haskell-src-exts-1.18.2/tests/examples/IndentedTopLevelWhere.hs.prettyparser.golden0000644000000000000000000000013412746233113026710 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/IndentedTopLevelWhere.hs" 8 1) "Parse error: virtual }" haskell-src-exts-1.18.2/tests/examples/IndentedTopLevelWhere.hs.prettyprinter.golden0000644000000000000000000000013412746233113027077 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/IndentedTopLevelWhere.hs" 8 1) "Parse error: virtual }" haskell-src-exts-1.18.2/tests/examples/IndentedWhere.hs0000644000000000000000000000005012746233113021220 0ustar0000000000000000 f x = g where g :: Int g = 0 haskell-src-exts-1.18.2/tests/examples/IndentedWhere.hs.exactprinter.golden0000644000000000000000000000000612746233113025177 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IndentedWhere.hs.parser.golden0000644000000000000000000001455412746233113024000 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedWhere.hs" 2 1 2 1 , SrcSpan "tests/examples/IndentedWhere.hs" 2 1 2 1 , SrcSpan "tests/examples/IndentedWhere.hs" 2 1 2 1 , SrcSpan "tests/examples/IndentedWhere.hs" 5 1 5 1 , SrcSpan "tests/examples/IndentedWhere.hs" 5 1 5 1 ] } Nothing [] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 1 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedWhere.hs" 3 3 3 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 1 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedWhere.hs" 3 3 3 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 1 2 2 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 3 2 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 3 2 4 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 5 2 8 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedWhere.hs" 2 5 2 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 7 2 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 7 2 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 2 7 2 8 , srcInfoPoints = [] } "g")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 3 9 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedWhere.hs" 3 9 3 9 , SrcSpan "tests/examples/IndentedWhere.hs" 4 9 4 9 , SrcSpan "tests/examples/IndentedWhere.hs" 5 1 5 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 3 9 3 17 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedWhere.hs" 3 11 3 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 3 9 3 10 , srcInfoPoints = [] } "g" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 3 14 3 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 3 14 3 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 3 14 3 17 , srcInfoPoints = [] } "Int"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 4 9 4 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 4 9 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 4 9 4 10 , srcInfoPoints = [] } "g")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 4 11 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/IndentedWhere.hs" 4 11 4 12 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 4 13 4 14 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/IndentedWhere.hs" 4 13 4 14 , srcInfoPoints = [] } 0 "0"))) Nothing ])) ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/IndentedWhere.hs.prettyparser.golden0000644000000000000000000000000612746233113025233 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/IndentedWhere.hs.prettyprinter.golden0000644000000000000000000000004712746233113025427 0ustar0000000000000000f x = g where g :: Int g = 0 haskell-src-exts-1.18.2/tests/examples/IndentedWhereBlock.hs0000644000000000000000000000030312746233113022174 0ustar0000000000000000module Graph where countryLookUp :: String -> Graph -> Maybe Int countryLookUp country graph = indexOf country graph where indexOf :: String -> Graph -> Maybe Int indexOf _ Empty = Nothing haskell-src-exts-1.18.2/tests/examples/IndentedWhereBlock.hs.exactprinter.golden0000644000000000000000000000013112746233113026151 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/IndentedWhereBlock.hs" 8 1) "Parse error: virtual }" haskell-src-exts-1.18.2/tests/examples/IndentedWhereBlock.hs.parser.golden0000644000000000000000000000013512746233113024741 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/IndentedWhereBlock.hs" 8 1) "Parse error: virtual }" haskell-src-exts-1.18.2/tests/examples/IndentedWhereBlock.hs.prettyparser.golden0000644000000000000000000000013112746233113026205 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/IndentedWhereBlock.hs" 8 1) "Parse error: virtual }" haskell-src-exts-1.18.2/tests/examples/IndentedWhereBlock.hs.prettyprinter.golden0000644000000000000000000000013112746233113026374 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/IndentedWhereBlock.hs" 8 1) "Parse error: virtual }" haskell-src-exts-1.18.2/tests/examples/InfixApp.hs0000644000000000000000000000001212746233113020207 0ustar0000000000000000f = -w/2 haskell-src-exts-1.18.2/tests/examples/InfixApp.hs.exactprinter.golden0000644000000000000000000000000612746233113024170 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixApp.hs.parser.golden0000644000000000000000000000706112746233113022764 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/InfixApp.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixApp.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixApp.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixApp.hs" 3 1 3 1 , SrcSpan "tests/examples/InfixApp.hs" 3 1 3 1 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 1 1 9 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 1 1 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 1 1 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 3 1 9 , srcInfoPoints = [ SrcSpan "tests/examples/InfixApp.hs" 1 3 1 4 ] } (NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 5 1 9 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 6 1 9 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 6 1 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 6 1 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 6 1 7 , srcInfoPoints = [] } "w"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 7 1 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 7 1 8 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 7 1 8 , srcInfoPoints = [] } "/"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 8 1 9 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixApp.hs" 1 8 1 9 , srcInfoPoints = [] } 2 "2"))))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/InfixApp.hs.prettyparser.golden0000644000000000000000000000000612746233113024224 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixApp.hs.prettyprinter.golden0000644000000000000000000000001312746233113024411 0ustar0000000000000000f = -w / 2 haskell-src-exts-1.18.2/tests/examples/InfixBang.hs0000644000000000000000000000006112746233113020342 0ustar0000000000000000{-# LANGUAGE BangPatterns #-} (!) arr i = arr i haskell-src-exts-1.18.2/tests/examples/InfixBang.hs.exactprinter.golden0000644000000000000000000000000612746233113024317 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixBang.hs.parser.golden0000644000000000000000000001126212746233113023111 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/InfixBang.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixBang.hs" 3 1 3 1 , SrcSpan "tests/examples/InfixBang.hs" 3 1 3 1 , SrcSpan "tests/examples/InfixBang.hs" 3 1 3 1 , SrcSpan "tests/examples/InfixBang.hs" 4 1 4 1 , SrcSpan "tests/examples/InfixBang.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/InfixBang.hs" 1 1 1 13 , SrcSpan "tests/examples/InfixBang.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 1 14 1 26 , srcInfoPoints = [] } "BangPatterns" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 1 3 18 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 1 3 18 , srcInfoPoints = [ SrcSpan "tests/examples/InfixBang.hs" 3 1 3 2 , SrcSpan "tests/examples/InfixBang.hs" 3 2 3 3 , SrcSpan "tests/examples/InfixBang.hs" 3 3 3 4 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 2 3 3 , srcInfoPoints = [] } "!") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 5 3 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 5 3 8 , srcInfoPoints = [] } "arr") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 9 3 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 9 3 10 , srcInfoPoints = [] } "i") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 11 3 18 , srcInfoPoints = [ SrcSpan "tests/examples/InfixBang.hs" 3 11 3 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 13 3 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 13 3 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 13 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 13 3 16 , srcInfoPoints = [] } "arr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 17 3 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 17 3 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixBang.hs" 3 17 3 18 , srcInfoPoints = [] } "i"))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/InfixBang.hs.prettyparser.golden0000644000000000000000000000000612746233113024353 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixBang.hs.prettyprinter.golden0000644000000000000000000000006012746233113024542 0ustar0000000000000000{-# LANGUAGE BangPatterns #-} (!) arr i = arr i haskell-src-exts-1.18.2/tests/examples/InfixFunBind.hs0000644000000000000000000000002612746233113021021 0ustar0000000000000000left `first` _ = left haskell-src-exts-1.18.2/tests/examples/InfixFunBind.hs.exactprinter.golden0000644000000000000000000000000612746233113024775 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixFunBind.hs.parser.golden0000644000000000000000000000572512746233113023576 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/InfixFunBind.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixFunBind.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixFunBind.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixFunBind.hs" 2 1 2 1 , SrcSpan "tests/examples/InfixFunBind.hs" 2 1 2 1 ] } Nothing [] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 1 1 22 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 1 1 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 1 1 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 1 1 5 , srcInfoPoints = [] } "left")) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 7 1 12 , srcInfoPoints = [ SrcSpan "tests/examples/InfixFunBind.hs" 1 6 1 7 , SrcSpan "tests/examples/InfixFunBind.hs" 1 7 1 12 , SrcSpan "tests/examples/InfixFunBind.hs" 1 12 1 13 ] } "first") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 14 1 15 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 16 1 22 , srcInfoPoints = [ SrcSpan "tests/examples/InfixFunBind.hs" 1 16 1 17 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 18 1 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 18 1 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixFunBind.hs" 1 18 1 22 , srcInfoPoints = [] } "left")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/InfixFunBind.hs.prettyparser.golden0000644000000000000000000000000612746233113025031 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixFunBind.hs.prettyprinter.golden0000644000000000000000000000002612746233113025222 0ustar0000000000000000left `first` _ = left haskell-src-exts-1.18.2/tests/examples/InfixParser.hs0000644000000000000000000000021012746233113020723 0ustar0000000000000000module InfixParser where type Parse a b = [a] -> [(b, [a])] (<|>) :: Parse a b -> Parse a b -> Parse a b (p1 <|> p2) i = p1 i ++ p2 i haskell-src-exts-1.18.2/tests/examples/InfixParser.hs.exactprinter.golden0000644000000000000000000000000612746233113024704 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixParser.hs.parser.golden0000644000000000000000000005163112746233113023502 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixParser.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixParser.hs" 3 1 3 1 , SrcSpan "tests/examples/InfixParser.hs" 5 1 5 1 , SrcSpan "tests/examples/InfixParser.hs" 6 1 6 1 , SrcSpan "tests/examples/InfixParser.hs" 7 1 7 1 , SrcSpan "tests/examples/InfixParser.hs" 7 1 7 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 1 1 1 25 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 1 1 1 7 , SrcSpan "tests/examples/InfixParser.hs" 1 20 1 25 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 1 8 1 19 , srcInfoPoints = [] } "InfixParser") Nothing Nothing)) [] [] [ TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 1 3 35 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 3 1 3 5 , SrcSpan "tests/examples/InfixParser.hs" 3 16 3 17 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 6 3 15 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 6 3 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 6 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 6 3 11 , srcInfoPoints = [] } "Parse")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 12 3 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 12 3 13 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 14 3 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 14 3 15 , srcInfoPoints = [] } "b"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 18 3 35 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 3 22 3 24 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 18 3 21 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 3 18 3 19 , SrcSpan "tests/examples/InfixParser.hs" 3 20 3 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 19 3 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 19 3 20 , srcInfoPoints = [] } "a"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 25 3 35 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 3 25 3 26 , SrcSpan "tests/examples/InfixParser.hs" 3 34 3 35 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 26 3 34 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 3 26 3 27 , SrcSpan "tests/examples/InfixParser.hs" 3 28 3 29 , SrcSpan "tests/examples/InfixParser.hs" 3 33 3 34 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 27 3 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 27 3 28 , srcInfoPoints = [] } "b") , TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 30 3 33 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 3 30 3 31 , SrcSpan "tests/examples/InfixParser.hs" 3 32 3 33 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 31 3 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 3 31 3 32 , srcInfoPoints = [] } "a")) ]))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 1 5 45 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 5 7 5 9 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 1 5 6 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 5 1 5 2 , SrcSpan "tests/examples/InfixParser.hs" 5 2 5 5 , SrcSpan "tests/examples/InfixParser.hs" 5 5 5 6 ] } "<|>" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 10 5 45 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 5 20 5 22 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 10 5 19 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 10 5 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 10 5 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 10 5 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 10 5 15 , srcInfoPoints = [] } "Parse"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 16 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 16 5 17 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 18 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 18 5 19 , srcInfoPoints = [] } "b"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 23 5 45 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 5 33 5 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 23 5 32 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 23 5 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 23 5 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 23 5 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 23 5 28 , srcInfoPoints = [] } "Parse"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 29 5 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 29 5 30 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 31 5 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 31 5 32 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 36 5 45 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 36 5 43 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 36 5 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 36 5 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 36 5 41 , srcInfoPoints = [] } "Parse"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 42 5 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 42 5 43 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 44 5 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 5 44 5 45 , srcInfoPoints = [] } "b"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 1 6 29 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 1 6 29 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 6 1 6 2 , SrcSpan "tests/examples/InfixParser.hs" 6 11 6 12 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 2 6 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 2 6 4 , srcInfoPoints = [] } "p1")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 5 6 8 , srcInfoPoints = [] } "<|>") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 9 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 9 6 11 , srcInfoPoints = [] } "p2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 13 6 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 13 6 14 , srcInfoPoints = [] } "i") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 15 6 29 , srcInfoPoints = [ SrcSpan "tests/examples/InfixParser.hs" 6 15 6 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 17 6 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 17 6 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 17 6 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 17 6 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 17 6 19 , srcInfoPoints = [] } "p1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 20 6 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 20 6 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 20 6 21 , srcInfoPoints = [] } "i")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 22 6 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 22 6 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 22 6 24 , srcInfoPoints = [] } "++"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 25 6 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 25 6 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 25 6 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 25 6 27 , srcInfoPoints = [] } "p2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 28 6 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 28 6 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixParser.hs" 6 28 6 29 , srcInfoPoints = [] } "i")))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/InfixParser.hs.prettyparser.golden0000644000000000000000000000000612746233113024740 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixParser.hs.prettyprinter.golden0000644000000000000000000000021012746233113025124 0ustar0000000000000000module InfixParser where type Parse a b = [a] -> [(b, [a])] (<|>) :: Parse a b -> Parse a b -> Parse a b (p1 <|> p2) i = p1 i ++ p2 i haskell-src-exts-1.18.2/tests/examples/InfixTypeMinus.hs0000644000000000000000000000063512746233113021437 0ustar0000000000000000{-# LANGUAGE DataKinds, KindSignatures, TypeOperators, GADTs #-} module Foo where -- Test cases data Vec (n :: Nat) where { VCons :: (m ~ (n-1)) => Double -> Vec m -> Vec n } data Vec (n :: Nat) where { VCons :: ((n-1) ~ m) => Double -> Vec m -> Vec n } data Vec (n :: Nat) where { VCons :: ((m+1) ~ n) => Double -> Vec m -> Vec n } data Vec (n :: Nat) where { VCons :: (n ~ (m+1)) => Double -> Vec m -> Vec n } haskell-src-exts-1.18.2/tests/examples/InfixTypeMinus.hs.exactprinter.golden0000644000000000000000000000000612746233113025405 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixTypeMinus.hs.parser.golden0000644000000000000000000016560412746233113024211 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 1 1 1 1 , SrcSpan "tests/examples/InfixTypeMinus.hs" 2 1 2 1 , SrcSpan "tests/examples/InfixTypeMinus.hs" 2 1 2 1 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 1 5 1 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 1 6 1 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 1 7 1 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 1 8 1 , SrcSpan "tests/examples/InfixTypeMinus.hs" 9 1 9 1 , SrcSpan "tests/examples/InfixTypeMinus.hs" 9 1 9 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 2 1 2 17 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 2 1 2 7 , SrcSpan "tests/examples/InfixTypeMinus.hs" 2 12 2 17 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 2 8 2 11 , srcInfoPoints = [] } "Foo") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 1 1 1 65 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 1 1 1 13 , SrcSpan "tests/examples/InfixTypeMinus.hs" 1 23 1 24 , SrcSpan "tests/examples/InfixTypeMinus.hs" 1 39 1 40 , SrcSpan "tests/examples/InfixTypeMinus.hs" 1 54 1 55 , SrcSpan "tests/examples/InfixTypeMinus.hs" 1 62 1 65 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 1 14 1 23 , srcInfoPoints = [] } "DataKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 1 25 1 39 , srcInfoPoints = [] } "KindSignatures" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 1 41 1 54 , srcInfoPoints = [] } "TypeOperators" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 1 56 1 61 , srcInfoPoints = [] } "GADTs" ] ] [] [ GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 1 5 79 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 21 5 26 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 27 5 28 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 78 5 79 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 1 5 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 6 5 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 6 5 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 6 5 9 , srcInfoPoints = [] } "Vec")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 10 5 20 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 10 5 11 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 13 5 15 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 19 5 20 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 11 5 12 , srcInfoPoints = [] } "n") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 16 5 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 16 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 16 5 19 , srcInfoPoints = [] } "Nat"))))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 29 5 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 35 5 37 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 29 5 34 , srcInfoPoints = [] } "VCons") Nothing (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 38 5 77 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 38 5 52 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 38 5 39 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 48 5 49 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 50 5 52 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 38 5 52 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 38 5 39 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 48 5 49 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 50 5 52 ] } (EqualP SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 39 5 48 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 41 5 42 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 39 5 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 39 5 40 , srcInfoPoints = [] } "m")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 43 5 48 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 43 5 44 , SrcSpan "tests/examples/InfixTypeMinus.hs" 5 47 5 48 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 44 5 47 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 44 5 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 44 5 45 , srcInfoPoints = [] } "n")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 45 5 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 45 5 46 , srcInfoPoints = [] } "-")) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 46 5 47 , srcInfoPoints = [] } (PromotedInteger SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 46 5 47 , srcInfoPoints = [] } 1 "1")))))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 53 5 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 60 5 62 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 53 5 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 53 5 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 53 5 59 , srcInfoPoints = [] } "Double"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 63 5 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 5 69 5 71 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 63 5 68 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 63 5 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 63 5 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 63 5 66 , srcInfoPoints = [] } "Vec"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 67 5 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 67 5 68 , srcInfoPoints = [] } "m"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 72 5 77 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 72 5 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 72 5 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 72 5 75 , srcInfoPoints = [] } "Vec"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 76 5 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 5 76 5 77 , srcInfoPoints = [] } "n")))))) ] Nothing , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 1 6 79 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 21 6 26 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 27 6 28 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 78 6 79 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 1 6 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 6 6 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 6 6 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 6 6 9 , srcInfoPoints = [] } "Vec")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 10 6 20 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 10 6 11 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 13 6 15 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 19 6 20 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 11 6 12 , srcInfoPoints = [] } "n") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 16 6 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 16 6 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 16 6 19 , srcInfoPoints = [] } "Nat"))))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 29 6 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 35 6 37 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 29 6 34 , srcInfoPoints = [] } "VCons") Nothing (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 38 6 77 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 38 6 52 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 38 6 39 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 48 6 49 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 50 6 52 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 38 6 52 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 38 6 39 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 48 6 49 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 50 6 52 ] } (EqualP SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 39 6 48 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 45 6 46 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 39 6 44 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 39 6 40 , SrcSpan "tests/examples/InfixTypeMinus.hs" 6 43 6 44 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 40 6 43 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 40 6 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 40 6 41 , srcInfoPoints = [] } "n")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 41 6 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 41 6 42 , srcInfoPoints = [] } "-")) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 42 6 43 , srcInfoPoints = [] } (PromotedInteger SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 42 6 43 , srcInfoPoints = [] } 1 "1")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 47 6 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 47 6 48 , srcInfoPoints = [] } "m")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 53 6 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 60 6 62 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 53 6 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 53 6 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 53 6 59 , srcInfoPoints = [] } "Double"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 63 6 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 6 69 6 71 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 63 6 68 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 63 6 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 63 6 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 63 6 66 , srcInfoPoints = [] } "Vec"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 67 6 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 67 6 68 , srcInfoPoints = [] } "m"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 72 6 77 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 72 6 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 72 6 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 72 6 75 , srcInfoPoints = [] } "Vec"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 76 6 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 6 76 6 77 , srcInfoPoints = [] } "n")))))) ] Nothing , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 1 7 79 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 21 7 26 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 27 7 28 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 78 7 79 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 1 7 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 6 7 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 6 7 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 6 7 9 , srcInfoPoints = [] } "Vec")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 10 7 20 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 10 7 11 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 13 7 15 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 19 7 20 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 11 7 12 , srcInfoPoints = [] } "n") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 16 7 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 16 7 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 16 7 19 , srcInfoPoints = [] } "Nat"))))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 29 7 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 35 7 37 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 29 7 34 , srcInfoPoints = [] } "VCons") Nothing (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 38 7 77 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 38 7 52 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 38 7 39 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 48 7 49 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 50 7 52 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 38 7 52 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 38 7 39 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 48 7 49 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 50 7 52 ] } (EqualP SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 39 7 48 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 45 7 46 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 39 7 44 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 39 7 40 , SrcSpan "tests/examples/InfixTypeMinus.hs" 7 43 7 44 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 40 7 43 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 40 7 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 40 7 41 , srcInfoPoints = [] } "m")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 41 7 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 41 7 42 , srcInfoPoints = [] } "+")) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 42 7 43 , srcInfoPoints = [] } (PromotedInteger SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 42 7 43 , srcInfoPoints = [] } 1 "1")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 47 7 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 47 7 48 , srcInfoPoints = [] } "n")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 53 7 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 60 7 62 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 53 7 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 53 7 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 53 7 59 , srcInfoPoints = [] } "Double"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 63 7 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 7 69 7 71 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 63 7 68 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 63 7 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 63 7 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 63 7 66 , srcInfoPoints = [] } "Vec"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 67 7 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 67 7 68 , srcInfoPoints = [] } "m"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 72 7 77 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 72 7 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 72 7 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 72 7 75 , srcInfoPoints = [] } "Vec"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 76 7 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 7 76 7 77 , srcInfoPoints = [] } "n")))))) ] Nothing , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 1 8 79 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 21 8 26 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 27 8 28 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 78 8 79 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 1 8 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 6 8 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 6 8 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 6 8 9 , srcInfoPoints = [] } "Vec")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 10 8 20 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 10 8 11 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 13 8 15 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 19 8 20 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 11 8 12 , srcInfoPoints = [] } "n") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 16 8 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 16 8 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 16 8 19 , srcInfoPoints = [] } "Nat"))))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 29 8 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 35 8 37 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 29 8 34 , srcInfoPoints = [] } "VCons") Nothing (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 38 8 77 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 38 8 52 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 38 8 39 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 48 8 49 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 50 8 52 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 38 8 52 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 38 8 39 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 48 8 49 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 50 8 52 ] } (EqualP SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 39 8 48 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 41 8 42 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 39 8 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 39 8 40 , srcInfoPoints = [] } "n")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 43 8 48 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 43 8 44 , SrcSpan "tests/examples/InfixTypeMinus.hs" 8 47 8 48 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 44 8 47 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 44 8 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 44 8 45 , srcInfoPoints = [] } "m")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 45 8 46 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 45 8 46 , srcInfoPoints = [] } "+")) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 46 8 47 , srcInfoPoints = [] } (PromotedInteger SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 46 8 47 , srcInfoPoints = [] } 1 "1")))))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 53 8 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 60 8 62 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 53 8 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 53 8 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 53 8 59 , srcInfoPoints = [] } "Double"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 63 8 77 , srcInfoPoints = [ SrcSpan "tests/examples/InfixTypeMinus.hs" 8 69 8 71 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 63 8 68 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 63 8 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 63 8 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 63 8 66 , srcInfoPoints = [] } "Vec"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 67 8 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 67 8 68 , srcInfoPoints = [] } "m"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 72 8 77 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 72 8 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 72 8 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 72 8 75 , srcInfoPoints = [] } "Vec"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 76 8 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InfixTypeMinus.hs" 8 76 8 77 , srcInfoPoints = [] } "n")))))) ] Nothing ] , [ Comment False (SrcSpan "tests/examples/InfixTypeMinus.hs" 4 1 4 14) " Test cases" ] ) haskell-src-exts-1.18.2/tests/examples/InfixTypeMinus.hs.prettyparser.golden0000644000000000000000000000000612746233113025441 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InfixTypeMinus.hs.prettyprinter.golden0000644000000000000000000000065212746233113025637 0ustar0000000000000000{-# LANGUAGE DataKinds, KindSignatures, TypeOperators, GADTs #-} module Foo where data Vec (n :: Nat) where VCons :: (m ~ (n - 1)) => Double -> Vec m -> Vec n data Vec (n :: Nat) where VCons :: ((n - 1) ~ m) => Double -> Vec m -> Vec n data Vec (n :: Nat) where VCons :: ((m + 1) ~ n) => Double -> Vec m -> Vec n data Vec (n :: Nat) where VCons :: (n ~ (m + 1)) => Double -> Vec m -> Vec n haskell-src-exts-1.18.2/tests/examples/InjectiveTypeFamilies.hs0000644000000000000000000001544412746233113022744 0ustar0000000000000000{-# LANGUAGE DataKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE PolyKinds #-} {-# LANGUAGE TypeFamilyDependencies #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE UndecidableInstances #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE NoMonomorphismRestriction #-} module T6018 where import T6018a -- defines G, identical to F type family F a b c = (result :: k) | result -> a b c type instance F Int Char Bool = Bool type instance F Char Bool Int = Int type instance F Bool Int Char = Char type instance G Bool Int Char = Char type family I (a :: k) b (c :: k) = r | r -> a b type instance I Int Char Bool = Bool type instance I Int Char Int = Bool type instance I Bool Int Int = Int -- this is injective - a type variable introduced in the LHS is not mentioned on -- RHS but we don't claim injectivity in that argument. type family J a (b :: k) = r | r -> a type instance J Int b = Char type MaybeSyn a = Maybe a newtype MaybeNew a = MaybeNew (Maybe a) -- make sure we look through type synonyms... type family K a = r | r -> a type instance K a = MaybeSyn a -- .. but not newtypes type family M a = r | r -> a type instance M (Maybe a) = MaybeSyn a type instance M (MaybeNew a) = MaybeNew a -- Closed type families -- these are simple conversions from open type families. They should behave the -- same type family FClosed a b c = result | result -> a b c where FClosed Int Char Bool = Bool FClosed Char Bool Int = Int FClosed Bool Int Char = Char type family IClosed (a :: *) (b :: *) (c :: *) = r | r -> a b where IClosed Int Char Bool = Bool IClosed Int Char Int = Bool IClosed Bool Int Int = Int type family JClosed a (b :: k) = r | r -> a where JClosed Int b = Char type family KClosed a = r | r -> a where KClosed a = MaybeSyn a -- Here the last equation might return both Int and Char but we have to -- recognize that it is not possible due to equation overlap type family Bak a = r | r -> a where Bak Int = Char Bak Char = Int Bak a = a -- This is similar, except that the last equation contains concrete type. Since -- it is overlapped it should be dropped with a warning type family Foo a = r | r -> a where Foo Int = Bool Foo Bool = Int Foo Bool = Bool -- this one was tricky in the early implementation of injectivity. Now it is -- identical to the above but we still keep it as a regression test. type family Bar a = r | r -> a where Bar Int = Bool Bar Bool = Int Bar Bool = Char -- Now let's use declared type families. All the below definitions should work -- No ambiguity for any of the arguments - all are injective f :: F a b c -> F a b c f x = x -- From 1st instance of F: a ~ Int, b ~ Char, c ~ Bool fapp :: Bool fapp = f True -- now the closed variant of F fc :: FClosed a b c -> FClosed a b c fc x = x fcapp :: Bool fcapp = fc True -- The last argument is not injective so it must be instantiated i :: I a b Int -> I a b Int i x = x -- From 1st instance of I: a ~ Int, b ~ Char iapp :: Bool iapp = i True -- again, closed variant of I ic :: IClosed a b Int -> IClosed a b Int ic x = x icapp :: Bool icapp = ic True -- Now we have to test weird closed type families: bak :: Bak a -> Bak a bak x = x bakapp1 :: Char bakapp1 = bak 'c' bakapp2 :: Double bakapp2 = bak 1.0 bakapp3 :: () bakapp3 = bak () foo :: Foo a -> Foo a foo x = x fooapp1 :: Bool fooapp1 = foo True bar :: Bar a -> Bar a bar x = x barapp1 :: Bool barapp1 = bar True barapp2 :: Int barapp2 = bar 1 -- Declarations below test more liberal RHSs of injectivity annotations: -- permiting variables to appear in different order than the one in which they -- were declared. type family H a b = r | r -> b a type family Hc a b = r | r -> b a where Hc a b = a b class Hcl a b where type Ht a b = r | r -> b a -- repeated tyvars in the RHS of injectivity annotation: no warnings or errors -- (consistent with behaviour for functional dependencies) type family Jx a b = r | r -> a a type family Jcx a b = r | r -> a a where Jcx a b = a b class Jcl a b where type Jt a b = r | r -> a a type family Kx a b = r | r -> a b b type family Kcx a b = r | r -> a b b where Kcx a b = a b class Kcl a b where type Kt a b = r | r -> a b b -- Declaring kind injectivity. Here we only claim that knowing the RHS -- determines the LHS kind but not the type. type family L (a :: k1) = (r :: k2) | r -> k1 where L 'True = Int L 'False = Int L Maybe = 3 L IO = 3 data KProxy (a :: *) = KProxy type family KP (kproxy :: KProxy k) = r | r -> k type instance KP ('KProxy :: KProxy Bool) = Int type instance KP ('KProxy :: KProxy *) = Char kproxy_id :: KP ('KProxy :: KProxy k) -> KP ('KProxy :: KProxy k) kproxy_id x = x kproxy_id_use = kproxy_id 'a' -- Now test some awkward cases from The Injectivity Paper. All should be -- accepted. type family Gx a type family Hx a type family Gi a = r | r -> a type instance Gi Int = Char type family Hi a = r | r -> a type family F2 a = r | r -> a type instance F2 [a] = [Gi a] type instance F2 (Maybe a) = Hi a -> Int type family F4 a = r | r -> a type instance F4 [a] = (Gx a, a, a, a) type instance F4 (Maybe a) = (Hx a, a, Int, Bool) type family G2 a b = r | r -> a b type instance G2 a Bool = (a, a) type instance G2 Bool b = (b, Bool) type family G6 a = r | r -> a type instance G6 [a] = [Gi a] type instance G6 Bool = Int g6_id :: G6 a -> G6 a g6_id x = x g6_use :: [Char] g6_use = g6_id "foo" -- A sole exception to "bare variables in the RHS" rule type family Id (a :: k) = (result :: k) | result -> a type instance Id a = a -- This makes sure that over-saturated type family applications at the top-level -- are accepted. type family IdProxy (a :: k) b = r | r -> a type instance IdProxy a b = (Id a) b -- make sure we look through type synonyms properly type IdSyn a = Id a type family IdProxySyn (a :: k) b = r | r -> a type instance IdProxySyn a b = (IdSyn a) b -- this has bare variable in the RHS but all LHS varaiables are also bare so it -- should be accepted type family Fa (a :: k) (b :: k) = (r :: k2) | r -> k type instance Fa a b = a -- Taken from #9587. This exposed a bug in the solver. type family Arr (repr :: * -> *) (a :: *) (b :: *) = (r :: *) | r -> repr a b class ESymantics repr where int :: Int -> repr Int add :: repr Int -> repr Int -> repr Int lam :: (repr a -> repr b) -> repr (Arr repr a b) app :: repr (Arr repr a b) -> repr a -> repr b te4 = let c3 = lam (\f -> lam (\x -> f `app` (f `app` (f `app` x)))) in (c3 `app` (lam (\x -> x `add` int 14))) `app` (int 0) -- This used to fail during development class Manifold' a where type Base a = r | r -> a project :: a -> Base a unproject :: Base a -> a id' :: forall a. ( Manifold' a ) => Base a -> Base a id' = project . unproject haskell-src-exts-1.18.2/tests/examples/InjectiveTypeFamilies.hs.exactprinter.golden0000644000000000000000000000000612746233113026706 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InjectiveTypeFamilies.hs.parser.golden0000644000000000000000000254133412746233113025512 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 1 1 256 1 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 1 1 1 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 2 1 2 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 3 1 3 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 4 1 4 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 5 1 5 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 6 1 6 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 7 1 7 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 8 1 8 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 10 1 10 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 10 1 10 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 12 1 12 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 1 14 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 1 15 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 1 16 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 1 17 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 1 20 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 1 22 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 1 23 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 1 24 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 1 25 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 1 29 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 1 30 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 1 32 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 1 33 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 1 36 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 1 37 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 1 40 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 1 41 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 1 42 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 1 48 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 1 53 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 1 58 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 1 61 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 1 66 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 1 73 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 1 80 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 1 88 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 1 89 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 92 1 92 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 1 93 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 1 96 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 1 97 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 99 1 99 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 1 100 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 1 103 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 1 104 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 107 1 107 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 1 108 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 1 111 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 1 112 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 114 1 114 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 1 115 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 1 118 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 1 119 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 121 1 121 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 1 122 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 124 1 124 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 1 125 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 1 127 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 1 128 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 1 130 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 1 131 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 133 1 133 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 1 134 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 1 136 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 1 137 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 139 1 139 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 1 140 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 142 1 142 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 1 143 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 1 148 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 1 149 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 1 151 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 1 156 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 1 157 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 1 159 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 1 162 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 1 163 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 1 165 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 1 170 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 1 176 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 1 177 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 1 178 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 1 179 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 1 181 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 1 182 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 1 184 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 1 188 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 1 189 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 1 190 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 1 191 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 1 192 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 1 194 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 1 195 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 1 196 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 1 198 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 1 199 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 1 200 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 1 202 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 1 203 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 1 204 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 1 206 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 1 207 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 1 208 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 1 210 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 1 211 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 1 213 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 1 214 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 1 217 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 1 218 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 1 222 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 1 223 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 1 226 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 1 227 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 1 228 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 1 232 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 1 233 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 1 236 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 1 238 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 1 245 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 1 249 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 1 254 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 1 255 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 256 1 256 1 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 256 1 256 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 10 1 10 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 10 1 10 7 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 10 14 10 19 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 10 8 10 13 , srcInfoPoints = [] } "T6018") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 1 1 1 43 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 1 1 1 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 1 40 1 43 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 1 14 1 23 , srcInfoPoints = [] } "DataKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 2 1 2 43 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 2 1 2 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 2 40 2 43 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 2 14 2 35 , srcInfoPoints = [] } "MultiParamTypeClasses" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 3 1 3 43 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 3 1 3 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 3 40 3 43 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 3 14 3 23 , srcInfoPoints = [] } "PolyKinds" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 4 1 4 44 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 4 1 4 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 4 41 4 44 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 4 14 4 36 , srcInfoPoints = [] } "TypeFamilyDependencies" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 5 1 5 34 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 5 1 5 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 5 31 5 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 5 14 5 26 , srcInfoPoints = [] } "TypeFamilies" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 6 1 6 43 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 6 1 6 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 6 40 6 43 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 6 14 6 34 , srcInfoPoints = [] } "UndecidableInstances" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 7 1 7 43 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 7 1 7 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 7 40 7 43 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 7 14 7 33 , srcInfoPoints = [] } "ScopedTypeVariables" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 8 1 8 43 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 8 1 8 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 8 40 8 43 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 8 14 8 39 , srcInfoPoints = [] } "NoMonomorphismRestriction" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 12 1 12 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 12 1 12 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 12 8 12 14 , srcInfoPoints = [] } "T6018a" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 1 14 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 1 14 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 6 14 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 13 14 20 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 13 14 18 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 13 14 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 13 14 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 13 14 14 , srcInfoPoints = [] } "F")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 15 14 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 15 14 16 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 17 14 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 17 14 18 , srcInfoPoints = [] } "b"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 19 14 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 19 14 20 , srcInfoPoints = [] } "c"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 21 14 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 21 14 22 ] } (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 23 14 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 23 14 24 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 31 14 33 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 35 14 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 24 14 30 , srcInfoPoints = [] } "result") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 34 14 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 34 14 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 34 14 35 , srcInfoPoints = [] } "k")))))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 37 14 50 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 37 14 38 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 46 14 48 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 39 14 45 , srcInfoPoints = [] } "result") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 49 14 50 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 51 14 52 , srcInfoPoints = [] } "b" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 14 53 14 54 , srcInfoPoints = [] } "c" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 1 15 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 1 15 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 6 15 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 32 15 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 15 15 31 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 15 15 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 15 15 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 15 15 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 15 15 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 15 15 16 , srcInfoPoints = [] } "F"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 17 15 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 17 15 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 17 15 20 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 22 15 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 22 15 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 22 15 26 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 27 15 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 27 15 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 27 15 31 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 34 15 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 34 15 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 15 34 15 38 , srcInfoPoints = [] } "Bool"))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 1 16 37 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 1 16 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 6 16 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 32 16 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 15 16 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 15 16 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 15 16 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 15 16 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 15 16 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 15 16 16 , srcInfoPoints = [] } "F"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 17 16 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 17 16 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 17 16 21 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 22 16 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 22 16 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 22 16 26 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 27 16 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 27 16 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 27 16 30 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 34 16 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 34 16 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 16 34 16 37 , srcInfoPoints = [] } "Int"))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 1 17 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 1 17 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 6 17 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 32 17 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 15 17 31 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 15 17 25 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 15 17 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 15 17 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 15 17 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 15 17 16 , srcInfoPoints = [] } "F"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 17 17 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 17 17 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 17 17 21 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 22 17 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 22 17 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 22 17 25 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 27 17 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 27 17 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 27 17 31 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 34 17 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 34 17 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 17 34 17 38 , srcInfoPoints = [] } "Char"))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 1 20 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 1 20 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 6 20 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 32 20 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 15 20 31 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 15 20 25 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 15 20 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 15 20 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 15 20 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 15 20 16 , srcInfoPoints = [] } "G"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 17 20 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 17 20 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 17 20 21 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 22 20 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 22 20 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 22 20 25 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 27 20 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 27 20 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 27 20 31 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 34 20 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 34 20 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 20 34 20 38 , srcInfoPoints = [] } "Char"))) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 1 22 34 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 1 22 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 6 22 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 13 22 34 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 13 22 25 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 13 22 23 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 13 22 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 13 22 14 , srcInfoPoints = [] } "I")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 15 22 23 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 15 22 16 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 18 22 20 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 22 22 23 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 16 22 17 , srcInfoPoints = [] } "a") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 21 22 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 21 22 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 21 22 22 , srcInfoPoints = [] } "k"))))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 24 22 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 24 22 25 , srcInfoPoints = [] } "b"))) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 26 22 34 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 26 22 27 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 29 22 31 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 33 22 34 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 27 22 28 , srcInfoPoints = [] } "c") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 32 22 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 32 22 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 32 22 33 , srcInfoPoints = [] } "k"))))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 35 22 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 35 22 36 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 37 22 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 37 22 38 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 39 22 47 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 39 22 40 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 43 22 45 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 41 22 42 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 46 22 47 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 22 48 22 49 , srcInfoPoints = [] } "b" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 1 23 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 1 23 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 6 23 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 32 23 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 15 23 31 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 15 23 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 15 23 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 15 23 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 15 23 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 15 23 16 , srcInfoPoints = [] } "I"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 17 23 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 17 23 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 17 23 20 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 22 23 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 22 23 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 22 23 26 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 27 23 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 27 23 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 27 23 31 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 34 23 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 34 23 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 23 34 23 38 , srcInfoPoints = [] } "Bool"))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 1 24 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 1 24 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 6 24 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 32 24 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 15 24 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 15 24 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 15 24 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 15 24 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 15 24 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 15 24 16 , srcInfoPoints = [] } "I"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 17 24 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 17 24 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 17 24 20 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 22 24 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 22 24 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 22 24 26 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 27 24 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 27 24 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 27 24 30 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 34 24 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 34 24 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 24 34 24 38 , srcInfoPoints = [] } "Bool"))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 1 25 37 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 1 25 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 6 25 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 32 25 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 15 25 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 15 25 25 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 15 25 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 15 25 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 15 25 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 15 25 16 , srcInfoPoints = [] } "I"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 17 25 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 17 25 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 17 25 21 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 22 25 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 22 25 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 22 25 25 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 27 25 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 27 25 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 27 25 30 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 34 25 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 34 25 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 25 34 25 37 , srcInfoPoints = [] } "Int"))) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 1 29 25 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 1 29 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 6 29 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 13 29 25 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 13 29 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 13 29 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 13 29 14 , srcInfoPoints = [] } "J")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 15 29 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 15 29 16 , srcInfoPoints = [] } "a"))) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 17 29 25 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 17 29 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 20 29 22 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 24 29 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 18 29 19 , srcInfoPoints = [] } "b") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 23 29 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 23 29 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 23 29 24 , srcInfoPoints = [] } "k"))))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 26 29 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 26 29 27 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 28 29 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 28 29 29 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 30 29 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 30 29 31 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 34 29 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 32 29 33 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 29 37 29 38 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 1 30 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 1 30 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 6 30 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 23 30 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 15 30 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 15 30 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 15 30 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 15 30 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 15 30 16 , srcInfoPoints = [] } "J"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 17 30 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 17 30 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 17 30 20 , srcInfoPoints = [] } "Int")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 21 30 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 21 30 22 , srcInfoPoints = [] } "b"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 25 30 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 25 30 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 30 25 30 29 , srcInfoPoints = [] } "Char"))) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 1 32 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 1 32 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 17 32 18 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 6 32 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 6 32 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 6 32 14 , srcInfoPoints = [] } "MaybeSyn")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 15 32 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 15 32 16 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 19 32 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 19 32 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 19 32 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 19 32 24 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 25 32 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 32 25 32 26 , srcInfoPoints = [] } "a"))) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 1 33 40 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 20 33 21 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 1 33 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 9 33 19 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 9 33 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 9 33 17 , srcInfoPoints = [] } "MaybeNew")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 18 33 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 18 33 19 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 22 33 40 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 22 33 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 22 33 30 , srcInfoPoints = [] } "MaybeNew") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 31 33 40 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 31 33 32 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 39 33 40 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 32 33 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 32 33 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 32 33 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 32 33 37 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 38 33 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 33 38 33 39 , srcInfoPoints = [] } "a"))) ]) ] Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 1 36 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 1 36 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 6 36 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 13 36 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 13 36 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 13 36 14 , srcInfoPoints = [] } "K")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 15 36 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 15 36 16 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 17 36 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 17 36 18 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 19 36 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 19 36 20 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 21 36 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 21 36 22 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 25 36 27 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 23 36 24 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 36 28 36 29 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 1 37 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 1 37 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 6 37 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 19 37 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 15 37 18 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 15 37 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 15 37 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 15 37 16 , srcInfoPoints = [] } "K"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 17 37 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 17 37 18 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 21 37 31 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 21 37 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 21 37 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 21 37 29 , srcInfoPoints = [] } "MaybeSyn"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 30 37 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 37 30 37 31 , srcInfoPoints = [] } "a"))) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 1 40 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 1 40 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 6 40 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 13 40 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 13 40 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 13 40 14 , srcInfoPoints = [] } "M")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 15 40 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 15 40 16 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 17 40 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 17 40 18 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 19 40 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 19 40 20 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 21 40 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 21 40 22 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 25 40 27 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 23 40 24 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 40 28 40 29 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 1 41 42 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 1 41 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 6 41 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 30 41 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 15 41 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 15 41 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 15 41 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 15 41 16 , srcInfoPoints = [] } "M"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 17 41 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 17 41 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 25 41 26 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 18 41 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 18 41 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 18 41 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 18 41 23 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 24 41 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 24 41 25 , srcInfoPoints = [] } "a"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 32 41 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 32 41 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 32 41 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 32 41 40 , srcInfoPoints = [] } "MaybeSyn"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 41 41 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 41 41 41 42 , srcInfoPoints = [] } "a"))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 1 42 42 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 1 42 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 6 42 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 30 42 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 15 42 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 15 42 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 15 42 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 15 42 16 , srcInfoPoints = [] } "M"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 17 42 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 17 42 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 28 42 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 18 42 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 18 42 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 18 42 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 18 42 26 , srcInfoPoints = [] } "MaybeNew"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 27 42 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 27 42 28 , srcInfoPoints = [] } "a"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 32 42 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 32 42 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 32 42 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 32 42 40 , srcInfoPoints = [] } "MaybeNew"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 41 42 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 42 41 42 42 , srcInfoPoints = [] } "a"))) , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 1 48 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 1 48 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 6 48 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 54 48 59 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 13 48 26 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 13 48 24 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 13 48 22 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 13 48 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 13 48 20 , srcInfoPoints = [] } "FClosed")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 21 48 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 21 48 22 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 23 48 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 23 48 24 , srcInfoPoints = [] } "b"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 25 48 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 25 48 26 , srcInfoPoints = [] } "c"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 27 48 35 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 27 48 28 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 29 48 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 29 48 35 , srcInfoPoints = [] } "result")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 36 48 49 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 36 48 37 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 45 48 47 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 38 48 44 , srcInfoPoints = [] } "result") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 48 48 49 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 50 48 51 , srcInfoPoints = [] } "b" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 48 52 48 53 , srcInfoPoints = [] } "c" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 5 49 34 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 28 49 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 5 49 27 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 5 49 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 5 49 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 5 49 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 5 49 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 5 49 12 , srcInfoPoints = [] } "FClosed"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 13 49 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 13 49 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 13 49 16 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 18 49 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 18 49 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 18 49 22 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 23 49 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 23 49 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 23 49 27 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 30 49 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 30 49 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 49 30 49 34 , srcInfoPoints = [] } "Bool"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 5 50 33 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 28 50 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 5 50 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 5 50 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 5 50 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 5 50 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 5 50 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 5 50 12 , srcInfoPoints = [] } "FClosed"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 13 50 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 13 50 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 13 50 17 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 18 50 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 18 50 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 18 50 22 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 23 50 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 23 50 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 23 50 26 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 30 50 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 30 50 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 50 30 50 33 , srcInfoPoints = [] } "Int"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 5 51 34 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 28 51 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 5 51 27 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 5 51 21 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 5 51 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 5 51 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 5 51 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 5 51 12 , srcInfoPoints = [] } "FClosed"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 13 51 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 13 51 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 13 51 17 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 18 51 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 18 51 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 18 51 21 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 23 51 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 23 51 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 23 51 27 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 30 51 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 30 51 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 51 30 51 34 , srcInfoPoints = [] } "Char"))) ] , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 1 53 47 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 1 53 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 6 53 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 63 53 68 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 13 53 47 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 13 53 38 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 13 53 29 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 13 53 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 13 53 20 , srcInfoPoints = [] } "IClosed")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 21 53 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 21 53 22 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 24 53 26 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 28 53 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 22 53 23 , srcInfoPoints = [] } "a") (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 27 53 28 , srcInfoPoints = [] }))) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 30 53 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 30 53 31 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 33 53 35 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 37 53 38 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 31 53 32 , srcInfoPoints = [] } "b") (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 36 53 37 , srcInfoPoints = [] }))) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 39 53 47 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 39 53 40 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 42 53 44 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 46 53 47 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 40 53 41 , srcInfoPoints = [] } "c") (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 45 53 46 , srcInfoPoints = [] }))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 48 53 51 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 48 53 49 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 50 53 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 50 53 51 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 52 53 60 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 52 53 53 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 56 53 58 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 54 53 55 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 59 53 60 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 53 61 53 62 , srcInfoPoints = [] } "b" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 5 54 34 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 28 54 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 5 54 27 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 5 54 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 5 54 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 5 54 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 5 54 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 5 54 12 , srcInfoPoints = [] } "IClosed"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 13 54 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 13 54 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 13 54 16 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 18 54 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 18 54 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 18 54 22 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 23 54 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 23 54 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 23 54 27 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 30 54 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 30 54 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 54 30 54 34 , srcInfoPoints = [] } "Bool"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 5 55 34 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 28 55 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 5 55 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 5 55 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 5 55 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 5 55 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 5 55 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 5 55 12 , srcInfoPoints = [] } "IClosed"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 13 55 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 13 55 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 13 55 16 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 18 55 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 18 55 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 18 55 22 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 23 55 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 23 55 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 23 55 26 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 30 55 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 30 55 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 55 30 55 34 , srcInfoPoints = [] } "Bool"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 5 56 33 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 28 56 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 5 56 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 5 56 21 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 5 56 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 5 56 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 5 56 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 5 56 12 , srcInfoPoints = [] } "IClosed"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 13 56 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 13 56 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 13 56 17 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 18 56 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 18 56 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 18 56 21 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 23 56 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 23 56 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 23 56 26 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 30 56 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 30 56 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 56 30 56 33 , srcInfoPoints = [] } "Int"))) ] , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 1 58 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 1 58 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 6 58 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 45 58 50 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 13 58 31 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 13 58 22 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 13 58 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 13 58 20 , srcInfoPoints = [] } "JClosed")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 21 58 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 21 58 22 , srcInfoPoints = [] } "a"))) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 23 58 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 23 58 24 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 26 58 28 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 30 58 31 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 24 58 25 , srcInfoPoints = [] } "b") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 29 58 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 29 58 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 29 58 30 , srcInfoPoints = [] } "k"))))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 32 58 35 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 32 58 33 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 34 58 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 34 58 35 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 36 58 44 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 36 58 37 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 40 58 42 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 38 58 39 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 58 43 58 44 , srcInfoPoints = [] } "a" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 5 59 25 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 19 59 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 5 59 18 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 5 59 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 5 59 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 5 59 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 5 59 12 , srcInfoPoints = [] } "JClosed"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 13 59 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 13 59 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 13 59 16 , srcInfoPoints = [] } "Int")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 17 59 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 17 59 18 , srcInfoPoints = [] } "b"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 21 59 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 21 59 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 59 21 59 25 , srcInfoPoints = [] } "Char"))) ] , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 1 61 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 1 61 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 6 61 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 36 61 41 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 13 61 22 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 13 61 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 13 61 20 , srcInfoPoints = [] } "KClosed")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 21 61 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 21 61 22 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 23 61 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 23 61 24 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 25 61 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 25 61 26 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 27 61 35 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 27 61 28 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 31 61 33 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 29 61 30 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 61 34 61 35 , srcInfoPoints = [] } "a" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 5 62 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 15 62 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 5 62 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 5 62 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 5 62 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 5 62 12 , srcInfoPoints = [] } "KClosed"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 13 62 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 13 62 14 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 17 62 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 17 62 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 17 62 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 17 62 25 , srcInfoPoints = [] } "MaybeSyn"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 26 62 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 62 26 62 27 , srcInfoPoints = [] } "a"))) ] , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 1 66 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 1 66 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 6 66 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 32 66 37 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 13 66 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 13 66 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 13 66 16 , srcInfoPoints = [] } "Bak")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 17 66 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 17 66 18 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 19 66 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 19 66 20 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 21 66 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 21 66 22 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 23 66 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 23 66 24 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 27 66 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 25 66 26 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 66 30 66 31 , srcInfoPoints = [] } "a" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 6 67 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 15 67 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 6 67 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 6 67 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 6 67 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 6 67 9 , srcInfoPoints = [] } "Bak"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 10 67 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 10 67 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 10 67 13 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 17 67 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 17 67 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 67 17 67 21 , srcInfoPoints = [] } "Char"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 6 68 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 15 68 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 6 68 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 6 68 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 6 68 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 6 68 9 , srcInfoPoints = [] } "Bak"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 10 68 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 10 68 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 10 68 14 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 17 68 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 17 68 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 68 17 68 20 , srcInfoPoints = [] } "Int"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 6 69 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 15 69 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 6 69 11 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 6 69 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 6 69 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 6 69 9 , srcInfoPoints = [] } "Bak"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 10 69 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 10 69 11 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 17 69 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 69 17 69 18 , srcInfoPoints = [] } "a")) ] , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 1 73 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 1 73 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 6 73 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 32 73 37 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 13 73 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 13 73 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 13 73 16 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 17 73 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 17 73 18 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 19 73 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 19 73 20 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 21 73 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 21 73 22 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 23 73 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 23 73 24 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 27 73 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 25 73 26 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 73 30 73 31 , srcInfoPoints = [] } "a" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 5 74 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 14 74 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 5 74 12 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 5 74 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 5 74 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 5 74 8 , srcInfoPoints = [] } "Foo"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 9 74 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 9 74 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 9 74 12 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 16 74 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 16 74 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 74 16 74 20 , srcInfoPoints = [] } "Bool"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 5 75 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 14 75 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 5 75 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 5 75 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 5 75 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 5 75 8 , srcInfoPoints = [] } "Foo"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 9 75 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 9 75 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 9 75 13 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 16 75 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 16 75 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 75 16 75 19 , srcInfoPoints = [] } "Int"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 5 76 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 14 76 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 5 76 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 5 76 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 5 76 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 5 76 8 , srcInfoPoints = [] } "Foo"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 9 76 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 9 76 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 9 76 13 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 16 76 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 16 76 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 76 16 76 20 , srcInfoPoints = [] } "Bool"))) ] , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 1 80 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 1 80 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 6 80 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 32 80 37 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 13 80 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 13 80 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 13 80 16 , srcInfoPoints = [] } "Bar")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 17 80 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 17 80 18 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 19 80 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 19 80 20 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 21 80 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 21 80 22 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 23 80 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 23 80 24 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 27 80 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 25 80 26 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 80 30 80 31 , srcInfoPoints = [] } "a" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 5 81 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 14 81 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 5 81 12 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 5 81 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 5 81 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 5 81 8 , srcInfoPoints = [] } "Bar"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 9 81 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 9 81 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 9 81 12 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 16 81 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 16 81 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 81 16 81 20 , srcInfoPoints = [] } "Bool"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 5 82 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 14 82 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 5 82 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 5 82 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 5 82 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 5 82 8 , srcInfoPoints = [] } "Bar"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 9 82 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 9 82 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 9 82 13 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 16 82 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 16 82 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 82 16 82 19 , srcInfoPoints = [] } "Int"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 5 83 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 14 83 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 5 83 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 5 83 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 5 83 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 5 83 8 , srcInfoPoints = [] } "Bar"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 9 83 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 9 83 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 9 83 13 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 16 83 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 16 83 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 83 16 83 20 , srcInfoPoints = [] } "Char"))) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 1 88 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 3 88 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 1 88 2 , srcInfoPoints = [] } "f" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 6 88 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 14 88 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 6 88 13 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 6 88 11 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 6 88 9 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 6 88 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 6 88 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 6 88 7 , srcInfoPoints = [] } "F"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 8 88 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 8 88 9 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 10 88 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 10 88 11 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 12 88 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 12 88 13 , srcInfoPoints = [] } "c"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 17 88 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 17 88 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 17 88 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 17 88 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 17 88 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 17 88 18 , srcInfoPoints = [] } "F"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 19 88 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 19 88 20 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 21 88 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 21 88 22 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 23 88 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 88 23 88 24 , srcInfoPoints = [] } "c")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 1 89 8 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 1 89 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 1 89 2 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 3 89 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 3 89 4 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 5 89 8 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 5 89 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 7 89 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 7 89 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 89 7 89 8 , srcInfoPoints = [] } "x")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 92 1 92 13 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 92 6 92 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 92 1 92 5 , srcInfoPoints = [] } "fapp" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 92 9 92 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 92 9 92 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 92 9 92 13 , srcInfoPoints = [] } "Bool"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 1 93 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 1 93 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 1 93 5 , srcInfoPoints = [] } "fapp")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 6 93 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 6 93 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 8 93 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 8 93 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 8 93 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 8 93 9 , srcInfoPoints = [] } "f"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 10 93 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 10 93 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 93 10 93 14 , srcInfoPoints = [] } "True"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 1 96 37 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 4 96 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 1 96 3 , srcInfoPoints = [] } "fc" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 7 96 37 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 21 96 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 7 96 20 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 7 96 18 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 7 96 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 7 96 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 7 96 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 7 96 14 , srcInfoPoints = [] } "FClosed"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 15 96 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 15 96 16 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 17 96 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 17 96 18 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 19 96 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 19 96 20 , srcInfoPoints = [] } "c"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 24 96 37 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 24 96 35 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 24 96 33 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 24 96 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 24 96 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 24 96 31 , srcInfoPoints = [] } "FClosed"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 32 96 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 32 96 33 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 34 96 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 34 96 35 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 36 96 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 96 36 96 37 , srcInfoPoints = [] } "c")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 1 97 9 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 1 97 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 1 97 3 , srcInfoPoints = [] } "fc") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 4 97 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 4 97 5 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 6 97 9 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 6 97 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 8 97 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 8 97 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 97 8 97 9 , srcInfoPoints = [] } "x")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 99 1 99 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 99 7 99 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 99 1 99 6 , srcInfoPoints = [] } "fcapp" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 99 10 99 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 99 10 99 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 99 10 99 14 , srcInfoPoints = [] } "Bool"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 1 100 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 1 100 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 1 100 6 , srcInfoPoints = [] } "fcapp")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 7 100 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 7 100 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 9 100 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 9 100 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 9 100 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 9 100 11 , srcInfoPoints = [] } "fc"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 12 100 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 12 100 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 100 12 100 16 , srcInfoPoints = [] } "True"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 1 103 28 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 3 103 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 1 103 2 , srcInfoPoints = [] } "i" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 6 103 28 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 16 103 18 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 6 103 15 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 6 103 11 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 6 103 9 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 6 103 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 6 103 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 6 103 7 , srcInfoPoints = [] } "I"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 8 103 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 8 103 9 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 10 103 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 10 103 11 , srcInfoPoints = [] } "b"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 12 103 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 12 103 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 12 103 15 , srcInfoPoints = [] } "Int")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 19 103 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 19 103 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 19 103 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 19 103 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 19 103 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 19 103 20 , srcInfoPoints = [] } "I"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 21 103 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 21 103 22 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 23 103 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 23 103 24 , srcInfoPoints = [] } "b"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 25 103 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 25 103 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 103 25 103 28 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 1 104 8 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 1 104 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 1 104 2 , srcInfoPoints = [] } "i") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 3 104 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 3 104 4 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 5 104 8 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 5 104 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 7 104 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 7 104 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 104 7 104 8 , srcInfoPoints = [] } "x")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 107 1 107 13 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 107 6 107 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 107 1 107 5 , srcInfoPoints = [] } "iapp" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 107 9 107 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 107 9 107 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 107 9 107 13 , srcInfoPoints = [] } "Bool"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 1 108 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 1 108 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 1 108 5 , srcInfoPoints = [] } "iapp")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 6 108 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 6 108 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 8 108 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 8 108 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 8 108 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 8 108 9 , srcInfoPoints = [] } "i"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 10 108 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 10 108 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 108 10 108 14 , srcInfoPoints = [] } "True"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 1 111 41 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 4 111 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 1 111 3 , srcInfoPoints = [] } "ic" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 7 111 41 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 23 111 25 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 7 111 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 7 111 18 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 7 111 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 7 111 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 7 111 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 7 111 14 , srcInfoPoints = [] } "IClosed"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 15 111 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 15 111 16 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 17 111 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 17 111 18 , srcInfoPoints = [] } "b"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 19 111 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 19 111 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 19 111 22 , srcInfoPoints = [] } "Int")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 26 111 41 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 26 111 37 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 26 111 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 26 111 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 26 111 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 26 111 33 , srcInfoPoints = [] } "IClosed"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 34 111 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 34 111 35 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 36 111 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 36 111 37 , srcInfoPoints = [] } "b"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 38 111 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 38 111 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 111 38 111 41 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 1 112 9 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 1 112 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 1 112 3 , srcInfoPoints = [] } "ic") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 4 112 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 4 112 5 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 6 112 9 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 6 112 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 8 112 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 8 112 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 112 8 112 9 , srcInfoPoints = [] } "x")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 114 1 114 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 114 7 114 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 114 1 114 6 , srcInfoPoints = [] } "icapp" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 114 10 114 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 114 10 114 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 114 10 114 14 , srcInfoPoints = [] } "Bool"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 1 115 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 1 115 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 1 115 6 , srcInfoPoints = [] } "icapp")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 7 115 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 7 115 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 9 115 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 9 115 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 9 115 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 9 115 11 , srcInfoPoints = [] } "ic"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 12 115 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 12 115 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 115 12 115 16 , srcInfoPoints = [] } "True"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 1 118 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 5 118 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 1 118 4 , srcInfoPoints = [] } "bak" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 8 118 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 14 118 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 8 118 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 8 118 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 8 118 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 8 118 11 , srcInfoPoints = [] } "Bak"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 12 118 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 12 118 13 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 17 118 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 17 118 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 17 118 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 17 118 20 , srcInfoPoints = [] } "Bak"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 21 118 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 118 21 118 22 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 1 119 10 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 1 119 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 1 119 4 , srcInfoPoints = [] } "bak") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 5 119 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 5 119 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 7 119 10 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 7 119 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 9 119 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 9 119 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 119 9 119 10 , srcInfoPoints = [] } "x")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 121 1 121 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 121 9 121 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 121 1 121 8 , srcInfoPoints = [] } "bakapp1" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 121 12 121 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 121 12 121 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 121 12 121 16 , srcInfoPoints = [] } "Char"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 1 122 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 1 122 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 1 122 8 , srcInfoPoints = [] } "bakapp1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 9 122 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 9 122 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 11 122 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 11 122 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 11 122 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 11 122 14 , srcInfoPoints = [] } "bak"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 15 122 18 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 122 15 122 18 , srcInfoPoints = [] } 'c' "c")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 124 1 124 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 124 9 124 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 124 1 124 8 , srcInfoPoints = [] } "bakapp2" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 124 12 124 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 124 12 124 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 124 12 124 18 , srcInfoPoints = [] } "Double"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 1 125 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 1 125 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 1 125 8 , srcInfoPoints = [] } "bakapp2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 9 125 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 9 125 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 11 125 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 11 125 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 11 125 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 11 125 14 , srcInfoPoints = [] } "bak"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 15 125 18 , srcInfoPoints = [] } (Frac SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 125 15 125 18 , srcInfoPoints = [] } (1 % 1) "1.0")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 1 127 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 9 127 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 1 127 8 , srcInfoPoints = [] } "bakapp3" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 12 127 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 12 127 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 13 127 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 12 127 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 12 127 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 13 127 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 12 127 14 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 12 127 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 127 13 127 14 ] }))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 1 128 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 1 128 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 1 128 8 , srcInfoPoints = [] } "bakapp3")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 9 128 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 9 128 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 11 128 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 11 128 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 11 128 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 11 128 14 , srcInfoPoints = [] } "bak"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 15 128 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 15 128 16 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 16 128 17 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 15 128 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 15 128 16 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 16 128 17 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 15 128 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 15 128 16 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 128 16 128 17 ] }))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 1 130 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 5 130 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 1 130 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 8 130 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 14 130 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 8 130 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 8 130 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 8 130 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 8 130 11 , srcInfoPoints = [] } "Foo"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 12 130 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 12 130 13 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 17 130 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 17 130 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 17 130 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 17 130 20 , srcInfoPoints = [] } "Foo"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 21 130 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 130 21 130 22 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 1 131 10 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 1 131 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 1 131 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 5 131 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 5 131 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 7 131 10 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 7 131 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 9 131 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 9 131 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 131 9 131 10 , srcInfoPoints = [] } "x")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 133 1 133 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 133 9 133 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 133 1 133 8 , srcInfoPoints = [] } "fooapp1" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 133 12 133 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 133 12 133 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 133 12 133 16 , srcInfoPoints = [] } "Bool"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 1 134 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 1 134 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 1 134 8 , srcInfoPoints = [] } "fooapp1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 9 134 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 9 134 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 11 134 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 11 134 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 11 134 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 11 134 14 , srcInfoPoints = [] } "foo"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 15 134 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 15 134 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 134 15 134 19 , srcInfoPoints = [] } "True"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 1 136 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 5 136 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 1 136 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 8 136 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 14 136 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 8 136 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 8 136 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 8 136 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 8 136 11 , srcInfoPoints = [] } "Bar"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 12 136 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 12 136 13 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 17 136 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 17 136 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 17 136 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 17 136 20 , srcInfoPoints = [] } "Bar"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 21 136 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 136 21 136 22 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 1 137 10 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 1 137 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 1 137 4 , srcInfoPoints = [] } "bar") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 5 137 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 5 137 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 7 137 10 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 7 137 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 9 137 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 9 137 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 137 9 137 10 , srcInfoPoints = [] } "x")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 139 1 139 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 139 9 139 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 139 1 139 8 , srcInfoPoints = [] } "barapp1" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 139 12 139 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 139 12 139 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 139 12 139 16 , srcInfoPoints = [] } "Bool"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 1 140 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 1 140 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 1 140 8 , srcInfoPoints = [] } "barapp1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 9 140 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 9 140 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 11 140 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 11 140 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 11 140 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 11 140 14 , srcInfoPoints = [] } "bar"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 15 140 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 15 140 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 140 15 140 19 , srcInfoPoints = [] } "True"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 142 1 142 15 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 142 9 142 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 142 1 142 8 , srcInfoPoints = [] } "barapp2" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 142 12 142 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 142 12 142 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 142 12 142 15 , srcInfoPoints = [] } "Int"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 1 143 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 1 143 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 1 143 8 , srcInfoPoints = [] } "barapp2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 9 143 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 9 143 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 11 143 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 11 143 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 11 143 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 11 143 14 , srcInfoPoints = [] } "bar"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 15 143 16 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 143 15 143 16 , srcInfoPoints = [] } 1 "1")))) Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 1 148 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 1 148 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 6 148 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 13 148 18 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 13 148 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 13 148 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 13 148 14 , srcInfoPoints = [] } "H")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 15 148 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 15 148 16 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 17 148 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 17 148 18 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 19 148 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 19 148 20 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 21 148 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 21 148 22 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 23 148 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 23 148 24 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 27 148 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 25 148 26 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 30 148 31 , srcInfoPoints = [] } "b" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 148 32 148 33 , srcInfoPoints = [] } "a" ])) , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 1 149 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 1 149 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 6 149 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 35 149 40 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 13 149 19 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 13 149 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 13 149 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 13 149 15 , srcInfoPoints = [] } "Hc")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 16 149 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 16 149 17 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 18 149 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 18 149 19 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 20 149 23 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 20 149 21 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 22 149 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 22 149 23 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 24 149 32 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 24 149 25 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 28 149 30 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 26 149 27 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 31 149 32 , srcInfoPoints = [] } "b" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 149 33 149 34 , srcInfoPoints = [] } "a" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 3 150 15 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 10 150 11 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 3 150 9 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 3 150 7 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 3 150 5 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 3 150 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 3 150 5 , srcInfoPoints = [] } "Hc"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 6 150 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 6 150 7 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 8 150 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 8 150 9 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 12 150 15 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 12 150 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 12 150 13 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 14 150 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 150 14 150 15 , srcInfoPoints = [] } "b"))) ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 1 152 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 1 151 6 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 15 151 20 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 3 152 3 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 1 156 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 7 151 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 7 151 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 7 151 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 7 151 10 , srcInfoPoints = [] } "Hcl")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 11 151 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 11 151 12 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 13 151 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 151 13 151 14 , srcInfoPoints = [] } "b"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 3 152 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 3 152 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 8 152 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 8 152 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 8 152 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 8 152 10 , srcInfoPoints = [] } "Ht")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 11 152 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 11 152 12 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 13 152 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 13 152 14 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 15 152 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 15 152 16 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 17 152 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 17 152 18 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 19 152 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 19 152 20 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 23 152 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 21 152 22 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 26 152 27 , srcInfoPoints = [] } "b" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 152 28 152 29 , srcInfoPoints = [] } "a" ])) ]) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 1 156 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 1 156 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 6 156 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 13 156 19 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 13 156 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 13 156 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 13 156 15 , srcInfoPoints = [] } "Jx")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 16 156 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 16 156 17 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 18 156 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 18 156 19 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 20 156 23 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 20 156 21 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 22 156 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 22 156 23 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 24 156 32 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 24 156 25 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 28 156 30 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 26 156 27 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 31 156 32 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 156 33 156 34 , srcInfoPoints = [] } "a" ])) , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 1 157 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 1 157 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 6 157 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 36 157 41 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 13 157 20 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 13 157 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 13 157 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 13 157 16 , srcInfoPoints = [] } "Jcx")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 17 157 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 17 157 18 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 19 157 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 19 157 20 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 21 157 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 21 157 22 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 23 157 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 23 157 24 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 25 157 33 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 25 157 26 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 29 157 31 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 27 157 28 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 32 157 33 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 157 34 157 35 , srcInfoPoints = [] } "a" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 3 158 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 11 158 12 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 3 158 10 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 3 158 8 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 3 158 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 3 158 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 3 158 6 , srcInfoPoints = [] } "Jcx"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 7 158 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 7 158 8 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 9 158 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 9 158 10 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 13 158 16 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 13 158 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 13 158 14 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 15 158 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 158 15 158 16 , srcInfoPoints = [] } "b"))) ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 1 160 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 1 159 6 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 15 159 20 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 3 160 3 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 1 162 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 7 159 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 7 159 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 7 159 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 7 159 10 , srcInfoPoints = [] } "Jcl")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 11 159 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 11 159 12 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 13 159 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 159 13 159 14 , srcInfoPoints = [] } "b"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 3 160 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 3 160 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 8 160 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 8 160 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 8 160 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 8 160 10 , srcInfoPoints = [] } "Jt")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 11 160 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 11 160 12 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 13 160 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 13 160 14 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 15 160 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 15 160 16 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 17 160 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 17 160 18 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 19 160 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 19 160 20 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 23 160 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 21 160 22 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 26 160 27 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 160 28 160 29 , srcInfoPoints = [] } "a" ])) ]) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 1 162 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 1 162 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 6 162 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 13 162 19 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 13 162 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 13 162 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 13 162 15 , srcInfoPoints = [] } "Kx")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 16 162 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 16 162 17 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 18 162 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 18 162 19 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 20 162 23 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 20 162 21 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 22 162 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 22 162 23 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 24 162 32 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 24 162 25 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 28 162 30 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 26 162 27 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 31 162 32 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 33 162 34 , srcInfoPoints = [] } "b" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 162 35 162 36 , srcInfoPoints = [] } "b" ])) , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 1 163 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 1 163 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 6 163 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 38 163 43 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 13 163 20 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 13 163 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 13 163 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 13 163 16 , srcInfoPoints = [] } "Kcx")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 17 163 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 17 163 18 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 19 163 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 19 163 20 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 21 163 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 21 163 22 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 23 163 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 23 163 24 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 25 163 33 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 25 163 26 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 29 163 31 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 27 163 28 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 32 163 33 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 34 163 35 , srcInfoPoints = [] } "b" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 163 36 163 37 , srcInfoPoints = [] } "b" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 3 164 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 11 164 12 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 3 164 10 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 3 164 8 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 3 164 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 3 164 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 3 164 6 , srcInfoPoints = [] } "Kcx"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 7 164 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 7 164 8 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 9 164 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 9 164 10 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 13 164 16 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 13 164 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 13 164 14 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 15 164 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 164 15 164 16 , srcInfoPoints = [] } "b"))) ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 1 166 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 1 165 6 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 15 165 20 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 3 166 3 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 1 170 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 7 165 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 7 165 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 7 165 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 7 165 10 , srcInfoPoints = [] } "Kcl")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 11 165 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 11 165 12 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 13 165 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 165 13 165 14 , srcInfoPoints = [] } "b"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 3 166 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 3 166 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 8 166 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 8 166 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 8 166 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 8 166 10 , srcInfoPoints = [] } "Kt")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 11 166 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 11 166 12 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 13 166 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 13 166 14 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 15 166 18 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 15 166 16 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 17 166 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 17 166 18 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 19 166 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 19 166 20 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 23 166 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 21 166 22 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 26 166 27 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 28 166 29 , srcInfoPoints = [] } "b" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 166 30 166 31 , srcInfoPoints = [] } "b" ])) ]) , ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 1 170 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 1 170 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 6 170 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 47 170 52 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 13 170 24 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 13 170 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 13 170 14 , srcInfoPoints = [] } "L")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 15 170 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 15 170 16 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 18 170 20 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 23 170 24 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 16 170 17 , srcInfoPoints = [] } "a") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 21 170 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 21 170 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 21 170 23 , srcInfoPoints = [] } "k1"))))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 25 170 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 25 170 26 ] } (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 27 170 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 27 170 28 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 30 170 32 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 35 170 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 28 170 29 , srcInfoPoints = [] } "r") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 33 170 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 33 170 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 33 170 35 , srcInfoPoints = [] } "k2")))))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 37 170 46 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 37 170 38 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 41 170 43 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 39 170 40 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 170 44 170 46 , srcInfoPoints = [] } "k1" ])) [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 5 171 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 14 171 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 5 171 12 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 5 171 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 5 171 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 5 171 6 , srcInfoPoints = [] } "L"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 7 171 12 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 7 171 8 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 7 171 12 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 7 171 8 ] } True (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 8 171 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 8 171 12 , srcInfoPoints = [] } "True"))))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 16 171 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 16 171 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 171 16 171 19 , srcInfoPoints = [] } "Int"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 5 172 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 14 172 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 5 172 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 5 172 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 5 172 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 5 172 6 , srcInfoPoints = [] } "L"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 7 172 13 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 7 172 8 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 7 172 13 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 7 172 8 ] } True (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 8 172 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 8 172 13 , srcInfoPoints = [] } "False"))))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 16 172 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 16 172 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 172 16 172 19 , srcInfoPoints = [] } "Int"))) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 5 173 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 14 173 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 5 173 12 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 5 173 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 5 173 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 5 173 6 , srcInfoPoints = [] } "L"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 7 173 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 7 173 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 7 173 12 , srcInfoPoints = [] } "Maybe")))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 16 173 17 , srcInfoPoints = [] } (PromotedInteger SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 173 16 173 17 , srcInfoPoints = [] } 3 "3")) , TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 5 174 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 14 174 15 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 5 174 9 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 5 174 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 5 174 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 5 174 6 , srcInfoPoints = [] } "L"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 7 174 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 7 174 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 7 174 9 , srcInfoPoints = [] } "IO")))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 16 174 17 , srcInfoPoints = [] } (PromotedInteger SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 174 16 174 17 , srcInfoPoints = [] } 3 "3")) ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 1 176 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 22 176 23 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 1 176 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 6 176 21 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 6 176 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 6 176 12 , srcInfoPoints = [] } "KProxy")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 13 176 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 13 176 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 16 176 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 20 176 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 14 176 15 , srcInfoPoints = [] } "a") (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 19 176 20 , srcInfoPoints = [] }))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 24 176 30 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 24 176 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 176 24 176 30 , srcInfoPoints = [] } "KProxy") []) ] Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 1 177 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 1 177 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 6 177 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 13 177 36 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 13 177 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 13 177 15 , srcInfoPoints = [] } "KP")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 16 177 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 16 177 17 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 24 177 26 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 35 177 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 17 177 23 , srcInfoPoints = [] } "kproxy") (KindApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 27 177 35 , srcInfoPoints = [] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 27 177 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 27 177 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 27 177 33 , srcInfoPoints = [] } "KProxy"))) (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 34 177 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 34 177 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 34 177 35 , srcInfoPoints = [] } "k")))))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 37 177 40 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 37 177 38 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 39 177 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 39 177 40 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 41 177 49 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 41 177 42 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 45 177 47 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 43 177 44 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 177 48 177 49 , srcInfoPoints = [] } "k" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 1 178 48 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 1 178 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 6 178 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 43 178 44 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 15 178 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 15 178 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 15 178 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 15 178 17 , srcInfoPoints = [] } "KP"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 18 178 42 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 18 178 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 27 178 29 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 41 178 42 ] } (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 19 178 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 19 178 20 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 19 178 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 19 178 20 ] } True (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 20 178 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 20 178 26 , srcInfoPoints = [] } "KProxy")))) (KindApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 30 178 41 , srcInfoPoints = [] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 30 178 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 30 178 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 30 178 36 , srcInfoPoints = [] } "KProxy"))) (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 37 178 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 37 178 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 37 178 41 , srcInfoPoints = [] } "Bool")))))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 45 178 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 45 178 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 178 45 178 48 , srcInfoPoints = [] } "Int"))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 1 179 49 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 1 179 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 6 179 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 43 179 44 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 15 179 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 15 179 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 15 179 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 15 179 17 , srcInfoPoints = [] } "KP"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 18 179 39 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 18 179 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 27 179 29 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 38 179 39 ] } (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 19 179 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 19 179 20 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 19 179 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 19 179 20 ] } True (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 20 179 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 20 179 26 , srcInfoPoints = [] } "KProxy")))) (KindApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 30 179 38 , srcInfoPoints = [] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 30 179 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 30 179 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 30 179 36 , srcInfoPoints = [] } "KProxy"))) (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 37 179 38 , srcInfoPoints = [] })))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 45 179 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 45 179 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 179 45 179 49 , srcInfoPoints = [] } "Char"))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 1 181 66 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 11 181 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 1 181 10 , srcInfoPoints = [] } "kproxy_id" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 14 181 66 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 39 181 41 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 14 181 38 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 14 181 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 14 181 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 14 181 16 , srcInfoPoints = [] } "KP"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 17 181 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 17 181 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 26 181 28 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 37 181 38 ] } (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 18 181 25 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 18 181 19 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 18 181 25 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 18 181 19 ] } True (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 19 181 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 19 181 25 , srcInfoPoints = [] } "KProxy")))) (KindApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 29 181 37 , srcInfoPoints = [] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 29 181 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 29 181 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 29 181 35 , srcInfoPoints = [] } "KProxy"))) (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 36 181 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 36 181 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 36 181 37 , srcInfoPoints = [] } "k")))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 42 181 66 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 42 181 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 42 181 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 42 181 44 , srcInfoPoints = [] } "KP"))) (TyKind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 45 181 66 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 45 181 46 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 54 181 56 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 65 181 66 ] } (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 46 181 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 46 181 47 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 46 181 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 46 181 47 ] } True (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 47 181 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 47 181 53 , srcInfoPoints = [] } "KProxy")))) (KindApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 57 181 65 , srcInfoPoints = [] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 57 181 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 57 181 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 57 181 63 , srcInfoPoints = [] } "KProxy"))) (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 64 181 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 64 181 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 181 64 181 65 , srcInfoPoints = [] } "k"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 1 182 16 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 1 182 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 1 182 10 , srcInfoPoints = [] } "kproxy_id") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 11 182 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 11 182 12 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 13 182 16 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 13 182 14 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 15 182 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 15 182 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 182 15 182 16 , srcInfoPoints = [] } "x")))) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 1 184 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 1 184 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 1 184 14 , srcInfoPoints = [] } "kproxy_id_use")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 15 184 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 15 184 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 17 184 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 17 184 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 17 184 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 17 184 26 , srcInfoPoints = [] } "kproxy_id"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 27 184 30 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 184 27 184 30 , srcInfoPoints = [] } 'a' "a")))) Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 1 188 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 1 188 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 6 188 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 13 188 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 13 188 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 13 188 15 , srcInfoPoints = [] } "Gx")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 16 188 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 188 16 188 17 , srcInfoPoints = [] } "a"))) Nothing Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 1 189 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 1 189 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 6 189 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 13 189 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 13 189 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 13 189 15 , srcInfoPoints = [] } "Hx")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 16 189 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 189 16 189 17 , srcInfoPoints = [] } "a"))) Nothing Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 1 190 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 1 190 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 6 190 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 13 190 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 13 190 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 13 190 15 , srcInfoPoints = [] } "Gi")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 16 190 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 16 190 17 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 18 190 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 18 190 19 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 20 190 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 20 190 21 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 22 190 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 22 190 23 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 26 190 28 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 24 190 25 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 190 29 190 30 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 1 191 28 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 1 191 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 6 191 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 22 191 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 15 191 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 15 191 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 15 191 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 15 191 17 , srcInfoPoints = [] } "Gi"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 18 191 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 18 191 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 18 191 21 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 24 191 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 24 191 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 191 24 191 28 , srcInfoPoints = [] } "Char"))) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 1 192 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 1 192 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 6 192 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 13 192 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 13 192 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 13 192 15 , srcInfoPoints = [] } "Hi")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 16 192 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 16 192 17 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 18 192 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 18 192 19 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 20 192 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 20 192 21 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 22 192 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 22 192 23 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 26 192 28 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 24 192 25 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 192 29 192 30 , srcInfoPoints = [] } "a" ])) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 1 194 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 1 194 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 6 194 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 13 194 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 13 194 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 13 194 15 , srcInfoPoints = [] } "F2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 16 194 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 16 194 17 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 18 194 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 18 194 19 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 20 194 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 20 194 21 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 22 194 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 22 194 23 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 26 194 28 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 24 194 25 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 194 29 194 30 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 1 195 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 1 195 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 6 195 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 28 195 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 15 195 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 15 195 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 15 195 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 15 195 17 , srcInfoPoints = [] } "F2"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 18 195 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 18 195 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 20 195 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 19 195 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 19 195 20 , srcInfoPoints = [] } "a")))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 30 195 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 30 195 31 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 35 195 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 31 195 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 31 195 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 31 195 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 31 195 33 , srcInfoPoints = [] } "Gi"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 34 195 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 195 34 195 35 , srcInfoPoints = [] } "a")))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 1 196 41 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 1 196 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 6 196 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 28 196 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 15 196 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 15 196 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 15 196 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 15 196 17 , srcInfoPoints = [] } "F2"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 18 196 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 18 196 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 26 196 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 19 196 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 19 196 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 19 196 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 19 196 24 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 25 196 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 25 196 26 , srcInfoPoints = [] } "a"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 30 196 41 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 35 196 37 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 30 196 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 30 196 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 30 196 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 30 196 32 , srcInfoPoints = [] } "Hi"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 33 196 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 33 196 34 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 38 196 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 38 196 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 196 38 196 41 , srcInfoPoints = [] } "Int")))) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 1 198 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 1 198 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 6 198 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 13 198 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 13 198 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 13 198 15 , srcInfoPoints = [] } "F4")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 16 198 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 16 198 17 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 18 198 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 18 198 19 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 20 198 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 20 198 21 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 22 198 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 22 198 23 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 26 198 28 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 24 198 25 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 198 29 198 30 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 1 199 50 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 1 199 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 6 199 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 28 199 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 15 199 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 15 199 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 15 199 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 15 199 17 , srcInfoPoints = [] } "F4"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 18 199 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 18 199 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 20 199 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 19 199 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 19 199 20 , srcInfoPoints = [] } "a")))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 30 199 50 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 30 199 31 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 35 199 36 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 38 199 39 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 43 199 44 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 49 199 50 ] } Boxed [ TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 31 199 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 31 199 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 31 199 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 31 199 33 , srcInfoPoints = [] } "Gx"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 34 199 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 34 199 35 , srcInfoPoints = [] } "a")) , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 37 199 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 37 199 38 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 42 199 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 42 199 43 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 48 199 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 199 48 199 49 , srcInfoPoints = [] } "a") ]) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 1 200 50 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 1 200 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 6 200 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 28 200 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 15 200 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 15 200 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 15 200 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 15 200 17 , srcInfoPoints = [] } "F4"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 18 200 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 18 200 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 26 200 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 19 200 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 19 200 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 19 200 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 19 200 24 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 25 200 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 25 200 26 , srcInfoPoints = [] } "a"))))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 30 200 50 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 30 200 31 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 35 200 36 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 38 200 39 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 43 200 44 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 49 200 50 ] } Boxed [ TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 31 200 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 31 200 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 31 200 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 31 200 33 , srcInfoPoints = [] } "Hx"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 34 200 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 34 200 35 , srcInfoPoints = [] } "a")) , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 37 200 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 37 200 38 , srcInfoPoints = [] } "a") , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 40 200 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 40 200 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 40 200 43 , srcInfoPoints = [] } "Int")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 45 200 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 45 200 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 200 45 200 49 , srcInfoPoints = [] } "Bool")) ]) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 1 202 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 1 202 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 6 202 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 13 202 19 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 13 202 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 13 202 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 13 202 15 , srcInfoPoints = [] } "G2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 16 202 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 16 202 17 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 18 202 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 18 202 19 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 20 202 23 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 20 202 21 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 22 202 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 22 202 23 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 24 202 32 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 24 202 25 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 28 202 30 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 26 202 27 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 31 202 32 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 202 33 202 34 , srcInfoPoints = [] } "b" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 1 203 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 1 203 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 6 203 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 28 203 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 15 203 27 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 15 203 19 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 15 203 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 15 203 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 15 203 17 , srcInfoPoints = [] } "G2"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 18 203 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 18 203 19 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 23 203 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 23 203 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 23 203 27 , srcInfoPoints = [] } "Bool")))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 30 203 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 30 203 31 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 32 203 33 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 35 203 36 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 31 203 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 31 203 32 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 34 203 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 203 34 203 35 , srcInfoPoints = [] } "a") ]) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 1 204 39 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 1 204 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 6 204 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 28 204 29 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 15 204 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 15 204 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 15 204 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 15 204 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 15 204 17 , srcInfoPoints = [] } "G2"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 18 204 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 18 204 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 18 204 22 , srcInfoPoints = [] } "Bool")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 23 204 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 23 204 24 , srcInfoPoints = [] } "b"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 30 204 39 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 30 204 31 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 32 204 33 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 38 204 39 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 31 204 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 31 204 32 , srcInfoPoints = [] } "b") , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 34 204 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 34 204 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 204 34 204 38 , srcInfoPoints = [] } "Bool")) ]) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 1 206 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 1 206 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 6 206 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 13 206 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 13 206 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 13 206 15 , srcInfoPoints = [] } "G6")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 16 206 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 16 206 17 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 18 206 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 18 206 19 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 20 206 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 20 206 21 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 22 206 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 22 206 23 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 26 206 28 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 24 206 25 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 206 29 206 30 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 1 207 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 1 207 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 6 207 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 23 207 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 15 207 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 15 207 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 15 207 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 15 207 17 , srcInfoPoints = [] } "G6"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 18 207 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 18 207 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 20 207 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 19 207 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 19 207 20 , srcInfoPoints = [] } "a")))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 25 207 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 25 207 26 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 30 207 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 26 207 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 26 207 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 26 207 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 26 207 28 , srcInfoPoints = [] } "Gi"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 29 207 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 207 29 207 30 , srcInfoPoints = [] } "a")))) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 1 208 28 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 1 208 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 6 208 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 23 208 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 15 208 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 15 208 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 15 208 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 15 208 17 , srcInfoPoints = [] } "G6"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 18 208 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 18 208 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 18 208 22 , srcInfoPoints = [] } "Bool")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 25 208 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 25 208 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 208 25 208 28 , srcInfoPoints = [] } "Int"))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 1 210 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 7 210 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 1 210 6 , srcInfoPoints = [] } "g6_id" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 10 210 22 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 15 210 17 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 10 210 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 10 210 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 10 210 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 10 210 12 , srcInfoPoints = [] } "G6"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 13 210 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 13 210 14 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 18 210 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 18 210 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 18 210 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 18 210 20 , srcInfoPoints = [] } "G6"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 21 210 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 210 21 210 22 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 1 211 12 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 1 211 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 1 211 6 , srcInfoPoints = [] } "g6_id") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 7 211 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 7 211 8 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 9 211 12 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 9 211 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 11 211 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 11 211 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 211 11 211 12 , srcInfoPoints = [] } "x")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 1 213 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 8 213 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 1 213 7 , srcInfoPoints = [] } "g6_use" ] (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 11 213 17 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 11 213 12 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 16 213 17 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 12 213 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 12 213 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 213 12 213 16 , srcInfoPoints = [] } "Char")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 1 214 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 1 214 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 1 214 7 , srcInfoPoints = [] } "g6_use")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 8 214 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 8 214 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 10 214 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 10 214 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 10 214 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 10 214 15 , srcInfoPoints = [] } "g6_id"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 16 214 21 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 214 16 214 21 , srcInfoPoints = [] } "foo" "foo")))) Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 1 217 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 1 217 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 6 217 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 13 217 24 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 13 217 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 13 217 15 , srcInfoPoints = [] } "Id")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 16 217 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 16 217 17 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 19 217 21 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 23 217 24 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 17 217 18 , srcInfoPoints = [] } "a") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 22 217 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 22 217 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 22 217 23 , srcInfoPoints = [] } "k"))))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 25 217 40 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 25 217 26 ] } (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 27 217 40 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 27 217 28 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 35 217 37 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 39 217 40 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 28 217 34 , srcInfoPoints = [] } "result") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 38 217 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 38 217 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 38 217 39 , srcInfoPoints = [] } "k")))))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 41 217 54 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 41 217 42 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 50 217 52 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 43 217 49 , srcInfoPoints = [] } "result") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 217 53 217 54 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 1 218 23 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 1 218 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 6 218 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 20 218 21 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 15 218 19 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 15 218 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 15 218 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 15 218 17 , srcInfoPoints = [] } "Id"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 18 218 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 18 218 19 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 22 218 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 218 22 218 23 , srcInfoPoints = [] } "a")) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 1 222 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 1 222 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 6 222 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 13 222 31 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 13 222 29 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 13 222 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 13 222 20 , srcInfoPoints = [] } "IdProxy")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 21 222 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 21 222 22 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 24 222 26 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 28 222 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 22 222 23 , srcInfoPoints = [] } "a") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 27 222 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 27 222 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 27 222 28 , srcInfoPoints = [] } "k"))))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 30 222 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 30 222 31 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 32 222 35 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 32 222 33 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 34 222 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 34 222 35 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 36 222 44 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 36 222 37 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 40 222 42 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 38 222 39 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 222 43 222 44 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 1 223 37 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 1 223 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 6 223 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 27 223 28 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 15 223 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 15 223 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 15 223 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 15 223 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 15 223 22 , srcInfoPoints = [] } "IdProxy"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 23 223 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 23 223 24 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 25 223 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 25 223 26 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 29 223 37 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 29 223 35 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 29 223 30 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 34 223 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 30 223 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 30 223 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 30 223 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 30 223 32 , srcInfoPoints = [] } "Id"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 33 223 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 33 223 34 , srcInfoPoints = [] } "a")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 36 223 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 223 36 223 37 , srcInfoPoints = [] } "b"))) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 1 226 20 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 1 226 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 14 226 15 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 6 226 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 6 226 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 6 226 11 , srcInfoPoints = [] } "IdSyn")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 12 226 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 12 226 13 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 16 226 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 16 226 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 16 226 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 16 226 18 , srcInfoPoints = [] } "Id"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 19 226 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 226 19 226 20 , srcInfoPoints = [] } "a"))) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 1 227 34 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 1 227 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 6 227 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 13 227 34 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 13 227 32 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 13 227 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 13 227 23 , srcInfoPoints = [] } "IdProxySyn")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 24 227 32 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 24 227 25 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 27 227 29 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 31 227 32 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 25 227 26 , srcInfoPoints = [] } "a") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 30 227 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 30 227 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 30 227 31 , srcInfoPoints = [] } "k"))))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 33 227 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 33 227 34 , srcInfoPoints = [] } "b"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 35 227 38 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 35 227 36 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 37 227 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 37 227 38 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 39 227 47 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 39 227 40 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 43 227 45 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 41 227 42 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 227 46 227 47 , srcInfoPoints = [] } "a" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 1 228 43 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 1 228 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 6 228 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 30 228 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 15 228 29 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 15 228 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 15 228 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 15 228 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 15 228 25 , srcInfoPoints = [] } "IdProxySyn"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 26 228 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 26 228 27 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 28 228 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 28 228 29 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 32 228 43 , srcInfoPoints = [] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 32 228 41 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 32 228 33 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 40 228 41 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 33 228 40 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 33 228 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 33 228 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 33 228 38 , srcInfoPoints = [] } "IdSyn"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 39 228 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 39 228 40 , srcInfoPoints = [] } "a")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 42 228 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 228 42 228 43 , srcInfoPoints = [] } "b"))) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 1 232 33 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 1 232 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 6 232 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 13 232 33 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 13 232 24 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 13 232 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 13 232 15 , srcInfoPoints = [] } "Fa")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 16 232 24 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 16 232 17 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 19 232 21 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 23 232 24 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 17 232 18 , srcInfoPoints = [] } "a") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 22 232 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 22 232 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 22 232 23 , srcInfoPoints = [] } "k"))))) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 25 232 33 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 25 232 26 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 28 232 30 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 32 232 33 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 26 232 27 , srcInfoPoints = [] } "b") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 31 232 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 31 232 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 31 232 32 , srcInfoPoints = [] } "k"))))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 34 232 45 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 34 232 35 ] } (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 36 232 45 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 36 232 37 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 39 232 41 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 44 232 45 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 37 232 38 , srcInfoPoints = [] } "r") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 42 232 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 42 232 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 42 232 44 , srcInfoPoints = [] } "k2")))))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 46 232 54 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 46 232 47 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 50 232 52 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 48 232 49 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 232 53 232 54 , srcInfoPoints = [] } "k" ])) , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 1 233 25 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 1 233 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 6 233 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 22 233 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 15 233 21 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 15 233 19 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 15 233 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 15 233 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 15 233 17 , srcInfoPoints = [] } "Fa"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 18 233 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 18 233 19 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 20 233 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 20 233 21 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 24 233 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 233 24 233 25 , srcInfoPoints = [] } "a")) , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 1 236 51 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 1 236 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 6 236 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 13 236 51 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 13 236 42 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 13 236 33 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 13 236 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 13 236 16 , srcInfoPoints = [] } "Arr")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 17 236 33 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 17 236 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 23 236 25 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 32 236 33 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 18 236 22 , srcInfoPoints = [] } "repr") (KindFn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 26 236 32 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 28 236 30 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 26 236 27 , srcInfoPoints = [] }) (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 31 236 32 , srcInfoPoints = [] })))) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 34 236 42 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 34 236 35 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 37 236 39 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 41 236 42 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 35 236 36 , srcInfoPoints = [] } "a") (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 40 236 41 , srcInfoPoints = [] }))) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 43 236 51 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 43 236 44 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 46 236 48 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 50 236 51 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 44 236 45 , srcInfoPoints = [] } "b") (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 49 236 50 , srcInfoPoints = [] }))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 52 236 62 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 52 236 53 ] } (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 54 236 62 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 54 236 55 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 57 236 59 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 61 236 62 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 55 236 56 , srcInfoPoints = [] } "r") (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 60 236 61 , srcInfoPoints = [] })))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 63 236 74 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 63 236 64 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 67 236 69 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 65 236 66 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 70 236 74 , srcInfoPoints = [] } "repr" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 75 236 76 , srcInfoPoints = [] } "a" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 236 77 236 78 , srcInfoPoints = [] } "b" ])) , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 1 243 51 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 1 238 6 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 23 238 28 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 5 239 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 5 240 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 5 242 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 5 243 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 1 245 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 7 238 22 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 7 238 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 7 238 17 , srcInfoPoints = [] } "ESymantics")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 18 238 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 238 18 238 22 , srcInfoPoints = [] } "repr"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 5 239 28 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 9 239 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 5 239 28 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 9 239 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 5 239 8 , srcInfoPoints = [] } "int" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 12 239 28 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 17 239 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 12 239 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 12 239 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 12 239 15 , srcInfoPoints = [] } "Int"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 20 239 28 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 20 239 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 20 239 24 , srcInfoPoints = [] } "repr")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 25 239 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 25 239 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 239 25 239 28 , srcInfoPoints = [] } "Int")))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 5 240 45 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 9 240 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 5 240 45 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 9 240 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 5 240 8 , srcInfoPoints = [] } "add" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 12 240 45 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 22 240 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 12 240 20 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 12 240 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 12 240 16 , srcInfoPoints = [] } "repr")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 17 240 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 17 240 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 17 240 20 , srcInfoPoints = [] } "Int")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 25 240 45 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 34 240 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 25 240 33 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 25 240 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 25 240 29 , srcInfoPoints = [] } "repr")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 30 240 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 30 240 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 30 240 33 , srcInfoPoints = [] } "Int")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 37 240 45 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 37 240 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 37 240 41 , srcInfoPoints = [] } "repr")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 42 240 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 42 240 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 240 42 240 45 , srcInfoPoints = [] } "Int"))))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 5 242 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 9 242 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 5 242 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 9 242 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 5 242 8 , srcInfoPoints = [] } "lam" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 12 242 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 31 242 33 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 12 242 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 12 242 13 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 29 242 30 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 13 242 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 20 242 22 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 13 242 19 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 13 242 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 13 242 17 , srcInfoPoints = [] } "repr")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 18 242 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 18 242 19 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 23 242 29 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 23 242 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 23 242 27 , srcInfoPoints = [] } "repr")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 28 242 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 28 242 29 , srcInfoPoints = [] } "b"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 34 242 53 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 34 242 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 34 242 38 , srcInfoPoints = [] } "repr")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 39 242 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 39 242 40 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 52 242 53 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 40 242 52 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 40 242 50 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 40 242 48 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 40 242 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 40 242 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 40 242 43 , srcInfoPoints = [] } "Arr"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 44 242 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 44 242 48 , srcInfoPoints = [] } "repr"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 49 242 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 49 242 50 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 51 242 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 242 51 242 52 , srcInfoPoints = [] } "b"))))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 5 243 51 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 9 243 11 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 5 243 51 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 9 243 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 5 243 8 , srcInfoPoints = [] } "app" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 12 243 51 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 32 243 34 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 12 243 31 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 12 243 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 12 243 16 , srcInfoPoints = [] } "repr")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 17 243 31 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 17 243 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 30 243 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 18 243 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 18 243 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 18 243 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 18 243 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 18 243 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 18 243 21 , srcInfoPoints = [] } "Arr"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 22 243 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 22 243 26 , srcInfoPoints = [] } "repr"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 27 243 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 27 243 28 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 29 243 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 29 243 30 , srcInfoPoints = [] } "b"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 35 243 51 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 42 243 44 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 35 243 41 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 35 243 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 35 243 39 , srcInfoPoints = [] } "repr")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 40 243 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 40 243 41 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 45 243 51 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 45 243 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 45 243 49 , srcInfoPoints = [] } "repr")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 50 243 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 243 50 243 51 , srcInfoPoints = [] } "b")))))) ]) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 1 246 63 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 1 245 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 1 245 4 , srcInfoPoints = [] } "te4")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 5 246 63 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 5 245 6 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 7 246 63 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 7 245 10 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 7 246 9 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 11 245 69 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 11 245 11 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 7 246 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 11 245 69 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 11 245 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 11 245 13 , srcInfoPoints = [] } "c3")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 14 245 69 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 14 245 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 16 245 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 16 245 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 16 245 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 16 245 19 , srcInfoPoints = [] } "lam"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 20 245 69 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 20 245 21 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 68 245 69 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 21 245 68 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 21 245 22 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 24 245 26 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 22 245 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 22 245 23 , srcInfoPoints = [] } "f") ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 27 245 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 27 245 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 27 245 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 27 245 30 , srcInfoPoints = [] } "lam"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 31 245 68 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 31 245 32 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 67 245 68 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 32 245 67 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 32 245 33 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 35 245 37 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 33 245 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 33 245 34 , srcInfoPoints = [] } "x") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 38 245 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 38 245 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 38 245 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 38 245 39 , srcInfoPoints = [] } "f"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 40 245 45 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 40 245 41 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 41 245 44 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 44 245 45 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 40 245 45 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 40 245 41 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 41 245 44 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 44 245 45 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 41 245 44 , srcInfoPoints = [] } "app"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 46 245 67 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 46 245 47 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 66 245 67 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 47 245 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 47 245 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 47 245 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 47 245 48 , srcInfoPoints = [] } "f"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 49 245 54 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 49 245 50 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 50 245 53 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 53 245 54 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 49 245 54 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 49 245 50 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 50 245 53 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 53 245 54 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 50 245 53 , srcInfoPoints = [] } "app"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 55 245 66 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 55 245 56 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 65 245 66 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 56 245 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 56 245 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 56 245 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 56 245 57 , srcInfoPoints = [] } "f"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 58 245 63 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 58 245 59 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 59 245 62 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 62 245 63 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 58 245 63 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 58 245 59 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 59 245 62 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 62 245 63 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 59 245 62 , srcInfoPoints = [] } "app"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 64 245 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 64 245 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 245 64 245 65 , srcInfoPoints = [] } "x"))))))))))))))) Nothing ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 10 246 63 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 10 246 49 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 10 246 11 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 48 246 49 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 11 246 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 11 246 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 11 246 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 11 246 13 , srcInfoPoints = [] } "c3"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 14 246 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 14 246 15 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 15 246 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 18 246 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 14 246 19 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 14 246 15 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 15 246 18 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 18 246 19 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 15 246 18 , srcInfoPoints = [] } "app"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 20 246 48 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 20 246 21 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 47 246 48 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 21 246 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 21 246 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 21 246 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 21 246 24 , srcInfoPoints = [] } "lam"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 25 246 47 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 25 246 26 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 46 246 47 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 26 246 46 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 26 246 27 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 29 246 31 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 27 246 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 27 246 28 , srcInfoPoints = [] } "x") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 32 246 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 32 246 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 32 246 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 32 246 33 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 34 246 39 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 34 246 35 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 35 246 38 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 38 246 39 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 34 246 39 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 34 246 35 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 35 246 38 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 38 246 39 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 35 246 38 , srcInfoPoints = [] } "add"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 40 246 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 40 246 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 40 246 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 40 246 43 , srcInfoPoints = [] } "int"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 44 246 46 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 44 246 46 , srcInfoPoints = [] } 14 "14")))))))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 50 246 55 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 50 246 51 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 51 246 54 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 54 246 55 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 50 246 55 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 50 246 51 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 51 246 54 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 54 246 55 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 51 246 54 , srcInfoPoints = [] } "app"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 56 246 63 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 56 246 57 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 62 246 63 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 57 246 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 57 246 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 57 246 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 57 246 60 , srcInfoPoints = [] } "int"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 61 246 62 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 246 61 246 62 , srcInfoPoints = [] } 0 "0"))))))) Nothing , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 1 252 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 1 249 6 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 19 249 24 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 5 250 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 5 251 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 5 252 5 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 1 254 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 7 249 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 7 249 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 7 249 16 , srcInfoPoints = [] } "Manifold'")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 17 249 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 249 17 249 18 , srcInfoPoints = [] } "a"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 5 250 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 5 250 9 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 10 250 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 10 250 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 10 250 14 , srcInfoPoints = [] } "Base")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 16 250 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 16 250 17 , srcInfoPoints = [] } "a"))) (Just (TyVarSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 18 250 21 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 18 250 19 ] } (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 20 250 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 20 250 21 , srcInfoPoints = [] } "r")))) (Just (InjectivityInfo SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 22 250 30 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 22 250 23 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 26 250 28 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 24 250 25 , srcInfoPoints = [] } "r") [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 250 29 250 30 , srcInfoPoints = [] } "a" ])) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 5 251 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 13 251 15 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 5 251 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 13 251 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 5 251 12 , srcInfoPoints = [] } "project" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 16 251 27 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 18 251 20 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 16 251 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 16 251 17 , srcInfoPoints = [] } "a")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 21 251 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 21 251 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 21 251 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 21 251 25 , srcInfoPoints = [] } "Base"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 26 251 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 251 26 251 27 , srcInfoPoints = [] } "a"))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 5 252 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 15 252 17 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 5 252 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 15 252 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 5 252 14 , srcInfoPoints = [] } "unproject" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 18 252 29 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 25 252 27 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 18 252 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 18 252 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 18 252 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 18 252 22 , srcInfoPoints = [] } "Base"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 23 252 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 23 252 24 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 28 252 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 252 28 252 29 , srcInfoPoints = [] } "a")))) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 1 254 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 5 254 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 1 254 4 , srcInfoPoints = [] } "id'" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 8 254 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 8 254 14 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 16 254 17 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 15 254 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 15 254 16 , srcInfoPoints = [] } "a") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 18 254 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 18 254 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 32 254 33 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 34 254 36 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 18 254 36 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 18 254 19 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 32 254 33 , SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 34 254 36 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 20 254 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 20 254 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 20 254 29 , srcInfoPoints = [] } "Manifold'")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 30 254 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 30 254 31 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 37 254 53 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 44 254 46 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 37 254 43 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 37 254 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 37 254 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 37 254 41 , srcInfoPoints = [] } "Base"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 42 254 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 42 254 43 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 47 254 53 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 47 254 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 47 254 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 47 254 51 , srcInfoPoints = [] } "Base"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 52 254 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 254 52 254 53 , srcInfoPoints = [] } "a"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 1 255 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 1 255 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 1 255 4 , srcInfoPoints = [] } "id'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 5 255 26 , srcInfoPoints = [ SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 5 255 6 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 7 255 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 7 255 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 7 255 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 7 255 14 , srcInfoPoints = [] } "project"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 15 255 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 15 255 16 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 15 255 16 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 17 255 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 17 255 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 255 17 255 26 , srcInfoPoints = [] } "unproject"))))) Nothing ] , [ Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 12 15 12 43) " defines G, identical to F" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 27 1 27 81) " this is injective - a type variable introduced in the LHS is not mentioned on" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 28 1 28 56) " RHS but we don't claim injectivity in that argument." , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 35 1 35 46) " make sure we look through type synonyms..." , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 39 1 39 23) " .. but not newtypes" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 44 1 44 24) " Closed type families" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 46 1 46 80) " these are simple conversions from open type families. They should behave the" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 47 1 47 8) " same" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 64 1 64 72) " Here the last equation might return both Int and Char but we have to" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 65 1 65 61) " recognize that it is not possible due to equation overlap" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 71 1 71 81) " This is similar, except that the last equation contains concrete type. Since" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 72 1 72 56) " it is overlapped it should be dropped with a warning" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 78 1 78 78) " this one was tricky in the early implementation of injectivity. Now it is" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 79 1 79 69) " identical to the above but we still keep it as a regression test." , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 85 1 85 79) " Now let's use declared type families. All the below definitions should work" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 87 1 87 61) " No ambiguity for any of the arguments - all are injective" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 91 1 91 55) " From 1st instance of F: a ~ Int, b ~ Char, c ~ Bool" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 95 1 95 31) " now the closed variant of F" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 102 1 102 65) " The last argument is not injective so it must be instantiated" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 106 1 106 45) " From 1st instance of I: a ~ Int, b ~ Char" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 110 1 110 30) " again, closed variant of I" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 117 1 117 51) " Now we have to test weird closed type families:" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 145 1 145 73) " Declarations below test more liberal RHSs of injectivity annotations:" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 146 1 146 79) " permiting variables to appear in different order than the one in which they" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 147 1 147 18) " were declared." , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 154 1 154 79) " repeated tyvars in the RHS of injectivity annotation: no warnings or errors" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 155 1 155 59) " (consistent with behaviour for functional dependencies)" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 168 1 168 71) " Declaring kind injectivity. Here we only claim that knowing the RHS" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 169 1 169 45) " determines the LHS kind but not the type." , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 186 1 186 74) " Now test some awkward cases from The Injectivity Paper. All should be" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 187 1 187 13) " accepted." , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 216 1 216 56) " A sole exception to \"bare variables in the RHS\" rule" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 220 1 220 81) " This makes sure that over-saturated type family applications at the top-level" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 221 1 221 17) " are accepted." , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 225 1 225 52) " make sure we look through type synonyms properly" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 230 1 230 80) " this has bare variable in the RHS but all LHS varaiables are also bare so it" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 231 1 231 22) " should be accepted" , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 235 1 235 55) " Taken from #9587. This exposed a bug in the solver." , Comment False (SrcSpan "tests/examples/InjectiveTypeFamilies.hs" 248 1 248 40) " This used to fail during development" ] ) haskell-src-exts-1.18.2/tests/examples/InjectiveTypeFamilies.hs.prettyparser.golden0000644000000000000000000000000612746233113026742 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InjectiveTypeFamilies.hs.prettyprinter.golden0000644000000000000000000001154412746233113027142 0ustar0000000000000000{-# LANGUAGE DataKinds #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE PolyKinds #-} {-# LANGUAGE TypeFamilyDependencies #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE UndecidableInstances #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE NoMonomorphismRestriction #-} module T6018 where import T6018a type family F a b c = (result :: k) | result -> a b c type instance F Int Char Bool = Bool type instance F Char Bool Int = Int type instance F Bool Int Char = Char type instance G Bool Int Char = Char type family I (a :: k) b (c :: k) = r | r -> a b type instance I Int Char Bool = Bool type instance I Int Char Int = Bool type instance I Bool Int Int = Int type family J a (b :: k) = r | r -> a type instance J Int b = Char type MaybeSyn a = Maybe a newtype MaybeNew a = MaybeNew (Maybe a) type family K a = r | r -> a type instance K a = MaybeSyn a type family M a = r | r -> a type instance M (Maybe a) = MaybeSyn a type instance M (MaybeNew a) = MaybeNew a type family FClosed a b c = result | result -> a b c where FClosed Int Char Bool = Bool FClosed Char Bool Int = Int FClosed Bool Int Char = Char type family IClosed (a :: *) (b :: *) (c :: *) = r | r -> a b where IClosed Int Char Bool = Bool IClosed Int Char Int = Bool IClosed Bool Int Int = Int type family JClosed a (b :: k) = r | r -> a where JClosed Int b = Char type family KClosed a = r | r -> a where KClosed a = MaybeSyn a type family Bak a = r | r -> a where Bak Int = Char Bak Char = Int Bak a = a type family Foo a = r | r -> a where Foo Int = Bool Foo Bool = Int Foo Bool = Bool type family Bar a = r | r -> a where Bar Int = Bool Bar Bool = Int Bar Bool = Char f :: F a b c -> F a b c f x = x fapp :: Bool fapp = f True fc :: FClosed a b c -> FClosed a b c fc x = x fcapp :: Bool fcapp = fc True i :: I a b Int -> I a b Int i x = x iapp :: Bool iapp = i True ic :: IClosed a b Int -> IClosed a b Int ic x = x icapp :: Bool icapp = ic True bak :: Bak a -> Bak a bak x = x bakapp1 :: Char bakapp1 = bak 'c' bakapp2 :: Double bakapp2 = bak 1.0 bakapp3 :: () bakapp3 = bak () foo :: Foo a -> Foo a foo x = x fooapp1 :: Bool fooapp1 = foo True bar :: Bar a -> Bar a bar x = x barapp1 :: Bool barapp1 = bar True barapp2 :: Int barapp2 = bar 1 type family H a b = r | r -> b a type family Hc a b = r | r -> b a where Hc a b = a b class Hcl a b where type Ht a b = r | r -> b a type family Jx a b = r | r -> a a type family Jcx a b = r | r -> a a where Jcx a b = a b class Jcl a b where type Jt a b = r | r -> a a type family Kx a b = r | r -> a b b type family Kcx a b = r | r -> a b b where Kcx a b = a b class Kcl a b where type Kt a b = r | r -> a b b type family L (a :: k1) = (r :: k2) | r -> k1 where L 'True = Int L 'False = Int L Maybe = 3 L IO = 3 data KProxy (a :: *) = KProxy type family KP (kproxy :: KProxy k) = r | r -> k type instance KP ('KProxy :: KProxy Bool) = Int type instance KP ('KProxy :: KProxy *) = Char kproxy_id :: KP ('KProxy :: KProxy k) -> KP ('KProxy :: KProxy k) kproxy_id x = x kproxy_id_use = kproxy_id 'a' type family Gx a type family Hx a type family Gi a = r | r -> a type instance Gi Int = Char type family Hi a = r | r -> a type family F2 a = r | r -> a type instance F2 [a] = [Gi a] type instance F2 (Maybe a) = Hi a -> Int type family F4 a = r | r -> a type instance F4 [a] = (Gx a, a, a, a) type instance F4 (Maybe a) = (Hx a, a, Int, Bool) type family G2 a b = r | r -> a b type instance G2 a Bool = (a, a) type instance G2 Bool b = (b, Bool) type family G6 a = r | r -> a type instance G6 [a] = [Gi a] type instance G6 Bool = Int g6_id :: G6 a -> G6 a g6_id x = x g6_use :: [Char] g6_use = g6_id "foo" type family Id (a :: k) = (result :: k) | result -> a type instance Id a = a type family IdProxy (a :: k) b = r | r -> a type instance IdProxy a b = (Id a) b type IdSyn a = Id a type family IdProxySyn (a :: k) b = r | r -> a type instance IdProxySyn a b = (IdSyn a) b type family Fa (a :: k) (b :: k) = (r :: k2) | r -> k type instance Fa a b = a type family Arr (repr :: * -> *) (a :: *) (b :: *) = (r :: *) | r -> repr a b class ESymantics repr where int :: Int -> repr Int add :: repr Int -> repr Int -> repr Int lam :: (repr a -> repr b) -> repr (Arr repr a b) app :: repr (Arr repr a b) -> repr a -> repr b te4 = let c3 = lam (\ f -> lam (\ x -> f `app` (f `app` (f `app` x)))) in (c3 `app` (lam (\ x -> x `add` int 14))) `app` (int 0) class Manifold' a where type Base a = r | r -> a project :: a -> Base a unproject :: Base a -> a id' :: forall a . (Manifold' a) => Base a -> Base a id' = project . unproject haskell-src-exts-1.18.2/tests/examples/InlineConlike.hs0000644000000000000000000000006212746233113021221 0ustar0000000000000000{-# INLINE CONLIKE size #-} size :: Int size = 64 haskell-src-exts-1.18.2/tests/examples/InlineConlike.hs.exactprinter.golden0000644000000000000000000000000612746233113025175 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InlineConlike.hs.parser.golden0000644000000000000000000000721312746233113023770 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/InlineConlike.hs" 1 1 1 1 , SrcSpan "tests/examples/InlineConlike.hs" 1 1 1 1 , SrcSpan "tests/examples/InlineConlike.hs" 1 1 1 1 , SrcSpan "tests/examples/InlineConlike.hs" 2 1 2 1 , SrcSpan "tests/examples/InlineConlike.hs" 3 1 3 1 , SrcSpan "tests/examples/InlineConlike.hs" 4 1 4 1 , SrcSpan "tests/examples/InlineConlike.hs" 4 1 4 1 ] } Nothing [] [] [ InlineConlikeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 1 1 1 28 , srcInfoPoints = [ SrcSpan "tests/examples/InlineConlike.hs" 1 1 1 19 , SrcSpan "tests/examples/InlineConlike.hs" 1 25 1 28 ] } Nothing (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 1 20 1 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 1 20 1 24 , srcInfoPoints = [] } "size")) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 2 1 2 12 , srcInfoPoints = [ SrcSpan "tests/examples/InlineConlike.hs" 2 6 2 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 2 1 2 5 , srcInfoPoints = [] } "size" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 2 9 2 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 2 9 2 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 2 9 2 12 , srcInfoPoints = [] } "Int"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 3 1 3 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 3 1 3 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 3 1 3 5 , srcInfoPoints = [] } "size")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 3 6 3 10 , srcInfoPoints = [ SrcSpan "tests/examples/InlineConlike.hs" 3 6 3 7 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 3 8 3 10 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InlineConlike.hs" 3 8 3 10 , srcInfoPoints = [] } 64 "64"))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/InlineConlike.hs.prettyparser.golden0000644000000000000000000000000612746233113025231 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InlineConlike.hs.prettyprinter.golden0000644000000000000000000000006312746233113025423 0ustar0000000000000000{-# INLINE CONLIKE size #-} size :: Int size = 64 haskell-src-exts-1.18.2/tests/examples/InstanceSigs.hs0000644000000000000000000000036412746233113021075 0ustar0000000000000000{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE InstanceSigs #-} {-# LANGUAGE TypeFamilies #-} instance SupportsDelta (Map k v) where type Delta (Map k v) = Map k v mkDelta :: Map k v -> Map k v -> Delta (Map k v) mkDelta = undefined haskell-src-exts-1.18.2/tests/examples/InstanceSigs.hs.exactprinter.golden0000644000000000000000000000000612746233113025044 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InstanceSigs.hs.parser.golden0000644000000000000000000006702112746233113023642 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 1 1 10 1 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 1 1 1 1 , SrcSpan "tests/examples/InstanceSigs.hs" 2 1 2 1 , SrcSpan "tests/examples/InstanceSigs.hs" 3 1 3 1 , SrcSpan "tests/examples/InstanceSigs.hs" 5 1 5 1 , SrcSpan "tests/examples/InstanceSigs.hs" 5 1 5 1 , SrcSpan "tests/examples/InstanceSigs.hs" 5 1 5 1 , SrcSpan "tests/examples/InstanceSigs.hs" 10 1 10 1 , SrcSpan "tests/examples/InstanceSigs.hs" 10 1 10 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 1 1 1 37 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 1 1 1 13 , SrcSpan "tests/examples/InstanceSigs.hs" 1 34 1 37 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 1 14 1 33 , srcInfoPoints = [] } "ScopedTypeVariables" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 2 1 2 30 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 2 1 2 13 , SrcSpan "tests/examples/InstanceSigs.hs" 2 27 2 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 2 14 2 26 , srcInfoPoints = [] } "InstanceSigs" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 3 1 3 30 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 3 1 3 13 , SrcSpan "tests/examples/InstanceSigs.hs" 3 27 3 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 3 14 3 26 , srcInfoPoints = [] } "TypeFamilies" ] ] [] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 1 10 0 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 5 1 5 9 , SrcSpan "tests/examples/InstanceSigs.hs" 5 34 5 39 , SrcSpan "tests/examples/InstanceSigs.hs" 6 3 6 3 , SrcSpan "tests/examples/InstanceSigs.hs" 8 3 8 3 , SrcSpan "tests/examples/InstanceSigs.hs" 9 3 9 3 , SrcSpan "tests/examples/InstanceSigs.hs" 10 1 10 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 10 5 33 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 10 5 33 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 10 5 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 10 5 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 10 5 23 , srcInfoPoints = [] } "SupportsDelta"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 24 5 33 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 5 24 5 25 , SrcSpan "tests/examples/InstanceSigs.hs" 5 32 5 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 25 5 32 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 25 5 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 25 5 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 25 5 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 25 5 28 , srcInfoPoints = [] } "Map"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 29 5 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 29 5 30 , srcInfoPoints = [] } "k"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 31 5 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 5 31 5 32 , srcInfoPoints = [] } "v")))))) (Just [ InsType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 3 6 33 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 6 3 6 7 , SrcSpan "tests/examples/InstanceSigs.hs" 6 24 6 25 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 8 6 23 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 8 6 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 8 6 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 8 6 13 , srcInfoPoints = [] } "Delta"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 14 6 23 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 6 14 6 15 , SrcSpan "tests/examples/InstanceSigs.hs" 6 22 6 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 15 6 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 15 6 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 15 6 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 15 6 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 15 6 18 , srcInfoPoints = [] } "Map"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 19 6 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 19 6 20 , srcInfoPoints = [] } "k"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 21 6 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 21 6 22 , srcInfoPoints = [] } "v"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 26 6 33 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 26 6 31 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 26 6 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 26 6 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 26 6 29 , srcInfoPoints = [] } "Map"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 30 6 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 30 6 31 , srcInfoPoints = [] } "k"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 32 6 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 6 32 6 33 , srcInfoPoints = [] } "v"))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 3 8 51 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 8 11 8 13 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 3 8 51 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 8 11 8 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 3 8 10 , srcInfoPoints = [] } "mkDelta" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 14 8 51 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 8 22 8 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 14 8 21 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 14 8 19 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 14 8 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 14 8 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 14 8 17 , srcInfoPoints = [] } "Map"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 18 8 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 18 8 19 , srcInfoPoints = [] } "k"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 20 8 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 20 8 21 , srcInfoPoints = [] } "v"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 25 8 51 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 8 33 8 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 25 8 32 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 25 8 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 25 8 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 25 8 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 25 8 28 , srcInfoPoints = [] } "Map"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 29 8 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 29 8 30 , srcInfoPoints = [] } "k"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 31 8 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 31 8 32 , srcInfoPoints = [] } "v"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 36 8 51 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 36 8 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 36 8 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 36 8 41 , srcInfoPoints = [] } "Delta"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 42 8 51 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 8 42 8 43 , SrcSpan "tests/examples/InstanceSigs.hs" 8 50 8 51 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 43 8 50 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 43 8 48 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 43 8 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 43 8 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 43 8 46 , srcInfoPoints = [] } "Map"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 47 8 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 47 8 48 , srcInfoPoints = [] } "k"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 49 8 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 8 49 8 50 , srcInfoPoints = [] } "v")))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 9 3 9 22 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 9 3 9 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 9 3 9 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 9 3 9 10 , srcInfoPoints = [] } "mkDelta")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 9 11 9 22 , srcInfoPoints = [ SrcSpan "tests/examples/InstanceSigs.hs" 9 11 9 12 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 9 13 9 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 9 13 9 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/InstanceSigs.hs" 9 13 9 22 , srcInfoPoints = [] } "undefined")))) Nothing) ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/InstanceSigs.hs.prettyparser.golden0000644000000000000000000000000612746233113025100 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/InstanceSigs.hs.prettyprinter.golden0000644000000000000000000000041612746233113025274 0ustar0000000000000000{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE InstanceSigs #-} {-# LANGUAGE TypeFamilies #-} instance SupportsDelta (Map k v) where type Delta (Map k v) = Map k v mkDelta :: Map k v -> Map k v -> Delta (Map k v) mkDelta = undefined haskell-src-exts-1.18.2/tests/examples/LambdaCase.hs0000644000000000000000000000021412746233113020451 0ustar0000000000000000{-# LANGUAGE LambdaCase #-} module LambdaCase where foo = \case Nothing -> e1 Just e2 -> e2 bar = \ case { _ -> True } haskell-src-exts-1.18.2/tests/examples/LambdaCase.hs.exactprinter.golden0000644000000000000000000000000612746233113024426 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/LambdaCase.hs.parser.golden0000644000000000000000000002517312746233113023226 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 1 1 1 1 , SrcSpan "tests/examples/LambdaCase.hs" 2 1 2 1 , SrcSpan "tests/examples/LambdaCase.hs" 2 1 2 1 , SrcSpan "tests/examples/LambdaCase.hs" 4 1 4 1 , SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 1 , SrcSpan "tests/examples/LambdaCase.hs" 9 1 9 1 , SrcSpan "tests/examples/LambdaCase.hs" 9 1 9 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 2 1 2 24 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 2 1 2 7 , SrcSpan "tests/examples/LambdaCase.hs" 2 19 2 24 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 2 8 2 18 , srcInfoPoints = [] } "LambdaCase") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 1 1 1 28 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 1 1 1 13 , SrcSpan "tests/examples/LambdaCase.hs" 1 25 1 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 1 14 1 24 , srcInfoPoints = [] } "LambdaCase" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 1 6 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 1 4 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 1 4 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 5 6 22 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 4 5 4 6 ] } (LCase SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 4 7 6 22 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 4 7 4 8 , SrcSpan "tests/examples/LambdaCase.hs" 4 8 4 12 , SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 9 , SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 9 , SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 0 ] } [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 22 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 9 5 16 , srcInfoPoints = [] } "Nothing")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 17 5 22 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 5 17 5 19 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 20 5 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 20 5 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 5 20 5 22 , srcInfoPoints = [] } "e1")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 22 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 9 6 13 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 14 6 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 14 6 16 , srcInfoPoints = [] } "e2") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 17 6 22 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 6 17 6 19 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 20 6 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 20 6 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 6 20 6 22 , srcInfoPoints = [] } "e2")))) Nothing ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 1 8 4 , srcInfoPoints = [] } "bar")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 5 8 30 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 8 5 8 6 ] } (LCase SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 7 8 30 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 8 7 8 8 , SrcSpan "tests/examples/LambdaCase.hs" 8 12 8 16 , SrcSpan "tests/examples/LambdaCase.hs" 8 17 8 18 , SrcSpan "tests/examples/LambdaCase.hs" 8 29 8 30 ] } [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 19 8 28 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 19 8 20 , srcInfoPoints = [] }) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 21 8 28 , srcInfoPoints = [ SrcSpan "tests/examples/LambdaCase.hs" 8 21 8 23 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 24 8 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 24 8 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LambdaCase.hs" 8 24 8 28 , srcInfoPoints = [] } "True")))) Nothing ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/LambdaCase.hs.prettyparser.golden0000644000000000000000000000000612746233113024462 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/LambdaCase.hs.prettyprinter.golden0000644000000000000000000000021612746233113024654 0ustar0000000000000000{-# LANGUAGE LambdaCase #-} module LambdaCase where foo = \case Nothing -> e1 Just e2 -> e2 bar = \case _ -> True haskell-src-exts-1.18.2/tests/examples/LanguagePragma.hs0000644000000000000000000000006712746233113021356 0ustar0000000000000000{-# LANGUAGE RecordWildCards #-} main = print "hello" haskell-src-exts-1.18.2/tests/examples/LanguagePragma.hs.exactprinter.golden0000644000000000000000000000000612746233113025325 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/LanguagePragma.hs.parser.golden0000644000000000000000000000654612746233113024130 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/LanguagePragma.hs" 1 1 1 1 , SrcSpan "tests/examples/LanguagePragma.hs" 4 1 4 1 , SrcSpan "tests/examples/LanguagePragma.hs" 4 1 4 1 , SrcSpan "tests/examples/LanguagePragma.hs" 4 1 4 1 , SrcSpan "tests/examples/LanguagePragma.hs" 5 1 5 1 , SrcSpan "tests/examples/LanguagePragma.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 1 1 3 5 , srcInfoPoints = [ SrcSpan "tests/examples/LanguagePragma.hs" 1 1 1 13 , SrcSpan "tests/examples/LanguagePragma.hs" 3 2 3 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 2 1 2 16 , srcInfoPoints = [] } "RecordWildCards" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 1 4 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 1 4 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 1 4 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 6 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/LanguagePragma.hs" 4 6 4 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 8 4 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 8 4 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 8 4 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 8 4 13 , srcInfoPoints = [] } "print"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 14 4 21 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LanguagePragma.hs" 4 14 4 21 , srcInfoPoints = [] } "hello" "hello")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/LanguagePragma.hs.prettyparser.golden0000644000000000000000000000000612746233113025361 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/LanguagePragma.hs.prettyprinter.golden0000644000000000000000000000006612746233113025556 0ustar0000000000000000{-# LANGUAGE RecordWildCards #-} main = print "hello" haskell-src-exts-1.18.2/tests/examples/LineOptionsPragma.hs0000644000000000000000000000012212746233113022066 0ustar0000000000000000{-# OPTIONS #-} {-# LINE 49 "src/Language/C/Parser/Lexer.x" #-} module Fail where haskell-src-exts-1.18.2/tests/examples/LineOptionsPragma.hs.exactprinter.golden0000644000000000000000000000000612746233113026045 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/LineOptionsPragma.hs.parser.golden0000644000000000000000000000332012746233113024633 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LineOptionsPragma.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/LineOptionsPragma.hs" 1 1 1 1 , SrcSpan "tests/examples/LineOptionsPragma.hs" 3 1 3 1 , SrcSpan "tests/examples/LineOptionsPragma.hs" 3 1 3 1 , SrcSpan "tests/examples/LineOptionsPragma.hs" 4 1 4 1 , SrcSpan "tests/examples/LineOptionsPragma.hs" 4 1 4 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LineOptionsPragma.hs" 3 1 3 18 , srcInfoPoints = [ SrcSpan "tests/examples/LineOptionsPragma.hs" 3 1 3 7 , SrcSpan "tests/examples/LineOptionsPragma.hs" 3 13 3 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LineOptionsPragma.hs" 3 8 3 12 , srcInfoPoints = [] } "Fail") Nothing Nothing)) [ OptionsPragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/LineOptionsPragma.hs" 1 1 1 16 , srcInfoPoints = [ SrcSpan "tests/examples/LineOptionsPragma.hs" 1 1 1 13 , SrcSpan "tests/examples/LineOptionsPragma.hs" 1 13 1 16 ] } Nothing "" ] [] [] , [ Comment True (SrcSpan "tests/examples/LineOptionsPragma.hs" 2 1 2 48) "# LINE 49 \"src/Language/C/Parser/Lexer.x\" #" ] ) haskell-src-exts-1.18.2/tests/examples/LineOptionsPragma.hs.prettyparser.golden0000644000000000000000000000000612746233113026101 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/LineOptionsPragma.hs.prettyprinter.golden0000644000000000000000000000004212746233113026270 0ustar0000000000000000{-# OPTIONS #-} module Fail where haskell-src-exts-1.18.2/tests/examples/MagicHashN.hs0000644000000000000000000000015112746233113020437 0ustar0000000000000000{-# LANGUAGE MagicHash #-} module MagicHashN where a# = 1 b## = 2 c### = 3 main = print (a#, b##, c###) haskell-src-exts-1.18.2/tests/examples/MagicHashN.hs.exactprinter.golden0000644000000000000000000000000612746233113024414 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MagicHashN.hs.parser.golden0000644000000000000000000002364212746233113023213 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashN.hs" 1 1 1 1 , SrcSpan "tests/examples/MagicHashN.hs" 2 1 2 1 , SrcSpan "tests/examples/MagicHashN.hs" 2 1 2 1 , SrcSpan "tests/examples/MagicHashN.hs" 4 1 4 1 , SrcSpan "tests/examples/MagicHashN.hs" 5 1 5 1 , SrcSpan "tests/examples/MagicHashN.hs" 6 1 6 1 , SrcSpan "tests/examples/MagicHashN.hs" 7 1 7 1 , SrcSpan "tests/examples/MagicHashN.hs" 8 1 8 1 , SrcSpan "tests/examples/MagicHashN.hs" 8 1 8 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 2 1 2 24 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashN.hs" 2 1 2 7 , SrcSpan "tests/examples/MagicHashN.hs" 2 19 2 24 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 2 8 2 18 , srcInfoPoints = [] } "MagicHashN") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 1 1 1 27 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashN.hs" 1 1 1 13 , SrcSpan "tests/examples/MagicHashN.hs" 1 24 1 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 1 14 1 23 , srcInfoPoints = [] } "MagicHash" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 4 1 4 7 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 4 1 4 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 4 1 4 3 , srcInfoPoints = [] } "a#")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 4 4 4 7 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashN.hs" 4 4 4 5 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 4 6 4 7 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 4 6 4 7 , srcInfoPoints = [] } 1 "1"))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 5 1 5 8 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 5 1 5 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 5 1 5 4 , srcInfoPoints = [] } "b##")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 5 5 5 8 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashN.hs" 5 5 5 6 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 5 7 5 8 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 5 7 5 8 , srcInfoPoints = [] } 2 "2"))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 6 1 6 9 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 6 1 6 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 6 1 6 5 , srcInfoPoints = [] } "c###")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 6 6 6 9 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashN.hs" 6 6 6 7 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 6 8 6 9 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 6 8 6 9 , srcInfoPoints = [] } 3 "3"))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 1 7 29 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 1 7 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 1 7 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 6 7 29 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashN.hs" 7 6 7 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 8 7 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 8 7 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 8 7 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 8 7 13 , srcInfoPoints = [] } "print"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 14 7 29 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashN.hs" 7 14 7 15 , SrcSpan "tests/examples/MagicHashN.hs" 7 17 7 18 , SrcSpan "tests/examples/MagicHashN.hs" 7 22 7 23 , SrcSpan "tests/examples/MagicHashN.hs" 7 28 7 29 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 15 7 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 15 7 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 15 7 17 , srcInfoPoints = [] } "a#")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 19 7 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 19 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 19 7 22 , srcInfoPoints = [] } "b##")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 24 7 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 24 7 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashN.hs" 7 24 7 28 , srcInfoPoints = [] } "c###")) ]))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/MagicHashN.hs.prettyparser.golden0000644000000000000000000000000612746233113024450 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MagicHashN.hs.prettyprinter.golden0000644000000000000000000000015012746233113024637 0ustar0000000000000000{-# LANGUAGE MagicHash #-} module MagicHashN where a# = 1 b## = 2 c### = 3 main = print (a#, b##, c###) haskell-src-exts-1.18.2/tests/examples/MagicHashUnboxedTuples.hs0000644000000000000000000000020112746233113023037 0ustar0000000000000000{-# LANGUAGE MagicHash, UnboxedTuples #-} module MagicHashUnboxedTuples where f (#x, y #) = (# a#, b #) where a# = a# b = b haskell-src-exts-1.18.2/tests/examples/MagicHashUnboxedTuples.hs.exactprinter.golden0000644000000000000000000000000612746233113027020 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MagicHashUnboxedTuples.hs.parser.golden0000644000000000000000000003105212746233113025611 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 1 1 1 1 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 2 1 2 1 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 2 1 2 1 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 1 4 1 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 7 1 7 1 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 7 1 7 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 2 1 2 36 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 2 1 2 7 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 2 31 2 36 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 2 8 2 30 , srcInfoPoints = [] } "MagicHashUnboxedTuples") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 1 1 1 42 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 1 1 1 13 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 1 23 1 24 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 1 39 1 42 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 1 14 1 23 , srcInfoPoints = [] } "MagicHash" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 1 25 1 38 , srcInfoPoints = [] } "UnboxedTuples" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 1 6 8 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 27 4 32 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 1 6 8 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 27 4 32 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 1 4 2 , srcInfoPoints = [] } "f") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 3 4 12 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 3 4 5 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 6 4 7 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 10 4 12 ] } Unboxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 5 4 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 5 4 6 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 8 4 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 8 4 9 , srcInfoPoints = [] } "y") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 13 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 13 4 14 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 15 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 15 4 17 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 20 4 21 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 24 4 26 ] } Unboxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 18 4 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 18 4 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 18 4 20 , srcInfoPoints = [] } "a#")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 22 4 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 22 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 4 22 4 23 , srcInfoPoints = [] } "b")) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 3 6 8 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 3 5 3 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 3 6 3 , SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 7 1 7 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 3 5 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 3 5 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 3 5 5 , srcInfoPoints = [] } "a#")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 6 5 10 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 6 5 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 8 5 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 8 5 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 5 8 5 10 , srcInfoPoints = [] } "a#")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 3 6 8 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 3 6 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 3 6 4 , srcInfoPoints = [] } "b")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 5 6 8 , srcInfoPoints = [ SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 5 6 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 7 6 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 7 6 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MagicHashUnboxedTuples.hs" 6 7 6 8 , srcInfoPoints = [] } "b")))) Nothing ])) ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/MagicHashUnboxedTuples.hs.prettyparser.golden0000644000000000000000000000000612746233113027054 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MagicHashUnboxedTuples.hs.prettyprinter.golden0000644000000000000000000000020712746233113027246 0ustar0000000000000000{-# LANGUAGE MagicHash, UnboxedTuples #-} module MagicHashUnboxedTuples where f (# x, y #) = (# a#, b #) where a# = a# b = b haskell-src-exts-1.18.2/tests/examples/MinimalPragma.hs0000644000000000000000000000024112746233113021213 0ustar0000000000000000class Eq a where (==) :: a -> a -> Bool (/=) :: a -> a -> Bool x == y = not (x /= y) x /= y = not (x == y) {-# MINIMAL (==) | (/=) #-} haskell-src-exts-1.18.2/tests/examples/MinimalPragma.hs.exactprinter.golden0000644000000000000000000000000612746233113025170 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MinimalPragma.hs.parser.golden0000644000000000000000000007317612746233113023776 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 1 1 1 1 , SrcSpan "tests/examples/MinimalPragma.hs" 1 1 1 1 , SrcSpan "tests/examples/MinimalPragma.hs" 1 1 1 1 , SrcSpan "tests/examples/MinimalPragma.hs" 8 1 8 1 , SrcSpan "tests/examples/MinimalPragma.hs" 8 1 8 1 ] } Nothing [] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 1 1 6 33 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 1 1 1 6 , SrcSpan "tests/examples/MinimalPragma.hs" 1 12 1 17 , SrcSpan "tests/examples/MinimalPragma.hs" 2 6 2 6 , SrcSpan "tests/examples/MinimalPragma.hs" 3 6 3 6 , SrcSpan "tests/examples/MinimalPragma.hs" 4 6 4 6 , SrcSpan "tests/examples/MinimalPragma.hs" 5 6 5 6 , SrcSpan "tests/examples/MinimalPragma.hs" 6 6 6 6 , SrcSpan "tests/examples/MinimalPragma.hs" 8 1 8 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 1 7 1 11 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 1 7 1 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 1 7 1 9 , srcInfoPoints = [] } "Eq")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 1 10 1 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 1 10 1 11 , srcInfoPoints = [] } "a"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 6 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 2 11 2 13 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 6 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 2 11 2 13 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 6 2 10 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 2 6 2 7 , SrcSpan "tests/examples/MinimalPragma.hs" 2 7 2 9 , SrcSpan "tests/examples/MinimalPragma.hs" 2 9 2 10 ] } "==" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 14 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 2 16 2 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 14 2 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 14 2 15 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 19 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 2 21 2 23 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 19 2 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 19 2 20 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 24 2 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 24 2 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 2 24 2 28 , srcInfoPoints = [] } "Bool")))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 6 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 3 11 3 13 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 6 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 3 11 3 13 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 6 3 10 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 3 6 3 7 , SrcSpan "tests/examples/MinimalPragma.hs" 3 7 3 9 , SrcSpan "tests/examples/MinimalPragma.hs" 3 9 3 10 ] } "/=" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 14 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 3 16 3 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 14 3 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 14 3 15 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 19 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 3 21 3 23 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 19 3 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 19 3 20 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 24 3 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 24 3 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 3 24 3 28 , srcInfoPoints = [] } "Bool")))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 6 4 27 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 6 4 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 6 4 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 6 4 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 6 4 7 , srcInfoPoints = [] } "x")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 8 4 10 , srcInfoPoints = [] } "==") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 11 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 11 4 12 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 13 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 4 13 4 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 15 4 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 15 4 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 15 4 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 15 4 18 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 19 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 4 19 4 20 , SrcSpan "tests/examples/MinimalPragma.hs" 4 26 4 27 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 20 4 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 20 4 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 20 4 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 20 4 21 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 22 4 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 22 4 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 22 4 24 , srcInfoPoints = [] } "/="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 25 4 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 25 4 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 4 25 4 26 , srcInfoPoints = [] } "y"))))))) Nothing ]) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 6 5 27 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 6 5 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 6 5 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 6 5 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 6 5 7 , srcInfoPoints = [] } "x")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 8 5 10 , srcInfoPoints = [] } "/=") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 11 5 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 11 5 12 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 13 5 27 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 5 13 5 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 15 5 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 15 5 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 15 5 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 15 5 18 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 19 5 27 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 5 19 5 20 , SrcSpan "tests/examples/MinimalPragma.hs" 5 26 5 27 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 20 5 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 20 5 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 20 5 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 20 5 21 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 22 5 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 22 5 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 22 5 24 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 25 5 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 25 5 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 5 25 5 26 , srcInfoPoints = [] } "y"))))))) Nothing ]) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 6 6 6 33 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 6 6 6 17 , SrcSpan "tests/examples/MinimalPragma.hs" 6 30 6 33 ] } (MinimalPragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 6 6 6 33 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 6 6 6 17 , SrcSpan "tests/examples/MinimalPragma.hs" 6 30 6 33 ] } (Just (OrFormula SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 6 18 6 29 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 6 23 6 24 ] } [ VarFormula SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 6 18 6 22 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 6 18 6 19 , SrcSpan "tests/examples/MinimalPragma.hs" 6 19 6 21 , SrcSpan "tests/examples/MinimalPragma.hs" 6 21 6 22 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 6 18 6 22 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 6 18 6 19 , SrcSpan "tests/examples/MinimalPragma.hs" 6 19 6 21 , SrcSpan "tests/examples/MinimalPragma.hs" 6 21 6 22 ] } "==") , VarFormula SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 6 25 6 29 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 6 25 6 26 , SrcSpan "tests/examples/MinimalPragma.hs" 6 26 6 28 , SrcSpan "tests/examples/MinimalPragma.hs" 6 28 6 29 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MinimalPragma.hs" 6 25 6 29 , srcInfoPoints = [ SrcSpan "tests/examples/MinimalPragma.hs" 6 25 6 26 , SrcSpan "tests/examples/MinimalPragma.hs" 6 26 6 28 , SrcSpan "tests/examples/MinimalPragma.hs" 6 28 6 29 ] } "/=") ]))) ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/MinimalPragma.hs.prettyparser.golden0000644000000000000000000000000612746233113025224 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MinimalPragma.hs.prettyprinter.golden0000644000000000000000000000030112746233113025411 0ustar0000000000000000class Eq a where (==) :: a -> a -> Bool (/=) :: a -> a -> Bool x == y = not (x /= y) x /= y = not (x == y) {-# MINIMAL (==) | (/=) #-} haskell-src-exts-1.18.2/tests/examples/MultiCtxt.hs0000644000000000000000000000016212746233113020434 0ustar0000000000000000{-# LANGUAGE RankNTypes #-} module MultiCtxt where multipleCtx :: Eq a => (Show a => a) multipleCtx = undefined haskell-src-exts-1.18.2/tests/examples/MultiCtxt.hs.exactprinter.golden0000644000000000000000000000000612746233113024407 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MultiCtxt.hs.parser.golden0000644000000000000000000002044212746233113023201 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 1 1 1 1 , SrcSpan "tests/examples/MultiCtxt.hs" 3 1 3 1 , SrcSpan "tests/examples/MultiCtxt.hs" 3 1 3 1 , SrcSpan "tests/examples/MultiCtxt.hs" 5 1 5 1 , SrcSpan "tests/examples/MultiCtxt.hs" 6 1 6 1 , SrcSpan "tests/examples/MultiCtxt.hs" 7 1 7 1 , SrcSpan "tests/examples/MultiCtxt.hs" 7 1 7 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 3 1 3 23 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 3 1 3 7 , SrcSpan "tests/examples/MultiCtxt.hs" 3 18 3 23 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 3 8 3 17 , srcInfoPoints = [] } "MultiCtxt") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 1 1 1 28 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 1 1 1 13 , SrcSpan "tests/examples/MultiCtxt.hs" 1 25 1 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 1 14 1 24 , srcInfoPoints = [] } "RankNTypes" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 1 5 37 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 5 13 5 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 1 5 12 , srcInfoPoints = [] } "multipleCtx" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 16 5 37 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 16 5 23 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 5 21 5 23 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 16 5 23 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 5 21 5 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 16 5 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 16 5 18 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 19 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 19 5 20 , srcInfoPoints = [] } "a") ]))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 24 5 37 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 5 24 5 25 , SrcSpan "tests/examples/MultiCtxt.hs" 5 36 5 37 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 25 5 36 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 25 5 34 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 5 32 5 34 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 25 5 34 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 5 32 5 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 25 5 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 25 5 29 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 30 5 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 30 5 31 , srcInfoPoints = [] } "a") ]))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 35 5 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 5 35 5 36 , srcInfoPoints = [] } "a"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 6 1 6 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 6 1 6 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 6 1 6 12 , srcInfoPoints = [] } "multipleCtx")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 6 13 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/MultiCtxt.hs" 6 13 6 14 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 6 15 6 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 6 15 6 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiCtxt.hs" 6 15 6 24 , srcInfoPoints = [] } "undefined")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/MultiCtxt.hs.prettyparser.golden0000644000000000000000000000000612746233113024443 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MultiCtxt.hs.prettyprinter.golden0000644000000000000000000000016112746233113024634 0ustar0000000000000000{-# LANGUAGE RankNTypes #-} module MultiCtxt where multipleCtx :: Eq a => (Show a => a) multipleCtx = undefined haskell-src-exts-1.18.2/tests/examples/MultiLinePragma.hs0000644000000000000000000000017212746233113021532 0ustar0000000000000000{-# OPTIONS_GHC -a -a -a -a -a -a -a -a -a -a -a #-} main :: IO () main = dat haskell-src-exts-1.18.2/tests/examples/MultiLinePragma.hs.exactprinter.golden0000644000000000000000000000000612746233113025504 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MultiLinePragma.hs.parser.golden0000644000000000000000000001266212746233113024303 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 1 1 15 1 , srcInfoPoints = [ SrcSpan "tests/examples/MultiLinePragma.hs" 1 1 1 1 , SrcSpan "tests/examples/MultiLinePragma.hs" 13 1 13 1 , SrcSpan "tests/examples/MultiLinePragma.hs" 13 1 13 1 , SrcSpan "tests/examples/MultiLinePragma.hs" 13 1 13 1 , SrcSpan "tests/examples/MultiLinePragma.hs" 14 1 14 1 , SrcSpan "tests/examples/MultiLinePragma.hs" 15 1 15 1 , SrcSpan "tests/examples/MultiLinePragma.hs" 15 1 15 1 ] } Nothing [ OptionsPragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 1 1 12 11 , srcInfoPoints = [ SrcSpan "tests/examples/MultiLinePragma.hs" 1 1 12 8 , SrcSpan "tests/examples/MultiLinePragma.hs" 12 8 12 11 ] } (Just GHC) "\n -a\n -a\n -a\n -a\n -a\n -a\n -a\n -a\n -a\n -a\n -a " ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 1 13 14 , srcInfoPoints = [ SrcSpan "tests/examples/MultiLinePragma.hs" 13 6 13 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 1 13 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 9 13 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 9 13 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 9 13 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 9 13 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 12 13 14 , srcInfoPoints = [ SrcSpan "tests/examples/MultiLinePragma.hs" 13 12 13 13 , SrcSpan "tests/examples/MultiLinePragma.hs" 13 13 13 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 12 13 14 , srcInfoPoints = [ SrcSpan "tests/examples/MultiLinePragma.hs" 13 12 13 13 , SrcSpan "tests/examples/MultiLinePragma.hs" 13 13 13 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 13 12 13 14 , srcInfoPoints = [ SrcSpan "tests/examples/MultiLinePragma.hs" 13 12 13 13 , SrcSpan "tests/examples/MultiLinePragma.hs" 13 13 13 14 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 14 1 14 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 14 1 14 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 14 1 14 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 14 6 14 11 , srcInfoPoints = [ SrcSpan "tests/examples/MultiLinePragma.hs" 14 6 14 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 14 8 14 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 14 8 14 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiLinePragma.hs" 14 8 14 11 , srcInfoPoints = [] } "dat")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/MultiLinePragma.hs.prettyparser.golden0000644000000000000000000000000612746233113025540 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MultiLinePragma.hs.prettyprinter.golden0000644000000000000000000000017312746233113025734 0ustar0000000000000000{-# OPTIONS_GHC -a -a -a -a -a -a -a -a -a -a -a #-} main :: IO () main = dat haskell-src-exts-1.18.2/tests/examples/MultiWayIf.hs0000644000000000000000000000126312746233113020534 0ustar0000000000000000{-# LANGUAGE MultiWayIf #-} module MultiWayIf where foo = if | test1 -> e1 | test2 witharg -> e2 | otherwise -> def bar = if { | test1 -> if { | test2 -> e1 | test3 -> e2 } | test4 -> e3 } -- taken from GHC's test suite x = 10 x1 = if | x < 10 -> "< 10" | otherwise -> "" x2 = if | x < 10 -> "< 10" | otherwise -> "" x3 = if | x < 10 -> "< 10" | otherwise -> "" x4 = if | True -> "yes" x5 = if | True -> if | False -> 1 | True -> 2 x6 = if | x < 10 -> if | True -> "yes" | False -> "no" | otherwise -> "maybe" x7 = (if | True -> 0) -- issue #98 spam = if | () <- () -> () haskell-src-exts-1.18.2/tests/examples/MultiWayIf.hs.exactprinter.golden0000644000000000000000000000000612746233113024504 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MultiWayIf.hs.parser.golden0000644000000000000000000023514512746233113023306 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 1 1 31 1 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 1 1 1 1 , SrcSpan "tests/examples/MultiWayIf.hs" 2 1 2 1 , SrcSpan "tests/examples/MultiWayIf.hs" 2 1 2 1 , SrcSpan "tests/examples/MultiWayIf.hs" 4 1 4 1 , SrcSpan "tests/examples/MultiWayIf.hs" 8 1 8 1 , SrcSpan "tests/examples/MultiWayIf.hs" 14 1 14 1 , SrcSpan "tests/examples/MultiWayIf.hs" 15 1 15 1 , SrcSpan "tests/examples/MultiWayIf.hs" 16 1 16 1 , SrcSpan "tests/examples/MultiWayIf.hs" 18 1 18 1 , SrcSpan "tests/examples/MultiWayIf.hs" 20 1 20 1 , SrcSpan "tests/examples/MultiWayIf.hs" 21 1 21 1 , SrcSpan "tests/examples/MultiWayIf.hs" 23 1 23 1 , SrcSpan "tests/examples/MultiWayIf.hs" 27 1 27 1 , SrcSpan "tests/examples/MultiWayIf.hs" 30 1 30 1 , SrcSpan "tests/examples/MultiWayIf.hs" 31 1 31 1 , SrcSpan "tests/examples/MultiWayIf.hs" 31 1 31 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 2 1 2 24 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 2 1 2 7 , SrcSpan "tests/examples/MultiWayIf.hs" 2 19 2 24 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 2 8 2 18 , srcInfoPoints = [] } "MultiWayIf") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 1 1 1 28 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 1 1 1 13 , SrcSpan "tests/examples/MultiWayIf.hs" 1 25 1 28 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 1 14 1 24 , srcInfoPoints = [] } "MultiWayIf" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 1 6 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 1 4 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 1 4 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 5 6 28 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 4 5 4 6 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 7 6 28 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 4 7 4 9 , SrcSpan "tests/examples/MultiWayIf.hs" 4 10 4 10 , SrcSpan "tests/examples/MultiWayIf.hs" 5 10 5 10 , SrcSpan "tests/examples/MultiWayIf.hs" 6 10 6 10 , SrcSpan "tests/examples/MultiWayIf.hs" 8 1 8 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 10 4 23 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 4 10 4 11 , SrcSpan "tests/examples/MultiWayIf.hs" 4 18 4 20 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 12 4 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 12 4 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 12 4 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 12 4 17 , srcInfoPoints = [] } "test1"))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 21 4 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 21 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 4 21 4 23 , srcInfoPoints = [] } "e1"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 10 5 31 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 5 10 5 11 , SrcSpan "tests/examples/MultiWayIf.hs" 5 26 5 28 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 12 5 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 12 5 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 12 5 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 12 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 12 5 17 , srcInfoPoints = [] } "test2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 18 5 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 18 5 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 18 5 25 , srcInfoPoints = [] } "witharg")))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 29 5 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 29 5 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 5 29 5 31 , srcInfoPoints = [] } "e2"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 6 10 6 28 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 6 10 6 11 , SrcSpan "tests/examples/MultiWayIf.hs" 6 22 6 24 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 6 12 6 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 6 12 6 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 6 12 6 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 6 12 6 21 , srcInfoPoints = [] } "otherwise"))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 6 25 6 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 6 25 6 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 6 25 6 28 , srcInfoPoints = [] } "def"))) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 1 11 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 1 8 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 1 8 4 , srcInfoPoints = [] } "bar")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 5 11 11 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 8 5 8 6 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 7 11 11 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 8 7 8 9 , SrcSpan "tests/examples/MultiWayIf.hs" 8 10 8 11 , SrcSpan "tests/examples/MultiWayIf.hs" 11 10 11 11 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 12 9 43 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 8 12 8 13 , SrcSpan "tests/examples/MultiWayIf.hs" 8 20 8 22 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 14 8 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 14 8 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 14 8 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 14 8 19 , srcInfoPoints = [] } "test1"))) ] (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 23 9 43 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 8 23 8 25 , SrcSpan "tests/examples/MultiWayIf.hs" 8 26 8 27 , SrcSpan "tests/examples/MultiWayIf.hs" 9 42 9 43 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 28 8 41 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 8 28 8 29 , SrcSpan "tests/examples/MultiWayIf.hs" 8 36 8 38 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 30 8 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 30 8 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 30 8 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 30 8 35 , srcInfoPoints = [] } "test2"))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 39 8 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 39 8 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 8 39 8 41 , srcInfoPoints = [] } "e1"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 9 28 9 41 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 9 28 9 29 , SrcSpan "tests/examples/MultiWayIf.hs" 9 36 9 38 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 9 30 9 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 9 30 9 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 9 30 9 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 9 30 9 35 , srcInfoPoints = [] } "test3"))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 9 39 9 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 9 39 9 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 9 39 9 41 , srcInfoPoints = [] } "e2"))) ]) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 10 12 10 25 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 10 12 10 13 , SrcSpan "tests/examples/MultiWayIf.hs" 10 20 10 22 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 10 14 10 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 10 14 10 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 10 14 10 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 10 14 10 19 , srcInfoPoints = [] } "test4"))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 10 23 10 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 10 23 10 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 10 23 10 25 , srcInfoPoints = [] } "e3"))) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 14 1 14 8 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 14 1 14 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 14 1 14 2 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 14 4 14 8 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 14 4 14 5 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 14 6 14 8 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 14 6 14 8 , srcInfoPoints = [] } 10 "10"))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 1 15 45 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 1 15 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 1 15 3 , srcInfoPoints = [] } "x1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 4 15 45 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 15 4 15 5 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 6 15 45 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 15 6 15 8 , SrcSpan "tests/examples/MultiWayIf.hs" 15 9 15 9 , SrcSpan "tests/examples/MultiWayIf.hs" 16 1 16 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 9 15 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 15 9 15 10 , SrcSpan "tests/examples/MultiWayIf.hs" 15 18 15 20 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 11 15 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 11 15 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 11 15 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 11 15 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 11 15 12 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 13 15 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 13 15 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 13 15 14 , srcInfoPoints = [] } "<"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 15 15 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 15 15 17 , srcInfoPoints = [] } 10 "10"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 21 15 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 21 15 27 , srcInfoPoints = [] } "< 10" "< 10")) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 28 15 45 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 15 28 15 29 , SrcSpan "tests/examples/MultiWayIf.hs" 15 40 15 42 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 30 15 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 30 15 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 30 15 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 30 15 39 , srcInfoPoints = [] } "otherwise"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 43 15 45 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 15 43 15 45 , srcInfoPoints = [] } "" "")) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 1 17 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 1 16 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 1 16 3 , srcInfoPoints = [] } "x2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 4 17 26 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 16 4 16 5 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 6 17 26 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 16 6 16 8 , SrcSpan "tests/examples/MultiWayIf.hs" 16 9 16 9 , SrcSpan "tests/examples/MultiWayIf.hs" 17 9 17 9 , SrcSpan "tests/examples/MultiWayIf.hs" 18 1 18 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 9 16 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 16 9 16 10 , SrcSpan "tests/examples/MultiWayIf.hs" 16 18 16 20 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 11 16 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 11 16 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 11 16 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 11 16 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 11 16 12 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 13 16 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 13 16 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 13 16 14 , srcInfoPoints = [] } "<"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 15 16 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 15 16 17 , srcInfoPoints = [] } 10 "10"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 21 16 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 16 21 16 27 , srcInfoPoints = [] } "< 10" "< 10")) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 17 9 17 26 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 17 9 17 10 , SrcSpan "tests/examples/MultiWayIf.hs" 17 21 17 23 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 17 11 17 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 17 11 17 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 17 11 17 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 17 11 17 20 , srcInfoPoints = [] } "otherwise"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 17 24 17 26 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 17 24 17 26 , srcInfoPoints = [] } "" "")) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 1 19 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 1 18 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 1 18 3 , srcInfoPoints = [] } "x3")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 4 19 26 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 18 4 18 5 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 6 19 26 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 18 6 18 8 , SrcSpan "tests/examples/MultiWayIf.hs" 18 9 18 9 , SrcSpan "tests/examples/MultiWayIf.hs" 19 9 19 9 , SrcSpan "tests/examples/MultiWayIf.hs" 20 1 20 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 9 18 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 18 9 18 10 , SrcSpan "tests/examples/MultiWayIf.hs" 18 18 18 20 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 11 18 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 11 18 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 11 18 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 11 18 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 11 18 12 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 13 18 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 13 18 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 13 18 14 , srcInfoPoints = [] } "<"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 15 18 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 15 18 17 , srcInfoPoints = [] } 10 "10"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 21 18 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 18 21 18 27 , srcInfoPoints = [] } "< 10" "< 10")) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 19 9 19 26 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 19 9 19 10 , SrcSpan "tests/examples/MultiWayIf.hs" 19 21 19 23 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 19 11 19 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 19 11 19 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 19 11 19 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 19 11 19 20 , srcInfoPoints = [] } "otherwise"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 19 24 19 26 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 19 24 19 26 , srcInfoPoints = [] } "" "")) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 1 20 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 1 20 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 1 20 3 , srcInfoPoints = [] } "x4")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 4 20 24 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 20 4 20 5 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 6 20 24 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 20 6 20 8 , SrcSpan "tests/examples/MultiWayIf.hs" 20 9 20 9 , SrcSpan "tests/examples/MultiWayIf.hs" 21 1 21 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 9 20 24 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 20 9 20 10 , SrcSpan "tests/examples/MultiWayIf.hs" 20 16 20 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 11 20 15 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 11 20 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 11 20 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 11 20 15 , srcInfoPoints = [] } "True"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 19 20 24 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 20 19 20 24 , srcInfoPoints = [] } "yes" "yes")) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 1 21 46 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 1 21 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 1 21 3 , srcInfoPoints = [] } "x5")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 4 21 46 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 21 4 21 5 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 6 21 46 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 21 6 21 8 , SrcSpan "tests/examples/MultiWayIf.hs" 21 9 21 9 , SrcSpan "tests/examples/MultiWayIf.hs" 23 1 23 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 9 21 46 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 21 9 21 10 , SrcSpan "tests/examples/MultiWayIf.hs" 21 16 21 18 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 11 21 15 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 11 21 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 11 21 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 11 21 15 , srcInfoPoints = [] } "True"))) ] (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 19 21 46 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 21 19 21 21 , SrcSpan "tests/examples/MultiWayIf.hs" 21 22 21 22 , SrcSpan "tests/examples/MultiWayIf.hs" 23 1 23 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 22 21 34 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 21 22 21 23 , SrcSpan "tests/examples/MultiWayIf.hs" 21 30 21 32 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 24 21 29 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 24 21 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 24 21 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 24 21 29 , srcInfoPoints = [] } "False"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 33 21 34 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 33 21 34 , srcInfoPoints = [] } 1 "1")) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 35 21 46 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 21 35 21 36 , SrcSpan "tests/examples/MultiWayIf.hs" 21 42 21 44 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 37 21 41 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 37 21 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 37 21 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 37 21 41 , srcInfoPoints = [] } "True"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 45 21 46 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 21 45 21 46 , srcInfoPoints = [] } 2 "2")) ]) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 1 25 31 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 1 23 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 1 23 3 , srcInfoPoints = [] } "x6")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 4 25 31 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 23 4 23 5 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 6 25 31 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 23 6 23 8 , SrcSpan "tests/examples/MultiWayIf.hs" 23 9 23 9 , SrcSpan "tests/examples/MultiWayIf.hs" 25 9 25 9 , SrcSpan "tests/examples/MultiWayIf.hs" 27 1 27 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 9 24 39 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 23 9 23 10 , SrcSpan "tests/examples/MultiWayIf.hs" 23 18 23 20 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 11 23 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 11 23 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 11 23 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 11 23 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 11 23 12 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 13 23 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 13 23 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 13 23 14 , srcInfoPoints = [] } "<"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 15 23 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 15 23 17 , srcInfoPoints = [] } 10 "10"))) ] (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 21 24 39 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 23 21 23 23 , SrcSpan "tests/examples/MultiWayIf.hs" 23 24 23 24 , SrcSpan "tests/examples/MultiWayIf.hs" 24 24 24 24 , SrcSpan "tests/examples/MultiWayIf.hs" 25 9 25 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 24 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 23 24 23 25 , SrcSpan "tests/examples/MultiWayIf.hs" 23 31 23 33 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 26 23 30 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 26 23 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 26 23 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 26 23 30 , srcInfoPoints = [] } "True"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 34 23 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 23 34 23 39 , srcInfoPoints = [] } "yes" "yes")) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 24 24 24 39 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 24 24 24 25 , SrcSpan "tests/examples/MultiWayIf.hs" 24 32 24 34 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 24 26 24 31 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 24 26 24 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 24 26 24 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 24 26 24 31 , srcInfoPoints = [] } "False"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 24 35 24 39 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 24 35 24 39 , srcInfoPoints = [] } "no" "no")) ]) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 25 9 25 31 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 25 9 25 10 , SrcSpan "tests/examples/MultiWayIf.hs" 25 21 25 23 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 25 11 25 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 25 11 25 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 25 11 25 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 25 11 25 20 , srcInfoPoints = [] } "otherwise"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 25 24 25 31 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 25 24 25 31 , srcInfoPoints = [] } "maybe" "maybe")) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 1 27 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 1 27 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 1 27 3 , srcInfoPoints = [] } "x7")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 4 27 22 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 27 4 27 5 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 6 27 22 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 27 6 27 7 , SrcSpan "tests/examples/MultiWayIf.hs" 27 21 27 22 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 7 27 21 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 27 7 27 9 , SrcSpan "tests/examples/MultiWayIf.hs" 27 10 27 10 , SrcSpan "tests/examples/MultiWayIf.hs" 27 21 27 21 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 10 27 21 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 27 10 27 11 , SrcSpan "tests/examples/MultiWayIf.hs" 27 17 27 19 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 12 27 16 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 12 27 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 12 27 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 12 27 16 , srcInfoPoints = [] } "True"))) ] (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 20 27 21 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 27 20 27 21 , srcInfoPoints = [] } 0 "0")) ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 1 30 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 1 30 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 1 30 5 , srcInfoPoints = [] } "spam")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 6 30 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 6 30 7 ] } (MultiIf SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 8 30 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 8 30 10 , SrcSpan "tests/examples/MultiWayIf.hs" 30 11 30 11 , SrcSpan "tests/examples/MultiWayIf.hs" 31 1 31 0 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 11 30 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 11 30 12 , SrcSpan "tests/examples/MultiWayIf.hs" 30 22 30 24 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 13 30 21 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 16 30 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 13 30 15 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 13 30 14 , SrcSpan "tests/examples/MultiWayIf.hs" 30 14 30 15 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 13 30 15 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 13 30 14 , SrcSpan "tests/examples/MultiWayIf.hs" 30 14 30 15 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 13 30 15 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 13 30 14 , SrcSpan "tests/examples/MultiWayIf.hs" 30 14 30 15 ] })) []) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 19 30 21 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 19 30 20 , SrcSpan "tests/examples/MultiWayIf.hs" 30 20 30 21 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 19 30 21 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 19 30 20 , SrcSpan "tests/examples/MultiWayIf.hs" 30 20 30 21 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 19 30 21 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 19 30 20 , SrcSpan "tests/examples/MultiWayIf.hs" 30 20 30 21 ] }))) ] (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 25 30 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 25 30 26 , SrcSpan "tests/examples/MultiWayIf.hs" 30 26 30 27 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 25 30 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 25 30 26 , SrcSpan "tests/examples/MultiWayIf.hs" 30 26 30 27 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/MultiWayIf.hs" 30 25 30 27 , srcInfoPoints = [ SrcSpan "tests/examples/MultiWayIf.hs" 30 25 30 26 , SrcSpan "tests/examples/MultiWayIf.hs" 30 26 30 27 ] }))) ])) Nothing ] , [ Comment False (SrcSpan "tests/examples/MultiWayIf.hs" 13 1 13 31) " taken from GHC's test suite" , Comment False (SrcSpan "tests/examples/MultiWayIf.hs" 29 1 29 13) " issue #98" ] ) haskell-src-exts-1.18.2/tests/examples/MultiWayIf.hs.prettyparser.golden0000644000000000000000000000000612746233113024540 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/MultiWayIf.hs.prettyprinter.golden0000644000000000000000000000120612746233113024732 0ustar0000000000000000{-# LANGUAGE MultiWayIf #-} module MultiWayIf where foo = if | test1 -> e1 | test2 witharg -> e2 | otherwise -> def bar = if | test1 -> if | test2 -> e1 | test3 -> e2 | test4 -> e3 x = 10 x1 = if | x < 10 -> "< 10" | otherwise -> "" x2 = if | x < 10 -> "< 10" | otherwise -> "" x3 = if | x < 10 -> "< 10" | otherwise -> "" x4 = if | True -> "yes" x5 = if | True -> if | False -> 1 | True -> 2 x6 = if | x < 10 -> if | True -> "yes" | False -> "no" | otherwise -> "maybe" x7 = (if | True -> 0) spam = if | () <- () -> () haskell-src-exts-1.18.2/tests/examples/NegativePatterns.hs0000644000000000000000000000036512746233113021767 0ustar0000000000000000f 1 = -1 f (-1) = 1 f ( - 2) = 2 f ( - 3) = 3 data Z a = Higher a a | Same a a | Lower a a infixr 7 `Higher` infixr 6 `Same` infixr 5 `Lower` g :: Z Int -> () g ( -1 `Higher` x) = () g ( - 2 `Same` x) = () g ( - 3 `Lower` x) = () haskell-src-exts-1.18.2/tests/examples/NegativePatterns.hs.exactprinter.golden0000644000000000000000000000000612746233113025735 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/NegativePatterns.hs.parser.golden0000644000000000000000000012660412746233113024536 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 1 16 1 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 1 , SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 1 , SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 1 , SrcSpan "tests/examples/NegativePatterns.hs" 2 1 2 1 , SrcSpan "tests/examples/NegativePatterns.hs" 3 1 3 1 , SrcSpan "tests/examples/NegativePatterns.hs" 4 1 4 1 , SrcSpan "tests/examples/NegativePatterns.hs" 6 1 6 1 , SrcSpan "tests/examples/NegativePatterns.hs" 8 1 8 1 , SrcSpan "tests/examples/NegativePatterns.hs" 9 1 9 1 , SrcSpan "tests/examples/NegativePatterns.hs" 10 1 10 1 , SrcSpan "tests/examples/NegativePatterns.hs" 12 1 12 1 , SrcSpan "tests/examples/NegativePatterns.hs" 13 1 13 1 , SrcSpan "tests/examples/NegativePatterns.hs" 14 1 14 1 , SrcSpan "tests/examples/NegativePatterns.hs" 15 1 15 1 , SrcSpan "tests/examples/NegativePatterns.hs" 16 1 16 1 , SrcSpan "tests/examples/NegativePatterns.hs" 16 1 16 1 ] } Nothing [] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 1 4 15 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 1 1 2 , srcInfoPoints = [] } "f") [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 3 1 4 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 3 1 4 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 3 1 4 , srcInfoPoints = [] } 1 "1") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 5 1 9 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 1 5 1 6 ] } (NegApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 7 1 9 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 1 7 1 8 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 8 1 9 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 1 8 1 9 , srcInfoPoints = [] } 1 "1")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 1 2 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 1 2 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 3 2 7 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 2 3 2 4 , SrcSpan "tests/examples/NegativePatterns.hs" 2 6 2 7 ] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 4 2 6 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 2 4 2 5 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 4 2 5 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 2 4 2 5 ] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 5 2 6 , srcInfoPoints = [] } 1 "1")) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 8 2 11 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 2 8 2 9 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 10 2 11 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 2 10 2 11 , srcInfoPoints = [] } 1 "1"))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 1 3 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 1 3 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 3 3 9 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 3 3 3 4 , SrcSpan "tests/examples/NegativePatterns.hs" 3 8 3 9 ] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 5 3 8 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 3 5 3 6 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 5 3 6 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 3 5 3 6 ] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 7 3 8 , srcInfoPoints = [] } 2 "2")) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 10 3 13 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 3 10 3 11 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 12 3 13 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 3 12 3 13 , srcInfoPoints = [] } 2 "2"))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 1 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 1 4 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 3 4 11 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 4 3 4 4 , SrcSpan "tests/examples/NegativePatterns.hs" 4 10 4 11 ] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 6 4 10 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 4 6 4 7 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 6 4 7 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 4 6 4 7 ] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 9 4 10 , srcInfoPoints = [] } 3 "3")) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 12 4 15 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 4 12 4 13 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 14 4 15 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 4 14 4 15 , srcInfoPoints = [] } 3 "3"))) Nothing ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 1 6 45 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 6 10 6 11 , SrcSpan "tests/examples/NegativePatterns.hs" 6 23 6 24 , SrcSpan "tests/examples/NegativePatterns.hs" 6 34 6 35 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 1 6 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 6 6 9 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 6 6 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 6 6 7 , srcInfoPoints = [] } "Z")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 8 6 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 8 6 9 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 12 6 22 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 12 6 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 12 6 18 , srcInfoPoints = [] } "Higher") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 19 6 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 19 6 20 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 21 6 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 21 6 22 , srcInfoPoints = [] } "a") ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 25 6 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 25 6 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 25 6 29 , srcInfoPoints = [] } "Same") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 30 6 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 30 6 31 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 32 6 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 32 6 33 , srcInfoPoints = [] } "a") ]) , QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 36 6 45 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 36 6 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 36 6 41 , srcInfoPoints = [] } "Lower") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 42 6 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 42 6 43 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 44 6 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 6 44 6 45 , srcInfoPoints = [] } "a") ]) ] Nothing , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 8 1 8 18 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 8 8 8 9 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 8 1 8 7 , srcInfoPoints = [] }) (Just 7) [ ConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 8 10 8 18 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 8 10 8 11 , SrcSpan "tests/examples/NegativePatterns.hs" 8 11 8 17 , SrcSpan "tests/examples/NegativePatterns.hs" 8 17 8 18 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 8 10 8 18 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 8 10 8 11 , SrcSpan "tests/examples/NegativePatterns.hs" 8 11 8 17 , SrcSpan "tests/examples/NegativePatterns.hs" 8 17 8 18 ] } "Higher") ] , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 9 1 9 16 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 9 8 9 9 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 9 1 9 7 , srcInfoPoints = [] }) (Just 6) [ ConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 9 10 9 16 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 9 10 9 11 , SrcSpan "tests/examples/NegativePatterns.hs" 9 11 9 15 , SrcSpan "tests/examples/NegativePatterns.hs" 9 15 9 16 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 9 10 9 16 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 9 10 9 11 , SrcSpan "tests/examples/NegativePatterns.hs" 9 11 9 15 , SrcSpan "tests/examples/NegativePatterns.hs" 9 15 9 16 ] } "Same") ] , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 10 1 10 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 10 8 10 9 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 10 1 10 7 , srcInfoPoints = [] }) (Just 5) [ ConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 10 10 10 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 10 10 10 11 , SrcSpan "tests/examples/NegativePatterns.hs" 10 11 10 16 , SrcSpan "tests/examples/NegativePatterns.hs" 10 16 10 17 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 10 10 10 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 10 10 10 11 , SrcSpan "tests/examples/NegativePatterns.hs" 10 11 10 16 , SrcSpan "tests/examples/NegativePatterns.hs" 10 16 10 17 ] } "Lower") ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 1 12 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 12 3 12 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 1 12 2 , srcInfoPoints = [] } "g" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 12 12 12 14 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 11 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 6 12 7 , srcInfoPoints = [] } "Z"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 8 12 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 8 12 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 8 12 11 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 16 , SrcSpan "tests/examples/NegativePatterns.hs" 12 16 12 17 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 16 , SrcSpan "tests/examples/NegativePatterns.hs" 12 16 12 17 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 12 15 12 16 , SrcSpan "tests/examples/NegativePatterns.hs" 12 16 12 17 ] })))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 1 15 27 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 1 13 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 1 13 2 , srcInfoPoints = [] } "g") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 3 13 22 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 13 3 13 4 , SrcSpan "tests/examples/NegativePatterns.hs" 13 21 13 22 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 21 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 9 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 8 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 8 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 13 7 13 8 ] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 8 13 9 , srcInfoPoints = [] } 1 "1")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 10 13 18 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 13 10 13 11 , SrcSpan "tests/examples/NegativePatterns.hs" 13 11 13 17 , SrcSpan "tests/examples/NegativePatterns.hs" 13 17 13 18 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 11 13 17 , srcInfoPoints = [] } "Higher")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 20 13 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 20 13 21 , srcInfoPoints = [] } "x"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 23 13 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 13 23 13 24 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 26 , SrcSpan "tests/examples/NegativePatterns.hs" 13 26 13 27 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 26 , SrcSpan "tests/examples/NegativePatterns.hs" 13 26 13 27 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 13 25 13 26 , SrcSpan "tests/examples/NegativePatterns.hs" 13 26 13 27 ] })))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 1 14 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 1 14 2 , srcInfoPoints = [] } "g") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 3 14 22 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 14 3 14 4 , SrcSpan "tests/examples/NegativePatterns.hs" 14 21 14 22 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 21 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 10 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 7 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 7 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 14 6 14 7 ] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 9 14 10 , srcInfoPoints = [] } 2 "2")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 11 14 17 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 14 11 14 12 , SrcSpan "tests/examples/NegativePatterns.hs" 14 12 14 16 , SrcSpan "tests/examples/NegativePatterns.hs" 14 16 14 17 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 12 14 16 , srcInfoPoints = [] } "Same")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 20 14 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 20 14 21 , srcInfoPoints = [] } "x"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 23 14 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 14 23 14 24 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 26 , SrcSpan "tests/examples/NegativePatterns.hs" 14 26 14 27 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 26 , SrcSpan "tests/examples/NegativePatterns.hs" 14 26 14 27 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 14 25 14 26 , SrcSpan "tests/examples/NegativePatterns.hs" 14 26 14 27 ] })))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 1 15 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 1 15 2 , srcInfoPoints = [] } "g") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 3 15 22 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 15 3 15 4 , SrcSpan "tests/examples/NegativePatterns.hs" 15 21 15 22 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 21 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 11 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 6 ] } (Negative SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 6 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 15 5 15 6 ] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 10 15 11 , srcInfoPoints = [] } 3 "3")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 12 15 19 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 15 12 15 13 , SrcSpan "tests/examples/NegativePatterns.hs" 15 13 15 18 , SrcSpan "tests/examples/NegativePatterns.hs" 15 18 15 19 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 13 15 18 , srcInfoPoints = [] } "Lower")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 20 15 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 20 15 21 , srcInfoPoints = [] } "x"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 23 15 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 15 23 15 24 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 26 , SrcSpan "tests/examples/NegativePatterns.hs" 15 26 15 27 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 26 , SrcSpan "tests/examples/NegativePatterns.hs" 15 26 15 27 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 27 , srcInfoPoints = [ SrcSpan "tests/examples/NegativePatterns.hs" 15 25 15 26 , SrcSpan "tests/examples/NegativePatterns.hs" 15 26 15 27 ] })))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/NegativePatterns.hs.prettyparser.golden0000644000000000000000000000000612746233113025771 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/NegativePatterns.hs.prettyprinter.golden0000644000000000000000000000036412746233113026167 0ustar0000000000000000f 1 = -1 f (-1) = 1 f (-2) = 2 f (-3) = 3 data Z a = Higher a a | Same a a | Lower a a infixr 7 `Higher` infixr 6 `Same` infixr 5 `Lower` g :: Z Int -> () g (-1 `Higher` x) = () g (-2 `Same` x) = () g (-3 `Lower` x) = () haskell-src-exts-1.18.2/tests/examples/NegPrimWordLiteral.hs0000644000000000000000000000010212746233113022203 0ustar0000000000000000{-# LANGUAGE MagicHash #-} dummyWord = W# (-0x8000000000000000##) haskell-src-exts-1.18.2/tests/examples/NegPrimWordLiteral.hs.exactprinter.golden0000644000000000000000000000021012746233113026161 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/NegPrimWordLiteral.hs" 3 1) "Parse error: negative primitive word literal: - 9223372036854775808##" haskell-src-exts-1.18.2/tests/examples/NegPrimWordLiteral.hs.parser.golden0000644000000000000000000000021412746233113024751 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/NegPrimWordLiteral.hs" 3 1) "Parse error: negative primitive word literal: - 9223372036854775808##" haskell-src-exts-1.18.2/tests/examples/NegPrimWordLiteral.hs.prettyparser.golden0000644000000000000000000000021012746233113026215 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/NegPrimWordLiteral.hs" 3 1) "Parse error: negative primitive word literal: - 9223372036854775808##" haskell-src-exts-1.18.2/tests/examples/NegPrimWordLiteral.hs.prettyprinter.golden0000644000000000000000000000021012746233113026404 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/NegPrimWordLiteral.hs" 3 1) "Parse error: negative primitive word literal: - 9223372036854775808##" haskell-src-exts-1.18.2/tests/examples/NestedAsPat.hs0000644000000000000000000000007712746233113020657 0ustar0000000000000000module NestedAsPat where nestedAsPat [x@(Just _)] = undefined haskell-src-exts-1.18.2/tests/examples/NestedAsPat.hs.exactprinter.golden0000644000000000000000000000000612746233113024625 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/NestedAsPat.hs.parser.golden0000644000000000000000000001227512746233113023424 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/NestedAsPat.hs" 1 1 1 1 , SrcSpan "tests/examples/NestedAsPat.hs" 1 1 1 1 , SrcSpan "tests/examples/NestedAsPat.hs" 3 1 3 1 , SrcSpan "tests/examples/NestedAsPat.hs" 4 1 4 1 , SrcSpan "tests/examples/NestedAsPat.hs" 4 1 4 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 1 1 1 25 , srcInfoPoints = [ SrcSpan "tests/examples/NestedAsPat.hs" 1 1 1 7 , SrcSpan "tests/examples/NestedAsPat.hs" 1 20 1 25 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 1 8 1 19 , srcInfoPoints = [] } "NestedAsPat") Nothing Nothing)) [] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 1 3 37 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 1 3 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 1 3 12 , srcInfoPoints = [] } "nestedAsPat") [ PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 13 3 25 , srcInfoPoints = [ SrcSpan "tests/examples/NestedAsPat.hs" 3 13 3 14 , SrcSpan "tests/examples/NestedAsPat.hs" 3 24 3 25 ] } [ PAsPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 14 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/NestedAsPat.hs" 3 15 3 16 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 14 3 15 , srcInfoPoints = [] } "x") (PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 16 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/NestedAsPat.hs" 3 16 3 17 , SrcSpan "tests/examples/NestedAsPat.hs" 3 23 3 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 17 3 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 17 3 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 17 3 21 , srcInfoPoints = [] } "Just")) [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 22 3 23 , srcInfoPoints = [] } ])) ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 26 3 37 , srcInfoPoints = [ SrcSpan "tests/examples/NestedAsPat.hs" 3 26 3 27 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 28 3 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 28 3 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NestedAsPat.hs" 3 28 3 37 , srcInfoPoints = [] } "undefined")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/NestedAsPat.hs.prettyparser.golden0000644000000000000000000000000612746233113024661 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/NestedAsPat.hs.prettyprinter.golden0000644000000000000000000000007612746233113025057 0ustar0000000000000000module NestedAsPat where nestedAsPat [x@(Just _)] = undefined haskell-src-exts-1.18.2/tests/examples/NonDecreasing.hs0000644000000000000000000000025512746233113021221 0ustar0000000000000000module NonDecreasing where -- This should not work unless NondecreasingIndentation is -- on (which is is by default in GHC) main = do print 16 do print 17 print 18 haskell-src-exts-1.18.2/tests/examples/NonDecreasing.hs.exactprinter.golden0000644000000000000000000000017512746233113025200 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/NonDecreasing.hs" 8 3) "Parse error: Last statement in a do-block must be an expression" haskell-src-exts-1.18.2/tests/examples/NonDecreasing.hs.parser.golden0000644000000000000000000000020112746233113023752 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/NonDecreasing.hs" 8 3) "Parse error: Last statement in a do-block must be an expression" haskell-src-exts-1.18.2/tests/examples/NonDecreasing.hs.prettyparser.golden0000644000000000000000000000017512746233113025234 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/NonDecreasing.hs" 8 3) "Parse error: Last statement in a do-block must be an expression" haskell-src-exts-1.18.2/tests/examples/NonDecreasing.hs.prettyprinter.golden0000644000000000000000000000017512746233113025423 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/NonDecreasing.hs" 8 3) "Parse error: Last statement in a do-block must be an expression" haskell-src-exts-1.18.2/tests/examples/Nounpack2.hs0000644000000000000000000000004612746233113020340 0ustar0000000000000000 data Foo = Foo {-# NOUNPACK #-} Int haskell-src-exts-1.18.2/tests/examples/Nounpack2.hs.exactprinter.golden0000644000000000000000000000000612746233113024312 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Nounpack2.hs.parser.golden0000644000000000000000000000710412746233113023104 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/Nounpack2.hs" 3 1 3 1 , SrcSpan "tests/examples/Nounpack2.hs" 3 1 3 1 , SrcSpan "tests/examples/Nounpack2.hs" 3 1 3 1 , SrcSpan "tests/examples/Nounpack2.hs" 4 1 4 1 , SrcSpan "tests/examples/Nounpack2.hs" 4 1 4 1 ] } Nothing [] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 1 3 36 , srcInfoPoints = [ SrcSpan "tests/examples/Nounpack2.hs" 3 10 3 11 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 6 3 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 6 3 9 , srcInfoPoints = [] } "Foo")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 12 3 36 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 12 3 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 12 3 15 , srcInfoPoints = [] } "Foo") [ TyBang SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 16 3 36 , srcInfoPoints = [] } (NoStrictAnnot SrcSpanInfo { srcInfoSpan = SrcSpan "" (-1) (-1) (-1) (-1) , srcInfoPoints = [] }) (NoUnpack SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 16 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/Nounpack2.hs" 3 16 3 28 , SrcSpan "tests/examples/Nounpack2.hs" 3 29 3 32 ] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 33 3 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 33 3 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Nounpack2.hs" 3 33 3 36 , srcInfoPoints = [] } "Int"))) ]) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/Nounpack2.hs.prettyparser.golden0000644000000000000000000000000612746233113024346 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Nounpack2.hs.prettyprinter.golden0000644000000000000000000000004412746233113024537 0ustar0000000000000000data Foo = Foo {-# NOUNPACK #-} Int haskell-src-exts-1.18.2/tests/examples/NPlusK.hs0000644000000000000000000000005512746233113017654 0ustar0000000000000000{-# LANGUAGE NPlusKPatterns #-} f (n+3) = n haskell-src-exts-1.18.2/tests/examples/NPlusK.hs.exactprinter.golden0000644000000000000000000000000612746233113023626 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/NPlusK.hs.parser.golden0000644000000000000000000000703612746233113022424 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/NPlusK.hs" 1 1 1 1 , SrcSpan "tests/examples/NPlusK.hs" 3 1 3 1 , SrcSpan "tests/examples/NPlusK.hs" 3 1 3 1 , SrcSpan "tests/examples/NPlusK.hs" 3 1 3 1 , SrcSpan "tests/examples/NPlusK.hs" 4 1 4 1 , SrcSpan "tests/examples/NPlusK.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/NPlusK.hs" 1 1 1 13 , SrcSpan "tests/examples/NPlusK.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 1 14 1 28 , srcInfoPoints = [] } "NPlusKPatterns" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 1 3 12 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 1 3 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 1 3 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 3 3 8 , srcInfoPoints = [ SrcSpan "tests/examples/NPlusK.hs" 3 3 3 4 , SrcSpan "tests/examples/NPlusK.hs" 3 7 3 8 ] } (PNPlusK SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 4 3 7 , srcInfoPoints = [ SrcSpan "tests/examples/NPlusK.hs" 3 5 3 6 , SrcSpan "tests/examples/NPlusK.hs" 3 6 3 7 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 4 3 5 , srcInfoPoints = [] } "n") 3) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 9 3 12 , srcInfoPoints = [ SrcSpan "tests/examples/NPlusK.hs" 3 9 3 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 11 3 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 11 3 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/NPlusK.hs" 3 11 3 12 , srcInfoPoints = [] } "n")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/NPlusK.hs.prettyparser.golden0000644000000000000000000000000612746233113023662 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/NPlusK.hs.prettyprinter.golden0000644000000000000000000000005612746233113024056 0ustar0000000000000000{-# LANGUAGE NPlusKPatterns #-} f (n + 3) = n haskell-src-exts-1.18.2/tests/examples/OptionsPragma.hs0000644000000000000000000000004312746233113021260 0ustar0000000000000000{-# OPTIONS -fno-warn-orphans #-} haskell-src-exts-1.18.2/tests/examples/OptionsPragma.hs.exactprinter.golden0000644000000000000000000000000612746233113025235 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/OptionsPragma.hs.parser.golden0000644000000000000000000000161112746233113024024 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OptionsPragma.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/OptionsPragma.hs" 1 1 1 1 , SrcSpan "tests/examples/OptionsPragma.hs" 3 1 3 1 , SrcSpan "tests/examples/OptionsPragma.hs" 3 1 3 1 , SrcSpan "tests/examples/OptionsPragma.hs" 3 1 3 1 , SrcSpan "tests/examples/OptionsPragma.hs" 3 1 3 1 ] } Nothing [ OptionsPragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OptionsPragma.hs" 1 1 1 34 , srcInfoPoints = [ SrcSpan "tests/examples/OptionsPragma.hs" 1 1 1 31 , SrcSpan "tests/examples/OptionsPragma.hs" 1 31 1 34 ] } Nothing "-fno-warn-orphans " ] [] [] , [] ) haskell-src-exts-1.18.2/tests/examples/OptionsPragma.hs.prettyparser.golden0000644000000000000000000000000612746233113025271 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/OptionsPragma.hs.prettyprinter.golden0000644000000000000000000000004212746233113025460 0ustar0000000000000000{-# OPTIONS -fno-warn-orphans #-} haskell-src-exts-1.18.2/tests/examples/Overlapable.hs0000644000000000000000000000014012746233113020727 0ustar0000000000000000instance {-# OVERLAP #-} C a instance {-# NO_OVERLAP #-} C a instance {-# INCOHERENT #-} C a haskell-src-exts-1.18.2/tests/examples/Overlapable.hs.exactprinter.golden0000644000000000000000000000000612746233113024706 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Overlapable.hs.parser.golden0000644000000000000000000001506212746233113023502 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/Overlapable.hs" 1 1 1 1 , SrcSpan "tests/examples/Overlapable.hs" 1 1 1 1 , SrcSpan "tests/examples/Overlapable.hs" 1 1 1 1 , SrcSpan "tests/examples/Overlapable.hs" 3 1 3 1 , SrcSpan "tests/examples/Overlapable.hs" 5 1 5 1 , SrcSpan "tests/examples/Overlapable.hs" 7 1 7 1 , SrcSpan "tests/examples/Overlapable.hs" 7 1 7 1 ] } Nothing [] [] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/Overlapable.hs" 1 1 1 9 ] } (Just (Overlap SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 10 1 21 , srcInfoPoints = [] })) (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 26 1 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 26 1 29 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 26 1 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 26 1 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 26 1 27 , srcInfoPoints = [] } "C"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 28 1 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 1 28 1 29 , srcInfoPoints = [] } "a")))) Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 1 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/Overlapable.hs" 3 1 3 9 ] } (Just (NoOverlap SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 10 3 24 , srcInfoPoints = [] })) (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 29 3 32 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 29 3 32 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 29 3 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 29 3 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 29 3 30 , srcInfoPoints = [] } "C"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 31 3 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 3 31 3 32 , srcInfoPoints = [] } "a")))) Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 1 5 32 , srcInfoPoints = [ SrcSpan "tests/examples/Overlapable.hs" 5 1 5 9 ] } (Just (Incoherent SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 10 5 24 , srcInfoPoints = [] })) (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 29 5 32 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 29 5 32 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 29 5 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 29 5 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 29 5 30 , srcInfoPoints = [] } "C"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 31 5 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Overlapable.hs" 5 31 5 32 , srcInfoPoints = [] } "a")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/Overlapable.hs.prettyparser.golden0000644000000000000000000000000612746233113024742 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Overlapable.hs.prettyprinter.golden0000644000000000000000000000013712746233113025136 0ustar0000000000000000instance {-# OVERLAP #-} C a instance {-# NO_OVERLAP #-} C a instance {-# INCOHERENT #-} C a haskell-src-exts-1.18.2/tests/examples/OverloadedLabels.hs0000644000000000000000000000101212746233113021701 0ustar0000000000000000-- Basic tests of overloaded labels {-# LANGUAGE OverloadedLabels , DataKinds , FlexibleContexts , FlexibleInstances , MultiParamTypeClasses , NoMonomorphismRestriction #-} import GHC.OverloadedLabels instance IsLabel "true" Bool where fromLabel _ = True instance IsLabel "false" Bool where fromLabel _ = False a :: IsLabel "true" t => t a = #true b = #false c :: Bool c = #true main = do print (a :: Bool) print (b :: Bool) print c haskell-src-exts-1.18.2/tests/examples/OverloadedLabels.hs.exactprinter.golden0000644000000000000000000000000612746233113025661 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/OverloadedLabels.hs.parser.golden0000644000000000000000000011274112746233113024457 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 3 1 30 1 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 3 1 3 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 11 1 11 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 11 1 11 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 11 1 11 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 13 1 13 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 16 1 16 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 19 1 19 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 20 1 20 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 22 1 22 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 24 1 24 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 25 1 25 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 27 1 27 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 30 1 30 1 , SrcSpan "tests/examples/OverloadedLabels.hs" 30 1 30 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 3 1 9 6 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 3 1 3 13 , SrcSpan "tests/examples/OverloadedLabels.hs" 4 12 4 13 , SrcSpan "tests/examples/OverloadedLabels.hs" 5 12 5 13 , SrcSpan "tests/examples/OverloadedLabels.hs" 6 12 6 13 , SrcSpan "tests/examples/OverloadedLabels.hs" 7 12 7 13 , SrcSpan "tests/examples/OverloadedLabels.hs" 8 12 8 13 , SrcSpan "tests/examples/OverloadedLabels.hs" 9 3 9 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 3 14 3 30 , srcInfoPoints = [] } "OverloadedLabels" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 4 14 4 23 , srcInfoPoints = [] } "DataKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 5 14 5 30 , srcInfoPoints = [] } "FlexibleContexts" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 6 14 6 31 , srcInfoPoints = [] } "FlexibleInstances" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 7 14 7 35 , srcInfoPoints = [] } "MultiParamTypeClasses" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 8 14 8 39 , srcInfoPoints = [] } "NoMonomorphismRestriction" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 11 1 11 28 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 11 1 11 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 11 8 11 28 , srcInfoPoints = [] } "GHC.OverloadedLabels" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 1 16 0 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 13 1 13 9 , SrcSpan "tests/examples/OverloadedLabels.hs" 13 30 13 35 , SrcSpan "tests/examples/OverloadedLabels.hs" 14 3 14 3 , SrcSpan "tests/examples/OverloadedLabels.hs" 16 1 16 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 10 13 29 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 10 13 29 , srcInfoPoints = [] } (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 10 13 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 10 13 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 10 13 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 10 13 17 , srcInfoPoints = [] } "IsLabel"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 18 13 24 , srcInfoPoints = [] } (PromotedString SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 18 13 24 , srcInfoPoints = [] } "true" "true"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 25 13 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 25 13 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 13 25 13 29 , srcInfoPoints = [] } "Bool"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 3 14 21 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 3 14 21 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 3 14 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 3 14 12 , srcInfoPoints = [] } "fromLabel") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 13 14 14 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 15 14 21 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 14 15 14 16 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 17 14 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 17 14 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 14 17 14 21 , srcInfoPoints = [] } "True")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 1 19 0 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 16 1 16 9 , SrcSpan "tests/examples/OverloadedLabels.hs" 16 31 16 36 , SrcSpan "tests/examples/OverloadedLabels.hs" 17 3 17 3 , SrcSpan "tests/examples/OverloadedLabels.hs" 19 1 19 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 10 16 30 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 10 16 30 , srcInfoPoints = [] } (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 10 16 25 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 10 16 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 10 16 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 10 16 17 , srcInfoPoints = [] } "IsLabel"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 18 16 25 , srcInfoPoints = [] } (PromotedString SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 18 16 25 , srcInfoPoints = [] } "false" "false"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 26 16 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 26 16 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 16 26 16 30 , srcInfoPoints = [] } "Bool"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 3 17 22 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 3 17 22 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 3 17 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 3 17 12 , srcInfoPoints = [] } "fromLabel") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 13 17 14 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 15 17 22 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 17 15 17 16 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 17 17 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 17 17 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 17 17 17 22 , srcInfoPoints = [] } "False")))) Nothing ]) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 1 19 27 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 19 3 19 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 1 19 2 , srcInfoPoints = [] } "a" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 6 19 27 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 6 19 25 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 19 23 19 25 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 6 19 25 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 19 23 19 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 6 19 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 6 19 13 , srcInfoPoints = [] } "IsLabel")) [ TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 14 19 20 , srcInfoPoints = [] } (PromotedString SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 14 19 20 , srcInfoPoints = [] } "true" "true") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 21 19 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 21 19 22 , srcInfoPoints = [] } "t") ]))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 26 19 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 19 26 19 27 , srcInfoPoints = [] } "t"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 20 1 20 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 20 1 20 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 20 1 20 2 , srcInfoPoints = [] } "a")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 20 3 20 10 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 20 3 20 4 ] } (OverloadedLabel SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 20 5 20 10 , srcInfoPoints = [] } "true")) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 22 1 22 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 22 1 22 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 22 1 22 2 , srcInfoPoints = [] } "b")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 22 3 22 11 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 22 3 22 4 ] } (OverloadedLabel SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 22 5 22 11 , srcInfoPoints = [] } "false")) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 24 1 24 10 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 24 3 24 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 24 1 24 2 , srcInfoPoints = [] } "c" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 24 6 24 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 24 6 24 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 24 6 24 10 , srcInfoPoints = [] } "Bool"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 25 1 25 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 25 1 25 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 25 1 25 2 , srcInfoPoints = [] } "c")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 25 3 25 10 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 25 3 25 4 ] } (OverloadedLabel SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 25 5 25 10 , srcInfoPoints = [] } "true")) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 1 29 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 1 27 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 1 27 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 6 29 18 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 27 6 27 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 8 29 18 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 27 8 27 10 , SrcSpan "tests/examples/OverloadedLabels.hs" 27 11 27 11 , SrcSpan "tests/examples/OverloadedLabels.hs" 28 11 28 11 , SrcSpan "tests/examples/OverloadedLabels.hs" 29 11 29 11 , SrcSpan "tests/examples/OverloadedLabels.hs" 30 1 30 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 11 27 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 11 27 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 11 27 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 11 27 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 11 27 16 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 17 27 28 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 27 17 27 18 , SrcSpan "tests/examples/OverloadedLabels.hs" 27 27 27 28 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 18 27 27 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 27 20 27 22 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 18 27 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 18 27 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 18 27 19 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 23 27 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 23 27 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 27 23 27 27 , srcInfoPoints = [] } "Bool")))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 11 28 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 11 28 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 11 28 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 11 28 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 11 28 16 , srcInfoPoints = [] } "print"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 17 28 28 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 28 17 28 18 , SrcSpan "tests/examples/OverloadedLabels.hs" 28 27 28 28 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 18 28 27 , srcInfoPoints = [ SrcSpan "tests/examples/OverloadedLabels.hs" 28 20 28 22 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 18 28 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 18 28 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 18 28 19 , srcInfoPoints = [] } "b"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 23 28 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 23 28 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 28 23 28 27 , srcInfoPoints = [] } "Bool")))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 29 11 29 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 29 11 29 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 29 11 29 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 29 11 29 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 29 11 29 16 , srcInfoPoints = [] } "print"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 29 17 29 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 29 17 29 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/OverloadedLabels.hs" 29 17 29 18 , srcInfoPoints = [] } "c")))) ])) Nothing ] , [ Comment False (SrcSpan "tests/examples/OverloadedLabels.hs" 1 1 1 36) " Basic tests of overloaded labels" ] ) haskell-src-exts-1.18.2/tests/examples/OverloadedLabels.hs.prettyparser.golden0000644000000000000000000000000612746233113025715 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/OverloadedLabels.hs.prettyprinter.golden0000644000000000000000000000066012746233113026112 0ustar0000000000000000{-# LANGUAGE OverloadedLabels, DataKinds, FlexibleContexts, FlexibleInstances, MultiParamTypeClasses, NoMonomorphismRestriction #-} import GHC.OverloadedLabels instance IsLabel "true" Bool where fromLabel _ = True instance IsLabel "false" Bool where fromLabel _ = False a :: IsLabel "true" t => t a = #true b = #false c :: Bool c = #true main = do print (a :: Bool) print (b :: Bool) print c haskell-src-exts-1.18.2/tests/examples/PackageImports.hs0000644000000000000000000000021712746233113021411 0ustar0000000000000000{-# LANGUAGE PackageImports #-} module PackageImports where import "wibble" PackageImports.Default import "wibble" PackageImports.Builtin.All haskell-src-exts-1.18.2/tests/examples/PackageImports.hs.exactprinter.golden0000644000000000000000000000000612746233113025363 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PackageImports.hs.parser.golden0000644000000000000000000000702112746233113024153 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/PackageImports.hs" 1 1 1 1 , SrcSpan "tests/examples/PackageImports.hs" 2 1 2 1 , SrcSpan "tests/examples/PackageImports.hs" 2 1 2 1 , SrcSpan "tests/examples/PackageImports.hs" 4 1 4 1 , SrcSpan "tests/examples/PackageImports.hs" 5 1 5 1 , SrcSpan "tests/examples/PackageImports.hs" 6 1 6 1 , SrcSpan "tests/examples/PackageImports.hs" 6 1 6 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 2 1 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/PackageImports.hs" 2 1 2 7 , SrcSpan "tests/examples/PackageImports.hs" 2 23 2 28 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 2 8 2 22 , srcInfoPoints = [] } "PackageImports") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/PackageImports.hs" 1 1 1 13 , SrcSpan "tests/examples/PackageImports.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 1 14 1 28 , srcInfoPoints = [] } "PackageImports" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 4 1 4 39 , srcInfoPoints = [ SrcSpan "tests/examples/PackageImports.hs" 4 1 4 7 , SrcSpan "tests/examples/PackageImports.hs" 4 8 4 16 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 4 17 4 39 , srcInfoPoints = [] } "PackageImports.Default" , importQualified = False , importSrc = False , importSafe = False , importPkg = Just "wibble" , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 5 1 5 43 , srcInfoPoints = [ SrcSpan "tests/examples/PackageImports.hs" 5 1 5 7 , SrcSpan "tests/examples/PackageImports.hs" 5 8 5 16 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PackageImports.hs" 5 17 5 43 , srcInfoPoints = [] } "PackageImports.Builtin.All" , importQualified = False , importSrc = False , importSafe = False , importPkg = Just "wibble" , importAs = Nothing , importSpecs = Nothing } ] [] , [] ) haskell-src-exts-1.18.2/tests/examples/PackageImports.hs.prettyparser.golden0000644000000000000000000000000612746233113025417 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PackageImports.hs.prettyprinter.golden0000644000000000000000000000021612746233113025611 0ustar0000000000000000{-# LANGUAGE PackageImports #-} module PackageImports where import "wibble" PackageImports.Default import "wibble" PackageImports.Builtin.All haskell-src-exts-1.18.2/tests/examples/PackageImportsMissing.hs0000644000000000000000000000016612746233113022746 0ustar0000000000000000module PackageImportsMissing where import "wibble" PackageImports.Default import "wibble" PackageImports.Builtin.All haskell-src-exts-1.18.2/tests/examples/PackageImportsMissing.hs.exactprinter.golden0000644000000000000000000000030512746233113026717 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/PackageImportsMissing.hs" 3 17) "PackageImports language extension is not enabled. Please add {-# LANGUAGE PackageImports #-} pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/PackageImportsMissing.hs.parser.golden0000644000000000000000000000031112746233113025500 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/PackageImportsMissing.hs" 3 17) "PackageImports language extension is not enabled. Please add {-# LANGUAGE PackageImports #-} pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/PackageImportsMissing.hs.prettyparser.golden0000644000000000000000000000030512746233113026753 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/PackageImportsMissing.hs" 3 17) "PackageImports language extension is not enabled. Please add {-# LANGUAGE PackageImports #-} pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/PackageImportsMissing.hs.prettyprinter.golden0000644000000000000000000000030512746233113027142 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/PackageImportsMissing.hs" 3 17) "PackageImports language extension is not enabled. Please add {-# LANGUAGE PackageImports #-} pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/ParallelArrays.hs0000644000000000000000000000021412746233113021413 0ustar0000000000000000{-# LANGUAGE ParallelArrays #-} dotp_double :: [:Double:] -> [:Double:] -> Double dotp_double xs ys = sumP [:x * y | x <- xs | y <- ys:] haskell-src-exts-1.18.2/tests/examples/ParallelArrays.hs.exactprinter.golden0000644000000000000000000000000612746233113025370 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ParallelArrays.hs.parser.golden0000644000000000000000000004245112746233113024166 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 1 1 1 1 , SrcSpan "tests/examples/ParallelArrays.hs" 3 1 3 1 , SrcSpan "tests/examples/ParallelArrays.hs" 3 1 3 1 , SrcSpan "tests/examples/ParallelArrays.hs" 3 1 3 1 , SrcSpan "tests/examples/ParallelArrays.hs" 4 1 4 1 , SrcSpan "tests/examples/ParallelArrays.hs" 7 1 7 1 , SrcSpan "tests/examples/ParallelArrays.hs" 7 1 7 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 1 1 1 13 , SrcSpan "tests/examples/ParallelArrays.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 1 14 1 28 , srcInfoPoints = [] } "ParallelArrays" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 1 3 50 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 3 13 3 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 1 3 12 , srcInfoPoints = [] } "dotp_double" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 16 3 50 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 3 27 3 29 ] } (TyParArray SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 16 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 3 16 3 18 , SrcSpan "tests/examples/ParallelArrays.hs" 3 24 3 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 18 3 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 18 3 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 18 3 24 , srcInfoPoints = [] } "Double")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 30 3 50 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 3 41 3 43 ] } (TyParArray SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 30 3 40 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 3 30 3 32 , SrcSpan "tests/examples/ParallelArrays.hs" 3 38 3 40 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 32 3 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 32 3 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 32 3 38 , srcInfoPoints = [] } "Double")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 44 3 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 44 3 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 3 44 3 50 , srcInfoPoints = [] } "Double"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 1 4 55 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 1 4 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 1 4 12 , srcInfoPoints = [] } "dotp_double") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 13 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 13 4 15 , srcInfoPoints = [] } "xs") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 16 4 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 16 4 18 , srcInfoPoints = [] } "ys") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 19 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 4 19 4 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 21 4 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 21 4 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 21 4 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 21 4 25 , srcInfoPoints = [] } "sumP"))) (ParArrayComp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 26 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 4 26 4 28 , SrcSpan "tests/examples/ParallelArrays.hs" 4 34 4 35 , SrcSpan "tests/examples/ParallelArrays.hs" 4 44 4 45 , SrcSpan "tests/examples/ParallelArrays.hs" 4 53 4 55 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 28 4 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 28 4 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 28 4 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 28 4 29 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 30 4 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 30 4 31 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 30 4 31 , srcInfoPoints = [] } "*"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 32 4 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 32 4 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 32 4 33 , srcInfoPoints = [] } "y")))) [ [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 36 4 43 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 4 38 4 40 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 36 4 43 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 4 38 4 40 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 36 4 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 36 4 37 , srcInfoPoints = [] } "x")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 41 4 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 41 4 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 41 4 43 , srcInfoPoints = [] } "xs")))) ] , [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 46 4 53 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 4 48 4 50 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 46 4 53 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelArrays.hs" 4 48 4 50 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 46 4 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 46 4 47 , srcInfoPoints = [] } "y")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 51 4 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 51 4 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelArrays.hs" 4 51 4 53 , srcInfoPoints = [] } "ys")))) ] ]))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/ParallelArrays.hs.prettyparser.golden0000644000000000000000000000000612746233113025424 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ParallelArrays.hs.prettyprinter.golden0000644000000000000000000000021012746233113025610 0ustar0000000000000000{-# LANGUAGE ParallelArrays #-} dotp_double :: [:Double:] -> [:Double:] -> Double dotp_double xs ys = sumP [:x * y| x <- xs| y <- ys:] haskell-src-exts-1.18.2/tests/examples/ParallelArrays2.hs0000644000000000000000000000021512746233113021476 0ustar0000000000000000-- Should fail without extensions. dotp_double :: [:Double:] -> [:Double:] -> Double dotp_double xs ys = sumP [:x * y | x <- xs | y <- ys:] haskell-src-exts-1.18.2/tests/examples/ParallelArrays2.hs.exactprinter.golden0000644000000000000000000000011712746233113025455 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ParallelArrays2.hs" 2 17) "Parse error: :" haskell-src-exts-1.18.2/tests/examples/ParallelArrays2.hs.parser.golden0000644000000000000000000000012112746233113024234 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ParallelArrays2.hs" 2 17) "Parse error: :" haskell-src-exts-1.18.2/tests/examples/ParallelArrays2.hs.prettyparser.golden0000644000000000000000000000011712746233113025511 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ParallelArrays2.hs" 2 17) "Parse error: :" haskell-src-exts-1.18.2/tests/examples/ParallelArrays2.hs.prettyprinter.golden0000644000000000000000000000011712746233113025700 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/ParallelArrays2.hs" 2 17) "Parse error: :" haskell-src-exts-1.18.2/tests/examples/ParallelListComp.hs0000644000000000000000000000014112746233113021703 0ustar0000000000000000{-# LANGUAGE ParallelListComp #-} f xs ys zs = [ (x,y,z) | x <- xs | y <- ys, y > 2 | z <- zs ] haskell-src-exts-1.18.2/tests/examples/ParallelListComp.hs.exactprinter.golden0000644000000000000000000000000612746233113025661 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ParallelListComp.hs.parser.golden0000644000000000000000000004610712746233113024461 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 1 1 1 1 , SrcSpan "tests/examples/ParallelListComp.hs" 3 1 3 1 , SrcSpan "tests/examples/ParallelListComp.hs" 3 1 3 1 , SrcSpan "tests/examples/ParallelListComp.hs" 3 1 3 1 , SrcSpan "tests/examples/ParallelListComp.hs" 4 1 4 1 , SrcSpan "tests/examples/ParallelListComp.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 1 1 1 34 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 1 1 1 13 , SrcSpan "tests/examples/ParallelListComp.hs" 1 31 1 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 1 14 1 30 , srcInfoPoints = [] } "ParallelListComp" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 1 3 62 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 1 3 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 1 3 2 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 3 3 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 3 3 5 , srcInfoPoints = [] } "xs") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 6 3 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 6 3 8 , srcInfoPoints = [] } "ys") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 9 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 9 3 11 , srcInfoPoints = [] } "zs") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 12 3 62 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 12 3 13 ] } (ParComp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 14 3 62 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 14 3 15 , SrcSpan "tests/examples/ParallelListComp.hs" 3 24 3 25 , SrcSpan "tests/examples/ParallelListComp.hs" 3 34 3 35 , SrcSpan "tests/examples/ParallelListComp.hs" 3 43 3 44 , SrcSpan "tests/examples/ParallelListComp.hs" 3 51 3 52 , SrcSpan "tests/examples/ParallelListComp.hs" 3 61 3 62 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 16 3 23 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 16 3 17 , SrcSpan "tests/examples/ParallelListComp.hs" 3 18 3 19 , SrcSpan "tests/examples/ParallelListComp.hs" 3 20 3 21 , SrcSpan "tests/examples/ParallelListComp.hs" 3 22 3 23 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 17 3 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 17 3 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 17 3 18 , srcInfoPoints = [] } "x")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 19 3 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 19 3 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 19 3 20 , srcInfoPoints = [] } "y")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 21 3 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 21 3 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 21 3 22 , srcInfoPoints = [] } "z")) ]) [ [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 26 3 33 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 28 3 30 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 26 3 33 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 28 3 30 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 26 3 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 26 3 27 , srcInfoPoints = [] } "x")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 31 3 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 31 3 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 31 3 33 , srcInfoPoints = [] } "xs")))) ] , [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 36 3 43 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 38 3 40 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 36 3 43 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 38 3 40 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 36 3 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 36 3 37 , srcInfoPoints = [] } "y")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 41 3 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 41 3 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 41 3 43 , srcInfoPoints = [] } "ys")))) , QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 45 3 50 , srcInfoPoints = [] } (Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 45 3 50 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 45 3 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 45 3 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 45 3 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 45 3 46 , srcInfoPoints = [] } "y"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 47 3 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 47 3 48 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 47 3 48 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 49 3 50 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 49 3 50 , srcInfoPoints = [] } 2 "2")))) ] , [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 53 3 60 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 55 3 57 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 53 3 60 , srcInfoPoints = [ SrcSpan "tests/examples/ParallelListComp.hs" 3 55 3 57 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 53 3 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 53 3 54 , srcInfoPoints = [] } "z")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 58 3 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 58 3 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParallelListComp.hs" 3 58 3 60 , srcInfoPoints = [] } "zs")))) ] ])) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/ParallelListComp.hs.prettyparser.golden0000644000000000000000000000000612746233113025715 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ParallelListComp.hs.prettyprinter.golden0000644000000000000000000000013512746233113026107 0ustar0000000000000000{-# LANGUAGE ParallelListComp #-} f xs ys zs = [(x, y, z)| x <- xs| y <- ys, y > 2| z <- zs] haskell-src-exts-1.18.2/tests/examples/ParenFunBind.hs0000644000000000000000000000005512746233113021013 0ustar0000000000000000module ParenFunBind where (foo x) y = x + y haskell-src-exts-1.18.2/tests/examples/ParenFunBind.hs.exactprinter.golden0000644000000000000000000000000612746233113024765 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ParenFunBind.hs.parser.golden0000644000000000000000000001267012746233113023563 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/ParenFunBind.hs" 1 1 1 1 , SrcSpan "tests/examples/ParenFunBind.hs" 1 1 1 1 , SrcSpan "tests/examples/ParenFunBind.hs" 3 1 3 1 , SrcSpan "tests/examples/ParenFunBind.hs" 4 1 4 1 , SrcSpan "tests/examples/ParenFunBind.hs" 4 1 4 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 1 1 1 26 , srcInfoPoints = [ SrcSpan "tests/examples/ParenFunBind.hs" 1 1 1 7 , SrcSpan "tests/examples/ParenFunBind.hs" 1 21 1 26 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 1 8 1 20 , srcInfoPoints = [] } "ParenFunBind") Nothing Nothing)) [] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 1 3 18 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 1 3 18 , srcInfoPoints = [ SrcSpan "tests/examples/ParenFunBind.hs" 3 1 3 2 , SrcSpan "tests/examples/ParenFunBind.hs" 3 7 3 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 2 3 5 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 6 3 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 6 3 7 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 9 3 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 9 3 10 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 11 3 18 , srcInfoPoints = [ SrcSpan "tests/examples/ParenFunBind.hs" 3 11 3 12 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 13 3 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 13 3 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 13 3 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 13 3 14 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 15 3 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 15 3 16 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 15 3 16 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 17 3 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 17 3 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ParenFunBind.hs" 3 17 3 18 , srcInfoPoints = [] } "y"))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/ParenFunBind.hs.prettyparser.golden0000644000000000000000000000000612746233113025021 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ParenFunBind.hs.prettyprinter.golden0000644000000000000000000000005212746233113025211 0ustar0000000000000000module ParenFunBind where foo x y = x + y haskell-src-exts-1.18.2/tests/examples/PartialSignatures.hs0000644000000000000000000001312512746233113022143 0ustar0000000000000000{-# LANGUAGE GADTs, NamedWildCards, ScopedTypeVariables #-} bar :: Int -> _ Int bar x = Foo True () x addAndOr1 :: _ addAndOr1 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr2 :: _ -> _ addAndOr2 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr3 :: _ -> _ -> _ addAndOr3 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr4 :: (_ _ _) -> (_ _ _) -> (_ _ _) addAndOr4 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr5 :: (_, _) -> (_, _) -> (_, _) addAndOr5 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr6 :: (Int, _) -> (Bool, _) -> (_ Int Bool) addAndOr6 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y bar :: _ -> _ bar x = not x alpha :: _ alpha = 3 bravo :: _ => _ bravo = 3 bravo :: _ => _ bravo = 3 barry :: _a -> (_b _a, _b _) barry x = (Left "x", Right x) foo :: a ~ Bool => (a, _) foo = (True, False) every :: _ -> _ -> Bool every _ [] = True every p (x:xs) = p x && every p xs every :: (_a -> Bool) -> [_a] -> Bool every _ [] = True every p (x:xs) = p x && every p xs bar :: Bool -> Bool bar x = (x :: _) bar :: _a -> _a bar True = (False :: _a) bar False = (True :: _a) arbitCs1 :: _ => a -> String arbitCs1 x = show (succ x) ++ show (x == x) arbitCs2 :: (Show a, _) => a -> String arbitCs2 x = arbitCs1 x arbitCs3 :: (Show a, Enum a, _) => a -> String arbitCs3 x = arbitCs1 x arbitCs4 :: (Eq a, _) => a -> String arbitCs4 x = arbitCs1 x arbitCs5 :: (Eq a, Enum a, Show a, _) => a -> String arbitCs5 x = arbitCs1 x foo :: _ => String foo = "x" -- No extra constraints foo :: _ => a foo = 3 foo :: _ => a foo = 3 fall :: forall a . _ -> a fall v = v bar :: _a -> _a bar x = not x foo :: (forall a. [a] -> [a]) -> _ foo x = (x [True, False], x ['a', 'b']) foo :: (forall a. [a] -> [a]) -> (_, _ _) foo x = (x [True, False], x ['a', 'b']) monoLoc :: forall a. a -> ((a, String), (a, _)) monoLoc x = (g True , g False) where g :: t -> (a, String) g _ = (x, "foo") -- Test case for (fixed) bug that previously generated the following error message: -- LocalDefinitionBug.hs:9:16: -- GHC internal error: ‘a’ is not in scope during type checking, but it passed the renamer -- tcl_env of environment: [alA :-> Type variable ‘_’ = _, -- alC :-> Identifier[x::a, ], -- alE :-> Type variable ‘t’ = t, -- rjF :-> Identifier[monoLoc::a -- -> ((a, String), (a, _)), ]] -- In the type signature for ‘g’: g :: t -> (a, String) -- In an equation for ‘monoLoc’: -- monoLoc x -- = (g True, g False) -- where -- g :: t -> (a, String) -- g _ = (x, "foo") -- Fixed by using tcExtendTyVarEnv2 instead of tcExtendTyVarEnv data NukeMonad a b c instance Functor (NukeMonad a b) where fmap = undefined instance Applicative (NukeMonad a b) where pure = undefined (<*>) = undefined instance Monad (NukeMonad a b) where return = undefined (>>=) = undefined isMeltdown :: NukeMonad param1 param2 Bool isMeltdown = undefined unlessMeltdown :: _nm () -> _nm () unlessMeltdown c = do m <- isMeltdown if m then return () else c monoLoc :: forall a. a -> ((a, String), (a, String)) monoLoc x = (g True , g 'v') where -- g :: b -> (a, String) -- #1 g :: b -> (a, _) -- #2 g y = (x, "foo") -- For #2, we should infer the same type as in #1. foo :: (_a, b) -> (a, _b) foo (x, y) = (x, y) f :: (_) => a -> a -> Bool f x y = x == y foo :: _ Just foo = Just id foo :: Bool -> _ Just foo = Just id bar :: Bool -> Bool bar (x :: _) = True orr :: a -> a -> a orr = undefined g :: _ g = f `orr` True f :: _ f = g test3 :: _ test3 x = const (let x :: _b x = True in False) $ const (let x :: _b x = 'a' in True) $ not x -- The named wildcards aren't scoped as the ScopedTypeVariables extension -- isn't enabled, of which the behaviour is copied. Thus, the _a annotation of -- x, which must be Bool, isn't the same as the _a in g, which is now -- generalised over. foo :: _a -> _ foo x = let v = not x g :: _a -> _a g x = x in (g 'x') showTwo :: Show _a => _a -> String showTwo x = show x bar :: _ -> Bool bar _ = True data GenParser tok st a = GenParser tok st a skipMany' :: GenParser tok st a -> GenParser tok st () skipMany' = undefined skipMany :: _ -> _ () skipMany = skipMany' somethingShowable :: Show _x => _x -> _ somethingShowable x = show (not x) -- Inferred type: Bool -> String data I a = I a instance Functor I where fmap f (I a) = I (f a) newtype B t a = B a instance Functor (B t) where fmap f (B a) = B (f a) newtype H f = H (f ()) h1 :: _ => _ -- h :: Functor m => (a -> b) -> m a -> H m h1 f b = (H . fmap (const ())) (fmap f b) h2 :: _ -- h2 :: Functor m => (a -> b) -> m a -> H m h2 f b = (H . fmap (const ())) (fmap f b) app1 :: H (B t) app1 = h1 (H . I) (B ()) app2 :: H (B t) app2 = h2 (H . I) (B ()) foo f = g where g r = x where x :: _ x = r unc :: (_ -> _ -> _) -> (_, _) -> _ unc = uncurry unc :: (_a -> _b -> _c) -> (_a, _b) -> _c unc = uncurry foo :: (Show _a, _) => _a -> _ foo x = show (succ x) bar :: _ -> _ -> _ bar x y = y x haskell-src-exts-1.18.2/tests/examples/PartialSignatures.hs.exactprinter.golden0000644000000000000000000000000612746233113026113 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PartialSignatures.hs.parser.golden0000644000000000000000000271330712746233113024720 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 1 1 294 1 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 1 1 1 1 , SrcSpan "tests/examples/PartialSignatures.hs" 3 1 3 1 , SrcSpan "tests/examples/PartialSignatures.hs" 3 1 3 1 , SrcSpan "tests/examples/PartialSignatures.hs" 3 1 3 1 , SrcSpan "tests/examples/PartialSignatures.hs" 4 1 4 1 , SrcSpan "tests/examples/PartialSignatures.hs" 7 1 7 1 , SrcSpan "tests/examples/PartialSignatures.hs" 8 1 8 1 , SrcSpan "tests/examples/PartialSignatures.hs" 13 1 13 1 , SrcSpan "tests/examples/PartialSignatures.hs" 14 1 14 1 , SrcSpan "tests/examples/PartialSignatures.hs" 19 1 19 1 , SrcSpan "tests/examples/PartialSignatures.hs" 20 1 20 1 , SrcSpan "tests/examples/PartialSignatures.hs" 25 1 25 1 , SrcSpan "tests/examples/PartialSignatures.hs" 26 1 26 1 , SrcSpan "tests/examples/PartialSignatures.hs" 31 1 31 1 , SrcSpan "tests/examples/PartialSignatures.hs" 32 1 32 1 , SrcSpan "tests/examples/PartialSignatures.hs" 37 1 37 1 , SrcSpan "tests/examples/PartialSignatures.hs" 38 1 38 1 , SrcSpan "tests/examples/PartialSignatures.hs" 43 1 43 1 , SrcSpan "tests/examples/PartialSignatures.hs" 44 1 44 1 , SrcSpan "tests/examples/PartialSignatures.hs" 47 1 47 1 , SrcSpan "tests/examples/PartialSignatures.hs" 48 1 48 1 , SrcSpan "tests/examples/PartialSignatures.hs" 51 1 51 1 , SrcSpan "tests/examples/PartialSignatures.hs" 52 1 52 1 , SrcSpan "tests/examples/PartialSignatures.hs" 55 1 55 1 , SrcSpan "tests/examples/PartialSignatures.hs" 56 1 56 1 , SrcSpan "tests/examples/PartialSignatures.hs" 58 1 58 1 , SrcSpan "tests/examples/PartialSignatures.hs" 59 1 59 1 , SrcSpan "tests/examples/PartialSignatures.hs" 61 1 61 1 , SrcSpan "tests/examples/PartialSignatures.hs" 62 1 62 1 , SrcSpan "tests/examples/PartialSignatures.hs" 65 1 65 1 , SrcSpan "tests/examples/PartialSignatures.hs" 66 1 66 1 , SrcSpan "tests/examples/PartialSignatures.hs" 67 1 67 1 , SrcSpan "tests/examples/PartialSignatures.hs" 69 1 69 1 , SrcSpan "tests/examples/PartialSignatures.hs" 70 1 70 1 , SrcSpan "tests/examples/PartialSignatures.hs" 71 1 71 1 , SrcSpan "tests/examples/PartialSignatures.hs" 74 1 74 1 , SrcSpan "tests/examples/PartialSignatures.hs" 75 1 75 1 , SrcSpan "tests/examples/PartialSignatures.hs" 77 1 77 1 , SrcSpan "tests/examples/PartialSignatures.hs" 78 1 78 1 , SrcSpan "tests/examples/PartialSignatures.hs" 79 1 79 1 , SrcSpan "tests/examples/PartialSignatures.hs" 82 1 82 1 , SrcSpan "tests/examples/PartialSignatures.hs" 83 1 83 1 , SrcSpan "tests/examples/PartialSignatures.hs" 85 1 85 1 , SrcSpan "tests/examples/PartialSignatures.hs" 86 1 86 1 , SrcSpan "tests/examples/PartialSignatures.hs" 88 1 88 1 , SrcSpan "tests/examples/PartialSignatures.hs" 89 1 89 1 , SrcSpan "tests/examples/PartialSignatures.hs" 91 1 91 1 , SrcSpan "tests/examples/PartialSignatures.hs" 92 1 92 1 , SrcSpan "tests/examples/PartialSignatures.hs" 94 1 94 1 , SrcSpan "tests/examples/PartialSignatures.hs" 95 1 95 1 , SrcSpan "tests/examples/PartialSignatures.hs" 98 1 98 1 , SrcSpan "tests/examples/PartialSignatures.hs" 99 1 99 1 , SrcSpan "tests/examples/PartialSignatures.hs" 105 1 105 1 , SrcSpan "tests/examples/PartialSignatures.hs" 106 1 106 1 , SrcSpan "tests/examples/PartialSignatures.hs" 109 1 109 1 , SrcSpan "tests/examples/PartialSignatures.hs" 110 1 110 1 , SrcSpan "tests/examples/PartialSignatures.hs" 112 1 112 1 , SrcSpan "tests/examples/PartialSignatures.hs" 113 1 113 1 , SrcSpan "tests/examples/PartialSignatures.hs" 115 1 115 1 , SrcSpan "tests/examples/PartialSignatures.hs" 116 1 116 1 , SrcSpan "tests/examples/PartialSignatures.hs" 118 1 118 1 , SrcSpan "tests/examples/PartialSignatures.hs" 119 1 119 1 , SrcSpan "tests/examples/PartialSignatures.hs" 121 1 121 1 , SrcSpan "tests/examples/PartialSignatures.hs" 122 1 122 1 , SrcSpan "tests/examples/PartialSignatures.hs" 125 1 125 1 , SrcSpan "tests/examples/PartialSignatures.hs" 126 1 126 1 , SrcSpan "tests/examples/PartialSignatures.hs" 151 1 151 1 , SrcSpan "tests/examples/PartialSignatures.hs" 153 1 153 1 , SrcSpan "tests/examples/PartialSignatures.hs" 156 1 156 1 , SrcSpan "tests/examples/PartialSignatures.hs" 160 1 160 1 , SrcSpan "tests/examples/PartialSignatures.hs" 165 1 165 1 , SrcSpan "tests/examples/PartialSignatures.hs" 166 1 166 1 , SrcSpan "tests/examples/PartialSignatures.hs" 168 1 168 1 , SrcSpan "tests/examples/PartialSignatures.hs" 169 1 169 1 , SrcSpan "tests/examples/PartialSignatures.hs" 174 1 174 1 , SrcSpan "tests/examples/PartialSignatures.hs" 175 1 175 1 , SrcSpan "tests/examples/PartialSignatures.hs" 183 1 183 1 , SrcSpan "tests/examples/PartialSignatures.hs" 184 1 184 1 , SrcSpan "tests/examples/PartialSignatures.hs" 187 1 187 1 , SrcSpan "tests/examples/PartialSignatures.hs" 188 1 188 1 , SrcSpan "tests/examples/PartialSignatures.hs" 191 1 191 1 , SrcSpan "tests/examples/PartialSignatures.hs" 192 1 192 1 , SrcSpan "tests/examples/PartialSignatures.hs" 195 1 195 1 , SrcSpan "tests/examples/PartialSignatures.hs" 196 1 196 1 , SrcSpan "tests/examples/PartialSignatures.hs" 198 1 198 1 , SrcSpan "tests/examples/PartialSignatures.hs" 199 1 199 1 , SrcSpan "tests/examples/PartialSignatures.hs" 202 1 202 1 , SrcSpan "tests/examples/PartialSignatures.hs" 203 1 203 1 , SrcSpan "tests/examples/PartialSignatures.hs" 205 1 205 1 , SrcSpan "tests/examples/PartialSignatures.hs" 206 1 206 1 , SrcSpan "tests/examples/PartialSignatures.hs" 208 1 208 1 , SrcSpan "tests/examples/PartialSignatures.hs" 209 1 209 1 , SrcSpan "tests/examples/PartialSignatures.hs" 212 1 212 1 , SrcSpan "tests/examples/PartialSignatures.hs" 213 1 213 1 , SrcSpan "tests/examples/PartialSignatures.hs" 224 1 224 1 , SrcSpan "tests/examples/PartialSignatures.hs" 225 1 225 1 , SrcSpan "tests/examples/PartialSignatures.hs" 230 1 230 1 , SrcSpan "tests/examples/PartialSignatures.hs" 231 1 231 1 , SrcSpan "tests/examples/PartialSignatures.hs" 234 1 234 1 , SrcSpan "tests/examples/PartialSignatures.hs" 235 1 235 1 , SrcSpan "tests/examples/PartialSignatures.hs" 238 1 238 1 , SrcSpan "tests/examples/PartialSignatures.hs" 240 1 240 1 , SrcSpan "tests/examples/PartialSignatures.hs" 241 1 241 1 , SrcSpan "tests/examples/PartialSignatures.hs" 243 1 243 1 , SrcSpan "tests/examples/PartialSignatures.hs" 244 1 244 1 , SrcSpan "tests/examples/PartialSignatures.hs" 246 1 246 1 , SrcSpan "tests/examples/PartialSignatures.hs" 247 1 247 1 , SrcSpan "tests/examples/PartialSignatures.hs" 251 1 251 1 , SrcSpan "tests/examples/PartialSignatures.hs" 252 1 252 1 , SrcSpan "tests/examples/PartialSignatures.hs" 255 1 255 1 , SrcSpan "tests/examples/PartialSignatures.hs" 256 1 256 1 , SrcSpan "tests/examples/PartialSignatures.hs" 259 1 259 1 , SrcSpan "tests/examples/PartialSignatures.hs" 261 1 261 1 , SrcSpan "tests/examples/PartialSignatures.hs" 263 1 263 1 , SrcSpan "tests/examples/PartialSignatures.hs" 265 1 265 1 , SrcSpan "tests/examples/PartialSignatures.hs" 267 1 267 1 , SrcSpan "tests/examples/PartialSignatures.hs" 269 1 269 1 , SrcSpan "tests/examples/PartialSignatures.hs" 270 1 270 1 , SrcSpan "tests/examples/PartialSignatures.hs" 272 1 272 1 , SrcSpan "tests/examples/PartialSignatures.hs" 273 1 273 1 , SrcSpan "tests/examples/PartialSignatures.hs" 276 1 276 1 , SrcSpan "tests/examples/PartialSignatures.hs" 282 1 282 1 , SrcSpan "tests/examples/PartialSignatures.hs" 283 1 283 1 , SrcSpan "tests/examples/PartialSignatures.hs" 285 1 285 1 , SrcSpan "tests/examples/PartialSignatures.hs" 286 1 286 1 , SrcSpan "tests/examples/PartialSignatures.hs" 289 1 289 1 , SrcSpan "tests/examples/PartialSignatures.hs" 290 1 290 1 , SrcSpan "tests/examples/PartialSignatures.hs" 292 1 292 1 , SrcSpan "tests/examples/PartialSignatures.hs" 293 1 293 1 , SrcSpan "tests/examples/PartialSignatures.hs" 294 1 294 1 , SrcSpan "tests/examples/PartialSignatures.hs" 294 1 294 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 1 1 1 60 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 1 1 1 13 , SrcSpan "tests/examples/PartialSignatures.hs" 1 19 1 20 , SrcSpan "tests/examples/PartialSignatures.hs" 1 35 1 36 , SrcSpan "tests/examples/PartialSignatures.hs" 1 57 1 60 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 1 14 1 19 , srcInfoPoints = [] } "GADTs" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 1 21 1 35 , srcInfoPoints = [] } "NamedWildCards" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 1 37 1 56 , srcInfoPoints = [] } "ScopedTypeVariables" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 1 3 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 3 5 3 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 1 3 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 8 3 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 3 12 3 14 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 8 3 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 8 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 8 3 11 , srcInfoPoints = [] } "Int"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 15 3 20 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 15 3 16 , srcInfoPoints = [] } Nothing) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 17 3 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 17 3 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 3 17 3 20 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 1 4 22 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 1 4 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 1 4 4 , srcInfoPoints = [] } "bar") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 5 4 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 5 4 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 7 4 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 4 7 4 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 9 4 22 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 9 4 20 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 9 4 17 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 9 4 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 9 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 9 4 12 , srcInfoPoints = [] } "Foo"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 13 4 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 13 4 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 13 4 17 , srcInfoPoints = [] } "True")))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 18 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 4 18 4 19 , SrcSpan "tests/examples/PartialSignatures.hs" 4 19 4 20 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 18 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 4 18 4 19 , SrcSpan "tests/examples/PartialSignatures.hs" 4 19 4 20 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 18 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 4 18 4 19 , SrcSpan "tests/examples/PartialSignatures.hs" 4 19 4 20 ] })))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 21 4 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 21 4 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 4 21 4 22 , srcInfoPoints = [] } "x"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 7 1 7 15 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 7 11 7 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 7 1 7 10 , srcInfoPoints = [] } "addAndOr1" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 7 14 7 15 , srcInfoPoints = [] } Nothing) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 1 10 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 9 3 9 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 1 10 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 9 3 9 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 1 8 10 , srcInfoPoints = [] } "addAndOr1") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 11 8 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 8 11 8 12 , SrcSpan "tests/examples/PartialSignatures.hs" 8 13 8 14 , SrcSpan "tests/examples/PartialSignatures.hs" 8 16 8 17 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 12 8 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 12 8 13 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 15 8 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 15 8 16 , srcInfoPoints = [] } "b") ] , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 18 8 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 8 18 8 19 , SrcSpan "tests/examples/PartialSignatures.hs" 8 20 8 21 , SrcSpan "tests/examples/PartialSignatures.hs" 8 23 8 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 19 8 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 19 8 20 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 22 8 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 22 8 23 , srcInfoPoints = [] } "d") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 25 8 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 8 25 8 26 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 27 8 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 8 27 8 28 , SrcSpan "tests/examples/PartialSignatures.hs" 8 38 8 39 , SrcSpan "tests/examples/PartialSignatures.hs" 8 46 8 47 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 28 8 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 28 8 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 28 8 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 28 8 29 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 30 8 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 8 30 8 31 , SrcSpan "tests/examples/PartialSignatures.hs" 8 31 8 35 , SrcSpan "tests/examples/PartialSignatures.hs" 8 35 8 36 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 30 8 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 8 30 8 31 , SrcSpan "tests/examples/PartialSignatures.hs" 8 31 8 35 , SrcSpan "tests/examples/PartialSignatures.hs" 8 35 8 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 31 8 35 , srcInfoPoints = [] } "plus"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 37 8 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 37 8 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 37 8 38 , srcInfoPoints = [] } "d"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 40 8 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 40 8 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 40 8 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 40 8 41 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 42 8 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 42 8 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 42 8 44 , srcInfoPoints = [] } "||"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 45 8 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 45 8 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 8 45 8 46 , srcInfoPoints = [] } "c"))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 9 10 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 9 9 9 9 , SrcSpan "tests/examples/PartialSignatures.hs" 10 9 10 9 , SrcSpan "tests/examples/PartialSignatures.hs" 13 1 13 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 9 9 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 9 14 9 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 9 9 13 , srcInfoPoints = [] } "plus" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 17 9 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 9 21 9 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 17 9 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 17 9 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 17 9 20 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 24 9 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 9 28 9 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 24 9 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 24 9 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 24 9 27 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 31 9 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 31 9 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 9 31 9 34 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 9 10 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 9 10 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 9 10 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 9 10 10 , srcInfoPoints = [] } "x")) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 12 10 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 10 11 10 12 , SrcSpan "tests/examples/PartialSignatures.hs" 10 12 10 16 , SrcSpan "tests/examples/PartialSignatures.hs" 10 16 10 17 ] } "plus") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 18 10 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 18 10 19 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 20 10 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 10 20 10 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 22 10 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 22 10 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 22 10 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 22 10 23 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 24 10 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 24 10 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 24 10 25 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 26 10 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 26 10 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 10 26 10 27 , srcInfoPoints = [] } "y"))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 13 1 13 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 13 11 13 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 13 1 13 10 , srcInfoPoints = [] } "addAndOr2" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 13 14 13 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 13 16 13 18 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 13 14 13 15 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 13 19 13 20 , srcInfoPoints = [] } Nothing)) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 1 16 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 15 3 15 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 1 16 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 15 3 15 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 1 14 10 , srcInfoPoints = [] } "addAndOr2") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 11 14 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 14 11 14 12 , SrcSpan "tests/examples/PartialSignatures.hs" 14 13 14 14 , SrcSpan "tests/examples/PartialSignatures.hs" 14 16 14 17 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 12 14 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 12 14 13 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 15 14 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 15 14 16 , srcInfoPoints = [] } "b") ] , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 18 14 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 14 18 14 19 , SrcSpan "tests/examples/PartialSignatures.hs" 14 20 14 21 , SrcSpan "tests/examples/PartialSignatures.hs" 14 23 14 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 19 14 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 19 14 20 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 22 14 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 22 14 23 , srcInfoPoints = [] } "d") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 25 14 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 14 25 14 26 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 27 14 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 14 27 14 28 , SrcSpan "tests/examples/PartialSignatures.hs" 14 38 14 39 , SrcSpan "tests/examples/PartialSignatures.hs" 14 46 14 47 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 28 14 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 28 14 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 28 14 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 28 14 29 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 30 14 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 14 30 14 31 , SrcSpan "tests/examples/PartialSignatures.hs" 14 31 14 35 , SrcSpan "tests/examples/PartialSignatures.hs" 14 35 14 36 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 30 14 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 14 30 14 31 , SrcSpan "tests/examples/PartialSignatures.hs" 14 31 14 35 , SrcSpan "tests/examples/PartialSignatures.hs" 14 35 14 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 31 14 35 , srcInfoPoints = [] } "plus"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 37 14 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 37 14 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 37 14 38 , srcInfoPoints = [] } "d"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 40 14 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 40 14 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 40 14 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 40 14 41 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 42 14 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 42 14 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 42 14 44 , srcInfoPoints = [] } "||"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 45 14 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 45 14 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 14 45 14 46 , srcInfoPoints = [] } "c"))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 9 16 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 15 9 15 9 , SrcSpan "tests/examples/PartialSignatures.hs" 16 9 16 9 , SrcSpan "tests/examples/PartialSignatures.hs" 19 1 19 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 9 15 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 15 14 15 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 9 15 13 , srcInfoPoints = [] } "plus" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 17 15 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 15 21 15 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 17 15 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 17 15 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 17 15 20 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 24 15 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 15 28 15 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 24 15 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 24 15 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 24 15 27 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 31 15 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 31 15 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 15 31 15 34 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 9 16 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 9 16 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 9 16 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 9 16 10 , srcInfoPoints = [] } "x")) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 12 16 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 16 11 16 12 , SrcSpan "tests/examples/PartialSignatures.hs" 16 12 16 16 , SrcSpan "tests/examples/PartialSignatures.hs" 16 16 16 17 ] } "plus") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 18 16 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 18 16 19 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 20 16 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 16 20 16 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 22 16 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 22 16 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 22 16 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 22 16 23 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 24 16 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 24 16 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 24 16 25 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 26 16 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 26 16 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 16 26 16 27 , srcInfoPoints = [] } "y"))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 19 1 19 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 19 11 19 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 19 1 19 10 , srcInfoPoints = [] } "addAndOr3" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 19 14 19 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 19 16 19 18 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 19 14 19 15 , srcInfoPoints = [] } Nothing) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 19 19 19 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 19 21 19 23 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 19 19 19 20 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 19 24 19 25 , srcInfoPoints = [] } Nothing))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 1 22 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 21 3 21 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 1 22 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 21 3 21 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 1 20 10 , srcInfoPoints = [] } "addAndOr3") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 11 20 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 20 11 20 12 , SrcSpan "tests/examples/PartialSignatures.hs" 20 13 20 14 , SrcSpan "tests/examples/PartialSignatures.hs" 20 16 20 17 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 12 20 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 12 20 13 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 15 20 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 15 20 16 , srcInfoPoints = [] } "b") ] , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 18 20 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 20 18 20 19 , SrcSpan "tests/examples/PartialSignatures.hs" 20 20 20 21 , SrcSpan "tests/examples/PartialSignatures.hs" 20 23 20 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 19 20 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 19 20 20 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 22 20 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 22 20 23 , srcInfoPoints = [] } "d") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 25 20 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 20 25 20 26 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 27 20 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 20 27 20 28 , SrcSpan "tests/examples/PartialSignatures.hs" 20 38 20 39 , SrcSpan "tests/examples/PartialSignatures.hs" 20 46 20 47 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 28 20 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 28 20 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 28 20 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 28 20 29 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 30 20 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 20 30 20 31 , SrcSpan "tests/examples/PartialSignatures.hs" 20 31 20 35 , SrcSpan "tests/examples/PartialSignatures.hs" 20 35 20 36 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 30 20 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 20 30 20 31 , SrcSpan "tests/examples/PartialSignatures.hs" 20 31 20 35 , SrcSpan "tests/examples/PartialSignatures.hs" 20 35 20 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 31 20 35 , srcInfoPoints = [] } "plus"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 37 20 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 37 20 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 37 20 38 , srcInfoPoints = [] } "d"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 40 20 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 40 20 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 40 20 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 40 20 41 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 42 20 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 42 20 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 42 20 44 , srcInfoPoints = [] } "||"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 45 20 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 45 20 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 20 45 20 46 , srcInfoPoints = [] } "c"))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 9 22 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 21 9 21 9 , SrcSpan "tests/examples/PartialSignatures.hs" 22 9 22 9 , SrcSpan "tests/examples/PartialSignatures.hs" 25 1 25 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 9 21 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 21 14 21 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 9 21 13 , srcInfoPoints = [] } "plus" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 17 21 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 21 21 21 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 17 21 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 17 21 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 17 21 20 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 24 21 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 21 28 21 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 24 21 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 24 21 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 24 21 27 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 31 21 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 31 21 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 21 31 21 34 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 9 22 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 9 22 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 9 22 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 9 22 10 , srcInfoPoints = [] } "x")) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 12 22 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 22 11 22 12 , SrcSpan "tests/examples/PartialSignatures.hs" 22 12 22 16 , SrcSpan "tests/examples/PartialSignatures.hs" 22 16 22 17 ] } "plus") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 18 22 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 18 22 19 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 20 22 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 22 20 22 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 22 22 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 22 22 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 22 22 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 22 22 23 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 24 22 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 24 22 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 24 22 25 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 26 22 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 26 22 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 22 26 22 27 , srcInfoPoints = [] } "y"))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 1 25 43 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 25 11 25 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 1 25 10 , srcInfoPoints = [] } "addAndOr4" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 14 25 43 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 25 22 25 24 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 14 25 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 25 14 25 15 , SrcSpan "tests/examples/PartialSignatures.hs" 25 20 25 21 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 15 25 20 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 15 25 18 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 15 25 16 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 17 25 18 , srcInfoPoints = [] } Nothing)) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 19 25 20 , srcInfoPoints = [] } Nothing))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 25 25 43 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 25 33 25 35 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 25 25 32 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 25 25 25 26 , SrcSpan "tests/examples/PartialSignatures.hs" 25 31 25 32 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 26 25 31 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 26 25 29 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 26 25 27 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 28 25 29 , srcInfoPoints = [] } Nothing)) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 30 25 31 , srcInfoPoints = [] } Nothing))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 36 25 43 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 25 36 25 37 , SrcSpan "tests/examples/PartialSignatures.hs" 25 42 25 43 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 37 25 42 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 37 25 40 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 37 25 38 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 39 25 40 , srcInfoPoints = [] } Nothing)) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 25 41 25 42 , srcInfoPoints = [] } Nothing))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 1 28 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 27 3 27 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 1 28 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 27 3 27 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 1 26 10 , srcInfoPoints = [] } "addAndOr4") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 11 26 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 26 11 26 12 , SrcSpan "tests/examples/PartialSignatures.hs" 26 13 26 14 , SrcSpan "tests/examples/PartialSignatures.hs" 26 16 26 17 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 12 26 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 12 26 13 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 15 26 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 15 26 16 , srcInfoPoints = [] } "b") ] , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 18 26 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 26 18 26 19 , SrcSpan "tests/examples/PartialSignatures.hs" 26 20 26 21 , SrcSpan "tests/examples/PartialSignatures.hs" 26 23 26 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 19 26 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 19 26 20 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 22 26 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 22 26 23 , srcInfoPoints = [] } "d") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 25 26 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 26 25 26 26 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 27 26 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 26 27 26 28 , SrcSpan "tests/examples/PartialSignatures.hs" 26 38 26 39 , SrcSpan "tests/examples/PartialSignatures.hs" 26 46 26 47 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 28 26 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 28 26 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 28 26 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 28 26 29 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 30 26 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 26 30 26 31 , SrcSpan "tests/examples/PartialSignatures.hs" 26 31 26 35 , SrcSpan "tests/examples/PartialSignatures.hs" 26 35 26 36 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 30 26 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 26 30 26 31 , SrcSpan "tests/examples/PartialSignatures.hs" 26 31 26 35 , SrcSpan "tests/examples/PartialSignatures.hs" 26 35 26 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 31 26 35 , srcInfoPoints = [] } "plus"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 37 26 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 37 26 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 37 26 38 , srcInfoPoints = [] } "d"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 40 26 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 40 26 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 40 26 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 40 26 41 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 42 26 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 42 26 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 42 26 44 , srcInfoPoints = [] } "||"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 45 26 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 45 26 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 26 45 26 46 , srcInfoPoints = [] } "c"))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 9 28 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 27 9 27 9 , SrcSpan "tests/examples/PartialSignatures.hs" 28 9 28 9 , SrcSpan "tests/examples/PartialSignatures.hs" 31 1 31 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 9 27 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 27 14 27 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 9 27 13 , srcInfoPoints = [] } "plus" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 17 27 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 27 21 27 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 17 27 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 17 27 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 17 27 20 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 24 27 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 27 28 27 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 24 27 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 24 27 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 24 27 27 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 31 27 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 31 27 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 27 31 27 34 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 9 28 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 9 28 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 9 28 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 9 28 10 , srcInfoPoints = [] } "x")) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 12 28 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 28 11 28 12 , SrcSpan "tests/examples/PartialSignatures.hs" 28 12 28 16 , SrcSpan "tests/examples/PartialSignatures.hs" 28 16 28 17 ] } "plus") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 18 28 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 18 28 19 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 20 28 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 28 20 28 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 22 28 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 22 28 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 22 28 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 22 28 23 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 24 28 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 24 28 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 24 28 25 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 26 28 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 26 28 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 28 26 28 27 , srcInfoPoints = [] } "y"))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 1 31 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 31 11 31 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 1 31 10 , srcInfoPoints = [] } "addAndOr5" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 14 31 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 31 21 31 23 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 14 31 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 31 14 31 15 , SrcSpan "tests/examples/PartialSignatures.hs" 31 16 31 17 , SrcSpan "tests/examples/PartialSignatures.hs" 31 19 31 20 ] } Boxed [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 15 31 16 , srcInfoPoints = [] } Nothing , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 18 31 19 , srcInfoPoints = [] } Nothing ]) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 24 31 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 31 31 31 33 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 24 31 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 31 24 31 25 , SrcSpan "tests/examples/PartialSignatures.hs" 31 26 31 27 , SrcSpan "tests/examples/PartialSignatures.hs" 31 29 31 30 ] } Boxed [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 25 31 26 , srcInfoPoints = [] } Nothing , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 28 31 29 , srcInfoPoints = [] } Nothing ]) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 34 31 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 31 34 31 35 , SrcSpan "tests/examples/PartialSignatures.hs" 31 36 31 37 , SrcSpan "tests/examples/PartialSignatures.hs" 31 39 31 40 ] } Boxed [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 35 31 36 , srcInfoPoints = [] } Nothing , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 31 38 31 39 , srcInfoPoints = [] } Nothing ]))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 1 34 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 33 3 33 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 1 34 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 33 3 33 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 1 32 10 , srcInfoPoints = [] } "addAndOr5") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 11 32 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 32 11 32 12 , SrcSpan "tests/examples/PartialSignatures.hs" 32 13 32 14 , SrcSpan "tests/examples/PartialSignatures.hs" 32 16 32 17 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 12 32 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 12 32 13 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 15 32 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 15 32 16 , srcInfoPoints = [] } "b") ] , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 18 32 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 32 18 32 19 , SrcSpan "tests/examples/PartialSignatures.hs" 32 20 32 21 , SrcSpan "tests/examples/PartialSignatures.hs" 32 23 32 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 19 32 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 19 32 20 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 22 32 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 22 32 23 , srcInfoPoints = [] } "d") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 25 32 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 32 25 32 26 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 27 32 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 32 27 32 28 , SrcSpan "tests/examples/PartialSignatures.hs" 32 38 32 39 , SrcSpan "tests/examples/PartialSignatures.hs" 32 46 32 47 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 28 32 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 28 32 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 28 32 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 28 32 29 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 30 32 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 32 30 32 31 , SrcSpan "tests/examples/PartialSignatures.hs" 32 31 32 35 , SrcSpan "tests/examples/PartialSignatures.hs" 32 35 32 36 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 30 32 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 32 30 32 31 , SrcSpan "tests/examples/PartialSignatures.hs" 32 31 32 35 , SrcSpan "tests/examples/PartialSignatures.hs" 32 35 32 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 31 32 35 , srcInfoPoints = [] } "plus"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 37 32 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 37 32 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 37 32 38 , srcInfoPoints = [] } "d"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 40 32 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 40 32 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 40 32 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 40 32 41 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 42 32 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 42 32 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 42 32 44 , srcInfoPoints = [] } "||"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 45 32 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 45 32 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 32 45 32 46 , srcInfoPoints = [] } "c"))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 9 34 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 33 9 33 9 , SrcSpan "tests/examples/PartialSignatures.hs" 34 9 34 9 , SrcSpan "tests/examples/PartialSignatures.hs" 37 1 37 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 9 33 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 33 14 33 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 9 33 13 , srcInfoPoints = [] } "plus" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 17 33 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 33 21 33 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 17 33 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 17 33 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 17 33 20 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 24 33 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 33 28 33 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 24 33 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 24 33 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 24 33 27 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 31 33 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 31 33 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 33 31 33 34 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 9 34 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 9 34 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 9 34 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 9 34 10 , srcInfoPoints = [] } "x")) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 12 34 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 34 11 34 12 , SrcSpan "tests/examples/PartialSignatures.hs" 34 12 34 16 , SrcSpan "tests/examples/PartialSignatures.hs" 34 16 34 17 ] } "plus") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 18 34 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 18 34 19 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 20 34 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 34 20 34 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 22 34 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 22 34 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 22 34 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 22 34 23 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 24 34 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 24 34 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 24 34 25 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 26 34 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 26 34 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 34 26 34 27 , srcInfoPoints = [] } "y"))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 1 37 51 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 37 11 37 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 1 37 10 , srcInfoPoints = [] } "addAndOr6" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 14 37 51 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 37 23 37 25 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 14 37 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 37 14 37 15 , SrcSpan "tests/examples/PartialSignatures.hs" 37 18 37 19 , SrcSpan "tests/examples/PartialSignatures.hs" 37 21 37 22 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 15 37 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 15 37 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 15 37 18 , srcInfoPoints = [] } "Int")) , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 20 37 21 , srcInfoPoints = [] } Nothing ]) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 26 37 51 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 37 36 37 38 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 26 37 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 37 26 37 27 , SrcSpan "tests/examples/PartialSignatures.hs" 37 31 37 32 , SrcSpan "tests/examples/PartialSignatures.hs" 37 34 37 35 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 27 37 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 27 37 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 27 37 31 , srcInfoPoints = [] } "Bool")) , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 33 37 34 , srcInfoPoints = [] } Nothing ]) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 39 37 51 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 37 39 37 40 , SrcSpan "tests/examples/PartialSignatures.hs" 37 50 37 51 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 40 37 50 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 40 37 45 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 40 37 41 , srcInfoPoints = [] } Nothing) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 42 37 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 42 37 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 42 37 45 , srcInfoPoints = [] } "Int")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 46 37 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 46 37 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 37 46 37 50 , srcInfoPoints = [] } "Bool"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 1 40 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 39 3 39 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 1 40 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 39 3 39 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 1 38 10 , srcInfoPoints = [] } "addAndOr6") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 11 38 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 38 11 38 12 , SrcSpan "tests/examples/PartialSignatures.hs" 38 13 38 14 , SrcSpan "tests/examples/PartialSignatures.hs" 38 16 38 17 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 12 38 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 12 38 13 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 15 38 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 15 38 16 , srcInfoPoints = [] } "b") ] , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 18 38 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 38 18 38 19 , SrcSpan "tests/examples/PartialSignatures.hs" 38 20 38 21 , SrcSpan "tests/examples/PartialSignatures.hs" 38 23 38 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 19 38 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 19 38 20 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 22 38 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 22 38 23 , srcInfoPoints = [] } "d") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 25 38 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 38 25 38 26 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 27 38 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 38 27 38 28 , SrcSpan "tests/examples/PartialSignatures.hs" 38 38 38 39 , SrcSpan "tests/examples/PartialSignatures.hs" 38 46 38 47 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 28 38 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 28 38 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 28 38 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 28 38 29 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 30 38 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 38 30 38 31 , SrcSpan "tests/examples/PartialSignatures.hs" 38 31 38 35 , SrcSpan "tests/examples/PartialSignatures.hs" 38 35 38 36 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 30 38 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 38 30 38 31 , SrcSpan "tests/examples/PartialSignatures.hs" 38 31 38 35 , SrcSpan "tests/examples/PartialSignatures.hs" 38 35 38 36 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 31 38 35 , srcInfoPoints = [] } "plus"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 37 38 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 37 38 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 37 38 38 , srcInfoPoints = [] } "d"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 40 38 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 40 38 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 40 38 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 40 38 41 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 42 38 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 42 38 44 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 42 38 44 , srcInfoPoints = [] } "||"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 45 38 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 45 38 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 38 45 38 46 , srcInfoPoints = [] } "c"))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 9 40 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 39 9 39 9 , SrcSpan "tests/examples/PartialSignatures.hs" 40 9 40 9 , SrcSpan "tests/examples/PartialSignatures.hs" 43 1 43 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 9 39 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 39 14 39 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 9 39 13 , srcInfoPoints = [] } "plus" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 17 39 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 39 21 39 23 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 17 39 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 17 39 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 17 39 20 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 24 39 34 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 39 28 39 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 24 39 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 24 39 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 24 39 27 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 31 39 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 31 39 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 39 31 39 34 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 9 40 27 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 9 40 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 9 40 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 9 40 10 , srcInfoPoints = [] } "x")) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 12 40 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 40 11 40 12 , SrcSpan "tests/examples/PartialSignatures.hs" 40 12 40 16 , SrcSpan "tests/examples/PartialSignatures.hs" 40 16 40 17 ] } "plus") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 18 40 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 18 40 19 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 20 40 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 40 20 40 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 22 40 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 22 40 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 22 40 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 22 40 23 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 24 40 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 24 40 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 24 40 25 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 26 40 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 26 40 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 40 26 40 27 , srcInfoPoints = [] } "y"))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 43 1 43 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 43 5 43 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 43 1 43 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 43 8 43 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 43 10 43 12 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 43 8 43 9 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 43 13 43 14 , srcInfoPoints = [] } Nothing)) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 1 44 14 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 1 44 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 1 44 4 , srcInfoPoints = [] } "bar") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 5 44 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 5 44 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 7 44 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 44 7 44 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 9 44 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 9 44 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 9 44 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 9 44 12 , srcInfoPoints = [] } "not"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 13 44 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 13 44 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 44 13 44 14 , srcInfoPoints = [] } "x"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 47 1 47 11 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 47 7 47 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 47 1 47 6 , srcInfoPoints = [] } "alpha" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 47 10 47 11 , srcInfoPoints = [] } Nothing) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 48 1 48 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 48 1 48 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 48 1 48 6 , srcInfoPoints = [] } "alpha")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 48 7 48 10 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 48 7 48 8 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 48 9 48 10 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 48 9 48 10 , srcInfoPoints = [] } 3 "3"))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 51 1 51 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 51 7 51 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 51 1 51 6 , srcInfoPoints = [] } "bravo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 51 10 51 16 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 51 10 51 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 51 12 51 14 ] } (WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 51 10 51 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 51 12 51 14 ] } Nothing))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 51 15 51 16 , srcInfoPoints = [] } Nothing)) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 52 1 52 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 52 1 52 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 52 1 52 6 , srcInfoPoints = [] } "bravo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 52 7 52 10 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 52 7 52 8 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 52 9 52 10 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 52 9 52 10 , srcInfoPoints = [] } 3 "3"))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 55 1 55 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 55 7 55 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 55 1 55 6 , srcInfoPoints = [] } "bravo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 55 10 55 16 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 55 10 55 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 55 12 55 14 ] } (WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 55 10 55 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 55 12 55 14 ] } Nothing))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 55 15 55 16 , srcInfoPoints = [] } Nothing)) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 56 1 56 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 56 1 56 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 56 1 56 6 , srcInfoPoints = [] } "bravo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 56 7 56 10 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 56 7 56 8 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 56 9 56 10 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 56 9 56 10 , srcInfoPoints = [] } 3 "3"))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 1 58 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 58 7 58 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 1 58 6 , srcInfoPoints = [] } "barry" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 10 58 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 58 13 58 15 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 10 58 12 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 11 58 12 , srcInfoPoints = [] } "a"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 16 58 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 58 16 58 17 , SrcSpan "tests/examples/PartialSignatures.hs" 58 22 58 23 , SrcSpan "tests/examples/PartialSignatures.hs" 58 28 58 29 ] } Boxed [ TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 17 58 22 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 17 58 19 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 18 58 19 , srcInfoPoints = [] } "b"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 20 58 22 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 21 58 22 , srcInfoPoints = [] } "a"))) , TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 24 58 28 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 24 58 26 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 25 58 26 , srcInfoPoints = [] } "b"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 58 27 58 28 , srcInfoPoints = [] } Nothing) ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 1 59 30 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 1 59 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 1 59 6 , srcInfoPoints = [] } "barry") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 7 59 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 7 59 8 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 9 59 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 59 9 59 10 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 11 59 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 59 11 59 12 , SrcSpan "tests/examples/PartialSignatures.hs" 59 20 59 21 , SrcSpan "tests/examples/PartialSignatures.hs" 59 29 59 30 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 12 59 20 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 12 59 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 12 59 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 12 59 16 , srcInfoPoints = [] } "Left"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 17 59 20 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 17 59 20 , srcInfoPoints = [] } "x" "x")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 22 59 29 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 22 59 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 22 59 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 22 59 27 , srcInfoPoints = [] } "Right"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 28 59 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 28 59 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 59 28 59 29 , srcInfoPoints = [] } "x"))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 1 61 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 61 5 61 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 1 61 4 , srcInfoPoints = [] } "foo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 8 61 26 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 8 61 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 61 17 61 19 ] } (EqualP SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 8 61 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 61 10 61 11 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 8 61 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 8 61 9 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 12 61 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 12 61 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 12 61 16 , srcInfoPoints = [] } "Bool")))))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 20 61 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 61 20 61 21 , SrcSpan "tests/examples/PartialSignatures.hs" 61 22 61 23 , SrcSpan "tests/examples/PartialSignatures.hs" 61 25 61 26 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 21 61 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 21 61 22 , srcInfoPoints = [] } "a") , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 61 24 61 25 , srcInfoPoints = [] } Nothing ])) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 1 62 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 1 62 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 1 62 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 5 62 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 62 5 62 6 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 7 62 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 62 7 62 8 , SrcSpan "tests/examples/PartialSignatures.hs" 62 12 62 13 , SrcSpan "tests/examples/PartialSignatures.hs" 62 19 62 20 ] } Boxed [ Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 8 62 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 8 62 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 8 62 12 , srcInfoPoints = [] } "True")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 14 62 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 14 62 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 62 14 62 19 , srcInfoPoints = [] } "False")) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 1 65 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 65 7 65 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 1 65 6 , srcInfoPoints = [] } "every" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 10 65 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 65 12 65 14 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 10 65 11 , srcInfoPoints = [] } Nothing) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 15 65 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 65 17 65 19 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 15 65 16 , srcInfoPoints = [] } Nothing) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 20 65 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 20 65 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 65 20 65 24 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 1 67 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 1 66 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 1 66 6 , srcInfoPoints = [] } "every") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 7 66 8 , srcInfoPoints = [] } , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 9 66 11 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 66 9 66 10 , SrcSpan "tests/examples/PartialSignatures.hs" 66 10 66 11 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 12 66 18 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 66 12 66 13 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 14 66 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 14 66 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 66 14 66 18 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 1 67 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 1 67 6 , srcInfoPoints = [] } "every") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 7 67 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 7 67 8 , srcInfoPoints = [] } "p") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 9 67 15 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 67 9 67 10 , SrcSpan "tests/examples/PartialSignatures.hs" 67 14 67 15 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 10 67 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 10 67 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 10 67 11 , srcInfoPoints = [] } "x")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 11 67 12 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 11 67 12 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 12 67 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 12 67 14 , srcInfoPoints = [] } "xs"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 16 67 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 67 16 67 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 18 67 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 18 67 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 18 67 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 18 67 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 18 67 19 , srcInfoPoints = [] } "p"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 20 67 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 20 67 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 20 67 21 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 22 67 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 22 67 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 22 67 24 , srcInfoPoints = [] } "&&"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 25 67 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 25 67 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 25 67 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 25 67 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 25 67 30 , srcInfoPoints = [] } "every"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 31 67 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 31 67 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 31 67 32 , srcInfoPoints = [] } "p")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 33 67 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 33 67 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 67 33 67 35 , srcInfoPoints = [] } "xs")))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 1 69 38 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 69 7 69 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 1 69 6 , srcInfoPoints = [] } "every" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 10 69 38 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 69 23 69 25 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 10 69 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 69 10 69 11 , SrcSpan "tests/examples/PartialSignatures.hs" 69 21 69 22 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 11 69 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 69 14 69 16 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 11 69 13 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 12 69 13 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 17 69 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 17 69 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 17 69 21 , srcInfoPoints = [] } "Bool"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 26 69 38 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 69 31 69 33 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 26 69 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 69 26 69 27 , SrcSpan "tests/examples/PartialSignatures.hs" 69 29 69 30 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 27 69 29 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 28 69 29 , srcInfoPoints = [] } "a")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 34 69 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 34 69 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 69 34 69 38 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 1 71 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 1 70 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 1 70 6 , srcInfoPoints = [] } "every") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 7 70 8 , srcInfoPoints = [] } , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 9 70 11 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 70 9 70 10 , SrcSpan "tests/examples/PartialSignatures.hs" 70 10 70 11 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 12 70 18 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 70 12 70 13 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 14 70 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 14 70 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 70 14 70 18 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 1 71 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 1 71 6 , srcInfoPoints = [] } "every") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 7 71 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 7 71 8 , srcInfoPoints = [] } "p") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 9 71 15 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 71 9 71 10 , SrcSpan "tests/examples/PartialSignatures.hs" 71 14 71 15 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 10 71 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 10 71 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 10 71 11 , srcInfoPoints = [] } "x")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 11 71 12 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 11 71 12 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 12 71 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 12 71 14 , srcInfoPoints = [] } "xs"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 16 71 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 71 16 71 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 18 71 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 18 71 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 18 71 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 18 71 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 18 71 19 , srcInfoPoints = [] } "p"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 20 71 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 20 71 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 20 71 21 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 22 71 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 22 71 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 22 71 24 , srcInfoPoints = [] } "&&"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 25 71 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 25 71 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 25 71 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 25 71 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 25 71 30 , srcInfoPoints = [] } "every"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 31 71 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 31 71 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 31 71 32 , srcInfoPoints = [] } "p")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 33 71 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 33 71 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 71 33 71 35 , srcInfoPoints = [] } "xs")))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 1 74 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 74 5 74 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 1 74 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 8 74 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 74 13 74 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 8 74 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 8 74 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 8 74 12 , srcInfoPoints = [] } "Bool"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 16 74 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 16 74 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 74 16 74 20 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 1 75 17 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 1 75 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 1 75 4 , srcInfoPoints = [] } "bar") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 5 75 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 5 75 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 7 75 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 75 7 75 8 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 9 75 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 75 9 75 10 , SrcSpan "tests/examples/PartialSignatures.hs" 75 16 75 17 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 10 75 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 75 12 75 14 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 10 75 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 10 75 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 10 75 11 , srcInfoPoints = [] } "x"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 75 15 75 16 , srcInfoPoints = [] } Nothing)))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 77 1 77 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 77 5 77 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 77 1 77 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 77 8 77 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 77 11 77 13 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 77 8 77 10 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 77 9 77 10 , srcInfoPoints = [] } "a"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 77 14 77 16 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 77 15 77 16 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 1 79 25 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 1 78 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 1 78 4 , srcInfoPoints = [] } "bar") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 5 78 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 5 78 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 5 78 9 , srcInfoPoints = [] } "True")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 11 78 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 78 11 78 12 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 13 78 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 78 13 78 14 , SrcSpan "tests/examples/PartialSignatures.hs" 78 25 78 26 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 14 78 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 78 20 78 22 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 14 78 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 14 78 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 14 78 19 , srcInfoPoints = [] } "False"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 23 78 25 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 78 24 78 25 , srcInfoPoints = [] } "a")))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 1 79 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 1 79 4 , srcInfoPoints = [] } "bar") [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 5 79 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 5 79 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 5 79 10 , srcInfoPoints = [] } "False")) [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 11 79 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 79 11 79 12 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 13 79 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 79 13 79 14 , SrcSpan "tests/examples/PartialSignatures.hs" 79 24 79 25 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 14 79 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 79 19 79 21 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 14 79 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 14 79 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 14 79 18 , srcInfoPoints = [] } "True"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 22 79 24 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 79 23 79 24 , srcInfoPoints = [] } "a")))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 1 82 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 82 10 82 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 1 82 9 , srcInfoPoints = [] } "arbitCs1" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 13 82 29 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 13 82 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 82 15 82 17 ] } (WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 13 82 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 82 15 82 17 ] } Nothing))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 18 82 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 82 20 82 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 18 82 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 18 82 19 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 23 82 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 23 82 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 82 23 82 29 , srcInfoPoints = [] } "String"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 1 83 44 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 1 83 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 1 83 9 , srcInfoPoints = [] } "arbitCs1") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 10 83 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 10 83 11 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 12 83 44 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 83 12 83 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 14 83 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 14 83 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 14 83 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 14 83 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 14 83 18 , srcInfoPoints = [] } "show"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 19 83 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 83 19 83 20 , SrcSpan "tests/examples/PartialSignatures.hs" 83 26 83 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 20 83 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 20 83 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 20 83 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 20 83 24 , srcInfoPoints = [] } "succ"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 25 83 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 25 83 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 25 83 26 , srcInfoPoints = [] } "x")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 28 83 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 28 83 30 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 28 83 30 , srcInfoPoints = [] } "++"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 31 83 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 31 83 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 31 83 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 31 83 35 , srcInfoPoints = [] } "show"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 36 83 44 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 83 36 83 37 , SrcSpan "tests/examples/PartialSignatures.hs" 83 43 83 44 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 37 83 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 37 83 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 37 83 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 37 83 38 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 39 83 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 39 83 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 39 83 41 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 42 83 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 42 83 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 83 42 83 43 , srcInfoPoints = [] } "x")))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 1 85 39 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 85 10 85 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 1 85 9 , srcInfoPoints = [] } "arbitCs2" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 13 85 39 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 13 85 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 85 13 85 14 , SrcSpan "tests/examples/PartialSignatures.hs" 85 20 85 21 , SrcSpan "tests/examples/PartialSignatures.hs" 85 23 85 24 , SrcSpan "tests/examples/PartialSignatures.hs" 85 25 85 27 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 14 85 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 14 85 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 14 85 18 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 19 85 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 19 85 20 , srcInfoPoints = [] } "a") ] , WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 22 85 23 , srcInfoPoints = [] } Nothing ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 28 85 39 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 85 30 85 32 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 28 85 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 28 85 29 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 33 85 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 33 85 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 85 33 85 39 , srcInfoPoints = [] } "String"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 1 86 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 1 86 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 1 86 9 , srcInfoPoints = [] } "arbitCs2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 10 86 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 10 86 11 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 12 86 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 86 12 86 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 14 86 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 14 86 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 14 86 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 14 86 22 , srcInfoPoints = [] } "arbitCs1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 23 86 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 23 86 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 86 23 86 24 , srcInfoPoints = [] } "x"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 1 88 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 88 10 88 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 1 88 9 , srcInfoPoints = [] } "arbitCs3" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 13 88 47 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 13 88 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 88 13 88 14 , SrcSpan "tests/examples/PartialSignatures.hs" 88 20 88 21 , SrcSpan "tests/examples/PartialSignatures.hs" 88 28 88 29 , SrcSpan "tests/examples/PartialSignatures.hs" 88 31 88 32 , SrcSpan "tests/examples/PartialSignatures.hs" 88 33 88 35 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 14 88 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 14 88 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 14 88 18 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 19 88 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 19 88 20 , srcInfoPoints = [] } "a") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 22 88 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 22 88 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 22 88 26 , srcInfoPoints = [] } "Enum")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 27 88 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 27 88 28 , srcInfoPoints = [] } "a") ] , WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 30 88 31 , srcInfoPoints = [] } Nothing ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 36 88 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 88 38 88 40 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 36 88 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 36 88 37 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 41 88 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 41 88 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 88 41 88 47 , srcInfoPoints = [] } "String"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 1 89 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 1 89 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 1 89 9 , srcInfoPoints = [] } "arbitCs3") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 10 89 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 10 89 11 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 12 89 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 89 12 89 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 14 89 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 14 89 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 14 89 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 14 89 22 , srcInfoPoints = [] } "arbitCs1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 23 89 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 23 89 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 89 23 89 24 , srcInfoPoints = [] } "x"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 1 91 37 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 91 10 91 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 1 91 9 , srcInfoPoints = [] } "arbitCs4" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 13 91 37 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 13 91 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 91 13 91 14 , SrcSpan "tests/examples/PartialSignatures.hs" 91 18 91 19 , SrcSpan "tests/examples/PartialSignatures.hs" 91 21 91 22 , SrcSpan "tests/examples/PartialSignatures.hs" 91 23 91 25 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 14 91 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 14 91 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 14 91 16 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 17 91 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 17 91 18 , srcInfoPoints = [] } "a") ] , WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 20 91 21 , srcInfoPoints = [] } Nothing ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 26 91 37 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 91 28 91 30 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 26 91 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 26 91 27 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 31 91 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 31 91 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 91 31 91 37 , srcInfoPoints = [] } "String"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 1 92 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 1 92 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 1 92 9 , srcInfoPoints = [] } "arbitCs4") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 10 92 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 10 92 11 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 12 92 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 92 12 92 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 14 92 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 14 92 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 14 92 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 14 92 22 , srcInfoPoints = [] } "arbitCs1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 23 92 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 23 92 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 92 23 92 24 , srcInfoPoints = [] } "x"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 1 94 53 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 94 10 94 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 1 94 9 , srcInfoPoints = [] } "arbitCs5" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 13 94 53 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 13 94 41 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 94 13 94 14 , SrcSpan "tests/examples/PartialSignatures.hs" 94 18 94 19 , SrcSpan "tests/examples/PartialSignatures.hs" 94 26 94 27 , SrcSpan "tests/examples/PartialSignatures.hs" 94 34 94 35 , SrcSpan "tests/examples/PartialSignatures.hs" 94 37 94 38 , SrcSpan "tests/examples/PartialSignatures.hs" 94 39 94 41 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 14 94 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 14 94 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 14 94 16 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 17 94 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 17 94 18 , srcInfoPoints = [] } "a") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 20 94 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 20 94 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 20 94 24 , srcInfoPoints = [] } "Enum")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 25 94 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 25 94 26 , srcInfoPoints = [] } "a") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 28 94 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 28 94 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 28 94 32 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 33 94 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 33 94 34 , srcInfoPoints = [] } "a") ] , WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 36 94 37 , srcInfoPoints = [] } Nothing ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 42 94 53 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 94 44 94 46 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 42 94 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 42 94 43 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 47 94 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 47 94 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 94 47 94 53 , srcInfoPoints = [] } "String"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 1 95 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 1 95 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 1 95 9 , srcInfoPoints = [] } "arbitCs5") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 10 95 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 10 95 11 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 12 95 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 95 12 95 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 14 95 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 14 95 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 14 95 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 14 95 22 , srcInfoPoints = [] } "arbitCs1"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 23 95 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 23 95 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 95 23 95 24 , srcInfoPoints = [] } "x"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 98 1 98 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 98 5 98 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 98 1 98 4 , srcInfoPoints = [] } "foo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 98 8 98 19 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 98 8 98 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 98 10 98 12 ] } (WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 98 8 98 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 98 10 98 12 ] } Nothing))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 98 13 98 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 98 13 98 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 98 13 98 19 , srcInfoPoints = [] } "String")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 99 1 99 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 99 1 99 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 99 1 99 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 99 5 99 10 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 99 5 99 6 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 99 7 99 10 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 99 7 99 10 , srcInfoPoints = [] } "x" "x"))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 105 1 105 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 105 5 105 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 105 1 105 4 , srcInfoPoints = [] } "foo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 105 8 105 14 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 105 8 105 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 105 10 105 12 ] } (WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 105 8 105 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 105 10 105 12 ] } Nothing))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 105 13 105 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 105 13 105 14 , srcInfoPoints = [] } "a"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 106 1 106 8 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 106 1 106 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 106 1 106 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 106 5 106 8 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 106 5 106 6 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 106 7 106 8 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 106 7 106 8 , srcInfoPoints = [] } 3 "3"))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 109 1 109 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 109 5 109 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 109 1 109 4 , srcInfoPoints = [] } "foo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 109 8 109 14 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 109 8 109 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 109 10 109 12 ] } (WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 109 8 109 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 109 10 109 12 ] } Nothing))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 109 13 109 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 109 13 109 14 , srcInfoPoints = [] } "a"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 110 1 110 8 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 110 1 110 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 110 1 110 4 , srcInfoPoints = [] } "foo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 110 5 110 8 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 110 5 110 6 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 110 7 110 8 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 110 7 110 8 , srcInfoPoints = [] } 3 "3"))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 1 112 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 112 6 112 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 1 112 5 , srcInfoPoints = [] } "fall" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 9 112 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 112 9 112 15 , SrcSpan "tests/examples/PartialSignatures.hs" 112 18 112 19 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 16 112 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 16 112 17 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 20 112 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 112 22 112 24 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 20 112 21 , srcInfoPoints = [] } Nothing) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 25 112 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 112 25 112 26 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 1 113 11 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 1 113 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 1 113 5 , srcInfoPoints = [] } "fall") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 6 113 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 6 113 7 , srcInfoPoints = [] } "v") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 8 113 11 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 113 8 113 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 10 113 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 10 113 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 113 10 113 11 , srcInfoPoints = [] } "v")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 115 1 115 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 115 5 115 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 115 1 115 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 115 8 115 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 115 11 115 13 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 115 8 115 10 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 115 9 115 10 , srcInfoPoints = [] } "a"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 115 14 115 16 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 115 15 115 16 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 1 116 14 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 1 116 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 1 116 4 , srcInfoPoints = [] } "bar") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 5 116 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 5 116 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 7 116 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 116 7 116 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 9 116 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 9 116 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 9 116 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 9 116 12 , srcInfoPoints = [] } "not"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 13 116 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 13 116 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 116 13 116 14 , srcInfoPoints = [] } "x"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 1 118 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 118 5 118 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 1 118 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 8 118 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 118 31 118 33 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 8 118 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 118 8 118 9 , SrcSpan "tests/examples/PartialSignatures.hs" 118 29 118 30 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 9 118 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 118 9 118 15 , SrcSpan "tests/examples/PartialSignatures.hs" 118 17 118 18 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 16 118 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 16 118 17 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 19 118 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 118 23 118 25 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 19 118 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 118 19 118 20 , SrcSpan "tests/examples/PartialSignatures.hs" 118 21 118 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 20 118 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 20 118 21 , srcInfoPoints = [] } "a"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 26 118 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 118 26 118 27 , SrcSpan "tests/examples/PartialSignatures.hs" 118 28 118 29 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 27 118 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 27 118 28 , srcInfoPoints = [] } "a")))))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 118 34 118 35 , srcInfoPoints = [] } Nothing)) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 1 119 40 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 1 119 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 1 119 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 5 119 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 5 119 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 7 119 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 119 7 119 8 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 9 119 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 119 9 119 10 , SrcSpan "tests/examples/PartialSignatures.hs" 119 25 119 26 , SrcSpan "tests/examples/PartialSignatures.hs" 119 39 119 40 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 10 119 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 10 119 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 10 119 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 10 119 11 , srcInfoPoints = [] } "x"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 12 119 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 119 12 119 13 , SrcSpan "tests/examples/PartialSignatures.hs" 119 17 119 18 , SrcSpan "tests/examples/PartialSignatures.hs" 119 24 119 25 ] } [ Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 13 119 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 13 119 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 13 119 17 , srcInfoPoints = [] } "True")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 19 119 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 19 119 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 19 119 24 , srcInfoPoints = [] } "False")) ]) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 27 119 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 27 119 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 27 119 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 27 119 28 , srcInfoPoints = [] } "x"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 29 119 39 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 119 29 119 30 , SrcSpan "tests/examples/PartialSignatures.hs" 119 33 119 34 , SrcSpan "tests/examples/PartialSignatures.hs" 119 38 119 39 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 30 119 33 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 30 119 33 , srcInfoPoints = [] } 'a' "a") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 35 119 38 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 119 35 119 38 , srcInfoPoints = [] } 'b' "b") ]) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 1 121 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 121 5 121 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 1 121 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 8 121 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 121 31 121 33 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 8 121 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 121 8 121 9 , SrcSpan "tests/examples/PartialSignatures.hs" 121 29 121 30 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 9 121 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 121 9 121 15 , SrcSpan "tests/examples/PartialSignatures.hs" 121 17 121 18 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 16 121 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 16 121 17 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 19 121 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 121 23 121 25 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 19 121 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 121 19 121 20 , SrcSpan "tests/examples/PartialSignatures.hs" 121 21 121 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 20 121 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 20 121 21 , srcInfoPoints = [] } "a"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 26 121 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 121 26 121 27 , SrcSpan "tests/examples/PartialSignatures.hs" 121 28 121 29 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 27 121 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 27 121 28 , srcInfoPoints = [] } "a")))))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 34 121 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 121 34 121 35 , SrcSpan "tests/examples/PartialSignatures.hs" 121 36 121 37 , SrcSpan "tests/examples/PartialSignatures.hs" 121 41 121 42 ] } Boxed [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 35 121 36 , srcInfoPoints = [] } Nothing , TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 38 121 41 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 38 121 39 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 121 40 121 41 , srcInfoPoints = [] } Nothing) ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 1 122 40 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 1 122 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 1 122 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 5 122 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 5 122 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 7 122 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 122 7 122 8 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 9 122 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 122 9 122 10 , SrcSpan "tests/examples/PartialSignatures.hs" 122 25 122 26 , SrcSpan "tests/examples/PartialSignatures.hs" 122 39 122 40 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 10 122 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 10 122 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 10 122 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 10 122 11 , srcInfoPoints = [] } "x"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 12 122 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 122 12 122 13 , SrcSpan "tests/examples/PartialSignatures.hs" 122 17 122 18 , SrcSpan "tests/examples/PartialSignatures.hs" 122 24 122 25 ] } [ Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 13 122 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 13 122 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 13 122 17 , srcInfoPoints = [] } "True")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 19 122 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 19 122 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 19 122 24 , srcInfoPoints = [] } "False")) ]) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 27 122 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 27 122 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 27 122 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 27 122 28 , srcInfoPoints = [] } "x"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 29 122 39 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 122 29 122 30 , SrcSpan "tests/examples/PartialSignatures.hs" 122 33 122 34 , SrcSpan "tests/examples/PartialSignatures.hs" 122 38 122 39 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 30 122 33 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 30 122 33 , srcInfoPoints = [] } 'a' "a") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 35 122 38 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 122 35 122 38 , srcInfoPoints = [] } 'b' "b") ]) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 1 125 48 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 125 9 125 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 1 125 8 , srcInfoPoints = [] } "monoLoc" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 12 125 48 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 125 12 125 18 , SrcSpan "tests/examples/PartialSignatures.hs" 125 20 125 21 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 19 125 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 19 125 20 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 22 125 48 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 125 24 125 26 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 22 125 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 22 125 23 , srcInfoPoints = [] } "a")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 27 125 48 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 125 27 125 28 , SrcSpan "tests/examples/PartialSignatures.hs" 125 39 125 40 , SrcSpan "tests/examples/PartialSignatures.hs" 125 47 125 48 ] } Boxed [ TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 28 125 39 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 125 28 125 29 , SrcSpan "tests/examples/PartialSignatures.hs" 125 30 125 31 , SrcSpan "tests/examples/PartialSignatures.hs" 125 38 125 39 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 29 125 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 29 125 30 , srcInfoPoints = [] } "a") , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 32 125 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 32 125 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 32 125 38 , srcInfoPoints = [] } "String")) ] , TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 41 125 47 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 125 41 125 42 , SrcSpan "tests/examples/PartialSignatures.hs" 125 43 125 44 , SrcSpan "tests/examples/PartialSignatures.hs" 125 46 125 47 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 42 125 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 42 125 43 , srcInfoPoints = [] } "a") , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 125 45 125 46 , srcInfoPoints = [] } Nothing ] ]))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 1 129 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 127 3 127 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 1 129 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 127 3 127 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 1 126 8 , srcInfoPoints = [] } "monoLoc") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 9 126 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 9 126 10 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 11 126 31 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 126 11 126 12 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 13 126 31 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 126 13 126 14 , SrcSpan "tests/examples/PartialSignatures.hs" 126 21 126 22 , SrcSpan "tests/examples/PartialSignatures.hs" 126 30 126 31 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 14 126 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 14 126 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 14 126 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 14 126 15 , srcInfoPoints = [] } "g"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 16 126 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 16 126 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 16 126 20 , srcInfoPoints = [] } "True"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 23 126 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 23 126 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 23 126 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 23 126 24 , srcInfoPoints = [] } "g"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 25 126 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 25 126 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 126 25 126 30 , srcInfoPoints = [] } "False"))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 5 129 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 128 5 128 5 , SrcSpan "tests/examples/PartialSignatures.hs" 129 5 129 5 , SrcSpan "tests/examples/PartialSignatures.hs" 151 1 151 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 5 128 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 128 7 128 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 5 128 6 , srcInfoPoints = [] } "g" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 10 128 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 128 12 128 14 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 10 128 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 10 128 11 , srcInfoPoints = [] } "t")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 15 128 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 128 15 128 16 , SrcSpan "tests/examples/PartialSignatures.hs" 128 17 128 18 , SrcSpan "tests/examples/PartialSignatures.hs" 128 25 128 26 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 16 128 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 16 128 17 , srcInfoPoints = [] } "a") , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 19 128 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 19 128 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 128 19 128 25 , srcInfoPoints = [] } "String")) ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 5 129 21 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 5 129 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 5 129 6 , srcInfoPoints = [] } "g") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 7 129 8 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 9 129 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 129 9 129 10 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 11 129 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 129 11 129 12 , SrcSpan "tests/examples/PartialSignatures.hs" 129 13 129 14 , SrcSpan "tests/examples/PartialSignatures.hs" 129 20 129 21 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 12 129 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 12 129 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 12 129 13 , srcInfoPoints = [] } "x")) , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 15 129 20 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 129 15 129 20 , srcInfoPoints = [] } "foo" "foo") ])) Nothing ] ])) ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 1 151 5 , srcInfoPoints = [] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 1 151 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 6 151 21 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 6 151 19 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 6 151 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 6 151 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 6 151 15 , srcInfoPoints = [] } "NukeMonad")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 16 151 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 16 151 17 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 18 151 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 18 151 19 , srcInfoPoints = [] } "b"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 20 151 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 151 20 151 21 , srcInfoPoints = [] } "c"))) [] Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 1 156 0 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 153 1 153 9 , SrcSpan "tests/examples/PartialSignatures.hs" 153 34 153 39 , SrcSpan "tests/examples/PartialSignatures.hs" 154 3 154 3 , SrcSpan "tests/examples/PartialSignatures.hs" 156 1 156 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 10 153 33 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 10 153 33 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 10 153 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 10 153 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 10 153 17 , srcInfoPoints = [] } "Functor"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 18 153 33 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 153 18 153 19 , SrcSpan "tests/examples/PartialSignatures.hs" 153 32 153 33 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 19 153 32 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 19 153 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 19 153 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 19 153 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 19 153 28 , srcInfoPoints = [] } "NukeMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 29 153 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 29 153 30 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 31 153 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 153 31 153 32 , srcInfoPoints = [] } "b")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 154 3 154 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 154 3 154 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 154 3 154 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 154 3 154 7 , srcInfoPoints = [] } "fmap")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 154 8 154 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 154 8 154 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 154 10 154 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 154 10 154 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 154 10 154 19 , srcInfoPoints = [] } "undefined")))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 1 160 0 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 156 1 156 9 , SrcSpan "tests/examples/PartialSignatures.hs" 156 38 156 43 , SrcSpan "tests/examples/PartialSignatures.hs" 157 3 157 3 , SrcSpan "tests/examples/PartialSignatures.hs" 158 3 158 3 , SrcSpan "tests/examples/PartialSignatures.hs" 160 1 160 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 10 156 37 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 10 156 37 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 10 156 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 10 156 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 10 156 21 , srcInfoPoints = [] } "Applicative"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 22 156 37 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 156 22 156 23 , SrcSpan "tests/examples/PartialSignatures.hs" 156 36 156 37 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 23 156 36 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 23 156 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 23 156 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 23 156 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 23 156 32 , srcInfoPoints = [] } "NukeMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 33 156 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 33 156 34 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 35 156 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 156 35 156 36 , srcInfoPoints = [] } "b")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 157 3 157 19 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 157 3 157 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 157 3 157 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 157 3 157 7 , srcInfoPoints = [] } "pure")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 157 8 157 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 157 8 157 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 157 10 157 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 157 10 157 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 157 10 157 19 , srcInfoPoints = [] } "undefined")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 158 3 158 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 158 3 158 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 158 3 158 8 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 158 3 158 4 , SrcSpan "tests/examples/PartialSignatures.hs" 158 4 158 7 , SrcSpan "tests/examples/PartialSignatures.hs" 158 7 158 8 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 158 4 158 7 , srcInfoPoints = [] } "<*>")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 158 9 158 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 158 9 158 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 158 11 158 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 158 11 158 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 158 11 158 20 , srcInfoPoints = [] } "undefined")))) Nothing) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 1 165 0 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 160 1 160 9 , SrcSpan "tests/examples/PartialSignatures.hs" 160 32 160 37 , SrcSpan "tests/examples/PartialSignatures.hs" 161 3 161 3 , SrcSpan "tests/examples/PartialSignatures.hs" 162 3 162 3 , SrcSpan "tests/examples/PartialSignatures.hs" 165 1 165 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 10 160 31 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 10 160 31 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 10 160 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 10 160 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 10 160 15 , srcInfoPoints = [] } "Monad"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 16 160 31 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 160 16 160 17 , SrcSpan "tests/examples/PartialSignatures.hs" 160 30 160 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 17 160 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 17 160 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 17 160 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 17 160 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 17 160 26 , srcInfoPoints = [] } "NukeMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 27 160 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 27 160 28 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 29 160 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 160 29 160 30 , srcInfoPoints = [] } "b")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 161 3 161 21 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 161 3 161 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 161 3 161 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 161 3 161 9 , srcInfoPoints = [] } "return")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 161 10 161 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 161 10 161 11 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 161 12 161 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 161 12 161 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 161 12 161 21 , srcInfoPoints = [] } "undefined")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 162 3 162 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 162 3 162 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 162 3 162 8 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 162 3 162 4 , SrcSpan "tests/examples/PartialSignatures.hs" 162 4 162 7 , SrcSpan "tests/examples/PartialSignatures.hs" 162 7 162 8 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 162 4 162 7 , srcInfoPoints = [] } ">>=")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 162 9 162 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 162 9 162 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 162 11 162 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 162 11 162 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 162 11 162 20 , srcInfoPoints = [] } "undefined")))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 1 165 43 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 165 12 165 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 1 165 11 , srcInfoPoints = [] } "isMeltdown" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 15 165 43 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 15 165 38 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 15 165 31 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 15 165 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 15 165 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 15 165 24 , srcInfoPoints = [] } "NukeMonad"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 25 165 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 25 165 31 , srcInfoPoints = [] } "param1"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 32 165 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 32 165 38 , srcInfoPoints = [] } "param2"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 39 165 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 39 165 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 165 39 165 43 , srcInfoPoints = [] } "Bool")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 166 1 166 23 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 166 1 166 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 166 1 166 11 , srcInfoPoints = [] } "isMeltdown")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 166 12 166 23 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 166 12 166 13 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 166 14 166 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 166 14 166 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 166 14 166 23 , srcInfoPoints = [] } "undefined")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 1 168 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 168 16 168 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 1 168 15 , srcInfoPoints = [] } "unlessMeltdown" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 19 168 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 168 26 168 28 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 19 168 25 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 19 168 22 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 20 168 22 , srcInfoPoints = [] } "nm"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 23 168 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 168 23 168 24 , SrcSpan "tests/examples/PartialSignatures.hs" 168 24 168 25 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 23 168 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 168 23 168 24 , SrcSpan "tests/examples/PartialSignatures.hs" 168 24 168 25 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 23 168 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 168 23 168 24 , SrcSpan "tests/examples/PartialSignatures.hs" 168 24 168 25 ] })))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 30 168 36 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 30 168 33 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 31 168 33 , srcInfoPoints = [] } "nm"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 34 168 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 168 34 168 35 , SrcSpan "tests/examples/PartialSignatures.hs" 168 35 168 36 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 34 168 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 168 34 168 35 , SrcSpan "tests/examples/PartialSignatures.hs" 168 35 168 36 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 168 34 168 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 168 34 168 35 , SrcSpan "tests/examples/PartialSignatures.hs" 168 35 168 36 ] }))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 1 170 49 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 1 170 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 1 169 15 , srcInfoPoints = [] } "unlessMeltdown") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 16 169 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 16 169 17 , srcInfoPoints = [] } "c") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 18 170 49 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 169 18 169 19 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 20 170 49 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 169 20 169 22 , SrcSpan "tests/examples/PartialSignatures.hs" 169 23 169 23 , SrcSpan "tests/examples/PartialSignatures.hs" 170 23 170 23 , SrcSpan "tests/examples/PartialSignatures.hs" 174 1 174 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 23 169 38 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 169 25 169 27 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 23 169 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 23 169 24 , srcInfoPoints = [] } "m")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 28 169 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 28 169 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 169 28 169 38 , srcInfoPoints = [] } "isMeltdown"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 23 170 49 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 170 23 170 25 , SrcSpan "tests/examples/PartialSignatures.hs" 170 28 170 32 , SrcSpan "tests/examples/PartialSignatures.hs" 170 43 170 47 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 23 170 49 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 170 23 170 25 , SrcSpan "tests/examples/PartialSignatures.hs" 170 28 170 32 , SrcSpan "tests/examples/PartialSignatures.hs" 170 43 170 47 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 26 170 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 26 170 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 26 170 27 , srcInfoPoints = [] } "m"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 33 170 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 33 170 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 33 170 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 33 170 39 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 40 170 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 170 40 170 41 , SrcSpan "tests/examples/PartialSignatures.hs" 170 41 170 42 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 40 170 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 170 40 170 41 , SrcSpan "tests/examples/PartialSignatures.hs" 170 41 170 42 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 40 170 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 170 40 170 41 , SrcSpan "tests/examples/PartialSignatures.hs" 170 41 170 42 ] })))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 48 170 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 48 170 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 170 48 170 49 , srcInfoPoints = [] } "c")))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 1 174 53 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 174 9 174 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 1 174 8 , srcInfoPoints = [] } "monoLoc" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 12 174 53 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 174 12 174 18 , SrcSpan "tests/examples/PartialSignatures.hs" 174 20 174 21 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 19 174 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 19 174 20 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 22 174 53 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 174 24 174 26 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 22 174 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 22 174 23 , srcInfoPoints = [] } "a")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 27 174 53 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 174 27 174 28 , SrcSpan "tests/examples/PartialSignatures.hs" 174 39 174 40 , SrcSpan "tests/examples/PartialSignatures.hs" 174 52 174 53 ] } Boxed [ TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 28 174 39 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 174 28 174 29 , SrcSpan "tests/examples/PartialSignatures.hs" 174 30 174 31 , SrcSpan "tests/examples/PartialSignatures.hs" 174 38 174 39 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 29 174 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 29 174 30 , srcInfoPoints = [] } "a") , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 32 174 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 32 174 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 32 174 38 , srcInfoPoints = [] } "String")) ] , TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 41 174 52 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 174 41 174 42 , SrcSpan "tests/examples/PartialSignatures.hs" 174 43 174 44 , SrcSpan "tests/examples/PartialSignatures.hs" 174 51 174 52 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 42 174 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 42 174 43 , srcInfoPoints = [] } "a") , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 45 174 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 45 174 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 174 45 174 51 , srcInfoPoints = [] } "String")) ] ]))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 1 179 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 176 3 176 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 1 179 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 176 3 176 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 1 175 8 , srcInfoPoints = [] } "monoLoc") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 9 175 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 9 175 10 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 11 175 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 175 11 175 12 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 13 175 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 175 13 175 14 , SrcSpan "tests/examples/PartialSignatures.hs" 175 21 175 22 , SrcSpan "tests/examples/PartialSignatures.hs" 175 28 175 29 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 14 175 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 14 175 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 14 175 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 14 175 15 , srcInfoPoints = [] } "g"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 16 175 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 16 175 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 16 175 20 , srcInfoPoints = [] } "True"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 23 175 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 23 175 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 23 175 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 23 175 24 , srcInfoPoints = [] } "g"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 25 175 28 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 175 25 175 28 , srcInfoPoints = [] } 'v' "v")) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 5 179 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 178 5 178 5 , SrcSpan "tests/examples/PartialSignatures.hs" 179 5 179 5 , SrcSpan "tests/examples/PartialSignatures.hs" 183 1 183 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 5 178 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 178 7 178 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 5 178 6 , srcInfoPoints = [] } "g" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 10 178 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 178 12 178 14 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 10 178 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 10 178 11 , srcInfoPoints = [] } "b")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 15 178 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 178 15 178 16 , SrcSpan "tests/examples/PartialSignatures.hs" 178 17 178 18 , SrcSpan "tests/examples/PartialSignatures.hs" 178 20 178 21 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 16 178 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 16 178 17 , srcInfoPoints = [] } "a") , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 178 19 178 20 , srcInfoPoints = [] } Nothing ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 5 179 21 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 5 179 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 5 179 6 , srcInfoPoints = [] } "g") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 7 179 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 7 179 8 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 9 179 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 179 9 179 10 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 11 179 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 179 11 179 12 , SrcSpan "tests/examples/PartialSignatures.hs" 179 13 179 14 , SrcSpan "tests/examples/PartialSignatures.hs" 179 20 179 21 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 12 179 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 12 179 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 12 179 13 , srcInfoPoints = [] } "x")) , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 15 179 20 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 179 15 179 20 , srcInfoPoints = [] } "foo" "foo") ])) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 1 183 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 183 5 183 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 1 183 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 8 183 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 183 16 183 18 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 8 183 15 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 183 8 183 9 , SrcSpan "tests/examples/PartialSignatures.hs" 183 11 183 12 , SrcSpan "tests/examples/PartialSignatures.hs" 183 14 183 15 ] } Boxed [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 9 183 11 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 10 183 11 , srcInfoPoints = [] } "a")) , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 13 183 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 13 183 14 , srcInfoPoints = [] } "b") ]) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 19 183 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 183 19 183 20 , SrcSpan "tests/examples/PartialSignatures.hs" 183 21 183 22 , SrcSpan "tests/examples/PartialSignatures.hs" 183 25 183 26 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 20 183 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 20 183 21 , srcInfoPoints = [] } "a") , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 23 183 25 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 183 24 183 25 , srcInfoPoints = [] } "b")) ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 1 184 20 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 1 184 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 1 184 4 , srcInfoPoints = [] } "foo") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 5 184 11 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 184 5 184 6 , SrcSpan "tests/examples/PartialSignatures.hs" 184 7 184 8 , SrcSpan "tests/examples/PartialSignatures.hs" 184 10 184 11 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 6 184 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 6 184 7 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 9 184 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 9 184 10 , srcInfoPoints = [] } "y") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 12 184 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 184 12 184 13 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 14 184 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 184 14 184 15 , SrcSpan "tests/examples/PartialSignatures.hs" 184 16 184 17 , SrcSpan "tests/examples/PartialSignatures.hs" 184 19 184 20 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 15 184 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 15 184 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 15 184 16 , srcInfoPoints = [] } "x")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 18 184 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 18 184 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 184 18 184 19 , srcInfoPoints = [] } "y")) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 1 187 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 187 3 187 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 1 187 2 , srcInfoPoints = [] } "f" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 6 187 27 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 6 187 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 187 6 187 7 , SrcSpan "tests/examples/PartialSignatures.hs" 187 8 187 9 , SrcSpan "tests/examples/PartialSignatures.hs" 187 10 187 12 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 6 187 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 187 6 187 7 , SrcSpan "tests/examples/PartialSignatures.hs" 187 8 187 9 , SrcSpan "tests/examples/PartialSignatures.hs" 187 10 187 12 ] } (WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 7 187 8 , srcInfoPoints = [] } Nothing)))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 13 187 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 187 15 187 17 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 13 187 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 13 187 14 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 18 187 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 187 20 187 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 18 187 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 18 187 19 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 23 187 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 23 187 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 187 23 187 27 , srcInfoPoints = [] } "Bool")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 1 188 15 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 1 188 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 1 188 2 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 3 188 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 3 188 4 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 5 188 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 5 188 6 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 7 188 15 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 188 7 188 8 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 9 188 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 9 188 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 9 188 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 9 188 10 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 11 188 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 11 188 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 11 188 13 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 14 188 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 14 188 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 188 14 188 15 , srcInfoPoints = [] } "y"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 191 1 191 9 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 191 5 191 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 191 1 191 4 , srcInfoPoints = [] } "foo" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 191 8 191 9 , srcInfoPoints = [] } Nothing) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 1 192 19 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 1 192 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 1 192 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 1 192 5 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 6 192 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 6 192 9 , srcInfoPoints = [] } "foo") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 10 192 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 192 10 192 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 12 192 19 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 12 192 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 12 192 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 12 192 16 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 17 192 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 17 192 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 192 17 192 19 , srcInfoPoints = [] } "id"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 195 1 195 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 195 5 195 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 195 1 195 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 195 8 195 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 195 13 195 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 195 8 195 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 195 8 195 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 195 8 195 12 , srcInfoPoints = [] } "Bool"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 195 16 195 17 , srcInfoPoints = [] } Nothing)) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 1 196 19 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 1 196 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 1 196 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 1 196 5 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 6 196 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 6 196 9 , srcInfoPoints = [] } "foo") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 10 196 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 196 10 196 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 12 196 19 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 12 196 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 12 196 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 12 196 16 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 17 196 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 17 196 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 196 17 196 19 , srcInfoPoints = [] } "id"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 1 198 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 198 5 198 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 1 198 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 8 198 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 198 13 198 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 8 198 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 8 198 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 8 198 12 , srcInfoPoints = [] } "Bool"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 16 198 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 16 198 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 198 16 198 20 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 1 199 20 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 1 199 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 1 199 4 , srcInfoPoints = [] } "bar") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 5 199 13 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 199 5 199 6 , SrcSpan "tests/examples/PartialSignatures.hs" 199 12 199 13 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 6 199 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 199 8 199 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 6 199 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 6 199 7 , srcInfoPoints = [] } "x")) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 11 199 12 , srcInfoPoints = [] } Nothing)) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 14 199 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 199 14 199 15 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 16 199 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 16 199 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 199 16 199 20 , srcInfoPoints = [] } "True")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 1 202 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 202 5 202 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 1 202 4 , srcInfoPoints = [] } "orr" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 8 202 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 202 10 202 12 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 8 202 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 8 202 9 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 13 202 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 202 15 202 17 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 13 202 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 13 202 14 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 18 202 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 202 18 202 19 , srcInfoPoints = [] } "a")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 203 1 203 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 203 1 203 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 203 1 203 4 , srcInfoPoints = [] } "orr")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 203 5 203 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 203 5 203 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 203 7 203 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 203 7 203 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 203 7 203 16 , srcInfoPoints = [] } "undefined")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 205 1 205 7 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 205 3 205 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 205 1 205 2 , srcInfoPoints = [] } "g" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 205 6 205 7 , srcInfoPoints = [] } Nothing) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 1 206 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 1 206 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 1 206 2 , srcInfoPoints = [] } "g")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 3 206 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 206 3 206 4 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 5 206 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 5 206 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 5 206 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 5 206 6 , srcInfoPoints = [] } "f"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 7 206 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 206 7 206 8 , SrcSpan "tests/examples/PartialSignatures.hs" 206 8 206 11 , SrcSpan "tests/examples/PartialSignatures.hs" 206 11 206 12 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 7 206 12 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 206 7 206 8 , SrcSpan "tests/examples/PartialSignatures.hs" 206 8 206 11 , SrcSpan "tests/examples/PartialSignatures.hs" 206 11 206 12 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 8 206 11 , srcInfoPoints = [] } "orr"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 13 206 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 13 206 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 206 13 206 17 , srcInfoPoints = [] } "True"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 208 1 208 7 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 208 3 208 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 208 1 208 2 , srcInfoPoints = [] } "f" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 208 6 208 7 , srcInfoPoints = [] } Nothing) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 209 1 209 6 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 209 1 209 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 209 1 209 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 209 3 209 6 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 209 3 209 4 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 209 5 209 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 209 5 209 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 209 5 209 6 , srcInfoPoints = [] } "g")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 212 1 212 11 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 212 7 212 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 212 1 212 6 , srcInfoPoints = [] } "test3" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 212 10 212 11 , srcInfoPoints = [] } Nothing) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 1 217 16 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 1 217 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 1 213 6 , srcInfoPoints = [] } "test3") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 7 213 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 7 213 8 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 9 217 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 213 9 213 10 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 11 217 16 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 11 214 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 11 213 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 11 213 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 11 213 16 , srcInfoPoints = [] } "const"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 17 214 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 213 17 213 18 , SrcSpan "tests/examples/PartialSignatures.hs" 214 39 214 40 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 18 214 39 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 213 18 213 21 , SrcSpan "tests/examples/PartialSignatures.hs" 214 31 214 33 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 22 214 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 213 22 213 22 , SrcSpan "tests/examples/PartialSignatures.hs" 214 22 214 22 , SrcSpan "tests/examples/PartialSignatures.hs" 214 31 214 31 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 22 213 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 213 24 213 26 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 22 213 23 , srcInfoPoints = [] } "x" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 27 213 29 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 213 28 213 29 , srcInfoPoints = [] } "b"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 22 214 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 22 214 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 22 214 23 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 24 214 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 214 24 214 25 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 26 214 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 26 214 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 26 214 30 , srcInfoPoints = [] } "True")))) Nothing ]) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 34 214 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 34 214 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 34 214 39 , srcInfoPoints = [] } "False")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 41 214 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 41 214 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 214 41 214 42 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 11 217 16 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 11 216 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 11 215 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 11 215 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 11 215 16 , srcInfoPoints = [] } "const"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 17 216 38 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 215 17 215 18 , SrcSpan "tests/examples/PartialSignatures.hs" 216 37 216 38 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 18 216 37 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 215 18 215 21 , SrcSpan "tests/examples/PartialSignatures.hs" 216 30 216 32 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 22 216 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 215 22 215 22 , SrcSpan "tests/examples/PartialSignatures.hs" 216 22 216 22 , SrcSpan "tests/examples/PartialSignatures.hs" 216 30 216 30 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 22 215 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 215 24 215 26 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 22 215 23 , srcInfoPoints = [] } "x" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 27 215 29 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 215 28 215 29 , srcInfoPoints = [] } "b"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 22 216 29 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 22 216 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 22 216 23 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 24 216 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 216 24 216 25 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 26 216 29 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 26 216 29 , srcInfoPoints = [] } 'a' "a"))) Nothing ]) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 33 216 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 33 216 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 33 216 37 , srcInfoPoints = [] } "True")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 39 216 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 39 216 40 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 216 39 216 40 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 217 11 217 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 217 11 217 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 217 11 217 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 217 11 217 14 , srcInfoPoints = [] } "not"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 217 15 217 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 217 15 217 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 217 15 217 16 , srcInfoPoints = [] } "x"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 224 1 224 15 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 224 5 224 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 224 1 224 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 224 8 224 15 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 224 11 224 13 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 224 8 224 10 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 224 9 224 10 , srcInfoPoints = [] } "a"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 224 14 224 15 , srcInfoPoints = [] } Nothing)) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 1 228 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 1 228 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 1 225 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 5 225 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 5 225 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 7 228 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 225 7 225 8 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 9 228 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 225 9 225 12 , SrcSpan "tests/examples/PartialSignatures.hs" 228 9 228 11 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 13 227 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 225 13 225 13 , SrcSpan "tests/examples/PartialSignatures.hs" 226 13 226 13 , SrcSpan "tests/examples/PartialSignatures.hs" 227 13 227 13 , SrcSpan "tests/examples/PartialSignatures.hs" 228 9 228 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 13 225 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 13 225 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 13 225 14 , srcInfoPoints = [] } "v")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 15 225 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 225 15 225 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 17 225 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 17 225 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 17 225 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 17 225 20 , srcInfoPoints = [] } "not"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 21 225 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 21 225 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 225 21 225 22 , srcInfoPoints = [] } "x"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 226 13 226 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 226 15 226 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 226 13 226 14 , srcInfoPoints = [] } "g" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 226 18 226 26 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 226 21 226 23 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 226 18 226 20 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 226 19 226 20 , srcInfoPoints = [] } "a"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 226 24 226 26 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 226 25 226 26 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 13 227 20 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 13 227 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 13 227 14 , srcInfoPoints = [] } "g") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 15 227 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 15 227 16 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 17 227 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 227 17 227 18 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 19 227 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 19 227 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 227 19 227 20 , srcInfoPoints = [] } "x")))) Nothing ] ]) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 228 12 228 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 228 12 228 13 , SrcSpan "tests/examples/PartialSignatures.hs" 228 18 228 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 228 13 228 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 228 13 228 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 228 13 228 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 228 13 228 14 , srcInfoPoints = [] } "g"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 228 15 228 18 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 228 15 228 18 , srcInfoPoints = [] } 'x' "x")))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 1 230 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 230 9 230 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 1 230 8 , srcInfoPoints = [] } "showTwo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 12 230 35 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 12 230 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 230 20 230 22 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 12 230 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 230 20 230 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 12 230 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 12 230 16 , srcInfoPoints = [] } "Show")) [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 17 230 19 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 18 230 19 , srcInfoPoints = [] } "a")) ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 23 230 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 230 26 230 28 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 23 230 25 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 24 230 25 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 29 230 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 29 230 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 230 29 230 35 , srcInfoPoints = [] } "String"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 1 231 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 1 231 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 1 231 8 , srcInfoPoints = [] } "showTwo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 9 231 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 9 231 10 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 11 231 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 231 11 231 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 13 231 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 13 231 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 13 231 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 13 231 17 , srcInfoPoints = [] } "show"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 18 231 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 18 231 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 231 18 231 19 , srcInfoPoints = [] } "x"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 234 1 234 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 234 5 234 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 234 1 234 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 234 8 234 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 234 10 234 12 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 234 8 234 9 , srcInfoPoints = [] } Nothing) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 234 13 234 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 234 13 234 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 234 13 234 17 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 235 1 235 13 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 235 1 235 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 235 1 235 4 , srcInfoPoints = [] } "bar") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 235 5 235 6 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 235 7 235 13 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 235 7 235 8 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 235 9 235 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 235 9 235 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 235 9 235 13 , srcInfoPoints = [] } "True")))) Nothing ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 1 238 45 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 238 25 238 26 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 1 238 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 6 238 24 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 6 238 22 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 6 238 19 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 6 238 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 6 238 15 , srcInfoPoints = [] } "GenParser")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 16 238 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 16 238 19 , srcInfoPoints = [] } "tok"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 20 238 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 20 238 22 , srcInfoPoints = [] } "st"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 23 238 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 23 238 24 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 27 238 45 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 27 238 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 27 238 36 , srcInfoPoints = [] } "GenParser") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 37 238 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 37 238 40 , srcInfoPoints = [] } "tok") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 41 238 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 41 238 43 , srcInfoPoints = [] } "st") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 44 238 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 238 44 238 45 , srcInfoPoints = [] } "a") ]) ] Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 1 240 55 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 240 11 240 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 1 240 10 , srcInfoPoints = [] } "skipMany'" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 14 240 55 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 240 33 240 35 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 14 240 32 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 14 240 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 14 240 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 14 240 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 14 240 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 14 240 23 , srcInfoPoints = [] } "GenParser"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 24 240 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 24 240 27 , srcInfoPoints = [] } "tok"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 28 240 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 28 240 30 , srcInfoPoints = [] } "st"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 31 240 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 31 240 32 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 36 240 55 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 36 240 52 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 36 240 49 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 36 240 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 36 240 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 36 240 45 , srcInfoPoints = [] } "GenParser"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 46 240 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 46 240 49 , srcInfoPoints = [] } "tok"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 50 240 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 50 240 52 , srcInfoPoints = [] } "st"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 53 240 55 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 240 53 240 54 , SrcSpan "tests/examples/PartialSignatures.hs" 240 54 240 55 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 53 240 55 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 240 53 240 54 , SrcSpan "tests/examples/PartialSignatures.hs" 240 54 240 55 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 240 53 240 55 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 240 53 240 54 , SrcSpan "tests/examples/PartialSignatures.hs" 240 54 240 55 ] }))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 241 1 241 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 241 1 241 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 241 1 241 10 , srcInfoPoints = [] } "skipMany'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 241 11 241 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 241 11 241 12 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 241 13 241 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 241 13 241 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 241 13 241 22 , srcInfoPoints = [] } "undefined")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 1 243 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 243 10 243 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 1 243 9 , srcInfoPoints = [] } "skipMany" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 13 243 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 243 15 243 17 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 13 243 14 , srcInfoPoints = [] } Nothing) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 18 243 22 , srcInfoPoints = [] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 18 243 19 , srcInfoPoints = [] } Nothing) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 20 243 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 243 20 243 21 , SrcSpan "tests/examples/PartialSignatures.hs" 243 21 243 22 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 20 243 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 243 20 243 21 , SrcSpan "tests/examples/PartialSignatures.hs" 243 21 243 22 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 243 20 243 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 243 20 243 21 , SrcSpan "tests/examples/PartialSignatures.hs" 243 21 243 22 ] }))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 244 1 244 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 244 1 244 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 244 1 244 9 , srcInfoPoints = [] } "skipMany")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 244 10 244 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 244 10 244 11 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 244 12 244 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 244 12 244 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 244 12 244 21 , srcInfoPoints = [] } "skipMany'")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 1 246 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 246 19 246 21 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 1 246 18 , srcInfoPoints = [] } "somethingShowable" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 22 246 40 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 22 246 32 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 246 30 246 32 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 22 246 32 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 246 30 246 32 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 22 246 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 22 246 26 , srcInfoPoints = [] } "Show")) [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 27 246 29 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 28 246 29 , srcInfoPoints = [] } "x")) ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 33 246 40 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 246 36 246 38 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 33 246 35 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 34 246 35 , srcInfoPoints = [] } "x"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 246 39 246 40 , srcInfoPoints = [] } Nothing))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 1 247 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 1 247 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 1 247 18 , srcInfoPoints = [] } "somethingShowable") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 19 247 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 19 247 20 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 21 247 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 247 21 247 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 23 247 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 23 247 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 23 247 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 23 247 27 , srcInfoPoints = [] } "show"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 28 247 35 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 247 28 247 29 , SrcSpan "tests/examples/PartialSignatures.hs" 247 34 247 35 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 29 247 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 29 247 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 29 247 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 29 247 32 , srcInfoPoints = [] } "not"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 33 247 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 33 247 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 247 33 247 34 , srcInfoPoints = [] } "x"))))))) Nothing ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 1 251 15 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 251 10 251 11 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 1 251 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 6 251 9 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 6 251 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 6 251 7 , srcInfoPoints = [] } "I")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 8 251 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 8 251 9 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 12 251 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 12 251 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 12 251 13 , srcInfoPoints = [] } "I") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 14 251 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 251 14 251 15 , srcInfoPoints = [] } "a") ]) ] Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 1 255 0 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 252 1 252 9 , SrcSpan "tests/examples/PartialSignatures.hs" 252 20 252 25 , SrcSpan "tests/examples/PartialSignatures.hs" 253 5 253 5 , SrcSpan "tests/examples/PartialSignatures.hs" 255 1 255 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 10 252 19 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 10 252 19 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 10 252 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 10 252 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 10 252 17 , srcInfoPoints = [] } "Functor"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 18 252 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 18 252 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 252 18 252 19 , srcInfoPoints = [] } "I"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 5 253 27 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 5 253 27 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 5 253 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 5 253 9 , srcInfoPoints = [] } "fmap") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 10 253 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 10 253 11 , srcInfoPoints = [] } "f") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 12 253 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 253 12 253 13 , SrcSpan "tests/examples/PartialSignatures.hs" 253 16 253 17 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 13 253 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 13 253 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 13 253 14 , srcInfoPoints = [] } "I")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 15 253 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 15 253 16 , srcInfoPoints = [] } "a") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 18 253 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 253 18 253 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 20 253 27 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 20 253 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 20 253 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 20 253 21 , srcInfoPoints = [] } "I"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 22 253 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 253 22 253 23 , SrcSpan "tests/examples/PartialSignatures.hs" 253 26 253 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 23 253 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 23 253 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 23 253 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 23 253 24 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 25 253 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 25 253 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 253 25 253 26 , srcInfoPoints = [] } "a"))))))) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 1 255 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 255 15 255 16 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 1 255 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 9 255 14 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 9 255 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 9 255 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 9 255 10 , srcInfoPoints = [] } "B")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 11 255 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 11 255 12 , srcInfoPoints = [] } "t"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 13 255 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 13 255 14 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 17 255 20 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 17 255 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 17 255 18 , srcInfoPoints = [] } "B") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 19 255 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 255 19 255 20 , srcInfoPoints = [] } "a") ]) ] Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 1 259 0 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 256 1 256 9 , SrcSpan "tests/examples/PartialSignatures.hs" 256 24 256 29 , SrcSpan "tests/examples/PartialSignatures.hs" 257 5 257 5 , SrcSpan "tests/examples/PartialSignatures.hs" 259 1 259 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 10 256 23 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 10 256 23 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 10 256 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 10 256 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 10 256 17 , srcInfoPoints = [] } "Functor"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 18 256 23 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 256 18 256 19 , SrcSpan "tests/examples/PartialSignatures.hs" 256 22 256 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 19 256 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 19 256 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 19 256 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 19 256 20 , srcInfoPoints = [] } "B"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 21 256 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 256 21 256 22 , srcInfoPoints = [] } "t")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 5 257 27 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 5 257 27 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 5 257 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 5 257 9 , srcInfoPoints = [] } "fmap") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 10 257 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 10 257 11 , srcInfoPoints = [] } "f") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 12 257 17 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 257 12 257 13 , SrcSpan "tests/examples/PartialSignatures.hs" 257 16 257 17 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 13 257 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 13 257 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 13 257 14 , srcInfoPoints = [] } "B")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 15 257 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 15 257 16 , srcInfoPoints = [] } "a") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 18 257 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 257 18 257 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 20 257 27 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 20 257 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 20 257 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 20 257 21 , srcInfoPoints = [] } "B"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 22 257 27 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 257 22 257 23 , SrcSpan "tests/examples/PartialSignatures.hs" 257 26 257 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 23 257 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 23 257 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 23 257 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 23 257 24 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 25 257 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 25 257 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 257 25 257 26 , srcInfoPoints = [] } "a"))))))) Nothing ]) ]) , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 1 259 23 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 259 13 259 14 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 1 259 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 9 259 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 9 259 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 9 259 10 , srcInfoPoints = [] } "H")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 11 259 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 11 259 12 , srcInfoPoints = [] } "f"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 15 259 23 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 15 259 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 15 259 16 , srcInfoPoints = [] } "H") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 17 259 23 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 259 17 259 18 , SrcSpan "tests/examples/PartialSignatures.hs" 259 22 259 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 18 259 22 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 18 259 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 18 259 19 , srcInfoPoints = [] } "f")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 20 259 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 259 20 259 21 , SrcSpan "tests/examples/PartialSignatures.hs" 259 21 259 22 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 20 259 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 259 20 259 21 , SrcSpan "tests/examples/PartialSignatures.hs" 259 21 259 22 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 259 20 259 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 259 20 259 21 , SrcSpan "tests/examples/PartialSignatures.hs" 259 21 259 22 ] })))) ]) ] Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 261 1 261 13 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 261 4 261 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 261 1 261 3 , srcInfoPoints = [] } "h1" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 261 7 261 13 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 261 7 261 11 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 261 9 261 11 ] } (WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 261 7 261 11 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 261 9 261 11 ] } Nothing))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 261 12 261 13 , srcInfoPoints = [] } Nothing)) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 1 263 42 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 1 263 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 1 263 3 , srcInfoPoints = [] } "h1") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 4 263 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 4 263 5 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 6 263 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 6 263 7 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 8 263 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 263 8 263 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 10 263 42 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 10 263 31 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 263 10 263 11 , SrcSpan "tests/examples/PartialSignatures.hs" 263 30 263 31 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 11 263 30 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 11 263 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 11 263 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 11 263 12 , srcInfoPoints = [] } "H"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 13 263 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 13 263 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 13 263 14 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 15 263 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 15 263 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 15 263 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 15 263 19 , srcInfoPoints = [] } "fmap"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 20 263 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 263 20 263 21 , SrcSpan "tests/examples/PartialSignatures.hs" 263 29 263 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 21 263 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 21 263 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 21 263 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 21 263 26 , srcInfoPoints = [] } "const"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 27 263 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 263 27 263 28 , SrcSpan "tests/examples/PartialSignatures.hs" 263 28 263 29 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 27 263 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 263 27 263 28 , SrcSpan "tests/examples/PartialSignatures.hs" 263 28 263 29 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 27 263 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 263 27 263 28 , SrcSpan "tests/examples/PartialSignatures.hs" 263 28 263 29 ] })))))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 32 263 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 263 32 263 33 , SrcSpan "tests/examples/PartialSignatures.hs" 263 41 263 42 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 33 263 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 33 263 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 33 263 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 33 263 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 33 263 37 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 38 263 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 38 263 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 38 263 39 , srcInfoPoints = [] } "f")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 40 263 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 40 263 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 263 40 263 41 , srcInfoPoints = [] } "b"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 265 1 265 8 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 265 4 265 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 265 1 265 3 , srcInfoPoints = [] } "h2" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 265 7 265 8 , srcInfoPoints = [] } Nothing) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 1 267 42 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 1 267 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 1 267 3 , srcInfoPoints = [] } "h2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 4 267 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 4 267 5 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 6 267 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 6 267 7 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 8 267 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 267 8 267 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 10 267 42 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 10 267 31 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 267 10 267 11 , SrcSpan "tests/examples/PartialSignatures.hs" 267 30 267 31 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 11 267 30 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 11 267 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 11 267 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 11 267 12 , srcInfoPoints = [] } "H"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 13 267 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 13 267 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 13 267 14 , srcInfoPoints = [] } "."))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 15 267 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 15 267 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 15 267 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 15 267 19 , srcInfoPoints = [] } "fmap"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 20 267 30 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 267 20 267 21 , SrcSpan "tests/examples/PartialSignatures.hs" 267 29 267 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 21 267 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 21 267 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 21 267 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 21 267 26 , srcInfoPoints = [] } "const"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 27 267 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 267 27 267 28 , SrcSpan "tests/examples/PartialSignatures.hs" 267 28 267 29 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 27 267 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 267 27 267 28 , SrcSpan "tests/examples/PartialSignatures.hs" 267 28 267 29 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 27 267 29 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 267 27 267 28 , SrcSpan "tests/examples/PartialSignatures.hs" 267 28 267 29 ] })))))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 32 267 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 267 32 267 33 , SrcSpan "tests/examples/PartialSignatures.hs" 267 41 267 42 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 33 267 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 33 267 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 33 267 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 33 267 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 33 267 37 , srcInfoPoints = [] } "fmap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 38 267 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 38 267 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 38 267 39 , srcInfoPoints = [] } "f")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 40 267 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 40 267 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 267 40 267 41 , srcInfoPoints = [] } "b"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 1 269 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 269 6 269 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 1 269 5 , srcInfoPoints = [] } "app1" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 9 269 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 9 269 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 9 269 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 9 269 10 , srcInfoPoints = [] } "H"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 11 269 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 269 11 269 12 , SrcSpan "tests/examples/PartialSignatures.hs" 269 15 269 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 12 269 15 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 12 269 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 12 269 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 12 269 13 , srcInfoPoints = [] } "B"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 14 269 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 269 14 269 15 , srcInfoPoints = [] } "t"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 1 270 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 1 270 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 1 270 5 , srcInfoPoints = [] } "app1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 6 270 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 270 6 270 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 8 270 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 8 270 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 8 270 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 8 270 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 8 270 10 , srcInfoPoints = [] } "h1"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 11 270 18 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 270 11 270 12 , SrcSpan "tests/examples/PartialSignatures.hs" 270 17 270 18 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 12 270 17 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 12 270 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 12 270 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 12 270 13 , srcInfoPoints = [] } "H"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 14 270 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 14 270 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 14 270 15 , srcInfoPoints = [] } "."))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 16 270 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 16 270 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 16 270 17 , srcInfoPoints = [] } "I")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 19 270 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 270 19 270 20 , SrcSpan "tests/examples/PartialSignatures.hs" 270 24 270 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 20 270 24 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 20 270 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 20 270 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 20 270 21 , srcInfoPoints = [] } "B"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 22 270 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 270 22 270 23 , SrcSpan "tests/examples/PartialSignatures.hs" 270 23 270 24 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 22 270 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 270 22 270 23 , SrcSpan "tests/examples/PartialSignatures.hs" 270 23 270 24 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 270 22 270 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 270 22 270 23 , SrcSpan "tests/examples/PartialSignatures.hs" 270 23 270 24 ] }))))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 1 272 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 272 6 272 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 1 272 5 , srcInfoPoints = [] } "app2" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 9 272 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 9 272 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 9 272 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 9 272 10 , srcInfoPoints = [] } "H"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 11 272 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 272 11 272 12 , SrcSpan "tests/examples/PartialSignatures.hs" 272 15 272 16 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 12 272 15 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 12 272 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 12 272 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 12 272 13 , srcInfoPoints = [] } "B"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 14 272 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 272 14 272 15 , srcInfoPoints = [] } "t"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 1 273 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 1 273 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 1 273 5 , srcInfoPoints = [] } "app2")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 6 273 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 273 6 273 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 8 273 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 8 273 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 8 273 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 8 273 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 8 273 10 , srcInfoPoints = [] } "h2"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 11 273 18 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 273 11 273 12 , SrcSpan "tests/examples/PartialSignatures.hs" 273 17 273 18 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 12 273 17 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 12 273 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 12 273 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 12 273 13 , srcInfoPoints = [] } "H"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 14 273 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 14 273 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 14 273 15 , srcInfoPoints = [] } "."))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 16 273 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 16 273 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 16 273 17 , srcInfoPoints = [] } "I")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 19 273 25 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 273 19 273 20 , SrcSpan "tests/examples/PartialSignatures.hs" 273 24 273 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 20 273 24 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 20 273 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 20 273 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 20 273 21 , srcInfoPoints = [] } "B"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 22 273 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 273 22 273 23 , SrcSpan "tests/examples/PartialSignatures.hs" 273 23 273 24 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 22 273 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 273 22 273 23 , SrcSpan "tests/examples/PartialSignatures.hs" 273 23 273 24 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 273 22 273 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 273 22 273 23 , SrcSpan "tests/examples/PartialSignatures.hs" 273 23 273 24 ] }))))))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 1 279 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 277 3 277 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 1 279 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 277 3 277 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 1 276 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 5 276 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 5 276 6 , srcInfoPoints = [] } "f") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 7 276 10 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 276 7 276 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 9 276 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 9 276 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 276 9 276 10 , srcInfoPoints = [] } "g")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 9 279 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 277 9 277 9 , SrcSpan "tests/examples/PartialSignatures.hs" 282 1 282 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 9 279 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 278 11 278 16 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 9 279 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 278 11 278 16 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 9 277 10 , srcInfoPoints = [] } "g") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 11 277 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 11 277 12 , srcInfoPoints = [] } "r") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 13 277 16 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 277 13 277 14 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 15 277 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 15 277 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 277 15 277 16 , srcInfoPoints = [] } "x")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 278 17 279 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 278 17 278 17 , SrcSpan "tests/examples/PartialSignatures.hs" 279 17 279 17 , SrcSpan "tests/examples/PartialSignatures.hs" 282 1 282 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 278 17 278 23 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 278 19 278 21 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 278 17 278 18 , srcInfoPoints = [] } "x" ] (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 278 22 278 23 , srcInfoPoints = [] } Nothing) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 279 17 279 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 279 17 279 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 279 17 279 18 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 279 19 279 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 279 19 279 20 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 279 21 279 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 279 21 279 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 279 21 279 22 , srcInfoPoints = [] } "r")))) Nothing ])) ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 1 282 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 282 5 282 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 1 282 4 , srcInfoPoints = [] } "unc" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 8 282 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 282 22 282 24 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 8 282 21 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 282 8 282 9 , SrcSpan "tests/examples/PartialSignatures.hs" 282 20 282 21 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 9 282 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 282 11 282 13 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 9 282 10 , srcInfoPoints = [] } Nothing) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 14 282 20 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 282 16 282 18 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 14 282 15 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 19 282 20 , srcInfoPoints = [] } Nothing)))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 25 282 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 282 32 282 34 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 25 282 31 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 282 25 282 26 , SrcSpan "tests/examples/PartialSignatures.hs" 282 27 282 28 , SrcSpan "tests/examples/PartialSignatures.hs" 282 30 282 31 ] } Boxed [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 26 282 27 , srcInfoPoints = [] } Nothing , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 29 282 30 , srcInfoPoints = [] } Nothing ]) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 282 35 282 36 , srcInfoPoints = [] } Nothing))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 283 1 283 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 283 1 283 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 283 1 283 4 , srcInfoPoints = [] } "unc")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 283 5 283 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 283 5 283 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 283 7 283 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 283 7 283 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 283 7 283 14 , srcInfoPoints = [] } "uncurry")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 1 285 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 285 5 285 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 1 285 4 , srcInfoPoints = [] } "unc" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 8 285 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 285 25 285 27 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 8 285 24 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 285 8 285 9 , SrcSpan "tests/examples/PartialSignatures.hs" 285 23 285 24 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 9 285 23 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 285 12 285 14 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 9 285 11 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 10 285 11 , srcInfoPoints = [] } "a"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 15 285 23 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 285 18 285 20 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 15 285 17 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 16 285 17 , srcInfoPoints = [] } "b"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 21 285 23 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 22 285 23 , srcInfoPoints = [] } "c")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 28 285 42 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 285 37 285 39 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 28 285 36 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 285 28 285 29 , SrcSpan "tests/examples/PartialSignatures.hs" 285 31 285 32 , SrcSpan "tests/examples/PartialSignatures.hs" 285 35 285 36 ] } Boxed [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 29 285 31 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 30 285 31 , srcInfoPoints = [] } "a")) , TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 33 285 35 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 34 285 35 , srcInfoPoints = [] } "b")) ]) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 40 285 42 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 285 41 285 42 , srcInfoPoints = [] } "c"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 286 1 286 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 286 1 286 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 286 1 286 4 , srcInfoPoints = [] } "unc")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 286 5 286 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 286 5 286 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 286 7 286 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 286 7 286 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 286 7 286 14 , srcInfoPoints = [] } "uncurry")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 1 289 31 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 289 5 289 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 1 289 4 , srcInfoPoints = [] } "foo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 8 289 31 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 8 289 23 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 289 8 289 9 , SrcSpan "tests/examples/PartialSignatures.hs" 289 16 289 17 , SrcSpan "tests/examples/PartialSignatures.hs" 289 19 289 20 , SrcSpan "tests/examples/PartialSignatures.hs" 289 21 289 23 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 9 289 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 9 289 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 9 289 13 , srcInfoPoints = [] } "Show")) [ TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 14 289 16 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 15 289 16 , srcInfoPoints = [] } "a")) ] , WildCardA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 18 289 19 , srcInfoPoints = [] } Nothing ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 24 289 31 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 289 27 289 29 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 24 289 26 , srcInfoPoints = [] } (Just (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 25 289 26 , srcInfoPoints = [] } "a"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 289 30 289 31 , srcInfoPoints = [] } Nothing))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 1 290 22 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 1 290 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 1 290 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 5 290 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 5 290 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 7 290 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 290 7 290 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 9 290 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 9 290 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 9 290 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 9 290 13 , srcInfoPoints = [] } "show"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 14 290 22 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 290 14 290 15 , SrcSpan "tests/examples/PartialSignatures.hs" 290 21 290 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 15 290 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 15 290 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 15 290 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 15 290 19 , srcInfoPoints = [] } "succ"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 20 290 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 20 290 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 290 20 290 21 , srcInfoPoints = [] } "x"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 292 1 292 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 292 5 292 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 292 1 292 4 , srcInfoPoints = [] } "bar" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 292 8 292 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 292 10 292 12 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 292 8 292 9 , srcInfoPoints = [] } Nothing) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 292 13 292 19 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 292 15 292 17 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 292 13 292 14 , srcInfoPoints = [] } Nothing) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 292 18 292 19 , srcInfoPoints = [] } Nothing))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 1 293 14 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 1 293 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 1 293 4 , srcInfoPoints = [] } "bar") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 5 293 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 5 293 6 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 7 293 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 7 293 8 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 9 293 14 , srcInfoPoints = [ SrcSpan "tests/examples/PartialSignatures.hs" 293 9 293 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 11 293 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 11 293 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 11 293 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 11 293 12 , srcInfoPoints = [] } "y"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 13 293 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 13 293 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PartialSignatures.hs" 293 13 293 14 , srcInfoPoints = [] } "x"))))) Nothing ] ] , [ Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 101 1 101 24) " No extra constraints" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 131 1 131 84) " Test case for (fixed) bug that previously generated the following error message:" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 133 1 133 31) " LocalDefinitionBug.hs:9:16:" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 134 1 134 95) " GHC internal error: \8216a\8217 is not in scope during type checking, but it passed the renamer" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 135 1 135 63) " tcl_env of environment: [alA :-> Type variable \8216_\8217 = _," , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 136 1 136 73) " alC :-> Identifier[x::a, ]," , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 137 1 137 63) " alE :-> Type variable \8216t\8217 = t," , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 138 1 138 62) " rjF :-> Identifier[monoLoc::a" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 139 1 139 102) " -> ((a, String), (a, _)), ]]" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 140 1 140 60) " In the type signature for \8216g\8217: g :: t -> (a, String)" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 141 1 141 37) " In an equation for \8216monoLoc\8217:" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 142 1 142 21) " monoLoc x" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 143 1 143 33) " = (g True, g False)" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 144 1 144 19) " where" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 145 1 145 39) " g :: t -> (a, String)" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 146 1 146 34) " g _ = (x, \"foo\")" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 149 1 149 64) " Fixed by using tcExtendTyVarEnv2 instead of tcExtendTyVarEnv" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 177 5 177 35) " g :: b -> (a, String) -- #1" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 178 22 178 27) " #2" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 181 1 181 51) " For #2, we should infer the same type as in #1." , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 220 1 220 74) " The named wildcards aren't scoped as the ScopedTypeVariables extension" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 221 1 221 79) " isn't enabled, of which the behaviour is copied. Thus, the _a annotation of" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 222 1 222 70) " x, which must be Bool, isn't the same as the _a in g, which is now" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 223 1 223 21) " generalised over." , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 248 1 248 33) " Inferred type: Bool -> String" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 262 1 262 44) " h :: Functor m => (a -> b) -> m a -> H m" , Comment False (SrcSpan "tests/examples/PartialSignatures.hs" 266 1 266 45) " h2 :: Functor m => (a -> b) -> m a -> H m" ] ) haskell-src-exts-1.18.2/tests/examples/PartialSignatures.hs.prettyparser.golden0000644000000000000000000000000612746233113026147 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PartialSignatures.hs.prettyprinter.golden0000644000000000000000000001037112746233113026344 0ustar0000000000000000{-# LANGUAGE GADTs, NamedWildCards, ScopedTypeVariables #-} bar :: Int -> _ Int bar x = Foo True () x addAndOr1 :: _ addAndOr1 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr2 :: _ -> _ addAndOr2 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr3 :: _ -> _ -> _ addAndOr3 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr4 :: (_ _ _) -> (_ _ _) -> (_ _ _) addAndOr4 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr5 :: (_, _) -> (_, _) -> (_, _) addAndOr5 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y addAndOr6 :: (Int, _) -> (Bool, _) -> (_ Int Bool) addAndOr6 (a, b) (c, d) = (a `plus` d, b || c) where plus :: Int -> Int -> Int x `plus` y = x + y bar :: _ -> _ bar x = not x alpha :: _ alpha = 3 bravo :: _ => _ bravo = 3 bravo :: _ => _ bravo = 3 barry :: _a -> (_b _a, _b _) barry x = (Left "x", Right x) foo :: a ~ Bool => (a, _) foo = (True, False) every :: _ -> _ -> Bool every _ [] = True every p (x : xs) = p x && every p xs every :: (_a -> Bool) -> [_a] -> Bool every _ [] = True every p (x : xs) = p x && every p xs bar :: Bool -> Bool bar x = (x :: _) bar :: _a -> _a bar True = (False :: _a) bar False = (True :: _a) arbitCs1 :: _ => a -> String arbitCs1 x = show (succ x) ++ show (x == x) arbitCs2 :: (Show a, _) => a -> String arbitCs2 x = arbitCs1 x arbitCs3 :: (Show a, Enum a, _) => a -> String arbitCs3 x = arbitCs1 x arbitCs4 :: (Eq a, _) => a -> String arbitCs4 x = arbitCs1 x arbitCs5 :: (Eq a, Enum a, Show a, _) => a -> String arbitCs5 x = arbitCs1 x foo :: _ => String foo = "x" foo :: _ => a foo = 3 foo :: _ => a foo = 3 fall :: forall a . _ -> a fall v = v bar :: _a -> _a bar x = not x foo :: (forall a . [a] -> [a]) -> _ foo x = (x [True, False], x ['a', 'b']) foo :: (forall a . [a] -> [a]) -> (_, _ _) foo x = (x [True, False], x ['a', 'b']) monoLoc :: forall a . a -> ((a, String), (a, _)) monoLoc x = (g True, g False) where g :: t -> (a, String) g _ = (x, "foo") data NukeMonad a b c instance Functor (NukeMonad a b) where fmap = undefined instance Applicative (NukeMonad a b) where pure = undefined (<*>) = undefined instance Monad (NukeMonad a b) where return = undefined (>>=) = undefined isMeltdown :: NukeMonad param1 param2 Bool isMeltdown = undefined unlessMeltdown :: _nm () -> _nm () unlessMeltdown c = do m <- isMeltdown if m then return () else c monoLoc :: forall a . a -> ((a, String), (a, String)) monoLoc x = (g True, g 'v') where g :: b -> (a, _) g y = (x, "foo") foo :: (_a, b) -> (a, _b) foo (x, y) = (x, y) f :: (_) => a -> a -> Bool f x y = x == y foo :: _ Just foo = Just id foo :: Bool -> _ Just foo = Just id bar :: Bool -> Bool bar (x :: _) = True orr :: a -> a -> a orr = undefined g :: _ g = f `orr` True f :: _ f = g test3 :: _ test3 x = const (let x :: _b x = True in False) $ const (let x :: _b x = 'a' in True) $ not x foo :: _a -> _ foo x = let v = not x g :: _a -> _a g x = x in (g 'x') showTwo :: Show _a => _a -> String showTwo x = show x bar :: _ -> Bool bar _ = True data GenParser tok st a = GenParser tok st a skipMany' :: GenParser tok st a -> GenParser tok st () skipMany' = undefined skipMany :: _ -> _ () skipMany = skipMany' somethingShowable :: Show _x => _x -> _ somethingShowable x = show (not x) data I a = I a instance Functor I where fmap f (I a) = I (f a) newtype B t a = B a instance Functor (B t) where fmap f (B a) = B (f a) newtype H f = H (f ()) h1 :: _ => _ h1 f b = (H . fmap (const ())) (fmap f b) h2 :: _ h2 f b = (H . fmap (const ())) (fmap f b) app1 :: H (B t) app1 = h1 (H . I) (B ()) app2 :: H (B t) app2 = h2 (H . I) (B ()) foo f = g where g r = x where x :: _ x = r unc :: (_ -> _ -> _) -> (_, _) -> _ unc = uncurry unc :: (_a -> _b -> _c) -> (_a, _b) -> _c unc = uncurry foo :: (Show _a, _) => _a -> _ foo x = show (succ x) bar :: _ -> _ -> _ bar x y = y x haskell-src-exts-1.18.2/tests/examples/PatSynFix.hs0000644000000000000000000000017312746233113020366 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} pattern A <- (True, True) where A = (not $ False && True, True) exp = not $ False && True haskell-src-exts-1.18.2/tests/examples/PatSynFix.hs.exactprinter.golden0000644000000000000000000000000612746233113024337 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatSynFix.hs.parser.golden0000644000000000000000000004117512746233113023137 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/PatSynFix.hs" 1 1 1 1 , SrcSpan "tests/examples/PatSynFix.hs" 2 1 2 1 , SrcSpan "tests/examples/PatSynFix.hs" 2 1 2 1 , SrcSpan "tests/examples/PatSynFix.hs" 2 1 2 1 , SrcSpan "tests/examples/PatSynFix.hs" 3 1 3 1 , SrcSpan "tests/examples/PatSynFix.hs" 4 1 4 1 , SrcSpan "tests/examples/PatSynFix.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatSynFix.hs" 1 1 1 13 , SrcSpan "tests/examples/PatSynFix.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" ] ] [] [ PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 1 2 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatSynFix.hs" 2 1 2 8 , SrcSpan "tests/examples/PatSynFix.hs" 2 11 2 13 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 9 2 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 9 2 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 9 2 10 , srcInfoPoints = [] } "A")) []) (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 14 2 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatSynFix.hs" 2 14 2 15 , SrcSpan "tests/examples/PatSynFix.hs" 2 19 2 20 , SrcSpan "tests/examples/PatSynFix.hs" 2 25 2 26 ] } Boxed [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 15 2 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 15 2 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 15 2 19 , srcInfoPoints = [] } "True")) [] , PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 21 2 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 21 2 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 21 2 25 , srcInfoPoints = [] } "True")) [] ]) (ExplicitBidirectional SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 27 3 0 , srcInfoPoints = [ SrcSpan "tests/examples/PatSynFix.hs" 2 27 2 32 , SrcSpan "tests/examples/PatSynFix.hs" 2 33 2 33 , SrcSpan "tests/examples/PatSynFix.hs" 3 1 3 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 33 2 64 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 33 2 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 33 2 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 33 2 34 , srcInfoPoints = [] } "A")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 35 2 64 , srcInfoPoints = [ SrcSpan "tests/examples/PatSynFix.hs" 2 35 2 36 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 37 2 64 , srcInfoPoints = [ SrcSpan "tests/examples/PatSynFix.hs" 2 37 2 38 , SrcSpan "tests/examples/PatSynFix.hs" 2 57 2 58 , SrcSpan "tests/examples/PatSynFix.hs" 2 63 2 64 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 38 2 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 38 2 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 38 2 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 38 2 41 , srcInfoPoints = [] } "not"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 42 2 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 42 2 43 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 42 2 43 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 44 2 57 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 44 2 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 44 2 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 44 2 49 , srcInfoPoints = [] } "False"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 50 2 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 50 2 52 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 50 2 52 , srcInfoPoints = [] } "&&"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 53 2 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 53 2 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 53 2 57 , srcInfoPoints = [] } "True")))) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 59 2 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 59 2 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 2 59 2 63 , srcInfoPoints = [] } "True")) ])) Nothing ]) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 1 3 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 1 3 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 1 3 4 , srcInfoPoints = [] } "exp")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 5 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatSynFix.hs" 3 5 3 6 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 7 3 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 7 3 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 7 3 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 7 3 10 , srcInfoPoints = [] } "not"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 11 3 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 11 3 12 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 11 3 12 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 13 3 26 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 13 3 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 13 3 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 13 3 18 , srcInfoPoints = [] } "False"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 19 3 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 19 3 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 19 3 21 , srcInfoPoints = [] } "&&"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 22 3 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 22 3 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatSynFix.hs" 3 22 3 26 , srcInfoPoints = [] } "True")))))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/PatSynFix.hs.prettyparser.golden0000644000000000000000000000000612746233113024373 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatSynFix.hs.prettyprinter.golden0000644000000000000000000000017612746233113024572 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} pattern A <- (True, True) where A = (not $ False && True, True) exp = not $ False && True haskell-src-exts-1.18.2/tests/examples/PatternSynonymImport.hs0000644000000000000000000000017012746233113022703 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} module Main (pattern Foo, pattern (:>)) where import Foo (pattern Foo, pattern (:>)) haskell-src-exts-1.18.2/tests/examples/PatternSynonymImport.hs.exactprinter.golden0000644000000000000000000000000612746233113026657 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonymImport.hs.parser.golden0000644000000000000000000002211512746233113025450 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 1 1 1 1 , SrcSpan "tests/examples/PatternSynonymImport.hs" 3 1 3 1 , SrcSpan "tests/examples/PatternSynonymImport.hs" 3 1 3 1 , SrcSpan "tests/examples/PatternSynonymImport.hs" 5 1 5 1 , SrcSpan "tests/examples/PatternSynonymImport.hs" 6 1 6 1 , SrcSpan "tests/examples/PatternSynonymImport.hs" 6 1 6 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 1 3 46 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 3 1 3 7 , SrcSpan "tests/examples/PatternSynonymImport.hs" 3 41 3 46 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 8 3 12 , srcInfoPoints = [] } "Main") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 13 3 40 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 3 13 3 14 , SrcSpan "tests/examples/PatternSynonymImport.hs" 3 25 3 26 , SrcSpan "tests/examples/PatternSynonymImport.hs" 3 39 3 40 ] } [ EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 14 3 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 3 14 3 21 ] } (PatternNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 14 3 21 , srcInfoPoints = [] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 22 3 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 22 3 25 , srcInfoPoints = [] } "Foo")) , EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 27 3 39 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 3 27 3 34 ] } (PatternNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 27 3 34 , srcInfoPoints = [] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 35 3 39 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 3 35 3 36 , SrcSpan "tests/examples/PatternSynonymImport.hs" 3 36 3 38 , SrcSpan "tests/examples/PatternSynonymImport.hs" 3 38 3 39 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 3 36 3 38 , srcInfoPoints = [] } ":>")) ])))) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 1 1 1 13 , SrcSpan "tests/examples/PatternSynonymImport.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 1 5 39 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 5 1 5 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 8 5 11 , srcInfoPoints = [] } "Foo" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 12 5 39 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 5 12 5 13 , SrcSpan "tests/examples/PatternSynonymImport.hs" 5 24 5 25 , SrcSpan "tests/examples/PatternSynonymImport.hs" 5 38 5 39 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 13 5 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 5 13 5 20 , SrcSpan "tests/examples/PatternSynonymImport.hs" 5 21 5 24 ] } (PatternNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 13 5 20 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 5 13 5 20 ] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 21 5 24 , srcInfoPoints = [] } "Foo") , IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 26 5 38 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 5 26 5 33 , SrcSpan "tests/examples/PatternSynonymImport.hs" 5 34 5 38 ] } (PatternNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 26 5 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 5 26 5 33 ] }) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymImport.hs" 5 34 5 38 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymImport.hs" 5 34 5 35 , SrcSpan "tests/examples/PatternSynonymImport.hs" 5 35 5 37 , SrcSpan "tests/examples/PatternSynonymImport.hs" 5 37 5 38 ] } ":>") ]) } ] [] , [] ) haskell-src-exts-1.18.2/tests/examples/PatternSynonymImport.hs.prettyparser.golden0000644000000000000000000000000612746233113026713 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonymImport.hs.prettyprinter.golden0000644000000000000000000000016612746233113027111 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} module Main (pattern Foo, pattern (:>)) where import Foo (pattern Foo, pattern (:>)) haskell-src-exts-1.18.2/tests/examples/PatternSynonyms.hs0000644000000000000000000000031712746233113021676 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} pattern A = Nothing pattern B a = Just a pattern a :+: b = (a,b) pattern Tuple a b = (a,b) pattern A = Nothing pattern B a = Just a pattern a :+: b = (a,b) haskell-src-exts-1.18.2/tests/examples/PatternSynonyms.hs.exactprinter.golden0000644000000000000000000000000612746233113025647 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonyms.hs.parser.golden0000644000000000000000000005114612746233113024446 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 1 1 17 1 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 1 1 1 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 3 1 3 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 3 1 3 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 3 1 3 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 5 1 5 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 7 1 7 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 9 1 9 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 11 1 11 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 13 1 13 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 15 1 15 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 17 1 17 1 , SrcSpan "tests/examples/PatternSynonyms.hs" 17 1 17 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 1 1 1 13 , SrcSpan "tests/examples/PatternSynonyms.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" ] ] [] [ PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 3 1 3 20 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 3 1 3 8 , SrcSpan "tests/examples/PatternSynonyms.hs" 3 11 3 12 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 3 9 3 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 3 9 3 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 3 9 3 10 , srcInfoPoints = [] } "A")) []) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 3 13 3 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 3 13 3 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 3 13 3 20 , srcInfoPoints = [] } "Nothing")) []) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 1 5 21 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 5 1 5 8 , SrcSpan "tests/examples/PatternSynonyms.hs" 5 13 5 14 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 9 5 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 9 5 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 9 5 10 , srcInfoPoints = [] } "B")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 11 5 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 11 5 12 , srcInfoPoints = [] } "a") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 15 5 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 15 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 15 5 19 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 20 5 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 5 20 5 21 , srcInfoPoints = [] } "a") ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 1 7 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 7 1 7 8 , SrcSpan "tests/examples/PatternSynonyms.hs" 7 17 7 18 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 9 7 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 9 7 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 9 7 10 , srcInfoPoints = [] } "a")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 11 7 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 11 7 14 , srcInfoPoints = [] } ":+:")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 15 7 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 15 7 16 , srcInfoPoints = [] } "b"))) (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 19 7 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 7 19 7 20 , SrcSpan "tests/examples/PatternSynonyms.hs" 7 21 7 22 , SrcSpan "tests/examples/PatternSynonyms.hs" 7 23 7 24 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 20 7 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 20 7 21 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 22 7 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 7 22 7 23 , srcInfoPoints = [] } "b") ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 1 9 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 9 1 9 8 , SrcSpan "tests/examples/PatternSynonyms.hs" 9 19 9 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 9 9 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 9 9 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 9 9 14 , srcInfoPoints = [] } "Tuple")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 15 9 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 15 9 16 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 17 9 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 17 9 18 , srcInfoPoints = [] } "b") ]) (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 21 9 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 9 21 9 22 , SrcSpan "tests/examples/PatternSynonyms.hs" 9 23 9 24 , SrcSpan "tests/examples/PatternSynonyms.hs" 9 25 9 26 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 22 9 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 22 9 23 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 24 9 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 9 24 9 25 , srcInfoPoints = [] } "b") ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 11 1 11 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 11 1 11 8 , SrcSpan "tests/examples/PatternSynonyms.hs" 11 14 11 15 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 11 12 11 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 11 12 11 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 11 12 11 13 , srcInfoPoints = [] } "A")) []) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 11 16 11 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 11 16 11 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 11 16 11 23 , srcInfoPoints = [] } "Nothing")) []) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 1 13 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 13 1 13 8 , SrcSpan "tests/examples/PatternSynonyms.hs" 13 16 13 17 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 9 13 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 9 13 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 9 13 10 , srcInfoPoints = [] } "B")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 11 13 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 11 13 12 , srcInfoPoints = [] } "a") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 18 13 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 18 13 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 18 13 22 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 23 13 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 13 23 13 24 , srcInfoPoints = [] } "a") ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 1 15 28 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 15 1 15 8 , SrcSpan "tests/examples/PatternSynonyms.hs" 15 17 15 18 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 9 15 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 9 15 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 9 15 10 , srcInfoPoints = [] } "a")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 11 15 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 11 15 14 , srcInfoPoints = [] } ":+:")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 15 15 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 15 15 16 , srcInfoPoints = [] } "b"))) (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 23 15 28 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms.hs" 15 23 15 24 , SrcSpan "tests/examples/PatternSynonyms.hs" 15 25 15 26 , SrcSpan "tests/examples/PatternSynonyms.hs" 15 27 15 28 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 24 15 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 24 15 25 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 26 15 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms.hs" 15 26 15 27 , srcInfoPoints = [] } "b") ]) ImplicitBidirectional ] , [] ) haskell-src-exts-1.18.2/tests/examples/PatternSynonyms.hs.prettyparser.golden0000644000000000000000000000000612746233113025703 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonyms.hs.prettyprinter.golden0000644000000000000000000000030712746233113026076 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} pattern A = Nothing pattern B a = Just a pattern a :+: b = (a, b) pattern Tuple a b = (a, b) pattern A = Nothing pattern B a = Just a pattern a :+: b = (a, b) haskell-src-exts-1.18.2/tests/examples/PatternSynonyms2.hs0000644000000000000000000000042612746233113021761 0ustar0000000000000000{-# LANGUAGE PatternSynonyms, ScopedTypeVariables, KindSignatures #-} module Foo (pattern Single) where pattern Single x <- [x] where Single 4 = [x] Single 5 = [x] pattern Double x = [x] single :: [a] -> Maybe a single (Single x) = Just x single _ = Nothing haskell-src-exts-1.18.2/tests/examples/PatternSynonyms2.hs.exactprinter.golden0000644000000000000000000000000612746233113025731 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonyms2.hs.parser.golden0000644000000000000000000006532612746233113024535 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 1 19 1 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 1 1 1 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 2 1 2 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 2 1 2 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 6 1 6 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 10 1 10 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 16 1 16 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 17 1 17 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 18 1 18 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 19 1 19 1 , SrcSpan "tests/examples/PatternSynonyms2.hs" 19 1 19 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 1 2 34 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 2 1 2 7 , SrcSpan "tests/examples/PatternSynonyms2.hs" 2 29 2 34 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 8 2 11 , srcInfoPoints = [] } "Foo") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 12 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 2 12 2 13 , SrcSpan "tests/examples/PatternSynonyms2.hs" 2 27 2 28 ] } [ EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 13 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 2 13 2 20 ] } (PatternNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 13 2 20 , srcInfoPoints = [] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 21 2 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 2 21 2 27 , srcInfoPoints = [] } "Single")) ])))) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 1 1 71 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 1 1 1 13 , SrcSpan "tests/examples/PatternSynonyms2.hs" 1 29 1 30 , SrcSpan "tests/examples/PatternSynonyms2.hs" 1 50 1 51 , SrcSpan "tests/examples/PatternSynonyms2.hs" 1 68 1 71 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 31 1 50 , srcInfoPoints = [] } "ScopedTypeVariables" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 1 52 1 66 , srcInfoPoints = [] } "KindSignatures" ] ] [] [ PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 1 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 6 1 6 8 , SrcSpan "tests/examples/PatternSynonyms2.hs" 6 18 6 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 9 6 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 9 6 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 9 6 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 16 6 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 16 6 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 21 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 6 21 6 22 , SrcSpan "tests/examples/PatternSynonyms2.hs" 6 23 6 24 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 22 6 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 6 22 6 23 , srcInfoPoints = [] } "x") ]) (ExplicitBidirectional SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 3 10 0 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 7 3 7 8 , SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 9 , SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 9 , SrcSpan "tests/examples/PatternSynonyms2.hs" 10 1 10 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 23 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 9 7 15 , srcInfoPoints = [] } "Single")) [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 16 7 17 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 16 7 17 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 16 7 17 , srcInfoPoints = [] } 4 "4") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 18 7 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 7 18 7 19 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 20 7 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 7 20 7 21 , SrcSpan "tests/examples/PatternSynonyms2.hs" 7 22 7 23 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 21 7 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 21 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 7 21 7 22 , srcInfoPoints = [] } "x")) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 23 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 9 8 15 , srcInfoPoints = [] } "Single")) [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 16 8 17 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 16 8 17 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 16 8 17 , srcInfoPoints = [] } 5 "5") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 18 8 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 8 18 8 19 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 20 8 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 8 20 8 21 , SrcSpan "tests/examples/PatternSynonyms2.hs" 8 22 8 23 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 21 8 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 21 8 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 8 21 8 22 , srcInfoPoints = [] } "x")) ])) Nothing ]) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 1 10 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 10 1 10 8 , SrcSpan "tests/examples/PatternSynonyms2.hs" 10 18 10 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 9 10 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 9 10 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 9 10 15 , srcInfoPoints = [] } "Double")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 16 10 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 16 10 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 20 10 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 10 20 10 21 , SrcSpan "tests/examples/PatternSynonyms2.hs" 10 22 10 23 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 21 10 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 10 21 10 22 , srcInfoPoints = [] } "x") ]) ImplicitBidirectional , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 1 16 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 16 8 16 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 1 16 7 , srcInfoPoints = [] } "single" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 11 16 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 16 15 16 17 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 11 16 14 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 16 11 16 12 , SrcSpan "tests/examples/PatternSynonyms2.hs" 16 13 16 14 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 12 16 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 12 16 13 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 18 16 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 18 16 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 18 16 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 18 16 23 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 24 16 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 16 24 16 25 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 1 18 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 1 17 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 1 17 7 , srcInfoPoints = [] } "single") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 8 17 18 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 17 8 17 9 , SrcSpan "tests/examples/PatternSynonyms2.hs" 17 17 17 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 9 17 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 9 17 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 9 17 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 16 17 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 16 17 17 , srcInfoPoints = [] } "x") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 19 17 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 17 19 17 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 21 17 27 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 21 17 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 21 17 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 21 17 25 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 26 17 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 26 17 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 17 26 17 27 , srcInfoPoints = [] } "x"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 1 18 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 1 18 7 , srcInfoPoints = [] } "single") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 8 18 9 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 10 18 19 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms2.hs" 18 10 18 11 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 12 18 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 12 18 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms2.hs" 18 12 18 19 , srcInfoPoints = [] } "Nothing")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/PatternSynonyms2.hs.prettyparser.golden0000644000000000000000000000000612746233113025765 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonyms2.hs.prettyprinter.golden0000644000000000000000000000042112746233113026155 0ustar0000000000000000{-# LANGUAGE PatternSynonyms, ScopedTypeVariables, KindSignatures #-} module Foo (pattern Single) where pattern Single x <- [x] where Single 4 = [x] Single 5 = [x] pattern Double x = [x] single :: [a] -> Maybe a single (Single x) = Just x single _ = Nothing haskell-src-exts-1.18.2/tests/examples/PatternSynonyms3.hs0000644000000000000000000000230312746233113021756 0ustar0000000000000000{-# LANGUAGE PatternSynonyms, BangPatterns, PolyKinds, DataKinds, GADTs, FlexibleContexts, ViewPatterns #-} {-# LANGUAGE ExplicitForAll #-} pattern Single x <- [x] single :: [a] -> Maybe a single (Single x) = Just x single _ = Nothing pattern Single :: a -> [a] pattern Single x = [x] pattern Single :: () => (Show a) => a -> [a] pattern Single x = [x] f :: (Show a) => [a] -> a f (Single x) = x pattern SinglePair :: (a, a) -> [(a, a)] pattern SinglePair x = [x] f :: (Show a) => [(a, a)] -> String f (SinglePair x) = show x pattern Q = D pattern C :: a -> X Maybe (Maybe a) pattern C x = Y (Just x) pattern Syn :: forall a b c . () => () => Int pattern C :: (Show (a, Bool)) => a -> X Maybe (Maybe (a, Bool)) pattern C x = Y (Just (x, True)) pattern P :: T Bool b pattern P <- MkT True pattern D :: a -> T (Maybe a) Bool pattern D x = MkT (Just x) pattern P a b = Just (a, b) pattern Single x = [x] pattern a :+: b = (a, b) pattern P x <- MkT 42 x pattern P x y <- MkT x y pattern P x <- MkT (f -> True) x data T where MkT :: b -> (b -> Bool) -> T pattern P x f <- MkT x f pattern Single x <- [x] pattern P <- Just True pattern P = 42 pattern P = () pattern Single x <- [x] haskell-src-exts-1.18.2/tests/examples/PatternSynonyms3.hs.exactprinter.golden0000644000000000000000000000000612746233113025732 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonyms3.hs.parser.golden0000644000000000000000000045061612746233113024536 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 1 1 77 1 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 1 1 1 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 3 1 3 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 8 1 8 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 9 1 9 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 10 1 10 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 12 1 12 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 13 1 13 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 1 16 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 17 1 17 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 1 19 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 20 1 20 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 1 22 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 23 1 23 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 1 25 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 26 1 26 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 28 1 28 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 30 1 30 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 31 1 31 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 1 34 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 1 36 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 1 37 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 39 1 39 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 40 1 40 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 42 1 42 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 43 1 43 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 46 1 46 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 48 1 48 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 50 1 50 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 53 1 53 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 56 1 56 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 58 1 58 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 60 1 60 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 63 1 63 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 65 1 65 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 67 1 67 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 69 1 69 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 1 72 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 75 1 75 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 77 1 77 1 , SrcSpan "tests/examples/PatternSynonyms3.hs" 77 1 77 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 1 1 2 36 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 1 1 1 13 , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 29 1 30 , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 43 1 44 , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 54 1 55 , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 65 1 66 , SrcSpan "tests/examples/PatternSynonyms3.hs" 1 72 1 73 , SrcSpan "tests/examples/PatternSynonyms3.hs" 2 18 2 19 , SrcSpan "tests/examples/PatternSynonyms3.hs" 2 33 2 36 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 1 31 1 43 , srcInfoPoints = [] } "BangPatterns" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 1 45 1 54 , srcInfoPoints = [] } "PolyKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 1 56 1 65 , srcInfoPoints = [] } "DataKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 1 67 1 72 , srcInfoPoints = [] } "GADTs" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 2 2 2 18 , srcInfoPoints = [] } "FlexibleContexts" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 2 20 2 32 , srcInfoPoints = [] } "ViewPatterns" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 3 1 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 3 1 3 13 , SrcSpan "tests/examples/PatternSynonyms3.hs" 3 29 3 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 3 14 3 28 , srcInfoPoints = [] } "ExplicitForAll" ] ] [] [ PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 5 1 5 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 18 5 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 9 5 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 9 5 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 9 5 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 16 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 16 5 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 21 5 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 5 21 5 22 , SrcSpan "tests/examples/PatternSynonyms3.hs" 5 23 5 24 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 22 5 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 5 22 5 23 , srcInfoPoints = [] } "x") ]) Unidirectional , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 1 8 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 8 8 8 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 1 8 7 , srcInfoPoints = [] } "single" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 11 8 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 8 15 8 17 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 11 8 14 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 8 11 8 12 , SrcSpan "tests/examples/PatternSynonyms3.hs" 8 13 8 14 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 12 8 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 12 8 13 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 18 8 25 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 18 8 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 18 8 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 18 8 23 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 24 8 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 8 24 8 25 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 1 10 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 1 9 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 1 9 7 , srcInfoPoints = [] } "single") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 8 9 18 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 9 8 9 9 , SrcSpan "tests/examples/PatternSynonyms3.hs" 9 17 9 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 9 9 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 9 9 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 9 9 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 16 9 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 16 9 17 , srcInfoPoints = [] } "x") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 19 9 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 9 19 9 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 21 9 27 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 21 9 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 21 9 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 21 9 25 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 26 9 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 26 9 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 9 26 9 27 , srcInfoPoints = [] } "x"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 10 1 10 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 10 1 10 7 , srcInfoPoints = [] } "single") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 10 8 10 9 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 10 10 10 19 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 10 10 10 11 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 10 12 10 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 10 12 10 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 10 12 10 19 , srcInfoPoints = [] } "Nothing")))) Nothing ] , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 12 1 12 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 12 1 12 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 12 16 12 18 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 12 9 12 15 , srcInfoPoints = [] } "Single") Nothing Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 12 19 12 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 12 21 12 23 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 12 19 12 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 12 19 12 20 , srcInfoPoints = [] } "a")) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 12 24 12 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 12 24 12 25 , SrcSpan "tests/examples/PatternSynonyms3.hs" 12 26 12 27 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 12 25 12 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 12 25 12 26 , srcInfoPoints = [] } "a")))) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 1 13 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 13 1 13 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 13 18 13 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 9 13 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 9 13 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 9 13 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 16 13 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 16 13 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 20 13 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 13 20 13 21 , SrcSpan "tests/examples/PatternSynonyms3.hs" 13 22 13 23 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 21 13 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 13 21 13 22 , srcInfoPoints = [] } "x") ]) ImplicitBidirectional , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 1 16 45 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 1 16 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 16 16 18 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 9 16 15 , srcInfoPoints = [] } "Single") Nothing (Just (CxEmpty SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 19 16 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 19 16 20 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 20 16 21 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 22 16 24 ] })) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 25 16 36 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 25 16 26 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 32 16 33 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 34 16 36 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 25 16 36 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 25 16 26 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 32 16 33 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 34 16 36 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 26 16 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 26 16 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 26 16 30 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 31 16 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 31 16 32 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 37 16 45 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 39 16 41 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 37 16 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 37 16 38 , srcInfoPoints = [] } "a")) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 42 16 45 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 16 42 16 43 , SrcSpan "tests/examples/PatternSynonyms3.hs" 16 44 16 45 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 43 16 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 16 43 16 44 , srcInfoPoints = [] } "a")))) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 1 17 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 17 1 17 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 17 18 17 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 9 17 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 9 17 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 9 17 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 16 17 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 16 17 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 20 17 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 17 20 17 21 , SrcSpan "tests/examples/PatternSynonyms3.hs" 17 22 17 23 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 21 17 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 17 21 17 22 , srcInfoPoints = [] } "x") ]) ImplicitBidirectional , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 1 19 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 3 19 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 1 19 2 , srcInfoPoints = [] } "f" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 26 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 17 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 7 , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 13 19 14 , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 15 19 17 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 17 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 6 19 7 , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 13 19 14 , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 15 19 17 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 7 19 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 7 19 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 7 19 11 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 12 19 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 12 19 13 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 18 19 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 22 19 24 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 18 19 21 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 19 18 19 19 , SrcSpan "tests/examples/PatternSynonyms3.hs" 19 20 19 21 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 19 19 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 19 19 20 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 25 19 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 19 25 19 26 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 1 20 17 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 1 20 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 1 20 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 3 20 13 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 20 3 20 4 , SrcSpan "tests/examples/PatternSynonyms3.hs" 20 12 20 13 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 4 20 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 4 20 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 4 20 10 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 11 20 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 11 20 12 , srcInfoPoints = [] } "x") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 14 20 17 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 20 14 20 15 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 16 20 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 16 20 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 20 16 20 17 , srcInfoPoints = [] } "x")))) Nothing ] , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 1 22 41 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 1 22 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 20 22 22 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 9 22 19 , srcInfoPoints = [] } "SinglePair") Nothing Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 23 22 41 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 30 22 32 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 23 22 29 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 23 22 24 , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 25 22 26 , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 28 22 29 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 24 22 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 24 22 25 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 27 22 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 27 22 28 , srcInfoPoints = [] } "a") ]) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 33 22 41 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 33 22 34 , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 40 22 41 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 34 22 40 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 22 34 22 35 , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 36 22 37 , SrcSpan "tests/examples/PatternSynonyms3.hs" 22 39 22 40 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 35 22 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 35 22 36 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 38 22 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 22 38 22 39 , srcInfoPoints = [] } "a") ]))) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 1 23 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 23 1 23 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 23 22 23 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 9 23 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 9 23 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 9 23 19 , srcInfoPoints = [] } "SinglePair")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 20 23 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 20 23 21 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 24 23 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 23 24 23 25 , SrcSpan "tests/examples/PatternSynonyms3.hs" 23 26 23 27 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 25 23 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 23 25 23 26 , srcInfoPoints = [] } "x") ]) ImplicitBidirectional , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 1 25 36 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 3 25 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 1 25 2 , srcInfoPoints = [] } "f" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 36 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 17 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 7 , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 13 25 14 , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 15 25 17 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 17 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 6 25 7 , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 13 25 14 , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 15 25 17 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 7 25 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 7 25 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 7 25 11 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 12 25 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 12 25 13 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 18 25 36 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 27 25 29 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 18 25 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 18 25 19 , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 25 25 26 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 19 25 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 25 19 25 20 , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 21 25 22 , SrcSpan "tests/examples/PatternSynonyms3.hs" 25 24 25 25 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 20 25 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 20 25 21 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 23 25 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 23 25 24 , srcInfoPoints = [] } "a") ])) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 30 25 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 30 25 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 25 30 25 36 , srcInfoPoints = [] } "String"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 1 26 26 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 1 26 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 1 26 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 3 26 17 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 26 3 26 4 , SrcSpan "tests/examples/PatternSynonyms3.hs" 26 16 26 17 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 4 26 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 4 26 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 4 26 14 , srcInfoPoints = [] } "SinglePair")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 15 26 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 15 26 16 , srcInfoPoints = [] } "x") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 18 26 26 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 26 18 26 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 20 26 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 20 26 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 20 26 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 20 26 24 , srcInfoPoints = [] } "show"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 25 26 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 25 26 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 26 25 26 26 , srcInfoPoints = [] } "x"))))) Nothing ] , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 28 1 28 14 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 28 1 28 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 28 11 28 12 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 28 9 28 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 28 9 28 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 28 9 28 10 , srcInfoPoints = [] } "Q")) []) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 28 13 28 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 28 13 28 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 28 13 28 14 , srcInfoPoints = [] } "D")) []) ImplicitBidirectional , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 1 30 36 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 30 1 30 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 30 11 30 13 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 9 30 10 , srcInfoPoints = [] } "C") Nothing Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 14 30 36 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 30 16 30 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 14 30 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 14 30 15 , srcInfoPoints = [] } "a")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 36 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 19 30 20 , srcInfoPoints = [] } "X"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 21 30 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 21 30 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 21 30 26 , srcInfoPoints = [] } "Maybe")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 27 30 36 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 30 27 30 28 , SrcSpan "tests/examples/PatternSynonyms3.hs" 30 35 30 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 28 30 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 28 30 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 28 30 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 28 30 33 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 34 30 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 30 34 30 35 , srcInfoPoints = [] } "a")))))) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 1 31 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 31 1 31 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 31 13 31 14 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 9 31 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 9 31 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 9 31 10 , srcInfoPoints = [] } "C")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 11 31 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 11 31 12 , srcInfoPoints = [] } "x") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 15 31 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 15 31 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 15 31 16 , srcInfoPoints = [] } "Y")) [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 17 31 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 31 17 31 18 , SrcSpan "tests/examples/PatternSynonyms3.hs" 31 24 31 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 18 31 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 18 31 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 18 31 22 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 23 31 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 31 23 31 24 , srcInfoPoints = [] } "x") ]) ]) ImplicitBidirectional , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 1 34 49 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 34 1 34 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 13 34 15 , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 16 34 22 , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 32 34 33 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 9 34 12 , srcInfoPoints = [] } "Syn") (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 23 34 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 23 34 24 , srcInfoPoints = [] } "a") , UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 25 34 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 25 34 26 , srcInfoPoints = [] } "b") , UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 27 34 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 27 34 28 , srcInfoPoints = [] } "c") ]) (Just (CxEmpty SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 34 34 39 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 34 34 34 35 , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 35 34 36 , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 37 34 39 ] })) (Just (CxEmpty SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 40 34 45 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 34 40 34 41 , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 41 34 42 , SrcSpan "tests/examples/PatternSynonyms3.hs" 34 43 34 45 ] })) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 46 34 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 46 34 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 34 46 34 49 , srcInfoPoints = [] } "Int"))) , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 1 36 64 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 1 36 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 11 36 13 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 9 36 10 , srcInfoPoints = [] } "C") Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 14 36 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 14 36 15 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 29 36 30 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 31 36 33 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 14 36 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 14 36 15 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 29 36 30 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 31 36 33 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 15 36 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 15 36 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 15 36 19 , srcInfoPoints = [] } "Show")) [ TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 20 36 29 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 20 36 21 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 22 36 23 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 28 36 29 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 21 36 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 21 36 22 , srcInfoPoints = [] } "a") , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 24 36 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 24 36 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 24 36 28 , srcInfoPoints = [] } "Bool")) ] ])))) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 34 36 64 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 36 36 38 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 34 36 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 34 36 35 , srcInfoPoints = [] } "a")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 64 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 46 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 39 36 40 , srcInfoPoints = [] } "X"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 41 36 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 41 36 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 41 36 46 , srcInfoPoints = [] } "Maybe")))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 47 36 64 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 47 36 48 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 63 36 64 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 48 36 63 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 48 36 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 48 36 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 48 36 53 , srcInfoPoints = [] } "Maybe"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 54 36 63 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 36 54 36 55 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 56 36 57 , SrcSpan "tests/examples/PatternSynonyms3.hs" 36 62 36 63 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 55 36 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 55 36 56 , srcInfoPoints = [] } "a") , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 58 36 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 58 36 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 36 58 36 62 , srcInfoPoints = [] } "Bool")) ]))))) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 1 37 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 37 1 37 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 13 37 14 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 9 37 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 9 37 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 9 37 10 , srcInfoPoints = [] } "C")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 11 37 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 11 37 12 , srcInfoPoints = [] } "x") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 15 37 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 15 37 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 15 37 16 , srcInfoPoints = [] } "Y")) [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 17 37 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 37 17 37 18 , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 32 37 33 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 18 37 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 18 37 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 18 37 22 , srcInfoPoints = [] } "Just")) [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 23 37 32 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 37 23 37 24 , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 25 37 26 , SrcSpan "tests/examples/PatternSynonyms3.hs" 37 31 37 32 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 24 37 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 24 37 25 , srcInfoPoints = [] } "x") , PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 27 37 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 27 37 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 37 27 37 31 , srcInfoPoints = [] } "True")) [] ] ]) ]) ImplicitBidirectional , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 1 39 22 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 39 1 39 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 39 11 39 13 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 9 39 10 , srcInfoPoints = [] } "P") Nothing Nothing Nothing (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 22 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 14 39 15 , srcInfoPoints = [] } "T"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 16 39 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 16 39 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 16 39 20 , srcInfoPoints = [] } "Bool")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 21 39 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 39 21 39 22 , srcInfoPoints = [] } "b"))) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 1 40 22 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 40 1 40 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 40 11 40 13 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 9 40 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 9 40 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 9 40 10 , srcInfoPoints = [] } "P")) []) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 14 40 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 14 40 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 14 40 17 , srcInfoPoints = [] } "MkT")) [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 18 40 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 18 40 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 40 18 40 22 , srcInfoPoints = [] } "True")) [] ]) Unidirectional , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 1 42 35 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 42 1 42 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 42 11 42 13 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 9 42 10 , srcInfoPoints = [] } "D") Nothing Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 14 42 35 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 42 16 42 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 14 42 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 14 42 15 , srcInfoPoints = [] } "a")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 35 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 30 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 19 42 20 , srcInfoPoints = [] } "T"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 21 42 30 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 42 21 42 22 , SrcSpan "tests/examples/PatternSynonyms3.hs" 42 29 42 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 22 42 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 22 42 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 22 42 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 22 42 27 , srcInfoPoints = [] } "Maybe"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 28 42 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 28 42 29 , srcInfoPoints = [] } "a"))))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 31 42 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 31 42 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 42 31 42 35 , srcInfoPoints = [] } "Bool"))))) , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 1 43 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 43 1 43 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 43 13 43 14 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 9 43 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 9 43 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 9 43 10 , srcInfoPoints = [] } "D")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 11 43 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 11 43 12 , srcInfoPoints = [] } "x") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 15 43 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 15 43 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 15 43 18 , srcInfoPoints = [] } "MkT")) [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 19 43 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 43 19 43 20 , SrcSpan "tests/examples/PatternSynonyms3.hs" 43 26 43 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 20 43 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 20 43 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 20 43 24 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 25 43 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 43 25 43 26 , srcInfoPoints = [] } "x") ]) ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 1 46 28 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 46 1 46 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 46 15 46 16 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 9 46 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 9 46 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 9 46 10 , srcInfoPoints = [] } "P")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 11 46 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 11 46 12 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 13 46 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 13 46 14 , srcInfoPoints = [] } "b") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 17 46 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 17 46 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 17 46 21 , srcInfoPoints = [] } "Just")) [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 22 46 28 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 46 22 46 23 , SrcSpan "tests/examples/PatternSynonyms3.hs" 46 24 46 25 , SrcSpan "tests/examples/PatternSynonyms3.hs" 46 27 46 28 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 23 46 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 23 46 24 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 26 46 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 46 26 46 27 , srcInfoPoints = [] } "b") ] ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 1 48 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 48 1 48 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 48 18 48 19 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 9 48 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 9 48 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 9 48 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 16 48 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 16 48 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 20 48 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 48 20 48 21 , SrcSpan "tests/examples/PatternSynonyms3.hs" 48 22 48 23 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 21 48 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 48 21 48 22 , srcInfoPoints = [] } "x") ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 1 50 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 50 1 50 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 50 17 50 18 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 9 50 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 9 50 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 9 50 10 , srcInfoPoints = [] } "a")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 11 50 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 11 50 14 , srcInfoPoints = [] } ":+:")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 15 50 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 15 50 16 , srcInfoPoints = [] } "b"))) (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 19 50 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 50 19 50 20 , SrcSpan "tests/examples/PatternSynonyms3.hs" 50 21 50 22 , SrcSpan "tests/examples/PatternSynonyms3.hs" 50 24 50 25 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 20 50 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 20 50 21 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 23 50 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 50 23 50 24 , srcInfoPoints = [] } "b") ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 1 53 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 53 1 53 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 53 13 53 15 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 9 53 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 9 53 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 9 53 10 , srcInfoPoints = [] } "P")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 11 53 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 11 53 12 , srcInfoPoints = [] } "x") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 16 53 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 16 53 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 16 53 19 , srcInfoPoints = [] } "MkT")) [ PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 20 53 22 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 20 53 22 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 20 53 22 , srcInfoPoints = [] } 42 "42") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 23 53 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 53 23 53 24 , srcInfoPoints = [] } "x") ]) Unidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 1 56 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 56 1 56 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 56 15 56 17 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 9 56 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 9 56 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 9 56 10 , srcInfoPoints = [] } "P")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 11 56 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 11 56 12 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 13 56 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 13 56 14 , srcInfoPoints = [] } "y") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 18 56 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 18 56 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 18 56 21 , srcInfoPoints = [] } "MkT")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 22 56 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 22 56 23 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 24 56 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 56 24 56 25 , srcInfoPoints = [] } "y") ]) Unidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 1 58 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 58 1 58 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 58 13 58 15 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 9 58 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 9 58 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 9 58 10 , srcInfoPoints = [] } "P")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 11 58 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 11 58 12 , srcInfoPoints = [] } "x") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 16 58 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 16 58 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 16 58 19 , srcInfoPoints = [] } "MkT")) [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 20 58 31 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 58 20 58 21 , SrcSpan "tests/examples/PatternSynonyms3.hs" 58 30 58 31 ] } (PViewPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 21 58 30 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 58 23 58 25 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 21 58 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 21 58 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 21 58 22 , srcInfoPoints = [] } "f"))) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 26 58 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 26 58 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 26 58 30 , srcInfoPoints = [] } "True")) [])) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 32 58 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 58 32 58 33 , srcInfoPoints = [] } "x") ]) Unidirectional , GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 60 1 63 0 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 60 8 60 13 , SrcSpan "tests/examples/PatternSynonyms3.hs" 61 5 61 5 , SrcSpan "tests/examples/PatternSynonyms3.hs" 63 1 63 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 60 1 60 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 60 6 60 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 60 6 60 7 , srcInfoPoints = [] } "T")) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 5 61 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 9 61 11 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 5 61 8 , srcInfoPoints = [] } "MkT") Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 12 61 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 14 61 16 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 12 61 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 12 61 13 , srcInfoPoints = [] } "b")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 17 61 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 29 61 31 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 17 61 28 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 17 61 18 , SrcSpan "tests/examples/PatternSynonyms3.hs" 61 27 61 28 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 18 61 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 61 20 61 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 18 61 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 18 61 19 , srcInfoPoints = [] } "b")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 23 61 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 23 61 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 23 61 27 , srcInfoPoints = [] } "Bool"))))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 32 61 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 32 61 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 61 32 61 33 , srcInfoPoints = [] } "T"))))) ] Nothing , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 1 63 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 63 1 63 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 63 15 63 17 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 9 63 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 9 63 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 9 63 10 , srcInfoPoints = [] } "P")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 11 63 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 11 63 12 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 13 63 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 13 63 14 , srcInfoPoints = [] } "f") ]) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 18 63 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 18 63 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 18 63 21 , srcInfoPoints = [] } "MkT")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 22 63 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 22 63 23 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 24 63 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 63 24 63 25 , srcInfoPoints = [] } "f") ]) Unidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 1 65 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 65 1 65 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 65 18 65 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 9 65 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 9 65 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 9 65 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 16 65 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 16 65 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 21 65 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 65 21 65 22 , SrcSpan "tests/examples/PatternSynonyms3.hs" 65 23 65 24 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 22 65 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 65 22 65 23 , srcInfoPoints = [] } "x") ]) Unidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 1 67 23 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 67 1 67 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 67 11 67 13 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 9 67 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 9 67 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 9 67 10 , srcInfoPoints = [] } "P")) []) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 14 67 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 14 67 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 14 67 18 , srcInfoPoints = [] } "Just")) [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 19 67 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 19 67 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 67 19 67 23 , srcInfoPoints = [] } "True")) [] ]) Unidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 69 1 69 15 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 69 1 69 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 69 11 69 12 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 69 9 69 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 69 9 69 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 69 9 69 10 , srcInfoPoints = [] } "P")) []) (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 69 13 69 15 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 69 13 69 15 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 69 13 69 15 , srcInfoPoints = [] } 42 "42")) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 72 1 72 15 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 72 1 72 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 11 72 12 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 72 9 72 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 72 9 72 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 72 9 72 10 , srcInfoPoints = [] } "P")) []) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 15 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 14 , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 14 72 15 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 15 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 14 , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 14 72 15 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 15 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 72 13 72 14 , SrcSpan "tests/examples/PatternSynonyms3.hs" 72 14 72 15 ] })) []) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 1 75 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 75 1 75 8 , SrcSpan "tests/examples/PatternSynonyms3.hs" 75 18 75 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 9 75 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 9 75 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 9 75 15 , srcInfoPoints = [] } "Single")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 16 75 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 16 75 17 , srcInfoPoints = [] } "x") ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 21 75 24 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonyms3.hs" 75 21 75 22 , SrcSpan "tests/examples/PatternSynonyms3.hs" 75 23 75 24 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 22 75 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonyms3.hs" 75 22 75 23 , srcInfoPoints = [] } "x") ]) Unidirectional ] , [] ) haskell-src-exts-1.18.2/tests/examples/PatternSynonyms3.hs.prettyparser.golden0000644000000000000000000000000612746233113025766 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonyms3.hs.prettyprinter.golden0000644000000000000000000000230312746233113026157 0ustar0000000000000000{-# LANGUAGE PatternSynonyms, BangPatterns, PolyKinds, DataKinds, GADTs, FlexibleContexts, ViewPatterns #-} {-# LANGUAGE ExplicitForAll #-} pattern Single x <- [x] single :: [a] -> Maybe a single (Single x) = Just x single _ = Nothing pattern Single :: a -> [a] pattern Single x = [x] pattern Single :: () => (Show a) => a -> [a] pattern Single x = [x] f :: (Show a) => [a] -> a f (Single x) = x pattern SinglePair :: (a, a) -> [(a, a)] pattern SinglePair x = [x] f :: (Show a) => [(a, a)] -> String f (SinglePair x) = show x pattern Q = D pattern C :: a -> X Maybe (Maybe a) pattern C x = Y (Just x) pattern Syn :: forall a b c . () => () => Int pattern C :: (Show (a, Bool)) => a -> X Maybe (Maybe (a, Bool)) pattern C x = Y (Just (x, True)) pattern P :: T Bool b pattern P <- MkT True pattern D :: a -> T (Maybe a) Bool pattern D x = MkT (Just x) pattern P a b = Just (a, b) pattern Single x = [x] pattern a :+: b = (a, b) pattern P x <- MkT 42 x pattern P x y <- MkT x y pattern P x <- MkT (f -> True) x data T where MkT :: b -> (b -> Bool) -> T pattern P x f <- MkT x f pattern Single x <- [x] pattern P <- Just True pattern P = 42 pattern P = () pattern Single x <- [x] haskell-src-exts-1.18.2/tests/examples/PatternSynonymSignatures.hs0000644000000000000000000000034512746233113023561 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} pattern Syn :: Typ pattern Syn :: () => () => Typ pattern Syn :: Show a => Show b => Typ pattern Syn :: Show b => Typ pattern Syn :: Show b => () => Typ pattern Syn :: () => Show b => Typ haskell-src-exts-1.18.2/tests/examples/PatternSynonymSignatures.hs.exactprinter.golden0000644000000000000000000000000612746233113027531 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonymSignatures.hs.parser.golden0000644000000000000000000005145212746233113026330 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 1 1 16 1 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 1 1 1 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 1 4 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 1 4 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 1 4 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 1 6 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 1 8 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 1 10 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 1 12 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 1 14 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 16 1 16 1 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 16 1 16 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 1 1 1 13 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" ] ] [] [ PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 1 4 19 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 1 4 8 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 13 4 15 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 9 4 12 , srcInfoPoints = [] } "Syn") Nothing Nothing Nothing (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 16 4 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 16 4 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 4 16 4 19 , srcInfoPoints = [] } "Typ"))) , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 1 6 31 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 1 6 8 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 13 6 15 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 9 6 12 , srcInfoPoints = [] } "Syn") Nothing (Just (CxEmpty SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 16 6 21 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 16 6 17 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 17 6 18 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 19 6 21 ] })) (Just (CxEmpty SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 22 6 27 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 22 6 23 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 23 6 24 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 25 6 27 ] })) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 28 6 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 28 6 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 6 28 6 31 , srcInfoPoints = [] } "Typ"))) , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 1 8 39 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 1 8 8 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 13 8 15 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 9 8 12 , srcInfoPoints = [] } "Syn") Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 16 8 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 23 8 25 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 16 8 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 23 8 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 16 8 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 16 8 20 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 21 8 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 21 8 22 , srcInfoPoints = [] } "a") ]))) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 26 8 35 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 33 8 35 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 26 8 35 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 33 8 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 26 8 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 26 8 30 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 31 8 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 31 8 32 , srcInfoPoints = [] } "b") ]))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 36 8 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 36 8 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 8 36 8 39 , srcInfoPoints = [] } "Typ"))) , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 1 10 29 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 1 10 8 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 13 10 15 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 9 10 12 , srcInfoPoints = [] } "Syn") Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 16 10 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 23 10 25 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 16 10 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 23 10 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 16 10 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 16 10 20 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 21 10 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 21 10 22 , srcInfoPoints = [] } "b") ]))) Nothing (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 26 10 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 26 10 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 10 26 10 29 , srcInfoPoints = [] } "Typ"))) , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 1 12 35 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 1 12 8 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 13 12 15 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 9 12 12 , srcInfoPoints = [] } "Syn") Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 16 12 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 23 12 25 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 16 12 25 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 23 12 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 16 12 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 16 12 20 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 21 12 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 21 12 22 , srcInfoPoints = [] } "b") ]))) (Just (CxEmpty SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 26 12 31 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 26 12 27 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 27 12 28 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 29 12 31 ] })) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 32 12 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 32 12 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 12 32 12 35 , srcInfoPoints = [] } "Typ"))) , PatSynSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 1 14 35 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 1 14 8 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 13 14 15 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 9 14 12 , srcInfoPoints = [] } "Syn") Nothing (Just (CxEmpty SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 16 14 21 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 16 14 17 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 17 14 18 , SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 19 14 21 ] })) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 22 14 31 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 29 14 31 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 22 14 31 , srcInfoPoints = [ SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 29 14 31 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 22 14 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 22 14 26 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 27 14 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 27 14 28 , srcInfoPoints = [] } "b") ]))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 32 14 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 32 14 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PatternSynonymSignatures.hs" 14 32 14 35 , srcInfoPoints = [] } "Typ"))) ] , [] ) haskell-src-exts-1.18.2/tests/examples/PatternSynonymSignatures.hs.prettyparser.golden0000644000000000000000000000000612746233113027565 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PatternSynonymSignatures.hs.prettyprinter.golden0000644000000000000000000000034312746233113027760 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} pattern Syn :: Typ pattern Syn :: () => () => Typ pattern Syn :: Show a => Show b => Typ pattern Syn :: Show b => Typ pattern Syn :: Show b => () => Typ pattern Syn :: () => Show b => Typ haskell-src-exts-1.18.2/tests/examples/PolyKinds.hs0000644000000000000000000000031012746233113020406 0ustar0000000000000000{-# LANGUAGE PolyKinds #-} data Proxy t = Proxy class Typeable t where typeOf :: Proxy t -> TypeRep instance Typeable Int where typeOf _ = TypeRep instance Typeable [] where typeOf _ = TypeRep haskell-src-exts-1.18.2/tests/examples/PolyKinds.hs.exactprinter.golden0000644000000000000000000000000612746233113024366 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PolyKinds.hs.parser.golden0000644000000000000000000004430212746233113023161 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 1 1 1 1 , SrcSpan "tests/examples/PolyKinds.hs" 2 1 2 1 , SrcSpan "tests/examples/PolyKinds.hs" 2 1 2 1 , SrcSpan "tests/examples/PolyKinds.hs" 2 1 2 1 , SrcSpan "tests/examples/PolyKinds.hs" 4 1 4 1 , SrcSpan "tests/examples/PolyKinds.hs" 7 1 7 1 , SrcSpan "tests/examples/PolyKinds.hs" 8 1 8 1 , SrcSpan "tests/examples/PolyKinds.hs" 9 1 9 1 , SrcSpan "tests/examples/PolyKinds.hs" 9 1 9 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 1 1 1 27 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 1 1 1 13 , SrcSpan "tests/examples/PolyKinds.hs" 1 24 1 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 1 14 1 23 , srcInfoPoints = [] } "PolyKinds" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 1 2 21 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 2 14 2 15 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 1 2 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 6 2 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 6 2 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 6 2 11 , srcInfoPoints = [] } "Proxy")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 12 2 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 12 2 13 , srcInfoPoints = [] } "t"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 16 2 21 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 16 2 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 2 16 2 21 , srcInfoPoints = [] } "Proxy") []) ] Nothing , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 4 1 5 31 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 4 1 4 6 , SrcSpan "tests/examples/PolyKinds.hs" 4 18 4 23 , SrcSpan "tests/examples/PolyKinds.hs" 5 3 5 3 , SrcSpan "tests/examples/PolyKinds.hs" 7 1 7 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 4 7 4 17 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 4 7 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 4 7 4 15 , srcInfoPoints = [] } "Typeable")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 4 16 4 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 4 16 4 17 , srcInfoPoints = [] } "t"))) [] (Just [ ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 3 5 31 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 5 10 5 12 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 3 5 31 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 5 10 5 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 3 5 9 , srcInfoPoints = [] } "typeOf" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 13 5 31 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 5 21 5 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 13 5 20 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 13 5 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 13 5 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 13 5 18 , srcInfoPoints = [] } "Proxy"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 19 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 19 5 20 , srcInfoPoints = [] } "t"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 24 5 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 24 5 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 5 24 5 31 , srcInfoPoints = [] } "TypeRep"))))) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 1 8 0 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 7 1 7 9 , SrcSpan "tests/examples/PolyKinds.hs" 7 24 7 29 , SrcSpan "tests/examples/PolyKinds.hs" 7 30 7 30 , SrcSpan "tests/examples/PolyKinds.hs" 8 1 8 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 10 7 22 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 10 7 22 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 10 7 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 10 7 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 10 7 18 , srcInfoPoints = [] } "Typeable"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 19 7 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 19 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 19 7 22 , srcInfoPoints = [] } "Int"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 30 7 48 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 30 7 48 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 30 7 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 30 7 36 , srcInfoPoints = [] } "typeOf") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 37 7 38 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 39 7 48 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 7 39 7 40 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 41 7 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 41 7 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 7 41 7 48 , srcInfoPoints = [] } "TypeRep")))) Nothing ]) ]) , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 1 9 0 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 8 1 8 9 , SrcSpan "tests/examples/PolyKinds.hs" 8 24 8 29 , SrcSpan "tests/examples/PolyKinds.hs" 8 30 8 30 , SrcSpan "tests/examples/PolyKinds.hs" 9 1 9 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 10 8 21 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 10 8 21 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 10 8 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 10 8 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 10 8 18 , srcInfoPoints = [] } "Typeable"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 19 8 21 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 8 19 8 20 , SrcSpan "tests/examples/PolyKinds.hs" 8 20 8 21 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 19 8 21 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 8 19 8 20 , SrcSpan "tests/examples/PolyKinds.hs" 8 20 8 21 ] } (ListCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 19 8 21 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 8 19 8 20 , SrcSpan "tests/examples/PolyKinds.hs" 8 20 8 21 ] }))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 30 8 48 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 30 8 48 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 30 8 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 30 8 36 , srcInfoPoints = [] } "typeOf") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 37 8 38 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 39 8 48 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKinds.hs" 8 39 8 40 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 41 8 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 41 8 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKinds.hs" 8 41 8 48 , srcInfoPoints = [] } "TypeRep")))) Nothing ]) ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/PolyKinds.hs.prettyparser.golden0000644000000000000000000000000612746233113024422 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PolyKinds.hs.prettyprinter.golden0000644000000000000000000000033512746233113024616 0ustar0000000000000000{-# LANGUAGE PolyKinds #-} data Proxy t = Proxy class Typeable t where typeOf :: Proxy t -> TypeRep instance Typeable Int where typeOf _ = TypeRep instance Typeable [] where typeOf _ = TypeRep haskell-src-exts-1.18.2/tests/examples/PolyKindSigs.hs0000644000000000000000000000023612746233113021060 0ustar0000000000000000{-# LANGUAGE GADTs #-} --{-# LANGUAGE KindSignatures #-} {-# LANGUAGE PolyKinds #-} module Test where data Foo :: * -> * where Foo :: Foo a haskell-src-exts-1.18.2/tests/examples/PolyKindSigs.hs.exactprinter.golden0000644000000000000000000000000612746233113025031 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PolyKindSigs.hs.parser.golden0000644000000000000000000001372312746233113023627 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKindSigs.hs" 1 1 1 1 , SrcSpan "tests/examples/PolyKindSigs.hs" 3 1 3 1 , SrcSpan "tests/examples/PolyKindSigs.hs" 5 1 5 1 , SrcSpan "tests/examples/PolyKindSigs.hs" 5 1 5 1 , SrcSpan "tests/examples/PolyKindSigs.hs" 7 1 7 1 , SrcSpan "tests/examples/PolyKindSigs.hs" 9 1 9 1 , SrcSpan "tests/examples/PolyKindSigs.hs" 9 1 9 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 5 1 5 18 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKindSigs.hs" 5 1 5 7 , SrcSpan "tests/examples/PolyKindSigs.hs" 5 13 5 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 5 8 5 12 , srcInfoPoints = [] } "Test") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKindSigs.hs" 1 1 1 13 , SrcSpan "tests/examples/PolyKindSigs.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 1 14 1 19 , srcInfoPoints = [] } "GADTs" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 3 1 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKindSigs.hs" 3 1 3 13 , SrcSpan "tests/examples/PolyKindSigs.hs" 3 29 3 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 3 14 3 23 , srcInfoPoints = [] } "PolyKinds" ] ] [] [ GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 7 1 9 0 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKindSigs.hs" 7 10 7 12 , SrcSpan "tests/examples/PolyKindSigs.hs" 7 20 7 25 , SrcSpan "tests/examples/PolyKindSigs.hs" 8 3 8 3 , SrcSpan "tests/examples/PolyKindSigs.hs" 9 1 9 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 7 1 7 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 7 6 7 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 7 6 7 9 , srcInfoPoints = [] } "Foo")) (Just (KindFn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 7 13 7 19 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKindSigs.hs" 7 15 7 17 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 7 13 7 14 , srcInfoPoints = [] }) (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 7 18 7 19 , srcInfoPoints = [] }))) [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 8 3 8 15 , srcInfoPoints = [ SrcSpan "tests/examples/PolyKindSigs.hs" 8 7 8 9 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 8 3 8 6 , srcInfoPoints = [] } "Foo") Nothing (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 8 10 8 15 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 8 10 8 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 8 10 8 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 8 10 8 13 , srcInfoPoints = [] } "Foo"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 8 14 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PolyKindSigs.hs" 8 14 8 15 , srcInfoPoints = [] } "a"))) ] Nothing ] , [ Comment False (SrcSpan "tests/examples/PolyKindSigs.hs" 2 1 2 34) "{-# LANGUAGE KindSignatures #-}" ] ) haskell-src-exts-1.18.2/tests/examples/PolyKindSigs.hs.prettyparser.golden0000644000000000000000000000000612746233113025065 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PolyKindSigs.hs.prettyprinter.golden0000644000000000000000000000016312746233113025260 0ustar0000000000000000{-# LANGUAGE GADTs #-} {-# LANGUAGE PolyKinds #-} module Test where data Foo :: * -> * where Foo :: Foo a haskell-src-exts-1.18.2/tests/examples/PrimitiveIntHexLiteral.hs0000644000000000000000000000007512746233113023107 0ustar0000000000000000{-# LANGUAGE MagicHash #-} minInt = I# (0x8000000000000000#) haskell-src-exts-1.18.2/tests/examples/PrimitiveIntHexLiteral.hs.exactprinter.golden0000644000000000000000000000000612746233113027057 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/PrimitiveIntHexLiteral.hs.parser.golden0000644000000000000000000001037412746233113025654 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 1 1 1 1 , SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 1 2 1 , SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 1 2 1 , SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 1 2 1 , SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 3 1 3 1 , SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 3 1 3 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 1 1 1 27 , srcInfoPoints = [ SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 1 1 1 13 , SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 1 24 1 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 1 14 1 23 , srcInfoPoints = [] } "MagicHash" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 1 2 34 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 1 2 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 1 2 7 , srcInfoPoints = [] } "minInt")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 8 2 34 , srcInfoPoints = [ SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 8 2 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 10 2 34 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 10 2 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 10 2 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 10 2 12 , srcInfoPoints = [] } "I#"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 13 2 34 , srcInfoPoints = [ SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 13 2 14 , SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 33 2 34 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 14 2 33 , srcInfoPoints = [] } (PrimInt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/PrimitiveIntHexLiteral.hs" 2 14 2 33 , srcInfoPoints = [] } 9223372036854775808 "0x8000000000000000"))))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/PrimitiveIntHexLiteral.hs.prettyparser.golden0000644000000000000000000000104412746233113027116 0ustar0000000000000000Roundtrip test failed AST 1: Module () Nothing [LanguagePragma () [Ident () "MagicHash"]] [] [PatBind () (PVar () (Ident () "minInt")) (UnGuardedRhs () (App () (Con () (UnQual () (Ident () "I#"))) (Paren () (Lit () (PrimInt () 9223372036854775808 "0x8000000000000000"))))) Nothing] AST 2: Module () Nothing [LanguagePragma () [Ident () "MagicHash"]] [] [PatBind () (PVar () (Ident () "minInt")) (UnGuardedRhs () (App () (Con () (UnQual () (Ident () "I#"))) (Paren () (Lit () (PrimInt () 9223372036854775808 "9223372036854775808"))))) Nothing] haskell-src-exts-1.18.2/tests/examples/PrimitiveIntHexLiteral.hs.prettyprinter.golden0000644000000000000000000000007612746233113027311 0ustar0000000000000000{-# LANGUAGE MagicHash #-} minInt = I# (9223372036854775808#) haskell-src-exts-1.18.2/tests/examples/QQType.hs0000644000000000000000000000025512746233113017665 0ustar0000000000000000{-# LANGUAGE FlexibleInstances, TemplateHaskell, QuasiQuotes #-} module QQType where import Language.Haskell.TH x :: DecsQ x = [d| instance Show $(conT (mkName "Int")) |] haskell-src-exts-1.18.2/tests/examples/QQType.hs.exactprinter.golden0000644000000000000000000000000612746233113023635 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QQType.hs.parser.golden0000644000000000000000000003140012746233113022423 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 1 1 1 1 , SrcSpan "tests/examples/QQType.hs" 2 1 2 1 , SrcSpan "tests/examples/QQType.hs" 2 1 2 1 , SrcSpan "tests/examples/QQType.hs" 4 1 4 1 , SrcSpan "tests/examples/QQType.hs" 6 1 6 1 , SrcSpan "tests/examples/QQType.hs" 7 1 7 1 , SrcSpan "tests/examples/QQType.hs" 8 1 8 1 , SrcSpan "tests/examples/QQType.hs" 8 1 8 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 2 1 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 2 1 2 7 , SrcSpan "tests/examples/QQType.hs" 2 15 2 20 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 2 8 2 14 , srcInfoPoints = [] } "QQType") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 1 1 1 65 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 1 1 1 13 , SrcSpan "tests/examples/QQType.hs" 1 31 1 32 , SrcSpan "tests/examples/QQType.hs" 1 48 1 49 , SrcSpan "tests/examples/QQType.hs" 1 62 1 65 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 1 14 1 31 , srcInfoPoints = [] } "FlexibleInstances" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 1 33 1 48 , srcInfoPoints = [] } "TemplateHaskell" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 1 50 1 61 , srcInfoPoints = [] } "QuasiQuotes" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 4 1 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 4 8 4 27 , srcInfoPoints = [] } "Language.Haskell.TH" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 6 1 6 11 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 6 3 6 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 6 1 6 2 , srcInfoPoints = [] } "x" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 6 6 6 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 6 6 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 6 6 6 11 , srcInfoPoints = [] } "DecsQ"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 1 7 48 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 1 7 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 1 7 2 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 3 7 48 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 7 3 7 4 ] } (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 5 7 48 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 7 5 7 8 , SrcSpan "tests/examples/QQType.hs" 7 46 7 48 ] } (DeclBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 5 7 48 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 7 9 7 9 , SrcSpan "tests/examples/QQType.hs" 7 46 7 46 , SrcSpan "tests/examples/QQType.hs" 7 46 7 48 ] } [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 9 7 45 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 7 9 7 17 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 18 7 45 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 18 7 45 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 18 7 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 18 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 18 7 22 , srcInfoPoints = [] } "Show"))) (TySplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 23 7 45 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 7 23 7 25 , SrcSpan "tests/examples/QQType.hs" 7 44 7 45 ] } (ParenSplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 23 7 45 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 7 23 7 25 , SrcSpan "tests/examples/QQType.hs" 7 44 7 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 25 7 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 25 7 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 25 7 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 25 7 29 , srcInfoPoints = [] } "conT"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 30 7 44 , srcInfoPoints = [ SrcSpan "tests/examples/QQType.hs" 7 30 7 31 , SrcSpan "tests/examples/QQType.hs" 7 43 7 44 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 31 7 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 31 7 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 31 7 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 31 7 37 , srcInfoPoints = [] } "mkName"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 38 7 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QQType.hs" 7 38 7 43 , srcInfoPoints = [] } "Int" "Int"))))))))) Nothing ]))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/QQType.hs.prettyparser.golden0000644000000000000000000000000612746233113023671 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QQType.hs.prettyprinter.golden0000644000000000000000000000030112746233113024056 0ustar0000000000000000{-# LANGUAGE FlexibleInstances, TemplateHaskell, QuasiQuotes #-} module QQType where import Language.Haskell.TH x :: DecsQ x = [d| instance Show $( conT (mkName "Int") ) |] haskell-src-exts-1.18.2/tests/examples/QualifiedDot.hs0000644000000000000000000000006112746233113021047 0ustar0000000000000000module QualifiedDot where twoDots = (Prelude..) haskell-src-exts-1.18.2/tests/examples/QualifiedDot.hs.exactprinter.golden0000644000000000000000000000000612746233113025024 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QualifiedDot.hs.parser.golden0000644000000000000000000000644012746233113023620 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedDot.hs" 1 1 1 1 , SrcSpan "tests/examples/QualifiedDot.hs" 1 1 1 1 , SrcSpan "tests/examples/QualifiedDot.hs" 3 1 3 1 , SrcSpan "tests/examples/QualifiedDot.hs" 4 1 4 1 , SrcSpan "tests/examples/QualifiedDot.hs" 4 1 4 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 1 1 1 26 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedDot.hs" 1 1 1 7 , SrcSpan "tests/examples/QualifiedDot.hs" 1 21 1 26 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 1 8 1 20 , srcInfoPoints = [] } "QualifiedDot") Nothing Nothing)) [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 3 1 3 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 3 1 3 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 3 1 3 8 , srcInfoPoints = [] } "twoDots")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 3 9 3 22 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedDot.hs" 3 9 3 10 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 3 11 3 22 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedDot.hs" 3 11 3 12 , SrcSpan "tests/examples/QualifiedDot.hs" 3 12 3 21 , SrcSpan "tests/examples/QualifiedDot.hs" 3 21 3 22 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 3 11 3 22 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedDot.hs" 3 11 3 12 , SrcSpan "tests/examples/QualifiedDot.hs" 3 12 3 21 , SrcSpan "tests/examples/QualifiedDot.hs" 3 21 3 22 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 3 12 3 21 , srcInfoPoints = [] } "Prelude") (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedDot.hs" 3 12 3 21 , srcInfoPoints = [] } ".")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/QualifiedDot.hs.prettyparser.golden0000644000000000000000000000000612746233113025060 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QualifiedDot.hs.prettyprinter.golden0000644000000000000000000000006012746233113025247 0ustar0000000000000000module QualifiedDot where twoDots = (Prelude..) haskell-src-exts-1.18.2/tests/examples/QualifiedQQuote.hs0000644000000000000000000000014412746233113021541 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} import qualified Language.Haskell.TH as T x :: T.DecsQ x = [T.d|id|] haskell-src-exts-1.18.2/tests/examples/QualifiedQQuote.hs.exactprinter.golden0000644000000000000000000000000612746233113025514 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QualifiedQQuote.hs.parser.golden0000644000000000000000000001176712746233113024320 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedQQuote.hs" 1 1 1 1 , SrcSpan "tests/examples/QualifiedQQuote.hs" 2 1 2 1 , SrcSpan "tests/examples/QualifiedQQuote.hs" 2 1 2 1 , SrcSpan "tests/examples/QualifiedQQuote.hs" 2 1 2 1 , SrcSpan "tests/examples/QualifiedQQuote.hs" 4 1 4 1 , SrcSpan "tests/examples/QualifiedQQuote.hs" 5 1 5 1 , SrcSpan "tests/examples/QualifiedQQuote.hs" 7 1 7 1 , SrcSpan "tests/examples/QualifiedQQuote.hs" 7 1 7 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedQQuote.hs" 1 1 1 13 , SrcSpan "tests/examples/QualifiedQQuote.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 1 14 1 25 , srcInfoPoints = [] } "QuasiQuotes" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 2 1 2 42 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedQQuote.hs" 2 1 2 7 , SrcSpan "tests/examples/QualifiedQQuote.hs" 2 8 2 17 , SrcSpan "tests/examples/QualifiedQQuote.hs" 2 38 2 40 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 2 18 2 37 , srcInfoPoints = [] } "Language.Haskell.TH" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 2 41 2 42 , srcInfoPoints = [] } "T") , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 4 1 4 13 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedQQuote.hs" 4 3 4 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 4 1 4 2 , srcInfoPoints = [] } "x" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 4 6 4 13 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 4 6 4 13 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 4 6 4 13 , srcInfoPoints = [] } "T") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 4 6 4 13 , srcInfoPoints = [] } "DecsQ"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 5 1 5 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 5 1 5 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 5 1 5 2 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 5 3 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedQQuote.hs" 5 3 5 4 ] } (QuasiQuote SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedQQuote.hs" 5 5 5 14 , srcInfoPoints = [] } "T.d" "id")) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/QualifiedQQuote.hs.prettyparser.golden0000644000000000000000000000000612746233113025550 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QualifiedQQuote.hs.prettyprinter.golden0000644000000000000000000000014312746233113025741 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} import qualified Language.Haskell.TH as T x :: T.DecsQ x = [T.d|id|] haskell-src-exts-1.18.2/tests/examples/QualifiedRecordfieldPuns.hs0000644000000000000000000000006112746233113023411 0ustar0000000000000000{-# LANGUAGE NamedFieldPuns #-} f (C {M.a}) = a haskell-src-exts-1.18.2/tests/examples/QualifiedRecordfieldPuns.hs.exactprinter.golden0000644000000000000000000000000612746233113027366 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QualifiedRecordfieldPuns.hs.parser.golden0000644000000000000000000001354612746233113026167 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 1 1 1 1 , SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 1 2 1 , SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 1 2 1 , SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 1 2 1 , SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 4 1 4 1 , SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 1 1 1 13 , SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 1 14 1 28 , srcInfoPoints = [] } "NamedFieldPuns" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 1 2 16 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 1 2 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 1 2 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 3 2 12 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 3 2 4 , SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 11 2 12 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 4 2 11 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 6 2 7 , SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 10 2 11 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 4 2 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 4 2 5 , srcInfoPoints = [] } "C")) [ PFieldPun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 7 2 10 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 7 2 10 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 7 2 10 , srcInfoPoints = [] } "M") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 7 2 10 , srcInfoPoints = [] } "a")) ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 13 2 16 , srcInfoPoints = [ SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 13 2 14 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 15 2 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 15 2 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QualifiedRecordfieldPuns.hs" 2 15 2 16 , srcInfoPoints = [] } "a")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/QualifiedRecordfieldPuns.hs.prettyparser.golden0000644000000000000000000000000612746233113027422 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QualifiedRecordfieldPuns.hs.prettyprinter.golden0000644000000000000000000000005712746233113027617 0ustar0000000000000000{-# LANGUAGE NamedFieldPuns #-} f (C{M.a}) = a haskell-src-exts-1.18.2/tests/examples/QuasiQuoteLines.hs0000644000000000000000000000020412746233113021567 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} import Here str :: String str = [here|test test test test |] main :: IO() main = do putStrLn str haskell-src-exts-1.18.2/tests/examples/QuasiQuoteLines.hs.exactprinter.golden0000644000000000000000000000000612746233113025545 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteLines.hs.parser.golden0000644000000000000000000002551112746233113024341 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 1 1 13 1 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 1 1 1 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 5 1 5 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 6 1 6 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 1 11 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 1 12 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 13 1 13 1 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 13 1 13 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 1 1 1 13 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 1 14 1 25 , srcInfoPoints = [] } "QuasiQuotes" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 3 1 3 12 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 3 1 3 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 3 8 3 12 , srcInfoPoints = [] } "Here" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 5 1 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 5 5 5 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 5 1 5 4 , srcInfoPoints = [] } "str" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 5 8 5 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 5 8 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 5 8 5 14 , srcInfoPoints = [] } "String"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 6 1 8 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 6 1 6 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 6 1 6 4 , srcInfoPoints = [] } "str")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 6 5 8 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 6 5 6 6 ] } (QuasiQuote SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 6 7 8 13 , srcInfoPoints = [] } "here" "test \ntest \ntest test ")) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 1 11 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 6 11 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 1 11 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 9 11 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 9 11 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 9 11 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 9 11 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 11 11 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 11 11 12 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 12 11 13 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 11 11 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 11 11 12 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 12 11 13 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 11 11 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 11 11 12 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 11 12 11 13 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 1 12 23 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 1 12 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 1 12 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 6 12 23 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 6 12 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 8 12 23 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 8 12 10 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 11 12 11 , SrcSpan "tests/examples/QuasiQuoteLines.hs" 13 1 13 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 11 12 23 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 11 12 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 11 12 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 11 12 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 11 12 19 , srcInfoPoints = [] } "putStrLn"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 20 12 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 20 12 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteLines.hs" 12 20 12 23 , srcInfoPoints = [] } "str")))) ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/QuasiQuoteLines.hs.prettyparser.golden0000644000000000000000000000000612746233113025601 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteLines.hs.prettyprinter.golden0000644000000000000000000000020312746233113025767 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} import Here str :: String str = [here|test test test test |] main :: IO () main = do putStrLn str haskell-src-exts-1.18.2/tests/examples/QuasiQuoteOld.hs0000644000000000000000000000020512746233113021234 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} import Here str :: String str = [$here|test test test test |] main :: IO() main = do putStrLn str haskell-src-exts-1.18.2/tests/examples/QuasiQuoteOld.hs.exactprinter.golden0000644000000000000000000000020512746233113025212 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} import Here str :: String str = [here|test test test test |] main :: IO() main = do putStrLn str haskell-src-exts-1.18.2/tests/examples/QuasiQuoteOld.hs.parser.golden0000644000000000000000000002465112746233113024011 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 1 1 13 1 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 1 1 1 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 5 1 5 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 6 1 6 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 1 11 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 1 12 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 13 1 13 1 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 13 1 13 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 1 1 1 13 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 1 14 1 25 , srcInfoPoints = [] } "QuasiQuotes" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 3 1 3 12 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 3 1 3 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 3 8 3 12 , srcInfoPoints = [] } "Here" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 5 1 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 5 5 5 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 5 1 5 4 , srcInfoPoints = [] } "str" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 5 8 5 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 5 8 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 5 8 5 14 , srcInfoPoints = [] } "String"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 6 1 8 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 6 1 6 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 6 1 6 4 , srcInfoPoints = [] } "str")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 6 5 8 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 6 5 6 6 ] } (QuasiQuote SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 6 7 8 13 , srcInfoPoints = [] } "here" "test \ntest \ntest test ")) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 1 11 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 6 11 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 1 11 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 9 11 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 9 11 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 9 11 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 9 11 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 11 11 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 11 11 12 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 12 11 13 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 11 11 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 11 11 12 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 12 11 13 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 11 11 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 11 11 12 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 11 12 11 13 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 1 12 23 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 1 12 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 1 12 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 6 12 23 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 6 12 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 8 12 23 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 8 12 10 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 11 12 11 , SrcSpan "tests/examples/QuasiQuoteOld.hs" 13 1 13 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 11 12 23 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 11 12 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 11 12 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 11 12 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 11 12 19 , srcInfoPoints = [] } "putStrLn"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 20 12 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 20 12 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteOld.hs" 12 20 12 23 , srcInfoPoints = [] } "str")))) ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/QuasiQuoteOld.hs.prettyparser.golden0000644000000000000000000000000612746233113025245 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteOld.hs.prettyprinter.golden0000644000000000000000000000020312746233113025433 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} import Here str :: String str = [here|test test test test |] main :: IO () main = do putStrLn str haskell-src-exts-1.18.2/tests/examples/QuasiQuoteQual2.hs0000644000000000000000000000006312746233113021504 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} f [True] = 1 f _ = 0 haskell-src-exts-1.18.2/tests/examples/QuasiQuoteQual2.hs.exactprinter.golden0000644000000000000000000000000612746233113025457 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteQual2.hs.parser.golden0000644000000000000000000001236412746233113024255 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteQual2.hs" 1 1 1 1 , SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 1 2 1 , SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 1 2 1 , SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 1 2 1 , SrcSpan "tests/examples/QuasiQuoteQual2.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteQual2.hs" 5 1 5 1 , SrcSpan "tests/examples/QuasiQuoteQual2.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteQual2.hs" 1 1 1 13 , SrcSpan "tests/examples/QuasiQuoteQual2.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 1 14 1 25 , srcInfoPoints = [] } "QuasiQuotes" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 1 3 8 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 1 2 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 1 2 2 , srcInfoPoints = [] } "f") [ PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 3 2 9 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 3 2 4 , SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 8 2 9 ] } [ PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 4 2 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 4 2 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 4 2 8 , srcInfoPoints = [] } "True")) [] ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 10 2 13 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 10 2 11 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 12 2 13 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 2 12 2 13 , srcInfoPoints = [] } 1 "1"))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 3 1 3 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 3 1 3 2 , srcInfoPoints = [] } "f") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 3 3 3 4 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 3 5 3 8 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteQual2.hs" 3 5 3 6 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 3 7 3 8 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteQual2.hs" 3 7 3 8 , srcInfoPoints = [] } 0 "0"))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/QuasiQuoteQual2.hs.prettyparser.golden0000644000000000000000000000000612746233113025513 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteQual2.hs.prettyprinter.golden0000644000000000000000000000006212746233113025704 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} f [True] = 1 f _ = 0 haskell-src-exts-1.18.2/tests/examples/QuasiQuoteSplice.hs0000644000000000000000000000036012746233113021737 0ustar0000000000000000{-# LANGUAGE TemplateHaskell, RankNTypes #-} {-# OPTIONS_GHC -F -pgmFtrhsx #-} import Language.Haskell.TH data PageFunction m a = PF main = let a = mkName "a" in runQ [t| forall m. PageFunction m $(conT (mkName "a")) |] >>= print haskell-src-exts-1.18.2/tests/examples/QuasiQuoteSplice.hs.exactprinter.golden0000644000000000000000000000000612746233113025712 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteSplice.hs.parser.golden0000644000000000000000000007121012746233113024503 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 1 1 10 1 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 1 1 1 1 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 2 1 2 1 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 1 5 1 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 1 7 1 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 10 1 10 1 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 10 1 10 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 1 1 1 45 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 1 1 1 13 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 1 29 1 30 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 1 42 1 45 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 1 14 1 29 , srcInfoPoints = [] } "TemplateHaskell" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 1 31 1 41 , srcInfoPoints = [] } "RankNTypes" ] , OptionsPragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 2 1 2 34 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 2 1 2 31 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 2 31 2 34 ] } (Just GHC) "-F -pgmFtrhsx " ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 3 1 3 27 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 3 1 3 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 3 8 3 27 , srcInfoPoints = [] } "Language.Haskell.TH" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 1 5 27 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 23 5 24 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 1 5 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 6 5 22 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 6 5 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 6 5 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 6 5 18 , srcInfoPoints = [] } "PageFunction")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 19 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 19 5 20 , srcInfoPoints = [] } "m"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 21 5 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 21 5 22 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 25 5 27 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 25 5 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 5 25 5 27 , srcInfoPoints = [] } "PF") []) ] Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 1 8 75 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 1 7 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 1 7 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 6 8 75 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 6 7 7 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 8 8 75 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 8 7 11 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 27 7 29 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 12 7 26 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 12 7 12 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 27 7 27 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 12 7 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 12 7 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 12 7 13 , srcInfoPoints = [] } "a")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 14 7 26 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 14 7 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 16 7 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 16 7 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 16 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 16 7 22 , srcInfoPoints = [] } "mkName"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 23 7 26 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 7 23 7 26 , srcInfoPoints = [] } "a" "a")))) Nothing ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 8 8 75 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 8 8 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 8 8 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 8 8 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 8 8 12 , srcInfoPoints = [] } "runQ"))) (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 13 8 65 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 13 8 16 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 63 8 65 ] } (TypeBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 13 8 65 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 13 8 16 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 63 8 65 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 17 8 62 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 17 8 23 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 25 8 26 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 24 8 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 24 8 25 , srcInfoPoints = [] } "m") ]) Nothing (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 27 8 62 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 27 8 41 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 27 8 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 27 8 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 27 8 39 , srcInfoPoints = [] } "PageFunction"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 40 8 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 40 8 41 , srcInfoPoints = [] } "m"))) (TySplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 42 8 62 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 42 8 44 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 61 8 62 ] } (ParenSplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 42 8 62 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 42 8 44 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 61 8 62 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 44 8 61 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 44 8 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 44 8 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 44 8 48 , srcInfoPoints = [] } "conT"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 49 8 61 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 49 8 50 , SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 60 8 61 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 50 8 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 50 8 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 50 8 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 50 8 56 , srcInfoPoints = [] } "mkName"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 57 8 60 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 57 8 60 , srcInfoPoints = [] } "a" "a")))))))))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 66 8 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 66 8 69 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 66 8 69 , srcInfoPoints = [] } ">>="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 70 8 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 70 8 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteSplice.hs" 8 70 8 75 , srcInfoPoints = [] } "print")))))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/QuasiQuoteSplice.hs.prettyparser.golden0000644000000000000000000000000612746233113025746 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteSplice.hs.prettyprinter.golden0000644000000000000000000000037212746233113026143 0ustar0000000000000000{-# LANGUAGE TemplateHaskell, RankNTypes #-} {-# OPTIONS_GHC -F -pgmFtrhsx #-} import Language.Haskell.TH data PageFunction m a = PF main = let a = mkName "a" in runQ [t| forall m . PageFunction m $( conT (mkName "a") ) |] >>= print haskell-src-exts-1.18.2/tests/examples/QuasiQuoteToplevel.hs0000644000000000000000000000031212746233113022307 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} [undefined| this quasiquote is acceptable to ghc's parser. Previously hse would reject this because -XTemplateHaskell is not enabled to allow "expressions" at top-level |] haskell-src-exts-1.18.2/tests/examples/QuasiQuoteToplevel.hs.exactprinter.golden0000644000000000000000000000031312746233113026266 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} [undefined| this quasiquote is acceptable to ghc's parser. Previously hse would reject this because -XTemplateHaskell is not enabled to allow "expressions" at top-level|] haskell-src-exts-1.18.2/tests/examples/QuasiQuoteToplevel.hs.parser.golden0000644000000000000000000000346512746233113025065 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 1 1 1 1 , SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 3 1 3 1 , SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 9 1 9 1 , SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 9 1 9 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 1 1 1 13 , SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 1 14 1 25 , srcInfoPoints = [] } "QuasiQuotes" ] ] [] [ SpliceDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 3 1 8 3 , srcInfoPoints = [] } (QuasiQuote SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteToplevel.hs" 3 1 8 3 , srcInfoPoints = [] } "undefined" "\nthis quasiquote is acceptable to ghc's\nparser. Previously hse would reject this\nbecause -XTemplateHaskell is not enabled\nto allow \"expressions\" at top-level\n") ] , [] ) haskell-src-exts-1.18.2/tests/examples/QuasiQuoteToplevel.hs.prettyparser.golden0000644000000000000000000000000612746233113026321 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteToplevel.hs.prettyprinter.golden0000644000000000000000000000031212746233113026510 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} [undefined| this quasiquote is acceptable to ghc's parser. Previously hse would reject this because -XTemplateHaskell is not enabled to allow "expressions" at top-level |] haskell-src-exts-1.18.2/tests/examples/QuasiQuoteUnit.hs0000644000000000000000000000012412746233113021435 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE TemplateHaskell #-} unNest n = conP '() haskell-src-exts-1.18.2/tests/examples/QuasiQuoteUnit.hs.exactprinter.golden0000644000000000000000000000000612746233113025412 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteUnit.hs.parser.golden0000644000000000000000000001300112746233113024175 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteUnit.hs" 1 1 1 1 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 2 1 2 1 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 1 4 1 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 1 4 1 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 1 4 1 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 6 1 6 1 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteUnit.hs" 1 1 1 13 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 1 14 1 25 , srcInfoPoints = [] } "QuasiQuotes" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 2 1 2 33 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteUnit.hs" 2 1 2 13 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 2 30 2 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 2 14 2 29 , srcInfoPoints = [] } "TemplateHaskell" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 1 4 20 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 1 4 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 1 4 7 , srcInfoPoints = [] } "unNest") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 8 4 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 8 4 9 , srcInfoPoints = [] } "n") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 10 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 10 4 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 12 4 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 12 4 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 12 4 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 12 4 16 , srcInfoPoints = [] } "conP"))) (VarQuote SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 17 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 17 4 18 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 18 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 18 4 19 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 19 4 20 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 18 4 20 , srcInfoPoints = [ SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 18 4 19 , SrcSpan "tests/examples/QuasiQuoteUnit.hs" 4 19 4 20 ] }))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/QuasiQuoteUnit.hs.prettyparser.golden0000644000000000000000000000000612746233113025446 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/QuasiQuoteUnit.hs.prettyprinter.golden0000644000000000000000000000012212746233113025634 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE TemplateHaskell #-} unNest n = conP '() haskell-src-exts-1.18.2/tests/examples/RCategory.hs0000644000000000000000000000214712746233113020403 0ustar0000000000000000{-# LANGUAGE TypeFamilies, ConstraintKinds, MultiParamTypeClasses #-} module Control.RCategory where import qualified Prelude import GHC.Prim infixr 9 . infixr 1 >>>, <<< -- | A class for categories. -- id and (.) must form a monoid. class RCategory cat where type RCategoryCtxt cat a b :: Constraint -- | the identity morphism id :: RCategoryCtxt cat a a => cat a a -- | morphism composition (.) :: (RCategoryCtxt cat b c, RCategoryCtxt cat a b, RCategoryCtxt cat a c) => cat b c -> cat a b -> cat a c {-# RULES "identity/left" forall p . id . p = p "identity/right" forall p . p . id = p #-} instance RCategory (->) where type RCategoryCtxt (->) a a = () id = Prelude.id (.) = (Prelude..) -- | Right-to-left composition (<<<) :: (RCategoryCtxt cat a c, RCategoryCtxt cat a b, RCategoryCtxt cat b c, RCategory cat) => cat b c -> cat a b -> cat a c (<<<) = (.) -- | Left-to-right composition (>>>) :: (RCategoryCtxt cat a c, RCategoryCtxt cat a b, RCategoryCtxt cat b c, RCategory cat) => cat a b -> cat b c -> cat a c f >>> g = g . f haskell-src-exts-1.18.2/tests/examples/RCategory.hs.exactprinter.golden0000644000000000000000000000000612746233113024351 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RCategory.hs.parser.golden0000644000000000000000000031447612746233113023160 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 1 46 1 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 1 1 1 1 , SrcSpan "tests/examples/RCategory.hs" 2 1 2 1 , SrcSpan "tests/examples/RCategory.hs" 2 1 2 1 , SrcSpan "tests/examples/RCategory.hs" 5 1 5 1 , SrcSpan "tests/examples/RCategory.hs" 7 1 7 1 , SrcSpan "tests/examples/RCategory.hs" 9 1 9 1 , SrcSpan "tests/examples/RCategory.hs" 10 1 10 1 , SrcSpan "tests/examples/RCategory.hs" 14 1 14 1 , SrcSpan "tests/examples/RCategory.hs" 25 1 25 1 , SrcSpan "tests/examples/RCategory.hs" 32 1 32 1 , SrcSpan "tests/examples/RCategory.hs" 38 1 38 1 , SrcSpan "tests/examples/RCategory.hs" 40 1 40 1 , SrcSpan "tests/examples/RCategory.hs" 43 1 43 1 , SrcSpan "tests/examples/RCategory.hs" 45 1 45 1 , SrcSpan "tests/examples/RCategory.hs" 46 1 46 1 , SrcSpan "tests/examples/RCategory.hs" 46 1 46 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 2 1 2 31 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 2 1 2 7 , SrcSpan "tests/examples/RCategory.hs" 2 26 2 31 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 2 8 2 25 , srcInfoPoints = [] } "Control.RCategory") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 1 1 70 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 1 1 1 13 , SrcSpan "tests/examples/RCategory.hs" 1 26 1 27 , SrcSpan "tests/examples/RCategory.hs" 1 43 1 44 , SrcSpan "tests/examples/RCategory.hs" 1 67 1 70 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 28 1 43 , srcInfoPoints = [] } "ConstraintKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 1 45 1 66 , srcInfoPoints = [] } "MultiParamTypeClasses" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 5 1 5 25 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 5 1 5 7 , SrcSpan "tests/examples/RCategory.hs" 5 8 5 17 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 5 18 5 25 , srcInfoPoints = [] } "Prelude" , importQualified = True , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 7 1 7 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 7 1 7 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 7 8 7 16 , srcInfoPoints = [] } "GHC.Prim" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 9 1 9 11 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 9 8 9 9 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 9 1 9 7 , srcInfoPoints = [] }) (Just 9) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 9 10 9 11 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 9 10 9 11 , srcInfoPoints = [] } ".") ] , InfixDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 1 10 18 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 10 8 10 9 , SrcSpan "tests/examples/RCategory.hs" 10 13 10 14 ] } (AssocRight SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 1 10 7 , srcInfoPoints = [] }) (Just 1) [ VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 10 10 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 10 10 13 , srcInfoPoints = [] } ">>>") , VarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 15 10 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 10 15 10 18 , srcInfoPoints = [] } "<<<") ] , ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 1 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 14 1 14 6 , SrcSpan "tests/examples/RCategory.hs" 14 21 14 26 , SrcSpan "tests/examples/RCategory.hs" 15 3 15 3 , SrcSpan "tests/examples/RCategory.hs" 18 3 18 3 , SrcSpan "tests/examples/RCategory.hs" 22 3 22 3 , SrcSpan "tests/examples/RCategory.hs" 25 1 25 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 7 14 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 7 14 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 7 14 16 , srcInfoPoints = [] } "RCategory")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 17 14 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 14 17 14 20 , srcInfoPoints = [] } "cat"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 3 15 43 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 15 3 15 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 29 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 27 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 25 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 8 15 21 , srcInfoPoints = [] } "RCategoryCtxt")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 22 15 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 22 15 25 , srcInfoPoints = [] } "cat"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 26 15 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 26 15 27 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 28 15 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 28 15 29 , srcInfoPoints = [] } "b"))) (Just (KindSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 30 15 43 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 15 30 15 32 ] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 33 15 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 33 15 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 15 33 15 43 , srcInfoPoints = [] } "Constraint"))))) Nothing , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 3 19 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 18 6 18 8 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 3 19 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 18 6 18 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 3 18 5 , srcInfoPoints = [] } "id" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 19 16 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 19 8 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 19 6 19 8 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 19 8 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 19 6 19 8 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 18 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 9 18 22 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 23 18 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 23 18 26 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 27 18 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 27 18 28 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 29 18 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 18 29 18 30 , srcInfoPoints = [] } "a") ]))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 9 19 16 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 9 19 14 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 9 19 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 9 19 12 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 13 19 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 13 19 14 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 15 19 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 19 15 19 16 , srcInfoPoints = [] } "a"))))) , ClsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 3 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 22 7 22 9 ] } (TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 3 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 22 7 22 9 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 3 22 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 22 3 22 4 , SrcSpan "tests/examples/RCategory.hs" 22 4 22 5 , SrcSpan "tests/examples/RCategory.hs" 22 5 22 6 ] } "." ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 10 23 39 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 10 23 9 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 22 10 22 11 , SrcSpan "tests/examples/RCategory.hs" 22 32 22 33 , SrcSpan "tests/examples/RCategory.hs" 22 55 22 56 , SrcSpan "tests/examples/RCategory.hs" 22 78 22 79 , SrcSpan "tests/examples/RCategory.hs" 23 7 23 9 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 11 22 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 11 22 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 11 22 24 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 25 22 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 25 22 28 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 29 22 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 29 22 30 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 31 22 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 31 22 32 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 34 22 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 34 22 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 34 22 47 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 48 22 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 48 22 51 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 52 22 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 52 22 53 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 54 22 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 54 22 55 , srcInfoPoints = [] } "b") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 57 22 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 57 22 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 57 22 70 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 71 22 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 71 22 74 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 75 22 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 75 22 76 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 77 22 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 22 77 22 78 , srcInfoPoints = [] } "c") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 23 18 23 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 17 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 15 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 10 23 13 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 14 23 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 14 23 15 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 16 23 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 16 23 17 , srcInfoPoints = [] } "c"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 23 29 23 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 26 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 21 23 24 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 25 23 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 25 23 26 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 27 23 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 27 23 28 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 32 23 39 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 32 23 37 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 32 23 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 32 23 35 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 36 23 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 36 23 37 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 38 23 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 23 38 23 39 , srcInfoPoints = [] } "c"))))))) ]) , RulePragmaDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 25 1 30 5 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 25 1 25 10 , SrcSpan "tests/examples/RCategory.hs" 30 2 30 5 ] } [ Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 26 1 27 27 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 26 1 26 16 , SrcSpan "tests/examples/RCategory.hs" 26 17 26 23 , SrcSpan "tests/examples/RCategory.hs" 26 26 26 27 , SrcSpan "tests/examples/RCategory.hs" 27 24 27 25 ] } "identity/left" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 26 24 26 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 26 24 26 25 , srcInfoPoints = [] } "p") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 17 27 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 17 27 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 17 27 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 17 27 19 , srcInfoPoints = [] } "id"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 20 27 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 20 27 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 20 27 21 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 22 27 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 22 27 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 22 27 23 , srcInfoPoints = [] } "p")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 26 27 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 26 27 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 27 26 27 27 , srcInfoPoints = [] } "p"))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 28 1 29 27 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 28 1 28 17 , SrcSpan "tests/examples/RCategory.hs" 28 25 28 31 , SrcSpan "tests/examples/RCategory.hs" 28 34 28 35 , SrcSpan "tests/examples/RCategory.hs" 29 24 29 25 ] } "identity/right" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 28 32 28 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 28 32 28 33 , srcInfoPoints = [] } "p") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 17 29 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 17 29 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 17 29 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 17 29 18 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 19 29 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 19 29 20 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 19 29 20 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 21 29 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 21 29 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 21 29 23 , srcInfoPoints = [] } "id")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 26 29 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 26 29 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 29 26 29 27 , srcInfoPoints = [] } "p"))) ] , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 1 38 0 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 32 1 32 9 , SrcSpan "tests/examples/RCategory.hs" 32 25 32 30 , SrcSpan "tests/examples/RCategory.hs" 33 3 33 3 , SrcSpan "tests/examples/RCategory.hs" 34 3 34 3 , SrcSpan "tests/examples/RCategory.hs" 35 3 35 3 , SrcSpan "tests/examples/RCategory.hs" 38 1 38 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 10 32 19 , srcInfoPoints = [] } "RCategory"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 20 32 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 32 20 32 21 , SrcSpan "tests/examples/RCategory.hs" 32 21 32 23 , SrcSpan "tests/examples/RCategory.hs" 32 23 32 24 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 20 32 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 32 20 32 21 , SrcSpan "tests/examples/RCategory.hs" 32 21 32 23 , SrcSpan "tests/examples/RCategory.hs" 32 23 32 24 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 32 20 32 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 32 20 32 21 , SrcSpan "tests/examples/RCategory.hs" 32 21 32 23 , SrcSpan "tests/examples/RCategory.hs" 32 23 32 24 ] }))))) (Just [ InsType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 3 33 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 3 33 7 , SrcSpan "tests/examples/RCategory.hs" 33 31 33 32 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 8 33 21 , srcInfoPoints = [] } "RCategoryCtxt"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 22 33 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 22 33 23 , SrcSpan "tests/examples/RCategory.hs" 33 23 33 25 , SrcSpan "tests/examples/RCategory.hs" 33 25 33 26 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 22 33 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 22 33 23 , SrcSpan "tests/examples/RCategory.hs" 33 23 33 25 , SrcSpan "tests/examples/RCategory.hs" 33 25 33 26 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 22 33 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 22 33 23 , SrcSpan "tests/examples/RCategory.hs" 33 23 33 25 , SrcSpan "tests/examples/RCategory.hs" 33 25 33 26 ] })))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 27 33 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 27 33 28 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 29 33 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 29 33 30 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 33 33 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 33 33 34 , SrcSpan "tests/examples/RCategory.hs" 33 34 33 35 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 33 33 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 33 33 34 , SrcSpan "tests/examples/RCategory.hs" 33 34 33 35 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 33 33 33 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 33 33 33 34 , SrcSpan "tests/examples/RCategory.hs" 33 34 33 35 ] }))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 3 34 18 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 3 34 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 3 34 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 3 34 5 , srcInfoPoints = [] } "id")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 6 34 18 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 34 6 34 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 8 34 18 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 8 34 18 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 8 34 18 , srcInfoPoints = [] } "Prelude") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 34 8 34 18 , srcInfoPoints = [] } "id")))) Nothing) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 3 35 20 , srcInfoPoints = [] } (PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 3 35 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 3 35 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 35 3 35 4 , SrcSpan "tests/examples/RCategory.hs" 35 4 35 5 , SrcSpan "tests/examples/RCategory.hs" 35 5 35 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 4 35 5 , srcInfoPoints = [] } ".")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 7 35 20 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 35 7 35 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 9 35 20 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 35 9 35 10 , SrcSpan "tests/examples/RCategory.hs" 35 10 35 19 , SrcSpan "tests/examples/RCategory.hs" 35 19 35 20 ] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 9 35 20 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 35 9 35 10 , SrcSpan "tests/examples/RCategory.hs" 35 10 35 19 , SrcSpan "tests/examples/RCategory.hs" 35 19 35 20 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 10 35 19 , srcInfoPoints = [] } "Prelude") (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 35 10 35 19 , srcInfoPoints = [] } ".")))) Nothing) ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 1 39 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 38 7 38 9 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 1 38 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 38 1 38 2 , SrcSpan "tests/examples/RCategory.hs" 38 2 38 5 , SrcSpan "tests/examples/RCategory.hs" 38 5 38 6 ] } "<<<" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 10 39 39 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 10 39 9 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 38 10 38 11 , SrcSpan "tests/examples/RCategory.hs" 38 32 38 33 , SrcSpan "tests/examples/RCategory.hs" 38 55 38 56 , SrcSpan "tests/examples/RCategory.hs" 38 78 38 79 , SrcSpan "tests/examples/RCategory.hs" 38 93 38 94 , SrcSpan "tests/examples/RCategory.hs" 39 7 39 9 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 11 38 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 11 38 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 11 38 24 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 25 38 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 25 38 28 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 29 38 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 29 38 30 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 31 38 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 31 38 32 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 34 38 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 34 38 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 34 38 47 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 48 38 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 48 38 51 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 52 38 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 52 38 53 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 54 38 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 54 38 55 , srcInfoPoints = [] } "b") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 57 38 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 57 38 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 57 38 70 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 71 38 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 71 38 74 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 75 38 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 75 38 76 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 77 38 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 77 38 78 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 80 38 93 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 80 38 89 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 80 38 89 , srcInfoPoints = [] } "RCategory")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 90 38 93 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 38 90 38 93 , srcInfoPoints = [] } "cat") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 39 18 39 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 17 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 15 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 10 39 13 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 14 39 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 14 39 15 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 16 39 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 16 39 17 , srcInfoPoints = [] } "c"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 39 29 39 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 26 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 21 39 24 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 25 39 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 25 39 26 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 27 39 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 27 39 28 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 32 39 39 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 32 39 37 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 32 39 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 32 39 35 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 36 39 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 36 39 37 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 38 39 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 39 38 39 39 , srcInfoPoints = [] } "c")))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 1 40 12 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 1 40 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 40 1 40 2 , SrcSpan "tests/examples/RCategory.hs" 40 2 40 5 , SrcSpan "tests/examples/RCategory.hs" 40 5 40 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 2 40 5 , srcInfoPoints = [] } "<<<")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 7 40 12 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 40 7 40 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 9 40 12 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 40 9 40 10 , SrcSpan "tests/examples/RCategory.hs" 40 10 40 11 , SrcSpan "tests/examples/RCategory.hs" 40 11 40 12 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 9 40 12 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 40 9 40 10 , SrcSpan "tests/examples/RCategory.hs" 40 10 40 11 , SrcSpan "tests/examples/RCategory.hs" 40 11 40 12 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 40 10 40 11 , srcInfoPoints = [] } ".")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 1 44 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 43 7 43 9 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 1 43 6 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 43 1 43 2 , SrcSpan "tests/examples/RCategory.hs" 43 2 43 5 , SrcSpan "tests/examples/RCategory.hs" 43 5 43 6 ] } ">>>" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 10 44 39 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 10 44 9 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 43 10 43 11 , SrcSpan "tests/examples/RCategory.hs" 43 32 43 33 , SrcSpan "tests/examples/RCategory.hs" 43 55 43 56 , SrcSpan "tests/examples/RCategory.hs" 43 78 43 79 , SrcSpan "tests/examples/RCategory.hs" 43 93 43 94 , SrcSpan "tests/examples/RCategory.hs" 44 7 44 9 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 11 43 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 11 43 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 11 43 24 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 25 43 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 25 43 28 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 29 43 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 29 43 30 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 31 43 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 31 43 32 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 34 43 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 34 43 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 34 43 47 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 48 43 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 48 43 51 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 52 43 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 52 43 53 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 54 43 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 54 43 55 , srcInfoPoints = [] } "b") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 57 43 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 57 43 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 57 43 70 , srcInfoPoints = [] } "RCategoryCtxt")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 71 43 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 71 43 74 , srcInfoPoints = [] } "cat") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 75 43 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 75 43 76 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 77 43 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 77 43 78 , srcInfoPoints = [] } "c") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 80 43 93 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 80 43 89 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 80 43 89 , srcInfoPoints = [] } "RCategory")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 90 43 93 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 43 90 43 93 , srcInfoPoints = [] } "cat") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 44 18 44 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 17 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 15 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 10 44 13 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 14 44 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 14 44 15 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 16 44 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 16 44 17 , srcInfoPoints = [] } "b"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 39 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 44 29 44 31 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 26 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 21 44 24 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 25 44 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 25 44 26 , srcInfoPoints = [] } "b"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 27 44 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 27 44 28 , srcInfoPoints = [] } "c"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 32 44 39 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 32 44 37 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 32 44 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 32 44 35 , srcInfoPoints = [] } "cat")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 36 44 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 36 44 37 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 38 44 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 44 38 44 39 , srcInfoPoints = [] } "c")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 1 45 16 , srcInfoPoints = [] } [ InfixMatch SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 1 45 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 1 45 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 1 45 2 , srcInfoPoints = [] } "f")) (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 3 45 6 , srcInfoPoints = [] } ">>>") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 7 45 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 7 45 8 , srcInfoPoints = [] } "g") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 9 45 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory.hs" 45 9 45 10 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 11 45 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 11 45 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 11 45 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 11 45 12 , srcInfoPoints = [] } "g"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 13 45 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 13 45 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 13 45 14 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 15 45 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 15 45 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory.hs" 45 15 45 16 , srcInfoPoints = [] } "f"))))) Nothing ] ] , [ Comment False (SrcSpan "tests/examples/RCategory.hs" 12 1 12 29) " | A class for categories." , Comment False (SrcSpan "tests/examples/RCategory.hs" 13 1 13 36) " id and (.) must form a monoid." , Comment False (SrcSpan "tests/examples/RCategory.hs" 17 3 17 29) " | the identity morphism" , Comment False (SrcSpan "tests/examples/RCategory.hs" 21 3 21 28) " | morphism composition" , Comment False (SrcSpan "tests/examples/RCategory.hs" 37 1 37 31) " | Right-to-left composition" , Comment False (SrcSpan "tests/examples/RCategory.hs" 42 1 42 31) " | Left-to-right composition" ] ) haskell-src-exts-1.18.2/tests/examples/RCategory.hs.prettyparser.golden0000644000000000000000000000000612746233113024405 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RCategory.hs.prettyprinter.golden0000644000000000000000000000200212746233113024572 0ustar0000000000000000{-# LANGUAGE TypeFamilies, ConstraintKinds, MultiParamTypeClasses #-} module Control.RCategory where import qualified Prelude import GHC.Prim infixr 9 . infixr 1 >>>, <<< class RCategory cat where type RCategoryCtxt cat a b :: Constraint id :: RCategoryCtxt cat a a => cat a a (.) :: (RCategoryCtxt cat b c, RCategoryCtxt cat a b, RCategoryCtxt cat a c) => cat b c -> cat a b -> cat a c {-# RULES "identity/left" forall p . id . p = p "identity/right" forall p . p . id = p #-} instance RCategory (->) where type RCategoryCtxt (->) a a = () id = Prelude.id (.) = (Prelude..) (<<<) :: (RCategoryCtxt cat a c, RCategoryCtxt cat a b, RCategoryCtxt cat b c, RCategory cat) => cat b c -> cat a b -> cat a c (<<<) = (.) (>>>) :: (RCategoryCtxt cat a c, RCategoryCtxt cat a b, RCategoryCtxt cat b c, RCategory cat) => cat a b -> cat b c -> cat a c f >>> g = g . f haskell-src-exts-1.18.2/tests/examples/RCategory2.hs0000644000000000000000000000020612746233113020457 0ustar0000000000000000{-# LANGUAGE TypeFamilies, ConstraintKinds #-} import GHC.Prim class RCategory cat where type RCategoryCtxt cat a b :: Constraint haskell-src-exts-1.18.2/tests/examples/RCategory2.hs.exactprinter.golden0000644000000000000000000000000612746233113024433 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RCategory2.hs.parser.golden0000644000000000000000000001750612746233113023234 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory2.hs" 1 1 1 1 , SrcSpan "tests/examples/RCategory2.hs" 3 1 3 1 , SrcSpan "tests/examples/RCategory2.hs" 3 1 3 1 , SrcSpan "tests/examples/RCategory2.hs" 3 1 3 1 , SrcSpan "tests/examples/RCategory2.hs" 5 1 5 1 , SrcSpan "tests/examples/RCategory2.hs" 7 1 7 1 , SrcSpan "tests/examples/RCategory2.hs" 7 1 7 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 1 1 1 47 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory2.hs" 1 1 1 13 , SrcSpan "tests/examples/RCategory2.hs" 1 26 1 27 , SrcSpan "tests/examples/RCategory2.hs" 1 44 1 47 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 1 28 1 43 , srcInfoPoints = [] } "ConstraintKinds" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 3 1 3 16 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory2.hs" 3 1 3 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 3 8 3 16 , srcInfoPoints = [] } "GHC.Prim" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 5 1 6 43 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory2.hs" 5 1 5 6 , SrcSpan "tests/examples/RCategory2.hs" 5 21 5 26 , SrcSpan "tests/examples/RCategory2.hs" 6 3 6 3 , SrcSpan "tests/examples/RCategory2.hs" 7 1 7 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 5 7 5 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 5 7 5 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 5 7 5 16 , srcInfoPoints = [] } "RCategory")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 5 17 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 5 17 5 20 , srcInfoPoints = [] } "cat"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 3 6 43 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory2.hs" 6 3 6 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 8 6 29 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 8 6 27 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 8 6 25 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 8 6 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 8 6 21 , srcInfoPoints = [] } "RCategoryCtxt")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 22 6 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 22 6 25 , srcInfoPoints = [] } "cat"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 26 6 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 26 6 27 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 28 6 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 28 6 29 , srcInfoPoints = [] } "b"))) (Just (KindSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 30 6 43 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory2.hs" 6 30 6 32 ] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 33 6 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 33 6 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory2.hs" 6 33 6 43 , srcInfoPoints = [] } "Constraint"))))) Nothing ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/RCategory2.hs.prettyparser.golden0000644000000000000000000000000612746233113024467 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RCategory2.hs.prettyprinter.golden0000644000000000000000000000021312746233113024656 0ustar0000000000000000{-# LANGUAGE TypeFamilies, ConstraintKinds #-} import GHC.Prim class RCategory cat where type RCategoryCtxt cat a b :: Constraint haskell-src-exts-1.18.2/tests/examples/RCategory3.hs0000644000000000000000000000016212746233113020461 0ustar0000000000000000{-# LANGUAGE TypeFamilies, ConstraintKinds #-} instance RCategory (->) where type RCategoryCtxt (->) a a = () haskell-src-exts-1.18.2/tests/examples/RCategory3.hs.exactprinter.golden0000644000000000000000000000000612746233113024434 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RCategory3.hs.parser.golden0000644000000000000000000002422512746233113023231 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 1 1 1 1 , SrcSpan "tests/examples/RCategory3.hs" 3 1 3 1 , SrcSpan "tests/examples/RCategory3.hs" 3 1 3 1 , SrcSpan "tests/examples/RCategory3.hs" 3 1 3 1 , SrcSpan "tests/examples/RCategory3.hs" 6 1 6 1 , SrcSpan "tests/examples/RCategory3.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 1 1 1 47 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 1 1 1 13 , SrcSpan "tests/examples/RCategory3.hs" 1 26 1 27 , SrcSpan "tests/examples/RCategory3.hs" 1 44 1 47 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 1 28 1 43 , srcInfoPoints = [] } "ConstraintKinds" ] ] [] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 1 6 0 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 3 1 3 9 , SrcSpan "tests/examples/RCategory3.hs" 3 25 3 30 , SrcSpan "tests/examples/RCategory3.hs" 4 3 4 3 , SrcSpan "tests/examples/RCategory3.hs" 6 1 6 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 10 3 24 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 10 3 24 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 10 3 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 10 3 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 10 3 19 , srcInfoPoints = [] } "RCategory"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 20 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 3 20 3 21 , SrcSpan "tests/examples/RCategory3.hs" 3 21 3 23 , SrcSpan "tests/examples/RCategory3.hs" 3 23 3 24 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 20 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 3 20 3 21 , SrcSpan "tests/examples/RCategory3.hs" 3 21 3 23 , SrcSpan "tests/examples/RCategory3.hs" 3 23 3 24 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 3 20 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 3 20 3 21 , SrcSpan "tests/examples/RCategory3.hs" 3 21 3 23 , SrcSpan "tests/examples/RCategory3.hs" 3 23 3 24 ] }))))) (Just [ InsType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 3 4 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 4 3 4 7 , SrcSpan "tests/examples/RCategory3.hs" 4 31 4 32 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 8 4 30 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 8 4 28 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 8 4 26 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 8 4 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 8 4 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 8 4 21 , srcInfoPoints = [] } "RCategoryCtxt"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 22 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 4 22 4 23 , SrcSpan "tests/examples/RCategory3.hs" 4 23 4 25 , SrcSpan "tests/examples/RCategory3.hs" 4 25 4 26 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 22 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 4 22 4 23 , SrcSpan "tests/examples/RCategory3.hs" 4 23 4 25 , SrcSpan "tests/examples/RCategory3.hs" 4 25 4 26 ] } (FunCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 22 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 4 22 4 23 , SrcSpan "tests/examples/RCategory3.hs" 4 23 4 25 , SrcSpan "tests/examples/RCategory3.hs" 4 25 4 26 ] })))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 27 4 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 27 4 28 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 29 4 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 29 4 30 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 33 4 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 4 33 4 34 , SrcSpan "tests/examples/RCategory3.hs" 4 34 4 35 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 33 4 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 4 33 4 34 , SrcSpan "tests/examples/RCategory3.hs" 4 34 4 35 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RCategory3.hs" 4 33 4 35 , srcInfoPoints = [ SrcSpan "tests/examples/RCategory3.hs" 4 33 4 34 , SrcSpan "tests/examples/RCategory3.hs" 4 34 4 35 ] }))) ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/RCategory3.hs.prettyparser.golden0000644000000000000000000000000612746233113024470 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RCategory3.hs.prettyprinter.golden0000644000000000000000000000016712746233113024667 0ustar0000000000000000{-# LANGUAGE TypeFamilies, ConstraintKinds #-} instance RCategory (->) where type RCategoryCtxt (->) a a = () haskell-src-exts-1.18.2/tests/examples/ReadP.hs0000644000000000000000000000012212746233113017466 0ustar0000000000000000{-# LANGUAGE TypeOperators #-} newtype ReadP a = R (forall b . (a -> P b) -> P b) haskell-src-exts-1.18.2/tests/examples/ReadP.hs.exactprinter.golden0000644000000000000000000000000612746233113023445 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ReadP.hs.parser.golden0000644000000000000000000002570012746233113022241 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 1 1 1 1 , SrcSpan "tests/examples/ReadP.hs" 2 1 2 1 , SrcSpan "tests/examples/ReadP.hs" 2 1 2 1 , SrcSpan "tests/examples/ReadP.hs" 2 1 2 1 , SrcSpan "tests/examples/ReadP.hs" 3 1 3 1 , SrcSpan "tests/examples/ReadP.hs" 3 1 3 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 1 1 1 13 , SrcSpan "tests/examples/ReadP.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 1 14 1 27 , srcInfoPoints = [] } "TypeOperators" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 1 2 51 , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 2 17 2 18 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 1 2 8 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 9 2 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 9 2 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 9 2 14 , srcInfoPoints = [] } "ReadP")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 15 2 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 15 2 16 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 19 2 51 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 19 2 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 19 2 20 , srcInfoPoints = [] } "R") [ TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 21 2 51 , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 2 21 2 22 , SrcSpan "tests/examples/ReadP.hs" 2 50 2 51 ] } (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 22 2 50 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 22 2 30 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 22 2 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 22 2 28 , srcInfoPoints = [] } "forall")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 29 2 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 29 2 30 , srcInfoPoints = [] } "b"))) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 31 2 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 31 2 32 , srcInfoPoints = [] } ".")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 33 2 50 , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 2 44 2 46 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 33 2 43 , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 2 33 2 34 , SrcSpan "tests/examples/ReadP.hs" 2 42 2 43 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 34 2 42 , srcInfoPoints = [ SrcSpan "tests/examples/ReadP.hs" 2 36 2 38 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 34 2 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 34 2 35 , srcInfoPoints = [] } "a")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 39 2 42 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 39 2 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 39 2 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 39 2 40 , srcInfoPoints = [] } "P"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 41 2 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 41 2 42 , srcInfoPoints = [] } "b"))))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 47 2 50 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 47 2 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 47 2 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 47 2 48 , srcInfoPoints = [] } "P"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 49 2 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ReadP.hs" 2 49 2 50 , srcInfoPoints = [] } "b"))))) ]) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/ReadP.hs.prettyparser.golden0000644000000000000000000000000612746233113023501 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ReadP.hs.prettyprinter.golden0000644000000000000000000000012312746233113023670 0ustar0000000000000000{-# LANGUAGE TypeOperators #-} newtype ReadP a = R (forall b . (a -> P b) -> P b) haskell-src-exts-1.18.2/tests/examples/RealGHC.lhs0000644000000000000000000010243412746233113020065 0ustar0000000000000000% % (c) The GRASP/AQUA Project, Glasgow University, 1992-1998 % \section[CoreRules]{Transformation rules} \begin{code} {-# OPTIONS -w #-} {-# LANGUAGE PatternGuards #-} -- The above warning supression flag is a temporary kludge. -- While working on this module you are encouraged to remove it and fix -- any warnings in the module. See -- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings -- for details -- | Functions for collecting together and applying rewrite rules to a module. -- The 'CoreRule' datatype itself is declared elsewhere. module Rules ( -- * RuleBase RuleBase, -- ** Constructing emptyRuleBase, mkRuleBase, extendRuleBaseList, unionRuleBase, pprRuleBase, -- ** Checking rule applications ruleCheckProgram, -- ** Manipulating 'SpecInfo' rules mkSpecInfo, extendSpecInfo, addSpecInfo, addIdSpecialisations, -- * Misc. CoreRule helpers rulesOfBinds, getRules, pprRulesForUser, lookupRule, mkLocalRule, roughTopNames ) where -- #include "HsVersions.h" import CoreSyn -- All of it import OccurAnal ( occurAnalyseExpr ) import CoreFVs ( exprFreeVars, exprsFreeVars, bindFreeVars, rulesFreeVars ) import CoreUtils ( tcEqExprX, exprType ) import PprCore ( pprRules ) import Type ( Type, TvSubstEnv ) import Coercion ( coercionKind ) import TcType ( tcSplitTyConApp_maybe ) import CoreTidy ( tidyRules ) import Id import IdInfo ( SpecInfo( SpecInfo ) ) import Var ( Var ) import VarEnv import VarSet import Name ( Name, NamedThing(..) ) import NameEnv import Unify ( ruleMatchTyX, MatchEnv(..) ) import BasicTypes ( Activation ) import StaticFlags ( opt_PprStyle_Debug ) import Outputable import FastString import Maybes import OrdList import Bag import Util import Data.List \end{code} %************************************************************************ %* * \subsection[specialisation-IdInfo]{Specialisation info about an @Id@} %* * %************************************************************************ A @CoreRule@ holds details of one rule for an @Id@, which includes its specialisations. For example, if a rule for @f@ contains the mapping: \begin{verbatim} forall a b d. [Type (List a), Type b, Var d] ===> f' a b \end{verbatim} then when we find an application of f to matching types, we simply replace it by the matching RHS: \begin{verbatim} f (List Int) Bool dict ===> f' Int Bool \end{verbatim} All the stuff about how many dictionaries to discard, and what types to apply the specialised function to, are handled by the fact that the Rule contains a template for the result of the specialisation. There is one more exciting case, which is dealt with in exactly the same way. If the specialised value is unboxed then it is lifted at its definition site and unlifted at its uses. For example: pi :: forall a. Num a => a might have a specialisation [Int#] ===> (case pi' of Lift pi# -> pi#) where pi' :: Lift Int# is the specialised version of pi. \begin{code} mkLocalRule :: RuleName -> Activation -> Name -> [CoreBndr] -> [CoreExpr] -> CoreExpr -> CoreRule -- ^ Used to make 'CoreRule' for an 'Id' defined in the module being -- compiled. See also 'CoreSyn.CoreRule' mkLocalRule name act fn bndrs args rhs = Rule { ru_name = name, ru_fn = fn, ru_act = act, ru_bndrs = bndrs, ru_args = args, ru_rhs = rhs, ru_rough = roughTopNames args, ru_local = True } -------------- roughTopNames :: [CoreExpr] -> [Maybe Name] -- ^ Find the \"top\" free names of several expressions. -- Such names are either: -- -- 1. The function finally being applied to in an application chain -- (if that name is a GlobalId: see "Var#globalvslocal"), or -- -- 2. The 'TyCon' if the expression is a 'Type' -- -- This is used for the fast-match-check for rules; -- if the top names don't match, the rest can't roughTopNames args = map roughTopName args roughTopName :: CoreExpr -> Maybe Name roughTopName (Type ty) = case tcSplitTyConApp_maybe ty of Just (tc,_) -> Just (getName tc) Nothing -> Nothing roughTopName (App f a) = roughTopName f roughTopName (Var f) | isGlobalId f = Just (idName f) | otherwise = Nothing roughTopName other = Nothing ruleCantMatch :: [Maybe Name] -> [Maybe Name] -> Bool -- ^ @ruleCantMatch tpl actual@ returns True only if @actual@ -- definitely can't match @tpl@ by instantiating @tpl@. -- It's only a one-way match; unlike instance matching we -- don't consider unification. -- -- Notice that [_$_] -- @ruleCantMatch [Nothing] [Just n2] = False@ -- Reason: a template variable can be instantiated by a constant -- Also: -- @ruleCantMatch [Just n1] [Nothing] = False@ -- Reason: a local variable @v@ in the actuals might [_$_] ruleCantMatch (Just n1 : ts) (Just n2 : as) = n1 /= n2 || ruleCantMatch ts as ruleCantMatch (t : ts) (a : as) = ruleCantMatch ts as ruleCantMatch ts as = False \end{code} \begin{code} pprRulesForUser :: [CoreRule] -> SDoc -- (a) tidy the rules -- (b) sort them into order based on the rule name -- (c) suppress uniques (unless -dppr-debug is on) -- This combination makes the output stable so we can use in testing -- It's here rather than in PprCore because it calls tidyRules pprRulesForUser rules = withPprStyle defaultUserStyle $ pprRules $ sortLe le_rule $ tidyRules emptyTidyEnv rules where le_rule r1 r2 = ru_name r1 <= ru_name r2 \end{code} %************************************************************************ %* * SpecInfo: the rules in an IdInfo %* * %************************************************************************ \begin{code} -- | Make a 'SpecInfo' containing a number of 'CoreRule's, suitable -- for putting into an 'IdInfo' mkSpecInfo :: [CoreRule] -> SpecInfo mkSpecInfo rules = SpecInfo rules (rulesFreeVars rules) extendSpecInfo :: SpecInfo -> [CoreRule] -> SpecInfo extendSpecInfo (SpecInfo rs1 fvs1) rs2 = SpecInfo (rs2 ++ rs1) (rulesFreeVars rs2 `unionVarSet` fvs1) addSpecInfo :: SpecInfo -> SpecInfo -> SpecInfo addSpecInfo (SpecInfo rs1 fvs1) (SpecInfo rs2 fvs2) = SpecInfo (rs1 ++ rs2) (fvs1 `unionVarSet` fvs2) addIdSpecialisations :: Id -> [CoreRule] -> Id addIdSpecialisations id [] = id addIdSpecialisations id rules = setIdSpecialisation id $ extendSpecInfo (idSpecialisation id) rules -- | Gather all the rules for locally bound identifiers from the supplied bindings rulesOfBinds :: [CoreBind] -> [CoreRule] rulesOfBinds binds = concatMap (concatMap idCoreRules . bindersOf) binds getRules :: RuleBase -> Id -> [CoreRule] -- The rules for an Id come from two places: -- (a) the ones it is born with (idCoreRules fn) -- (b) rules added in subsequent modules (extra_rules) -- PrimOps, for example, are born with a bunch of rules under (a) getRules rule_base fn | isLocalId fn = idCoreRules fn | otherwise = WARN( not (isPrimOpId fn) && notNull (idCoreRules fn), ppr fn <+> ppr (idCoreRules fn) ) idCoreRules fn ++ (lookupNameEnv rule_base (idName fn) `orElse` []) -- Only PrimOpIds have rules inside themselves, and perhaps more besides \end{code} %************************************************************************ %* * RuleBase %* * %************************************************************************ \begin{code} -- | Gathers a collection of 'CoreRule's. Maps (the name of) an 'Id' to its rules type RuleBase = NameEnv [CoreRule] -- The rules are are unordered; -- we sort out any overlaps on lookup emptyRuleBase = emptyNameEnv mkRuleBase :: [CoreRule] -> RuleBase mkRuleBase rules = extendRuleBaseList emptyRuleBase rules extendRuleBaseList :: RuleBase -> [CoreRule] -> RuleBase extendRuleBaseList rule_base new_guys = foldl extendRuleBase rule_base new_guys unionRuleBase :: RuleBase -> RuleBase -> RuleBase unionRuleBase rb1 rb2 = plusNameEnv_C (++) rb1 rb2 extendRuleBase :: RuleBase -> CoreRule -> RuleBase extendRuleBase rule_base rule = extendNameEnv_Acc (:) singleton rule_base (ruleIdName rule) rule pprRuleBase :: RuleBase -> SDoc pprRuleBase rules = vcat [ pprRules (tidyRules emptyTidyEnv rs) | rs <- nameEnvElts rules ] \end{code} %************************************************************************ %* * \subsection{Matching} %* * %************************************************************************ Note [Extra args in rule matching] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ If we find a matching rule, we return (Just (rule, rhs)), but the rule firing has only consumed as many of the input args as the ruleArity says. It's up to the caller to keep track of any left-over args. E.g. if you call lookupRule ... f [e1, e2, e3] and it returns Just (r, rhs), where r has ruleArity 2 then the real rewrite is f e1 e2 e3 ==> rhs e3 You might think it'd be cleaner for lookupRule to deal with the leftover arguments, by applying 'rhs' to them, but the main call in the Simplifier works better as it is. Reason: the 'args' passed to lookupRule are the result of a lazy substitution \begin{code} -- | The main rule matching function. Attempts to apply all (active) -- supplied rules to this instance of an application in a given -- context, returning the rule applied and the resulting expression if -- successful. lookupRule :: (Activation -> Bool) -> InScopeSet -> Id -> [CoreExpr] -> [CoreRule] -> Maybe (CoreRule, CoreExpr) -- See Note [Extra args in rule matching] -- See comments on matchRule lookupRule is_active in_scope fn args rules = -- pprTrace "matchRules" (ppr fn <+> ppr rules) $ case go [] rules of [] -> Nothing (m:ms) -> Just (findBest (fn,args) m ms) where rough_args = map roughTopName args go :: [(CoreRule,CoreExpr)] -> [CoreRule] -> [(CoreRule,CoreExpr)] go ms [] = ms go ms (r:rs) = case (matchRule is_active in_scope args rough_args r) of Just e -> go ((r,e):ms) rs Nothing -> -- pprTrace "match failed" (ppr r $$ ppr args $$ -- ppr [(arg_id, unfoldingTemplate unf) | Var arg_id <- args, let unf = idUnfolding arg_id, isCheapUnfolding unf] ) go ms rs findBest :: (Id, [CoreExpr]) -> (CoreRule,CoreExpr) -> [(CoreRule,CoreExpr)] -> (CoreRule,CoreExpr) -- All these pairs matched the expression -- Return the pair the the most specific rule -- The (fn,args) is just for overlap reporting findBest target (rule,ans) [] = (rule,ans) findBest target (rule1,ans1) ((rule2,ans2):prs) | rule1 `isMoreSpecific` rule2 = findBest target (rule1,ans1) prs | rule2 `isMoreSpecific` rule1 = findBest target (rule2,ans2) prs | debugIsOn = let pp_rule rule | opt_PprStyle_Debug = ppr rule | otherwise = doubleQuotes (ftext (ru_name rule)) in pprTrace "Rules.findBest: rule overlap (Rule 1 wins)" (vcat [if opt_PprStyle_Debug then ptext (sLit "Expression to match:") <+> ppr fn <+> sep (map ppr args) else empty, ptext (sLit "Rule 1:") <+> pp_rule rule1, ptext (sLit "Rule 2:") <+> pp_rule rule2]) $ findBest target (rule1,ans1) prs | otherwise = findBest target (rule1,ans1) prs where (fn,args) = target isMoreSpecific :: CoreRule -> CoreRule -> Bool isMoreSpecific (BuiltinRule {}) r2 = True isMoreSpecific r1 (BuiltinRule {}) = False isMoreSpecific (Rule { ru_bndrs = bndrs1, ru_args = args1 }) (Rule { ru_bndrs = bndrs2, ru_args = args2 }) = isJust (matchN in_scope bndrs2 args2 args1) where in_scope = mkInScopeSet (mkVarSet bndrs1) -- Actually we should probably include the free vars -- of rule1's args, but I can't be bothered noBlackList :: Activation -> Bool noBlackList act = False -- Nothing is black listed matchRule :: (Activation -> Bool) -> InScopeSet -> [CoreExpr] -> [Maybe Name] -> CoreRule -> Maybe CoreExpr -- If (matchRule rule args) returns Just (name,rhs) -- then (f args) matches the rule, and the corresponding -- rewritten RHS is rhs -- -- The bndrs and rhs is occurrence-analysed -- -- Example -- -- The rule -- forall f g x. map f (map g x) ==> map (f . g) x -- is stored -- CoreRule "map/map" -- [f,g,x] -- tpl_vars -- [f,map g x] -- tpl_args -- map (f.g) x) -- rhs -- -- Then the call: matchRule the_rule [e1,map e2 e3] -- = Just ("map/map", (\f,g,x -> rhs) e1 e2 e3) -- -- Any 'surplus' arguments in the input are simply put on the end -- of the output. matchRule is_active in_scope args rough_args (BuiltinRule { ru_name = name, ru_try = match_fn }) = case match_fn args of Just expr -> Just expr Nothing -> Nothing matchRule is_active in_scope args rough_args (Rule { ru_name = rn, ru_act = act, ru_rough = tpl_tops, ru_bndrs = tpl_vars, ru_args = tpl_args, ru_rhs = rhs }) | not (is_active act) = Nothing | ruleCantMatch tpl_tops rough_args = Nothing | otherwise = case matchN in_scope tpl_vars tpl_args args of Nothing -> Nothing Just (binds, tpl_vals) -> Just (mkLets binds $ rule_fn `mkApps` tpl_vals) where rule_fn = occurAnalyseExpr (mkLams tpl_vars rhs) -- We could do this when putting things into the rulebase, I guess \end{code} \begin{code} -- For a given match template and context, find bindings to wrap around -- the entire result and what should be substituted for each template variable. -- Fail if there are two few actual arguments from the target to match the template matchN :: InScopeSet -- ^ In-scope variables -> [Var] -- ^ Match template type variables -> [CoreExpr] -- ^ Match template -> [CoreExpr] -- ^ Target; can have more elements than the template -> Maybe ([CoreBind], [CoreExpr]) matchN in_scope tmpl_vars tmpl_es target_es = do { (tv_subst, id_subst, binds) <- go init_menv emptySubstEnv tmpl_es target_es ; return (fromOL binds, map (lookup_tmpl tv_subst id_subst) tmpl_vars') } where (init_rn_env, tmpl_vars') = mapAccumL rnBndrL (mkRnEnv2 in_scope) tmpl_vars -- See Note [Template binders] init_menv = ME { me_tmpls = mkVarSet tmpl_vars', me_env = init_rn_env } go menv subst [] es = Just subst go menv subst ts [] = Nothing -- Fail if too few actual args go menv subst (t:ts) (e:es) = do { subst1 <- match menv subst t e ; go menv subst1 ts es } lookup_tmpl :: TvSubstEnv -> IdSubstEnv -> Var -> CoreExpr lookup_tmpl tv_subst id_subst tmpl_var' | isTyVar tmpl_var' = case lookupVarEnv tv_subst tmpl_var' of Just ty -> Type ty Nothing -> unbound tmpl_var' | otherwise = case lookupVarEnv id_subst tmpl_var' of Just e -> e other -> unbound tmpl_var' unbound var = pprPanic "Template variable unbound in rewrite rule" (ppr var $$ ppr tmpl_vars $$ ppr tmpl_vars' $$ ppr tmpl_es $$ ppr target_es) \end{code} Note [Template binders] ~~~~~~~~~~~~~~~~~~~~~~~ Consider the following match: Template: forall x. f x Target: f (x+1) This should succeed, because the template variable 'x' has nothing to do with the 'x' in the target. On reflection, this case probably does just work, but this might not Template: forall x. f (\x.x) Target: f (\y.y) Here we want to clone when we find the \x, but to know that x must be in scope To achive this, we use rnBndrL to rename the template variables if necessary; the renamed ones are the tmpl_vars' --------------------------------------------- The inner workings of matching --------------------------------------------- \begin{code} -- These two definitions are not the same as in Subst, -- but they simple and direct, and purely local to this module -- -- * The domain of the TvSubstEnv and IdSubstEnv are the template -- variables passed into the match. -- -- * The (OrdList CoreBind) in a SubstEnv are the bindings floated out -- from nested matches; see the Let case of match, below -- type SubstEnv = (TvSubstEnv, IdSubstEnv, OrdList CoreBind) type IdSubstEnv = IdEnv CoreExpr emptySubstEnv :: SubstEnv emptySubstEnv = (emptyVarEnv, emptyVarEnv, nilOL) -- At one stage I tried to match even if there are more -- template args than real args. -- I now think this is probably a bad idea. -- Should the template (map f xs) match (map g)? I think not. -- For a start, in general eta expansion wastes work. -- SLPJ July 99 match :: MatchEnv -> SubstEnv -> CoreExpr -- Template -> CoreExpr -- Target -> Maybe SubstEnv -- See the notes with Unify.match, which matches types -- Everything is very similar for terms -- Interesting examples: -- Consider matching -- \x->f against \f->f -- When we meet the lambdas we must remember to rename f to f' in the -- second expresion. The RnEnv2 does that. -- -- Consider matching -- forall a. \b->b against \a->3 -- We must rename the \a. Otherwise when we meet the lambdas we -- might substitute [a/b] in the template, and then erroneously -- succeed in matching what looks like the template variable 'a' against 3. -- The Var case follows closely what happens in Unify.match match menv subst (Var v1) e2 | Just subst <- match_var menv subst v1 e2 = Just subst match menv subst e1 (Note n e2) = match menv subst e1 e2 -- Note [Notes in RULE matching] -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- Look through Notes. In particular, we don't want to -- be confused by InlineMe notes. Maybe we should be more -- careful about profiling notes, but for now I'm just -- riding roughshod over them. --- See Note [Notes in call patterns] in SpecConstr -- Here is another important rule: if the term being matched is a -- variable, we expand it so long as its unfolding is a WHNF -- (Its occurrence information is not necessarily up to date, -- so we don't use it.) match menv subst e1 (Var v2) | isCheapUnfolding unfolding = match menv subst e1 (unfoldingTemplate unfolding) where rn_env = me_env menv unfolding = idUnfolding (lookupRnInScope rn_env (rnOccR rn_env v2)) -- Notice that we look up v2 in the in-scope set -- See Note [Lookup in-scope] -- Remember to apply any renaming first (hence rnOccR) -- Note [Matching lets] -- ~~~~~~~~~~~~~~~~~~~~ -- Matching a let-expression. Consider -- RULE forall x. f (g x) = -- and target expression -- f (let { w=R } in g E)) -- Then we'd like the rule to match, to generate -- let { w=R } in (\x. ) E -- In effect, we want to float the let-binding outward, to enable -- the match to happen. This is the WHOLE REASON for accumulating -- bindings in the SubstEnv -- -- We can only do this if -- (a) Widening the scope of w does not capture any variables -- We use a conservative test: w is not already in scope -- If not, we clone the binders, and substitute -- (b) The free variables of R are not bound by the part of the -- target expression outside the let binding; e.g. -- f (\v. let w = v+1 in g E) -- Here we obviously cannot float the let-binding for w. -- -- You may think rule (a) would never apply, because rule matching is -- mostly invoked from the simplifier, when we have just run substExpr -- over the argument, so there will be no shadowing anyway. -- The fly in the ointment is that the forall'd variables of the -- RULE itself are considered in scope. -- -- I though of various cheapo ways to solve this tiresome problem, -- but ended up doing the straightforward thing, which is to -- clone the binders if they are in scope. It's tiresome, and -- potentially inefficient, because of the calls to substExpr, -- but I don't think it'll happen much in pracice. {- Cases to think about (let x=y+1 in \x. (x,x)) --> let x=y+1 in (\x1. (x1,x1)) (\x. let x = y+1 in (x,x)) --> let x1 = y+1 in (\x. (x1,x1) (let x=y+1 in (x,x), let x=y-1 in (x,x)) --> let x=y+1 in let x1=y-1 in ((x,x),(x1,x1)) Watch out! (let x=y+1 in let z=x+1 in (z,z) --> matches (p,p) but watch out that the use of x on z's rhs is OK! I'm removing the cloning because that makes the above case fail, because the inner let looks as if it has locally-bound vars -} match menv subst@(tv_subst, id_subst, binds) e1 (Let bind e2) | all freshly_bound bndrs, not (any locally_bound bind_fvs) = match (menv { me_env = rn_env' }) (tv_subst, id_subst, binds `snocOL` bind') e1 e2' where rn_env = me_env menv bndrs = bindersOf bind bind_fvs = varSetElems (bindFreeVars bind) locally_bound x = inRnEnvR rn_env x freshly_bound x = not (x `rnInScope` rn_env) bind' = bind e2' = e2 rn_env' = extendRnInScopeList rn_env bndrs {- (rn_env', bndrs') = mapAccumL rnBndrR rn_env bndrs s_prs = [(bndr, Var bndr') | (bndr,bndr') <- zip bndrs bndrs', bndr /= bndr'] subst = mkSubst (rnInScopeSet rn_env) emptyVarEnv (mkVarEnv s_prs) (bind', e2') | null s_prs = (bind, e2) | otherwise = (s_bind, substExpr subst e2) s_bind = case bind of NonRec {} -> NonRec (head bndrs') (head rhss) Rec {} -> Rec (bndrs' `zip` map (substExpr subst) rhss) -} match menv subst (Lit lit1) (Lit lit2) | lit1 == lit2 = Just subst match menv subst (App f1 a1) (App f2 a2) = do { subst' <- match menv subst f1 f2 ; match menv subst' a1 a2 } match menv subst (Lam x1 e1) (Lam x2 e2) = match menv' subst e1 e2 where menv' = menv { me_env = rnBndr2 (me_env menv) x1 x2 } -- This rule does eta expansion -- (\x.M) ~ N iff M ~ N x -- It's important that this is *after* the let rule, -- so that (\x.M) ~ (let y = e in \y.N) -- does the let thing, and then gets the lam/lam rule above match menv subst (Lam x1 e1) e2 = match menv' subst e1 (App e2 (varToCoreExpr new_x)) where (rn_env', new_x) = rnBndrL (me_env menv) x1 menv' = menv { me_env = rn_env' } -- Eta expansion the other way -- M ~ (\y.N) iff M y ~ N match menv subst e1 (Lam x2 e2) = match menv' subst (App e1 (varToCoreExpr new_x)) e2 where (rn_env', new_x) = rnBndrR (me_env menv) x2 menv' = menv { me_env = rn_env' } match menv subst (Case e1 x1 ty1 alts1) (Case e2 x2 ty2 alts2) = do { subst1 <- match_ty menv subst ty1 ty2 ; subst2 <- match menv subst1 e1 e2 ; let menv' = menv { me_env = rnBndr2 (me_env menv) x1 x2 } ; match_alts menv' subst2 alts1 alts2 -- Alts are both sorted } match menv subst (Type ty1) (Type ty2) = match_ty menv subst ty1 ty2 match menv subst (Cast e1 co1) (Cast e2 co2) = do { subst1 <- match_ty menv subst co1 co2 ; match menv subst1 e1 e2 } {- REMOVING OLD CODE: I think that the above handling for let is better than the stuff here, which looks pretty suspicious to me. SLPJ Sept 06 -- This is an interesting rule: we simply ignore lets in the -- term being matched against! The unfolding inside it is (by assumption) -- already inside any occurrences of the bound variables, so we'll expand -- them when we encounter them. This gives a chance of matching -- forall x,y. f (g (x,y)) -- against -- f (let v = (a,b) in g v) match menv subst e1 (Let bind e2) = match (menv { me_env = rn_env' }) subst e1 e2 where (rn_env', _bndrs') = mapAccumL rnBndrR (me_env menv) (bindersOf bind) -- It's important to do this renaming, so that the bndrs -- are brought into the local scope. For example: -- Matching -- forall f,x,xs. f (x:xs) -- against -- f (let y = e in (y:[])) -- We must not get success with x->y! So we record that y is -- locally bound (with rnBndrR), and proceed. The Var case -- will fail when trying to bind x->y -} -- Everything else fails match menv subst e1 e2 = -- pprTrace "Failing at" ((text "e1:" <+> ppr e1) $$ (text "e2:" <+> ppr e2)) $ Nothing ------------------------------------------ match_var :: MatchEnv -> SubstEnv -> Var -- Template -> CoreExpr -- Target -> Maybe SubstEnv match_var menv subst@(tv_subst, id_subst, binds) v1 e2 | v1' `elemVarSet` me_tmpls menv = case lookupVarEnv id_subst v1' of Nothing | any (inRnEnvR rn_env) (varSetElems (exprFreeVars e2)) -> Nothing -- Occurs check failure -- e.g. match forall a. (\x-> a x) against (\y. y y) | otherwise -- No renaming to do on e2, because no free var -- of e2 is in the rnEnvR of the envt -- Note [Matching variable types] -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- However, we must match the *types*; e.g. -- forall (c::Char->Int) (x::Char). -- f (c x) = "RULE FIRED" -- We must only match on args that have the right type -- It's actually quite difficult to come up with an example that shows -- you need type matching, esp since matching is left-to-right, so type -- args get matched first. But it's possible (e.g. simplrun008) and -- this is the Right Thing to do -> do { tv_subst' <- Unify.ruleMatchTyX menv tv_subst (idType v1') (exprType e2) -- c.f. match_ty below ; return (tv_subst', extendVarEnv id_subst v1' e2, binds) } Just e1' | tcEqExprX (nukeRnEnvL rn_env) e1' e2 -> Just subst | otherwise -> Nothing | otherwise -- v1 is not a template variable; check for an exact match with e2 = case e2 of Var v2 | v1' == rnOccR rn_env v2 -> Just subst other -> Nothing where rn_env = me_env menv v1' = rnOccL rn_env v1 -- If the template is -- forall x. f x (\x -> x) = ... -- Then the x inside the lambda isn't the -- template x, so we must rename first! ------------------------------------------ match_alts :: MatchEnv -> SubstEnv -> [CoreAlt] -- Template -> [CoreAlt] -- Target -> Maybe SubstEnv match_alts menv subst [] [] = return subst match_alts menv subst ((c1,vs1,r1):alts1) ((c2,vs2,r2):alts2) | c1 == c2 = do { subst1 <- match menv' subst r1 r2 ; match_alts menv subst1 alts1 alts2 } where menv' :: MatchEnv menv' = menv { me_env = rnBndrs2 (me_env menv) vs1 vs2 } match_alts menv subst alts1 alts2 = Nothing \end{code} Matching Core types: use the matcher in TcType. Notice that we treat newtypes as opaque. For example, suppose we have a specialised version of a function at a newtype, say newtype T = MkT Int We only want to replace (f T) with f', not (f Int). \begin{code} ------------------------------------------ match_ty :: MatchEnv -> SubstEnv -> Type -- Template -> Type -- Target -> Maybe SubstEnv match_ty menv (tv_subst, id_subst, binds) ty1 ty2 = do { tv_subst' <- Unify.ruleMatchTyX menv tv_subst ty1 ty2 ; return (tv_subst', id_subst, binds) } \end{code} Note [Lookup in-scope] ~~~~~~~~~~~~~~~~~~~~~~ Consider this example foo :: Int -> Maybe Int -> Int foo 0 (Just n) = n foo m (Just n) = foo (m-n) (Just n) SpecConstr sees this fragment: case w_smT of wild_Xf [Just A] { Data.Maybe.Nothing -> lvl_smf; Data.Maybe.Just n_acT [Just S(L)] -> case n_acT of wild1_ams [Just A] { GHC.Base.I# y_amr [Just L] -> \$wfoo_smW (GHC.Prim.-# ds_Xmb y_amr) wild_Xf }}; and correctly generates the rule RULES: "SC:$wfoo1" [0] __forall {y_amr [Just L] :: GHC.Prim.Int# sc_snn :: GHC.Prim.Int#} \$wfoo_smW sc_snn (Data.Maybe.Just @ GHC.Base.Int (GHC.Base.I# y_amr)) = \$s\$wfoo_sno y_amr sc_snn ;] BUT we must ensure that this rule matches in the original function! Note that the call to \$wfoo is \$wfoo_smW (GHC.Prim.-# ds_Xmb y_amr) wild_Xf During matching we expand wild_Xf to (Just n_acT). But then we must also expand n_acT to (I# y_amr). And we can only do that if we look up n_acT in the in-scope set, because in wild_Xf's unfolding it won't have an unfolding at all. That is why the 'lookupRnInScope' call in the (Var v2) case of 'match' is so important. %************************************************************************ %* * \subsection{Checking a program for failing rule applications} %* * %************************************************************************ ----------------------------------------------------- Game plan ----------------------------------------------------- We want to know what sites have rules that could have fired but didn't. This pass runs over the tree (without changing it) and reports such. \begin{code} -- | Report partial matches for rules beginning with the specified -- string for the purposes of error reporting ruleCheckProgram :: (Activation -> Bool) -- ^ Rule activation test -> String -- ^ Rule pattern -> RuleBase -- ^ Database of rules -> [CoreBind] -- ^ Bindings to check in -> SDoc -- ^ Resulting check message ruleCheckProgram is_active rule_pat rule_base binds | isEmptyBag results = text "Rule check results: no rule application sites" | otherwise = vcat [text "Rule check results:", line, vcat [ p $$ line | p <- bagToList results ] ] where results = unionManyBags (map (ruleCheckBind (RuleCheckEnv is_active rule_pat rule_base)) binds) line = text (replicate 20 '-') data RuleCheckEnv = RuleCheckEnv { rc_is_active :: Activation -> Bool, rc_pattern :: String, rc_rule_base :: RuleBase } ruleCheckBind :: RuleCheckEnv -> CoreBind -> Bag SDoc -- The Bag returned has one SDoc for each call site found ruleCheckBind env (NonRec b r) = ruleCheck env r ruleCheckBind env (Rec prs) = unionManyBags [ruleCheck env r | (b,r) <- prs] ruleCheck :: RuleCheckEnv -> CoreExpr -> Bag SDoc ruleCheck env (Var v) = emptyBag ruleCheck env (Lit l) = emptyBag ruleCheck env (Type ty) = emptyBag ruleCheck env (App f a) = ruleCheckApp env (App f a) [] ruleCheck env (Note n e) = ruleCheck env e ruleCheck env (Cast e co) = ruleCheck env e ruleCheck env (Let bd e) = ruleCheckBind env bd `unionBags` ruleCheck env e ruleCheck env (Lam b e) = ruleCheck env e ruleCheck env (Case e _ _ as) = ruleCheck env e `unionBags` unionManyBags [ruleCheck env r | (_,_,r) <- as] ruleCheckApp env (App f a) as = ruleCheck env a `unionBags` ruleCheckApp env f (a:as) ruleCheckApp env (Var f) as = ruleCheckFun env f as ruleCheckApp env other as = ruleCheck env other \end{code} \begin{code} ruleCheckFun :: RuleCheckEnv -> Id -> [CoreExpr] -> Bag SDoc -- Produce a report for all rules matching the predicate -- saying why it doesn't match the specified application ruleCheckFun env fn args | null name_match_rules = emptyBag | otherwise = unitBag (ruleAppCheck_help (rc_is_active env) fn args name_match_rules) where name_match_rules = filter match (getRules (rc_rule_base env) fn) match rule = (rc_pattern env) `isPrefixOf` unpackFS (ruleName rule) ruleAppCheck_help :: (Activation -> Bool) -> Id -> [CoreExpr] -> [CoreRule] -> SDoc ruleAppCheck_help is_active fn args rules = -- The rules match the pattern, so we want to print something vcat [text "Expression:" <+> ppr (mkApps (Var fn) args), vcat (map check_rule rules)] where n_args = length args i_args = args `zip` [1::Int ..] rough_args = map roughTopName args check_rule rule = rule_herald rule <> colon <+> rule_info rule rule_herald (BuiltinRule { ru_name = name }) = ptext (sLit "Builtin rule") <+> doubleQuotes (ftext name) rule_herald (Rule { ru_name = name }) = ptext (sLit "Rule") <+> doubleQuotes (ftext name) rule_info rule | Just _ <- matchRule noBlackList emptyInScopeSet args rough_args rule = text "matches (which is very peculiar!)" rule_info (BuiltinRule {}) = text "does not match" rule_info (Rule { ru_name = name, ru_act = act, ru_bndrs = rule_bndrs, ru_args = rule_args}) | not (is_active act) = text "active only in later phase" | n_args < n_rule_args = text "too few arguments" | n_mismatches == n_rule_args = text "no arguments match" | n_mismatches == 0 = text "all arguments match (considered individually), but rule as a whole does not" | otherwise = text "arguments" <+> ppr mismatches <+> text "do not match (1-indexing)" where n_rule_args = length rule_args n_mismatches = length mismatches mismatches = [i | (rule_arg, (arg,i)) <- rule_args `zip` i_args, not (isJust (match_fn rule_arg arg))] lhs_fvs = exprsFreeVars rule_args -- Includes template tyvars match_fn rule_arg arg = match menv emptySubstEnv rule_arg arg where in_scope = lhs_fvs `unionVarSet` exprFreeVars arg menv = ME { me_env = mkRnEnv2 (mkInScopeSet in_scope) , me_tmpls = mkVarSet rule_bndrs } \end{code} haskell-src-exts-1.18.2/tests/examples/RealGHC.lhs.exactprinter.golden0000644000000000000000000006744712746233113024061 0ustar0000000000000000 {-# OPTIONS -w #-} {-# LANGUAGE PatternGuards #-} -- The above warning supression flag is a temporary kludge. -- While working on this module you are encouraged to remove it and fix -- any warnings in the module. See -- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings -- for details -- | Functions for collecting together and applying rewrite rules to a module. -- The 'CoreRule' datatype itself is declared elsewhere. module Rules ( -- * RuleBase RuleBase, -- ** Constructing emptyRuleBase, mkRuleBase, extendRuleBaseList, unionRuleBase, pprRuleBase, -- ** Checking rule applications ruleCheckProgram, -- ** Manipulating 'SpecInfo' rules mkSpecInfo, extendSpecInfo, addSpecInfo, addIdSpecialisations, -- * Misc. CoreRule helpers rulesOfBinds, getRules, pprRulesForUser, lookupRule, mkLocalRule, roughTopNames ) where -- #include "HsVersions.h" import CoreSyn -- All of it import OccurAnal ( occurAnalyseExpr ) import CoreFVs ( exprFreeVars, exprsFreeVars, bindFreeVars, rulesFreeVars ) import CoreUtils ( tcEqExprX, exprType ) import PprCore ( pprRules ) import Type ( Type, TvSubstEnv ) import Coercion ( coercionKind ) import TcType ( tcSplitTyConApp_maybe ) import CoreTidy ( tidyRules ) import Id import IdInfo ( SpecInfo( SpecInfo ) ) import Var ( Var ) import VarEnv import VarSet import Name ( Name, NamedThing(..) ) import NameEnv import Unify ( ruleMatchTyX, MatchEnv(..) ) import BasicTypes ( Activation ) import StaticFlags ( opt_PprStyle_Debug ) import Outputable import FastString import Maybes import OrdList import Bag import Util import Data.List mkLocalRule :: RuleName -> Activation -> Name -> [CoreBndr] -> [CoreExpr] -> CoreExpr -> CoreRule -- ^ Used to make 'CoreRule' for an 'Id' defined in the module being -- compiled. See also 'CoreSyn.CoreRule' mkLocalRule name act fn bndrs args rhs = Rule { ru_name = name, ru_fn = fn, ru_act = act, ru_bndrs = bndrs, ru_args = args, ru_rhs = rhs, ru_rough = roughTopNames args, ru_local = True } -------------- roughTopNames :: [CoreExpr] -> [Maybe Name] -- ^ Find the \"top\" free names of several expressions. -- Such names are either: -- -- 1. The function finally being applied to in an application chain -- (if that name is a GlobalId: see "Var#globalvslocal"), or -- -- 2. The 'TyCon' if the expression is a 'Type' -- -- This is used for the fast-match-check for rules; -- if the top names don't match, the rest can't roughTopNames args = map roughTopName args roughTopName :: CoreExpr -> Maybe Name roughTopName (Type ty) = case tcSplitTyConApp_maybe ty of Just (tc,_) -> Just (getName tc) Nothing -> Nothing roughTopName (App f a) = roughTopName f roughTopName (Var f) | isGlobalId f = Just (idName f) | otherwise = Nothing roughTopName other = Nothing ruleCantMatch :: [Maybe Name] -> [Maybe Name] -> Bool -- ^ @ruleCantMatch tpl actual@ returns True only if @actual@ -- definitely can't match @tpl@ by instantiating @tpl@. -- It's only a one-way match; unlike instance matching we -- don't consider unification. -- -- Notice that [_$_] -- @ruleCantMatch [Nothing] [Just n2] = False@ -- Reason: a template variable can be instantiated by a constant -- Also: -- @ruleCantMatch [Just n1] [Nothing] = False@ -- Reason: a local variable @v@ in the actuals might [_$_] ruleCantMatch (Just n1 : ts) (Just n2 : as) = n1 /= n2 || ruleCantMatch ts as ruleCantMatch (t : ts) (a : as) = ruleCantMatch ts as ruleCantMatch ts as = False pprRulesForUser :: [CoreRule] -> SDoc -- (a) tidy the rules -- (b) sort them into order based on the rule name -- (c) suppress uniques (unless -dppr-debug is on) -- This combination makes the output stable so we can use in testing -- It's here rather than in PprCore because it calls tidyRules pprRulesForUser rules = withPprStyle defaultUserStyle $ pprRules $ sortLe le_rule $ tidyRules emptyTidyEnv rules where le_rule r1 r2 = ru_name r1 <= ru_name r2 -- | Make a 'SpecInfo' containing a number of 'CoreRule's, suitable -- for putting into an 'IdInfo' mkSpecInfo :: [CoreRule] -> SpecInfo mkSpecInfo rules = SpecInfo rules (rulesFreeVars rules) extendSpecInfo :: SpecInfo -> [CoreRule] -> SpecInfo extendSpecInfo (SpecInfo rs1 fvs1) rs2 = SpecInfo (rs2 ++ rs1) (rulesFreeVars rs2 `unionVarSet` fvs1) addSpecInfo :: SpecInfo -> SpecInfo -> SpecInfo addSpecInfo (SpecInfo rs1 fvs1) (SpecInfo rs2 fvs2) = SpecInfo (rs1 ++ rs2) (fvs1 `unionVarSet` fvs2) addIdSpecialisations :: Id -> [CoreRule] -> Id addIdSpecialisations id [] = id addIdSpecialisations id rules = setIdSpecialisation id $ extendSpecInfo (idSpecialisation id) rules -- | Gather all the rules for locally bound identifiers from the supplied bindings rulesOfBinds :: [CoreBind] -> [CoreRule] rulesOfBinds binds = concatMap (concatMap idCoreRules . bindersOf) binds getRules :: RuleBase -> Id -> [CoreRule] -- The rules for an Id come from two places: -- (a) the ones it is born with (idCoreRules fn) -- (b) rules added in subsequent modules (extra_rules) -- PrimOps, for example, are born with a bunch of rules under (a) getRules rule_base fn | isLocalId fn = idCoreRules fn | otherwise = WARN( not (isPrimOpId fn) && notNull (idCoreRules fn), ppr fn <+> ppr (idCoreRules fn) ) idCoreRules fn ++ (lookupNameEnv rule_base (idName fn) `orElse` []) -- Only PrimOpIds have rules inside themselves, and perhaps more besides -- | Gathers a collection of 'CoreRule's. Maps (the name of) an 'Id' to its rules type RuleBase = NameEnv [CoreRule] -- The rules are are unordered; -- we sort out any overlaps on lookup emptyRuleBase = emptyNameEnv mkRuleBase :: [CoreRule] -> RuleBase mkRuleBase rules = extendRuleBaseList emptyRuleBase rules extendRuleBaseList :: RuleBase -> [CoreRule] -> RuleBase extendRuleBaseList rule_base new_guys = foldl extendRuleBase rule_base new_guys unionRuleBase :: RuleBase -> RuleBase -> RuleBase unionRuleBase rb1 rb2 = plusNameEnv_C (++) rb1 rb2 extendRuleBase :: RuleBase -> CoreRule -> RuleBase extendRuleBase rule_base rule = extendNameEnv_Acc (:) singleton rule_base (ruleIdName rule) rule pprRuleBase :: RuleBase -> SDoc pprRuleBase rules = vcat [ pprRules (tidyRules emptyTidyEnv rs) | rs <- nameEnvElts rules ] -- | The main rule matching function. Attempts to apply all (active) -- supplied rules to this instance of an application in a given -- context, returning the rule applied and the resulting expression if -- successful. lookupRule :: (Activation -> Bool) -> InScopeSet -> Id -> [CoreExpr] -> [CoreRule] -> Maybe (CoreRule, CoreExpr) -- See Note [Extra args in rule matching] -- See comments on matchRule lookupRule is_active in_scope fn args rules = -- pprTrace "matchRules" (ppr fn <+> ppr rules) $ case go [] rules of [] -> Nothing (m:ms) -> Just (findBest (fn,args) m ms) where rough_args = map roughTopName args go :: [(CoreRule,CoreExpr)] -> [CoreRule] -> [(CoreRule,CoreExpr)] go ms [] = ms go ms (r:rs) = case (matchRule is_active in_scope args rough_args r) of Just e -> go ((r,e):ms) rs Nothing -> -- pprTrace "match failed" (ppr r $$ ppr args $$ -- ppr [(arg_id, unfoldingTemplate unf) | Var arg_id <- args, let unf = idUnfolding arg_id, isCheapUnfolding unf] ) go ms rs findBest :: (Id, [CoreExpr]) -> (CoreRule,CoreExpr) -> [(CoreRule,CoreExpr)] -> (CoreRule,CoreExpr) -- All these pairs matched the expression -- Return the pair the the most specific rule -- The (fn,args) is just for overlap reporting findBest target (rule,ans) [] = (rule,ans) findBest target (rule1,ans1) ((rule2,ans2):prs) | rule1 `isMoreSpecific` rule2 = findBest target (rule1,ans1) prs | rule2 `isMoreSpecific` rule1 = findBest target (rule2,ans2) prs | debugIsOn = let pp_rule rule | opt_PprStyle_Debug = ppr rule | otherwise = doubleQuotes (ftext (ru_name rule)) in pprTrace "Rules.findBest: rule overlap (Rule 1 wins)" (vcat [if opt_PprStyle_Debug then ptext (sLit "Expression to match:") <+> ppr fn <+> sep (map ppr args) else empty, ptext (sLit "Rule 1:") <+> pp_rule rule1, ptext (sLit "Rule 2:") <+> pp_rule rule2]) $ findBest target (rule1,ans1) prs | otherwise = findBest target (rule1,ans1) prs where (fn,args) = target isMoreSpecific :: CoreRule -> CoreRule -> Bool isMoreSpecific (BuiltinRule {}) r2 = True isMoreSpecific r1 (BuiltinRule {}) = False isMoreSpecific (Rule { ru_bndrs = bndrs1, ru_args = args1 }) (Rule { ru_bndrs = bndrs2, ru_args = args2 }) = isJust (matchN in_scope bndrs2 args2 args1) where in_scope = mkInScopeSet (mkVarSet bndrs1) -- Actually we should probably include the free vars -- of rule1's args, but I can't be bothered noBlackList :: Activation -> Bool noBlackList act = False -- Nothing is black listed matchRule :: (Activation -> Bool) -> InScopeSet -> [CoreExpr] -> [Maybe Name] -> CoreRule -> Maybe CoreExpr -- If (matchRule rule args) returns Just (name,rhs) -- then (f args) matches the rule, and the corresponding -- rewritten RHS is rhs -- -- The bndrs and rhs is occurrence-analysed -- -- Example -- -- The rule -- forall f g x. map f (map g x) ==> map (f . g) x -- is stored -- CoreRule "map/map" -- [f,g,x] -- tpl_vars -- [f,map g x] -- tpl_args -- map (f.g) x) -- rhs -- -- Then the call: matchRule the_rule [e1,map e2 e3] -- = Just ("map/map", (\f,g,x -> rhs) e1 e2 e3) -- -- Any 'surplus' arguments in the input are simply put on the end -- of the output. matchRule is_active in_scope args rough_args (BuiltinRule { ru_name = name, ru_try = match_fn }) = case match_fn args of Just expr -> Just expr Nothing -> Nothing matchRule is_active in_scope args rough_args (Rule { ru_name = rn, ru_act = act, ru_rough = tpl_tops, ru_bndrs = tpl_vars, ru_args = tpl_args, ru_rhs = rhs }) | not (is_active act) = Nothing | ruleCantMatch tpl_tops rough_args = Nothing | otherwise = case matchN in_scope tpl_vars tpl_args args of Nothing -> Nothing Just (binds, tpl_vals) -> Just (mkLets binds $ rule_fn `mkApps` tpl_vals) where rule_fn = occurAnalyseExpr (mkLams tpl_vars rhs) -- We could do this when putting things into the rulebase, I guess -- For a given match template and context, find bindings to wrap around -- the entire result and what should be substituted for each template variable. -- Fail if there are two few actual arguments from the target to match the template matchN :: InScopeSet -- ^ In-scope variables -> [Var] -- ^ Match template type variables -> [CoreExpr] -- ^ Match template -> [CoreExpr] -- ^ Target; can have more elements than the template -> Maybe ([CoreBind], [CoreExpr]) matchN in_scope tmpl_vars tmpl_es target_es = do { (tv_subst, id_subst, binds) <- go init_menv emptySubstEnv tmpl_es target_es ; return (fromOL binds, map (lookup_tmpl tv_subst id_subst) tmpl_vars') } where (init_rn_env, tmpl_vars') = mapAccumL rnBndrL (mkRnEnv2 in_scope) tmpl_vars -- See Note [Template binders] init_menv = ME { me_tmpls = mkVarSet tmpl_vars', me_env = init_rn_env } go menv subst [] es = Just subst go menv subst ts [] = Nothing -- Fail if too few actual args go menv subst (t:ts) (e:es) = do { subst1 <- match menv subst t e ; go menv subst1 ts es } lookup_tmpl :: TvSubstEnv -> IdSubstEnv -> Var -> CoreExpr lookup_tmpl tv_subst id_subst tmpl_var' | isTyVar tmpl_var' = case lookupVarEnv tv_subst tmpl_var' of Just ty -> Type ty Nothing -> unbound tmpl_var' | otherwise = case lookupVarEnv id_subst tmpl_var' of Just e -> e other -> unbound tmpl_var' unbound var = pprPanic "Template variable unbound in rewrite rule" (ppr var $$ ppr tmpl_vars $$ ppr tmpl_vars' $$ ppr tmpl_es $$ ppr target_es) -- These two definitions are not the same as in Subst, -- but they simple and direct, and purely local to this module -- -- * The domain of the TvSubstEnv and IdSubstEnv are the template -- variables passed into the match. -- -- * The (OrdList CoreBind) in a SubstEnv are the bindings floated out -- from nested matches; see the Let case of match, below -- type SubstEnv = (TvSubstEnv, IdSubstEnv, OrdList CoreBind) type IdSubstEnv = IdEnv CoreExpr emptySubstEnv :: SubstEnv emptySubstEnv = (emptyVarEnv, emptyVarEnv, nilOL) -- At one stage I tried to match even if there are more -- template args than real args. -- I now think this is probably a bad idea. -- Should the template (map f xs) match (map g)? I think not. -- For a start, in general eta expansion wastes work. -- SLPJ July 99 match :: MatchEnv -> SubstEnv -> CoreExpr -- Template -> CoreExpr -- Target -> Maybe SubstEnv -- See the notes with Unify.match, which matches types -- Everything is very similar for terms -- Interesting examples: -- Consider matching -- \x->f against \f->f -- When we meet the lambdas we must remember to rename f to f' in the -- second expresion. The RnEnv2 does that. -- -- Consider matching -- forall a. \b->b against \a->3 -- We must rename the \a. Otherwise when we meet the lambdas we -- might substitute [a/b] in the template, and then erroneously -- succeed in matching what looks like the template variable 'a' against 3. -- The Var case follows closely what happens in Unify.match match menv subst (Var v1) e2 | Just subst <- match_var menv subst v1 e2 = Just subst match menv subst e1 (Note n e2) = match menv subst e1 e2 -- Note [Notes in RULE matching] -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- Look through Notes. In particular, we don't want to -- be confused by InlineMe notes. Maybe we should be more -- careful about profiling notes, but for now I'm just -- riding roughshod over them. --- See Note [Notes in call patterns] in SpecConstr -- Here is another important rule: if the term being matched is a -- variable, we expand it so long as its unfolding is a WHNF -- (Its occurrence information is not necessarily up to date, -- so we don't use it.) match menv subst e1 (Var v2) | isCheapUnfolding unfolding = match menv subst e1 (unfoldingTemplate unfolding) where rn_env = me_env menv unfolding = idUnfolding (lookupRnInScope rn_env (rnOccR rn_env v2)) -- Notice that we look up v2 in the in-scope set -- See Note [Lookup in-scope] -- Remember to apply any renaming first (hence rnOccR) -- Note [Matching lets] -- ~~~~~~~~~~~~~~~~~~~~ -- Matching a let-expression. Consider -- RULE forall x. f (g x) = -- and target expression -- f (let { w=R } in g E)) -- Then we'd like the rule to match, to generate -- let { w=R } in (\x. ) E -- In effect, we want to float the let-binding outward, to enable -- the match to happen. This is the WHOLE REASON for accumulating -- bindings in the SubstEnv -- -- We can only do this if -- (a) Widening the scope of w does not capture any variables -- We use a conservative test: w is not already in scope -- If not, we clone the binders, and substitute -- (b) The free variables of R are not bound by the part of the -- target expression outside the let binding; e.g. -- f (\v. let w = v+1 in g E) -- Here we obviously cannot float the let-binding for w. -- -- You may think rule (a) would never apply, because rule matching is -- mostly invoked from the simplifier, when we have just run substExpr -- over the argument, so there will be no shadowing anyway. -- The fly in the ointment is that the forall'd variables of the -- RULE itself are considered in scope. -- -- I though of various cheapo ways to solve this tiresome problem, -- but ended up doing the straightforward thing, which is to -- clone the binders if they are in scope. It's tiresome, and -- potentially inefficient, because of the calls to substExpr, -- but I don't think it'll happen much in pracice. {- Cases to think about (let x=y+1 in \x. (x,x)) --> let x=y+1 in (\x1. (x1,x1)) (\x. let x = y+1 in (x,x)) --> let x1 = y+1 in (\x. (x1,x1) (let x=y+1 in (x,x), let x=y-1 in (x,x)) --> let x=y+1 in let x1=y-1 in ((x,x),(x1,x1)) Watch out! (let x=y+1 in let z=x+1 in (z,z) --> matches (p,p) but watch out that the use of x on z's rhs is OK! I'm removing the cloning because that makes the above case fail, because the inner let looks as if it has locally-bound vars -} match menv subst@(tv_subst, id_subst, binds) e1 (Let bind e2) | all freshly_bound bndrs, not (any locally_bound bind_fvs) = match (menv { me_env = rn_env' }) (tv_subst, id_subst, binds `snocOL` bind') e1 e2' where rn_env = me_env menv bndrs = bindersOf bind bind_fvs = varSetElems (bindFreeVars bind) locally_bound x = inRnEnvR rn_env x freshly_bound x = not (x `rnInScope` rn_env) bind' = bind e2' = e2 rn_env' = extendRnInScopeList rn_env bndrs {- (rn_env', bndrs') = mapAccumL rnBndrR rn_env bndrs s_prs = [(bndr, Var bndr') | (bndr,bndr') <- zip bndrs bndrs', bndr /= bndr'] subst = mkSubst (rnInScopeSet rn_env) emptyVarEnv (mkVarEnv s_prs) (bind', e2') | null s_prs = (bind, e2) | otherwise = (s_bind, substExpr subst e2) s_bind = case bind of NonRec {} -> NonRec (head bndrs') (head rhss) Rec {} -> Rec (bndrs' `zip` map (substExpr subst) rhss) -} match menv subst (Lit lit1) (Lit lit2) | lit1 == lit2 = Just subst match menv subst (App f1 a1) (App f2 a2) = do { subst' <- match menv subst f1 f2 ; match menv subst' a1 a2 } match menv subst (Lam x1 e1) (Lam x2 e2) = match menv' subst e1 e2 where menv' = menv { me_env = rnBndr2 (me_env menv) x1 x2 } -- This rule does eta expansion -- (\x.M) ~ N iff M ~ N x -- It's important that this is *after* the let rule, -- so that (\x.M) ~ (let y = e in \y.N) -- does the let thing, and then gets the lam/lam rule above match menv subst (Lam x1 e1) e2 = match menv' subst e1 (App e2 (varToCoreExpr new_x)) where (rn_env', new_x) = rnBndrL (me_env menv) x1 menv' = menv { me_env = rn_env' } -- Eta expansion the other way -- M ~ (\y.N) iff M y ~ N match menv subst e1 (Lam x2 e2) = match menv' subst (App e1 (varToCoreExpr new_x)) e2 where (rn_env', new_x) = rnBndrR (me_env menv) x2 menv' = menv { me_env = rn_env' } match menv subst (Case e1 x1 ty1 alts1) (Case e2 x2 ty2 alts2) = do { subst1 <- match_ty menv subst ty1 ty2 ; subst2 <- match menv subst1 e1 e2 ; let menv' = menv { me_env = rnBndr2 (me_env menv) x1 x2 } ; match_alts menv' subst2 alts1 alts2 -- Alts are both sorted } match menv subst (Type ty1) (Type ty2) = match_ty menv subst ty1 ty2 match menv subst (Cast e1 co1) (Cast e2 co2) = do { subst1 <- match_ty menv subst co1 co2 ; match menv subst1 e1 e2 } {- REMOVING OLD CODE: I think that the above handling for let is better than the stuff here, which looks pretty suspicious to me. SLPJ Sept 06 -- This is an interesting rule: we simply ignore lets in the -- term being matched against! The unfolding inside it is (by assumption) -- already inside any occurrences of the bound variables, so we'll expand -- them when we encounter them. This gives a chance of matching -- forall x,y. f (g (x,y)) -- against -- f (let v = (a,b) in g v) match menv subst e1 (Let bind e2) = match (menv { me_env = rn_env' }) subst e1 e2 where (rn_env', _bndrs') = mapAccumL rnBndrR (me_env menv) (bindersOf bind) -- It's important to do this renaming, so that the bndrs -- are brought into the local scope. For example: -- Matching -- forall f,x,xs. f (x:xs) -- against -- f (let y = e in (y:[])) -- We must not get success with x->y! So we record that y is -- locally bound (with rnBndrR), and proceed. The Var case -- will fail when trying to bind x->y -} -- Everything else fails match menv subst e1 e2 = -- pprTrace "Failing at" ((text "e1:" <+> ppr e1) $$ (text "e2:" <+> ppr e2)) $ Nothing ------------------------------------------ match_var :: MatchEnv -> SubstEnv -> Var -- Template -> CoreExpr -- Target -> Maybe SubstEnv match_var menv subst@(tv_subst, id_subst, binds) v1 e2 | v1' `elemVarSet` me_tmpls menv = case lookupVarEnv id_subst v1' of Nothing | any (inRnEnvR rn_env) (varSetElems (exprFreeVars e2)) -> Nothing -- Occurs check failure -- e.g. match forall a. (\x-> a x) against (\y. y y) | otherwise -- No renaming to do on e2, because no free var -- of e2 is in the rnEnvR of the envt -- Note [Matching variable types] -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- However, we must match the *types*; e.g. -- forall (c::Char->Int) (x::Char). -- f (c x) = "RULE FIRED" -- We must only match on args that have the right type -- It's actually quite difficult to come up with an example that shows -- you need type matching, esp since matching is left-to-right, so type -- args get matched first. But it's possible (e.g. simplrun008) and -- this is the Right Thing to do -> do { tv_subst' <- Unify.ruleMatchTyX menv tv_subst (idType v1') (exprType e2) -- c.f. match_ty below ; return (tv_subst', extendVarEnv id_subst v1' e2, binds) } Just e1' | tcEqExprX (nukeRnEnvL rn_env) e1' e2 -> Just subst | otherwise -> Nothing | otherwise -- v1 is not a template variable; check for an exact match with e2 = case e2 of Var v2 | v1' == rnOccR rn_env v2 -> Just subst other -> Nothing where rn_env = me_env menv v1' = rnOccL rn_env v1 -- If the template is -- forall x. f x (\x -> x) = ... -- Then the x inside the lambda isn't the -- template x, so we must rename first! ------------------------------------------ match_alts :: MatchEnv -> SubstEnv -> [CoreAlt] -- Template -> [CoreAlt] -- Target -> Maybe SubstEnv match_alts menv subst [] [] = return subst match_alts menv subst ((c1,vs1,r1):alts1) ((c2,vs2,r2):alts2) | c1 == c2 = do { subst1 <- match menv' subst r1 r2 ; match_alts menv subst1 alts1 alts2 } where menv' :: MatchEnv menv' = menv { me_env = rnBndrs2 (me_env menv) vs1 vs2 } match_alts menv subst alts1 alts2 = Nothing ------------------------------------------ match_ty :: MatchEnv -> SubstEnv -> Type -- Template -> Type -- Target -> Maybe SubstEnv match_ty menv (tv_subst, id_subst, binds) ty1 ty2 = do { tv_subst' <- Unify.ruleMatchTyX menv tv_subst ty1 ty2 ; return (tv_subst', id_subst, binds) } -- | Report partial matches for rules beginning with the specified -- string for the purposes of error reporting ruleCheckProgram :: (Activation -> Bool) -- ^ Rule activation test -> String -- ^ Rule pattern -> RuleBase -- ^ Database of rules -> [CoreBind] -- ^ Bindings to check in -> SDoc -- ^ Resulting check message ruleCheckProgram is_active rule_pat rule_base binds | isEmptyBag results = text "Rule check results: no rule application sites" | otherwise = vcat [text "Rule check results:", line, vcat [ p $$ line | p <- bagToList results ] ] where results = unionManyBags (map (ruleCheckBind (RuleCheckEnv is_active rule_pat rule_base)) binds) line = text (replicate 20 '-') data RuleCheckEnv = RuleCheckEnv { rc_is_active :: Activation -> Bool, rc_pattern :: String, rc_rule_base :: RuleBase } ruleCheckBind :: RuleCheckEnv -> CoreBind -> Bag SDoc -- The Bag returned has one SDoc for each call site found ruleCheckBind env (NonRec b r) = ruleCheck env r ruleCheckBind env (Rec prs) = unionManyBags [ruleCheck env r | (b,r) <- prs] ruleCheck :: RuleCheckEnv -> CoreExpr -> Bag SDoc ruleCheck env (Var v) = emptyBag ruleCheck env (Lit l) = emptyBag ruleCheck env (Type ty) = emptyBag ruleCheck env (App f a) = ruleCheckApp env (App f a) [] ruleCheck env (Note n e) = ruleCheck env e ruleCheck env (Cast e co) = ruleCheck env e ruleCheck env (Let bd e) = ruleCheckBind env bd `unionBags` ruleCheck env e ruleCheck env (Lam b e) = ruleCheck env e ruleCheck env (Case e _ _ as) = ruleCheck env e `unionBags` unionManyBags [ruleCheck env r | (_,_,r) <- as] ruleCheckApp env (App f a) as = ruleCheck env a `unionBags` ruleCheckApp env f (a:as) ruleCheckApp env (Var f) as = ruleCheckFun env f as ruleCheckApp env other as = ruleCheck env other ruleCheckFun :: RuleCheckEnv -> Id -> [CoreExpr] -> Bag SDoc -- Produce a report for all rules matching the predicate -- saying why it doesn't match the specified application ruleCheckFun env fn args | null name_match_rules = emptyBag | otherwise = unitBag (ruleAppCheck_help (rc_is_active env) fn args name_match_rules) where name_match_rules = filter match (getRules (rc_rule_base env) fn) match rule = (rc_pattern env) `isPrefixOf` unpackFS (ruleName rule) ruleAppCheck_help :: (Activation -> Bool) -> Id -> [CoreExpr] -> [CoreRule] -> SDoc ruleAppCheck_help is_active fn args rules = -- The rules match the pattern, so we want to print something vcat [text "Expression:" <+> ppr (mkApps (Var fn) args), vcat (map check_rule rules)] where n_args = length args i_args = args `zip` [1::Int ..] rough_args = map roughTopName args check_rule rule = rule_herald rule <> colon <+> rule_info rule rule_herald (BuiltinRule { ru_name = name }) = ptext (sLit "Builtin rule") <+> doubleQuotes (ftext name) rule_herald (Rule { ru_name = name }) = ptext (sLit "Rule") <+> doubleQuotes (ftext name) rule_info rule | Just _ <- matchRule noBlackList emptyInScopeSet args rough_args rule = text "matches (which is very peculiar!)" rule_info (BuiltinRule {}) = text "does not match" rule_info (Rule { ru_name = name, ru_act = act, ru_bndrs = rule_bndrs, ru_args = rule_args}) | not (is_active act) = text "active only in later phase" | n_args < n_rule_args = text "too few arguments" | n_mismatches == n_rule_args = text "no arguments match" | n_mismatches == 0 = text "all arguments match (considered individually), but rule as a whole does not" | otherwise = text "arguments" <+> ppr mismatches <+> text "do not match (1-indexing)" where n_rule_args = length rule_args n_mismatches = length mismatches mismatches = [i | (rule_arg, (arg,i)) <- rule_args `zip` i_args, not (isJust (match_fn rule_arg arg))] lhs_fvs = exprsFreeVars rule_args -- Includes template tyvars match_fn rule_arg arg = match menv emptySubstEnv rule_arg arg where in_scope = lhs_fvs `unionVarSet` exprFreeVars arg menv = ME { me_env = mkRnEnv2 (mkInScopeSet in_scope) , me_tmpls = mkVarSet rule_bndrs } haskell-src-exts-1.18.2/tests/examples/RealGHC.lhs.parser.golden0000644000000000000000001025733412746233113022642 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 7 1 915 1 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 7 1 7 1 , SrcSpan "tests/examples/RealGHC.lhs" 8 1 8 1 , SrcSpan "tests/examples/RealGHC.lhs" 17 1 17 1 , SrcSpan "tests/examples/RealGHC.lhs" 17 1 17 1 , SrcSpan "tests/examples/RealGHC.lhs" 40 1 40 1 , SrcSpan "tests/examples/RealGHC.lhs" 41 1 41 1 , SrcSpan "tests/examples/RealGHC.lhs" 42 1 42 1 , SrcSpan "tests/examples/RealGHC.lhs" 43 1 43 1 , SrcSpan "tests/examples/RealGHC.lhs" 44 1 44 1 , SrcSpan "tests/examples/RealGHC.lhs" 45 1 45 1 , SrcSpan "tests/examples/RealGHC.lhs" 46 1 46 1 , SrcSpan "tests/examples/RealGHC.lhs" 47 1 47 1 , SrcSpan "tests/examples/RealGHC.lhs" 48 1 48 1 , SrcSpan "tests/examples/RealGHC.lhs" 49 1 49 1 , SrcSpan "tests/examples/RealGHC.lhs" 50 1 50 1 , SrcSpan "tests/examples/RealGHC.lhs" 51 1 51 1 , SrcSpan "tests/examples/RealGHC.lhs" 52 1 52 1 , SrcSpan "tests/examples/RealGHC.lhs" 53 1 53 1 , SrcSpan "tests/examples/RealGHC.lhs" 54 1 54 1 , SrcSpan "tests/examples/RealGHC.lhs" 55 1 55 1 , SrcSpan "tests/examples/RealGHC.lhs" 56 1 56 1 , SrcSpan "tests/examples/RealGHC.lhs" 57 1 57 1 , SrcSpan "tests/examples/RealGHC.lhs" 58 1 58 1 , SrcSpan "tests/examples/RealGHC.lhs" 59 1 59 1 , SrcSpan "tests/examples/RealGHC.lhs" 60 1 60 1 , SrcSpan "tests/examples/RealGHC.lhs" 61 1 61 1 , SrcSpan "tests/examples/RealGHC.lhs" 62 1 62 1 , SrcSpan "tests/examples/RealGHC.lhs" 63 1 63 1 , SrcSpan "tests/examples/RealGHC.lhs" 64 1 64 1 , SrcSpan "tests/examples/RealGHC.lhs" 65 1 65 1 , SrcSpan "tests/examples/RealGHC.lhs" 104 1 104 1 , SrcSpan "tests/examples/RealGHC.lhs" 108 1 108 1 , SrcSpan "tests/examples/RealGHC.lhs" 115 1 115 1 , SrcSpan "tests/examples/RealGHC.lhs" 126 1 126 1 , SrcSpan "tests/examples/RealGHC.lhs" 128 1 128 1 , SrcSpan "tests/examples/RealGHC.lhs" 129 1 129 1 , SrcSpan "tests/examples/RealGHC.lhs" 132 1 132 1 , SrcSpan "tests/examples/RealGHC.lhs" 133 1 133 1 , SrcSpan "tests/examples/RealGHC.lhs" 135 1 135 1 , SrcSpan "tests/examples/RealGHC.lhs" 137 1 137 1 , SrcSpan "tests/examples/RealGHC.lhs" 150 1 150 1 , SrcSpan "tests/examples/RealGHC.lhs" 151 1 151 1 , SrcSpan "tests/examples/RealGHC.lhs" 152 1 152 1 , SrcSpan "tests/examples/RealGHC.lhs" 156 1 156 1 , SrcSpan "tests/examples/RealGHC.lhs" 162 1 162 1 , SrcSpan "tests/examples/RealGHC.lhs" 181 1 181 1 , SrcSpan "tests/examples/RealGHC.lhs" 182 1 182 1 , SrcSpan "tests/examples/RealGHC.lhs" 184 1 184 1 , SrcSpan "tests/examples/RealGHC.lhs" 185 1 185 1 , SrcSpan "tests/examples/RealGHC.lhs" 188 1 188 1 , SrcSpan "tests/examples/RealGHC.lhs" 189 1 189 1 , SrcSpan "tests/examples/RealGHC.lhs" 192 1 192 1 , SrcSpan "tests/examples/RealGHC.lhs" 193 1 193 1 , SrcSpan "tests/examples/RealGHC.lhs" 195 1 195 1 , SrcSpan "tests/examples/RealGHC.lhs" 200 1 200 1 , SrcSpan "tests/examples/RealGHC.lhs" 201 1 201 1 , SrcSpan "tests/examples/RealGHC.lhs" 203 1 203 1 , SrcSpan "tests/examples/RealGHC.lhs" 208 1 208 1 , SrcSpan "tests/examples/RealGHC.lhs" 225 1 225 1 , SrcSpan "tests/examples/RealGHC.lhs" 229 1 229 1 , SrcSpan "tests/examples/RealGHC.lhs" 231 1 231 1 , SrcSpan "tests/examples/RealGHC.lhs" 232 1 232 1 , SrcSpan "tests/examples/RealGHC.lhs" 234 1 234 1 , SrcSpan "tests/examples/RealGHC.lhs" 235 1 235 1 , SrcSpan "tests/examples/RealGHC.lhs" 238 1 238 1 , SrcSpan "tests/examples/RealGHC.lhs" 239 1 239 1 , SrcSpan "tests/examples/RealGHC.lhs" 241 1 241 1 , SrcSpan "tests/examples/RealGHC.lhs" 242 1 242 1 , SrcSpan "tests/examples/RealGHC.lhs" 245 1 245 1 , SrcSpan "tests/examples/RealGHC.lhs" 246 1 246 1 , SrcSpan "tests/examples/RealGHC.lhs" 278 1 278 1 , SrcSpan "tests/examples/RealGHC.lhs" 284 1 284 1 , SrcSpan "tests/examples/RealGHC.lhs" 300 1 300 1 , SrcSpan "tests/examples/RealGHC.lhs" 306 1 306 1 , SrcSpan "tests/examples/RealGHC.lhs" 307 1 307 1 , SrcSpan "tests/examples/RealGHC.lhs" 324 1 324 1 , SrcSpan "tests/examples/RealGHC.lhs" 325 1 325 1 , SrcSpan "tests/examples/RealGHC.lhs" 326 1 326 1 , SrcSpan "tests/examples/RealGHC.lhs" 327 1 327 1 , SrcSpan "tests/examples/RealGHC.lhs" 335 1 335 1 , SrcSpan "tests/examples/RealGHC.lhs" 336 1 336 1 , SrcSpan "tests/examples/RealGHC.lhs" 338 1 338 1 , SrcSpan "tests/examples/RealGHC.lhs" 364 1 364 1 , SrcSpan "tests/examples/RealGHC.lhs" 370 1 370 1 , SrcSpan "tests/examples/RealGHC.lhs" 390 1 390 1 , SrcSpan "tests/examples/RealGHC.lhs" 397 1 397 1 , SrcSpan "tests/examples/RealGHC.lhs" 457 1 457 1 , SrcSpan "tests/examples/RealGHC.lhs" 458 1 458 1 , SrcSpan "tests/examples/RealGHC.lhs" 460 1 460 1 , SrcSpan "tests/examples/RealGHC.lhs" 461 1 461 1 , SrcSpan "tests/examples/RealGHC.lhs" 473 1 473 1 , SrcSpan "tests/examples/RealGHC.lhs" 495 1 495 1 , SrcSpan "tests/examples/RealGHC.lhs" 499 1 499 1 , SrcSpan "tests/examples/RealGHC.lhs" 513 1 513 1 , SrcSpan "tests/examples/RealGHC.lhs" 571 1 571 1 , SrcSpan "tests/examples/RealGHC.lhs" 597 1 597 1 , SrcSpan "tests/examples/RealGHC.lhs" 601 1 601 1 , SrcSpan "tests/examples/RealGHC.lhs" 605 1 605 1 , SrcSpan "tests/examples/RealGHC.lhs" 615 1 615 1 , SrcSpan "tests/examples/RealGHC.lhs" 623 1 623 1 , SrcSpan "tests/examples/RealGHC.lhs" 629 1 629 1 , SrcSpan "tests/examples/RealGHC.lhs" 636 1 636 1 , SrcSpan "tests/examples/RealGHC.lhs" 639 1 639 1 , SrcSpan "tests/examples/RealGHC.lhs" 670 1 670 1 , SrcSpan "tests/examples/RealGHC.lhs" 674 1 674 1 , SrcSpan "tests/examples/RealGHC.lhs" 679 1 679 1 , SrcSpan "tests/examples/RealGHC.lhs" 723 1 723 1 , SrcSpan "tests/examples/RealGHC.lhs" 728 1 728 1 , SrcSpan "tests/examples/RealGHC.lhs" 730 1 730 1 , SrcSpan "tests/examples/RealGHC.lhs" 738 1 738 1 , SrcSpan "tests/examples/RealGHC.lhs" 750 1 750 1 , SrcSpan "tests/examples/RealGHC.lhs" 755 1 755 1 , SrcSpan "tests/examples/RealGHC.lhs" 813 1 813 1 , SrcSpan "tests/examples/RealGHC.lhs" 818 1 818 1 , SrcSpan "tests/examples/RealGHC.lhs" 830 1 830 1 , SrcSpan "tests/examples/RealGHC.lhs" 836 1 836 1 , SrcSpan "tests/examples/RealGHC.lhs" 838 1 838 1 , SrcSpan "tests/examples/RealGHC.lhs" 839 1 839 1 , SrcSpan "tests/examples/RealGHC.lhs" 841 1 841 1 , SrcSpan "tests/examples/RealGHC.lhs" 842 1 842 1 , SrcSpan "tests/examples/RealGHC.lhs" 843 1 843 1 , SrcSpan "tests/examples/RealGHC.lhs" 844 1 844 1 , SrcSpan "tests/examples/RealGHC.lhs" 845 1 845 1 , SrcSpan "tests/examples/RealGHC.lhs" 846 1 846 1 , SrcSpan "tests/examples/RealGHC.lhs" 847 1 847 1 , SrcSpan "tests/examples/RealGHC.lhs" 848 1 848 1 , SrcSpan "tests/examples/RealGHC.lhs" 849 1 849 1 , SrcSpan "tests/examples/RealGHC.lhs" 850 1 850 1 , SrcSpan "tests/examples/RealGHC.lhs" 853 1 853 1 , SrcSpan "tests/examples/RealGHC.lhs" 854 1 854 1 , SrcSpan "tests/examples/RealGHC.lhs" 855 1 855 1 , SrcSpan "tests/examples/RealGHC.lhs" 859 1 859 1 , SrcSpan "tests/examples/RealGHC.lhs" 863 1 863 1 , SrcSpan "tests/examples/RealGHC.lhs" 870 1 870 1 , SrcSpan "tests/examples/RealGHC.lhs" 871 1 871 1 , SrcSpan "tests/examples/RealGHC.lhs" 915 1 915 1 , SrcSpan "tests/examples/RealGHC.lhs" 915 1 915 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 17 1 36 12 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 17 1 17 7 , SrcSpan "tests/examples/RealGHC.lhs" 36 7 36 12 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 17 8 17 13 , srcInfoPoints = [] } "Rules") Nothing (Just (ExportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 17 14 36 6 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 17 14 17 15 , SrcSpan "tests/examples/RealGHC.lhs" 19 13 19 14 , SrcSpan "tests/examples/RealGHC.lhs" 22 18 22 19 , SrcSpan "tests/examples/RealGHC.lhs" 22 30 22 31 , SrcSpan "tests/examples/RealGHC.lhs" 22 50 22 51 , SrcSpan "tests/examples/RealGHC.lhs" 23 18 23 19 , SrcSpan "tests/examples/RealGHC.lhs" 23 31 23 32 , SrcSpan "tests/examples/RealGHC.lhs" 26 21 26 22 , SrcSpan "tests/examples/RealGHC.lhs" 29 15 29 16 , SrcSpan "tests/examples/RealGHC.lhs" 29 31 29 32 , SrcSpan "tests/examples/RealGHC.lhs" 29 44 29 45 , SrcSpan "tests/examples/RealGHC.lhs" 30 25 30 26 , SrcSpan "tests/examples/RealGHC.lhs" 33 21 33 22 , SrcSpan "tests/examples/RealGHC.lhs" 33 31 33 32 , SrcSpan "tests/examples/RealGHC.lhs" 33 48 33 49 , SrcSpan "tests/examples/RealGHC.lhs" 35 19 35 20 , SrcSpan "tests/examples/RealGHC.lhs" 35 32 35 33 , SrcSpan "tests/examples/RealGHC.lhs" 36 5 36 6 ] } [ EAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 19 5 19 13 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 19 5 19 13 , srcInfoPoints = [] }) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 19 5 19 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 19 5 19 13 , srcInfoPoints = [] } "RuleBase")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 5 22 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 5 22 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 5 22 18 , srcInfoPoints = [] } "emptyRuleBase")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 20 22 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 20 22 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 20 22 30 , srcInfoPoints = [] } "mkRuleBase")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 32 22 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 32 22 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 22 32 22 50 , srcInfoPoints = [] } "extendRuleBaseList")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 23 5 23 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 23 5 23 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 23 5 23 18 , srcInfoPoints = [] } "unionRuleBase")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 23 20 23 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 23 20 23 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 23 20 23 31 , srcInfoPoints = [] } "pprRuleBase")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 26 5 26 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 26 5 26 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 26 5 26 21 , srcInfoPoints = [] } "ruleCheckProgram")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 5 29 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 5 29 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 5 29 15 , srcInfoPoints = [] } "mkSpecInfo")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 17 29 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 17 29 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 17 29 31 , srcInfoPoints = [] } "extendSpecInfo")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 33 29 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 33 29 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 29 33 29 44 , srcInfoPoints = [] } "addSpecInfo")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 30 5 30 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 30 5 30 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 30 5 30 25 , srcInfoPoints = [] } "addIdSpecialisations")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 9 33 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 9 33 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 9 33 21 , srcInfoPoints = [] } "rulesOfBinds")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 23 33 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 23 33 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 23 33 31 , srcInfoPoints = [] } "getRules")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 33 33 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 33 33 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 33 33 33 48 , srcInfoPoints = [] } "pprRulesForUser")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 9 35 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 9 35 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 9 35 19 , srcInfoPoints = [] } "lookupRule")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 21 35 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 21 35 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 21 35 32 , srcInfoPoints = [] } "mkLocalRule")) , EVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 34 35 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 34 35 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 35 34 35 47 , srcInfoPoints = [] } "roughTopNames")) ])))) [ OptionsPragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 7 1 7 19 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 7 1 7 16 , SrcSpan "tests/examples/RealGHC.lhs" 7 16 7 19 ] } Nothing "-w " , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 8 1 8 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 8 1 8 13 , SrcSpan "tests/examples/RealGHC.lhs" 8 28 8 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 8 14 8 27 , srcInfoPoints = [] } "PatternGuards" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 40 1 40 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 40 1 40 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 40 8 40 15 , srcInfoPoints = [] } "CoreSyn" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 41 1 41 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 41 1 41 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 41 8 41 17 , srcInfoPoints = [] } "OccurAnal" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 41 21 41 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 41 21 41 22 , SrcSpan "tests/examples/RealGHC.lhs" 41 40 41 41 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 41 23 41 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 41 23 41 39 , srcInfoPoints = [] } "occurAnalyseExpr") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 1 42 81 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 42 1 42 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 8 42 15 , srcInfoPoints = [] } "CoreFVs" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 21 42 81 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 42 21 42 22 , SrcSpan "tests/examples/RealGHC.lhs" 42 35 42 36 , SrcSpan "tests/examples/RealGHC.lhs" 42 50 42 51 , SrcSpan "tests/examples/RealGHC.lhs" 42 64 42 65 , SrcSpan "tests/examples/RealGHC.lhs" 42 80 42 81 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 23 42 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 23 42 35 , srcInfoPoints = [] } "exprFreeVars") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 37 42 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 37 42 50 , srcInfoPoints = [] } "exprsFreeVars") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 52 42 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 52 42 64 , srcInfoPoints = [] } "bindFreeVars") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 66 42 79 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 42 66 42 79 , srcInfoPoints = [] } "rulesFreeVars") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 43 1 43 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 43 1 43 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 43 8 43 17 , srcInfoPoints = [] } "CoreUtils" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 43 21 43 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 43 21 43 22 , SrcSpan "tests/examples/RealGHC.lhs" 43 32 43 33 , SrcSpan "tests/examples/RealGHC.lhs" 43 43 43 44 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 43 23 43 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 43 23 43 32 , srcInfoPoints = [] } "tcEqExprX") , IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 43 34 43 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 43 34 43 42 , srcInfoPoints = [] } "exprType") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 44 1 44 33 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 44 1 44 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 44 8 44 15 , srcInfoPoints = [] } "PprCore" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 44 21 44 33 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 44 21 44 22 , SrcSpan "tests/examples/RealGHC.lhs" 44 32 44 33 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 44 23 44 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 44 23 44 31 , srcInfoPoints = [] } "pprRules") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 1 45 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 45 1 45 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 8 45 12 , srcInfoPoints = [] } "Type" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 17 45 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 45 17 45 18 , SrcSpan "tests/examples/RealGHC.lhs" 45 23 45 24 , SrcSpan "tests/examples/RealGHC.lhs" 45 36 45 37 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 19 45 23 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 19 45 23 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 19 45 23 , srcInfoPoints = [] } "Type") , IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 25 45 35 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 25 45 35 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 45 25 45 35 , srcInfoPoints = [] } "TvSubstEnv") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 46 1 46 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 46 1 46 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 46 8 46 16 , srcInfoPoints = [] } "Coercion" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 46 25 46 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 46 25 46 26 , SrcSpan "tests/examples/RealGHC.lhs" 46 40 46 41 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 46 27 46 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 46 27 46 39 , srcInfoPoints = [] } "coercionKind") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 47 1 47 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 47 1 47 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 47 8 47 14 , srcInfoPoints = [] } "TcType" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 47 21 47 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 47 21 47 22 , SrcSpan "tests/examples/RealGHC.lhs" 47 45 47 46 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 47 23 47 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 47 23 47 44 , srcInfoPoints = [] } "tcSplitTyConApp_maybe") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 48 1 48 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 48 1 48 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 48 8 48 16 , srcInfoPoints = [] } "CoreTidy" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 48 21 48 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 48 21 48 22 , SrcSpan "tests/examples/RealGHC.lhs" 48 33 48 34 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 48 23 48 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 48 23 48 32 , srcInfoPoints = [] } "tidyRules") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 49 1 49 10 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 49 1 49 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 49 8 49 10 , srcInfoPoints = [] } "Id" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 50 1 50 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 50 1 50 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 50 8 50 14 , srcInfoPoints = [] } "IdInfo" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 50 21 50 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 50 21 50 22 , SrcSpan "tests/examples/RealGHC.lhs" 50 44 50 45 ] } False [ IThingWith SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 50 23 50 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 50 31 50 32 , SrcSpan "tests/examples/RealGHC.lhs" 50 42 50 43 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 50 23 50 31 , srcInfoPoints = [] } "SpecInfo") [ ConName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 50 33 50 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 50 33 50 41 , srcInfoPoints = [] } "SpecInfo") ] ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 51 1 51 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 51 1 51 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 51 8 51 11 , srcInfoPoints = [] } "Var" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 51 17 51 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 51 17 51 18 , SrcSpan "tests/examples/RealGHC.lhs" 51 23 51 24 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 51 19 51 22 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 51 19 51 22 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 51 19 51 22 , srcInfoPoints = [] } "Var") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 52 1 52 14 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 52 1 52 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 52 8 52 14 , srcInfoPoints = [] } "VarEnv" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 53 1 53 14 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 53 1 53 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 53 8 53 14 , srcInfoPoints = [] } "VarSet" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 54 1 54 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 54 1 54 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 54 8 54 12 , srcInfoPoints = [] } "Name" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 54 17 54 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 54 17 54 18 , SrcSpan "tests/examples/RealGHC.lhs" 54 23 54 24 , SrcSpan "tests/examples/RealGHC.lhs" 54 40 54 41 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 54 19 54 23 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 54 19 54 23 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 54 19 54 23 , srcInfoPoints = [] } "Name") , IThingAll SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 54 25 54 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 54 35 54 36 , SrcSpan "tests/examples/RealGHC.lhs" 54 36 54 38 , SrcSpan "tests/examples/RealGHC.lhs" 54 38 54 39 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 54 25 54 35 , srcInfoPoints = [] } "NamedThing") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 55 1 55 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 55 1 55 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 55 8 55 15 , srcInfoPoints = [] } "NameEnv" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 56 1 56 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 56 1 56 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 56 8 56 13 , srcInfoPoints = [] } "Unify" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 56 21 56 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 56 21 56 22 , SrcSpan "tests/examples/RealGHC.lhs" 56 35 56 36 , SrcSpan "tests/examples/RealGHC.lhs" 56 50 56 51 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 56 23 56 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 56 23 56 35 , srcInfoPoints = [] } "ruleMatchTyX") , IThingAll SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 56 37 56 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 56 45 56 46 , SrcSpan "tests/examples/RealGHC.lhs" 56 46 56 48 , SrcSpan "tests/examples/RealGHC.lhs" 56 48 56 49 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 56 37 56 45 , srcInfoPoints = [] } "MatchEnv") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 57 1 57 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 57 1 57 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 57 8 57 18 , srcInfoPoints = [] } "BasicTypes" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 57 21 57 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 57 21 57 22 , SrcSpan "tests/examples/RealGHC.lhs" 57 34 57 35 ] } False [ IAbs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 57 23 57 33 , srcInfoPoints = [] } (NoNamespace SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 57 23 57 33 , srcInfoPoints = [] }) (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 57 23 57 33 , srcInfoPoints = [] } "Activation") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 58 1 58 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 58 1 58 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 58 8 58 19 , srcInfoPoints = [] } "StaticFlags" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 58 21 58 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 58 21 58 22 , SrcSpan "tests/examples/RealGHC.lhs" 58 42 58 43 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 58 23 58 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 58 23 58 41 , srcInfoPoints = [] } "opt_PprStyle_Debug") ]) } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 59 1 59 18 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 59 1 59 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 59 8 59 18 , srcInfoPoints = [] } "Outputable" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 60 1 60 18 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 60 1 60 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 60 8 60 18 , srcInfoPoints = [] } "FastString" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 61 1 61 14 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 61 1 61 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 61 8 61 14 , srcInfoPoints = [] } "Maybes" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 62 1 62 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 62 1 62 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 62 8 62 15 , srcInfoPoints = [] } "OrdList" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 63 1 63 11 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 63 1 63 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 63 8 63 11 , srcInfoPoints = [] } "Bag" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 64 1 64 12 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 64 1 64 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 64 8 64 12 , srcInfoPoints = [] } "Util" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } , ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 65 1 65 17 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 65 1 65 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 65 8 65 17 , srcInfoPoints = [] } "Data.List" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 1 105 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 104 13 104 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 1 104 12 , srcInfoPoints = [] } "mkLocalRule" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 16 105 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 104 25 104 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 16 104 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 16 104 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 16 104 24 , srcInfoPoints = [] } "RuleName"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 28 105 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 105 9 105 11 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 28 104 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 28 104 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 104 28 104 38 , srcInfoPoints = [] } "Activation"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 12 105 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 105 17 105 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 12 105 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 12 105 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 12 105 16 , srcInfoPoints = [] } "Name"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 20 105 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 105 31 105 33 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 20 105 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 105 20 105 21 , SrcSpan "tests/examples/RealGHC.lhs" 105 29 105 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 21 105 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 21 105 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 21 105 29 , srcInfoPoints = [] } "CoreBndr")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 34 105 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 105 45 105 47 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 34 105 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 105 34 105 35 , SrcSpan "tests/examples/RealGHC.lhs" 105 43 105 44 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 35 105 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 35 105 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 35 105 43 , srcInfoPoints = [] } "CoreExpr")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 48 105 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 105 57 105 59 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 48 105 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 48 105 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 48 105 56 , srcInfoPoints = [] } "CoreExpr"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 60 105 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 60 105 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 105 60 105 68 , srcInfoPoints = [] } "CoreRule"))))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 1 112 25 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 1 112 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 1 108 12 , srcInfoPoints = [] } "mkLocalRule") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 13 108 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 13 108 17 , srcInfoPoints = [] } "name") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 18 108 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 18 108 21 , srcInfoPoints = [] } "act") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 22 108 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 22 108 24 , srcInfoPoints = [] } "fn") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 25 108 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 25 108 30 , srcInfoPoints = [] } "bndrs") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 31 108 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 31 108 35 , srcInfoPoints = [] } "args") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 36 108 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 108 36 108 39 , srcInfoPoints = [] } "rhs") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 3 112 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 109 3 109 4 ] } (RecConstr SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 5 112 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 109 10 109 11 , SrcSpan "tests/examples/RealGHC.lhs" 109 26 109 27 , SrcSpan "tests/examples/RealGHC.lhs" 109 38 109 39 , SrcSpan "tests/examples/RealGHC.lhs" 109 52 109 53 , SrcSpan "tests/examples/RealGHC.lhs" 110 24 110 25 , SrcSpan "tests/examples/RealGHC.lhs" 110 40 110 41 , SrcSpan "tests/examples/RealGHC.lhs" 111 20 111 21 , SrcSpan "tests/examples/RealGHC.lhs" 111 51 111 52 , SrcSpan "tests/examples/RealGHC.lhs" 112 24 112 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 5 109 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 5 109 9 , srcInfoPoints = [] } "Rule")) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 12 109 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 109 20 109 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 12 109 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 12 109 19 , srcInfoPoints = [] } "ru_name")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 22 109 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 22 109 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 22 109 26 , srcInfoPoints = [] } "name"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 28 109 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 109 34 109 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 28 109 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 28 109 33 , srcInfoPoints = [] } "ru_fn")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 36 109 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 36 109 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 36 109 38 , srcInfoPoints = [] } "fn"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 40 109 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 109 47 109 48 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 40 109 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 40 109 46 , srcInfoPoints = [] } "ru_act")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 49 109 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 49 109 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 109 49 109 52 , srcInfoPoints = [] } "act"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 8 110 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 110 17 110 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 8 110 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 8 110 16 , srcInfoPoints = [] } "ru_bndrs")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 19 110 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 19 110 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 19 110 24 , srcInfoPoints = [] } "bndrs"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 26 110 40 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 110 34 110 35 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 26 110 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 26 110 33 , srcInfoPoints = [] } "ru_args")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 36 110 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 36 110 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 110 36 110 40 , srcInfoPoints = [] } "args"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 8 111 20 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 111 15 111 16 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 8 111 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 8 111 14 , srcInfoPoints = [] } "ru_rhs")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 17 111 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 17 111 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 17 111 20 , srcInfoPoints = [] } "rhs"))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 22 111 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 111 31 111 32 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 22 111 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 22 111 30 , srcInfoPoints = [] } "ru_rough")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 33 111 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 33 111 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 33 111 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 33 111 46 , srcInfoPoints = [] } "roughTopNames"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 47 111 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 47 111 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 111 47 111 51 , srcInfoPoints = [] } "args")))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 112 8 112 23 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 112 17 112 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 112 8 112 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 112 8 112 16 , srcInfoPoints = [] } "ru_local")) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 112 19 112 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 112 19 112 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 112 19 112 23 , srcInfoPoints = [] } "True"))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 1 115 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 115 15 115 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 1 115 14 , srcInfoPoints = [] } "roughTopNames" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 18 115 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 115 29 115 31 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 18 115 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 115 18 115 19 , SrcSpan "tests/examples/RealGHC.lhs" 115 27 115 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 19 115 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 19 115 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 19 115 27 , srcInfoPoints = [] } "CoreExpr")))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 32 115 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 115 32 115 33 , SrcSpan "tests/examples/RealGHC.lhs" 115 43 115 44 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 33 115 43 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 33 115 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 33 115 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 33 115 38 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 39 115 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 39 115 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 115 39 115 43 , srcInfoPoints = [] } "Name")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 1 126 43 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 1 126 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 1 126 14 , srcInfoPoints = [] } "roughTopNames") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 15 126 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 15 126 19 , srcInfoPoints = [] } "args") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 20 126 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 126 20 126 21 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 22 126 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 22 126 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 22 126 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 22 126 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 22 126 25 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 26 126 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 26 126 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 26 126 38 , srcInfoPoints = [] } "roughTopName")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 39 126 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 39 126 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 126 39 126 43 , srcInfoPoints = [] } "args"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 1 128 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 128 14 128 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 1 128 13 , srcInfoPoints = [] } "roughTopName" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 17 128 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 128 26 128 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 17 128 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 17 128 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 17 128 25 , srcInfoPoints = [] } "CoreExpr"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 29 128 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 29 128 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 29 128 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 29 128 34 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 35 128 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 35 128 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 128 35 128 39 , srcInfoPoints = [] } "Name"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 1 135 29 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 1 131 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 1 129 13 , srcInfoPoints = [] } "roughTopName") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 14 129 23 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 129 14 129 15 , SrcSpan "tests/examples/RealGHC.lhs" 129 22 129 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 15 129 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 15 129 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 15 129 19 , srcInfoPoints = [] } "Type")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 20 129 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 20 129 22 , srcInfoPoints = [] } "ty") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 24 131 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 129 24 129 25 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 26 131 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 129 26 129 30 , SrcSpan "tests/examples/RealGHC.lhs" 129 56 129 58 , SrcSpan "tests/examples/RealGHC.lhs" 130 15 130 15 , SrcSpan "tests/examples/RealGHC.lhs" 131 15 131 15 , SrcSpan "tests/examples/RealGHC.lhs" 132 1 132 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 31 129 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 31 129 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 31 129 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 31 129 52 , srcInfoPoints = [] } "tcSplitTyConApp_maybe"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 53 129 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 53 129 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 129 53 129 55 , srcInfoPoints = [] } "ty")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 15 130 47 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 15 130 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 15 130 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 15 130 19 , srcInfoPoints = [] } "Just")) [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 20 130 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 130 20 130 21 , SrcSpan "tests/examples/RealGHC.lhs" 130 23 130 24 , SrcSpan "tests/examples/RealGHC.lhs" 130 25 130 26 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 21 130 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 21 130 23 , srcInfoPoints = [] } "tc") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 24 130 25 , srcInfoPoints = [] } ] ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 27 130 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 130 27 130 29 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 30 130 47 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 30 130 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 30 130 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 30 130 34 , srcInfoPoints = [] } "Just"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 35 130 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 130 35 130 36 , SrcSpan "tests/examples/RealGHC.lhs" 130 46 130 47 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 36 130 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 36 130 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 36 130 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 36 130 43 , srcInfoPoints = [] } "getName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 44 130 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 44 130 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 130 44 130 46 , srcInfoPoints = [] } "tc"))))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 131 15 131 37 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 131 15 131 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 131 15 131 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 131 15 131 22 , srcInfoPoints = [] } "Nothing")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 131 27 131 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 131 27 131 29 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 131 30 131 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 131 30 131 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 131 30 131 37 , srcInfoPoints = [] } "Nothing")))) Nothing ])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 1 132 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 1 132 13 , srcInfoPoints = [] } "roughTopName") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 14 132 23 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 132 14 132 15 , SrcSpan "tests/examples/RealGHC.lhs" 132 22 132 23 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 15 132 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 15 132 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 15 132 18 , srcInfoPoints = [] } "App")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 19 132 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 19 132 20 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 21 132 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 21 132 22 , srcInfoPoints = [] } "a") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 24 132 40 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 132 24 132 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 26 132 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 26 132 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 26 132 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 26 132 38 , srcInfoPoints = [] } "roughTopName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 39 132 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 39 132 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 132 39 132 40 , srcInfoPoints = [] } "f"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 1 134 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 1 133 13 , srcInfoPoints = [] } "roughTopName") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 14 133 21 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 133 14 133 15 , SrcSpan "tests/examples/RealGHC.lhs" 133 20 133 21 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 15 133 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 15 133 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 15 133 18 , srcInfoPoints = [] } "Var")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 19 133 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 19 133 20 , srcInfoPoints = [] } "f") ]) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 22 134 38 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 22 133 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 133 22 133 23 , SrcSpan "tests/examples/RealGHC.lhs" 133 37 133 38 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 24 133 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 24 133 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 24 133 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 24 133 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 24 133 34 , srcInfoPoints = [] } "isGlobalId"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 35 133 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 35 133 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 35 133 36 , srcInfoPoints = [] } "f")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 39 133 54 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 39 133 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 39 133 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 39 133 43 , srcInfoPoints = [] } "Just"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 44 133 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 133 44 133 45 , SrcSpan "tests/examples/RealGHC.lhs" 133 53 133 54 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 45 133 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 45 133 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 45 133 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 45 133 51 , srcInfoPoints = [] } "idName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 52 133 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 52 133 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 133 52 133 53 , srcInfoPoints = [] } "f")))))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 134 14 134 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 134 14 134 15 , SrcSpan "tests/examples/RealGHC.lhs" 134 29 134 30 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 134 16 134 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 134 16 134 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 134 16 134 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 134 16 134 25 , srcInfoPoints = [] } "otherwise"))) ] (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 134 31 134 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 134 31 134 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 134 31 134 38 , srcInfoPoints = [] } "Nothing"))) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 135 1 135 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 135 1 135 13 , srcInfoPoints = [] } "roughTopName") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 135 14 135 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 135 14 135 19 , srcInfoPoints = [] } "other") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 135 20 135 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 135 20 135 21 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 135 22 135 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 135 22 135 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 135 22 135 29 , srcInfoPoints = [] } "Nothing")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 1 137 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 137 15 137 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 1 137 14 , srcInfoPoints = [] } "ruleCantMatch" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 18 137 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 137 31 137 33 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 18 137 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 137 18 137 19 , SrcSpan "tests/examples/RealGHC.lhs" 137 29 137 30 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 19 137 29 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 19 137 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 19 137 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 19 137 24 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 25 137 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 25 137 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 25 137 29 , srcInfoPoints = [] } "Name"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 34 137 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 137 47 137 49 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 34 137 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 137 34 137 35 , SrcSpan "tests/examples/RealGHC.lhs" 137 45 137 46 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 35 137 45 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 35 137 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 35 137 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 35 137 40 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 41 137 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 41 137 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 41 137 45 , srcInfoPoints = [] } "Name"))))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 50 137 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 50 137 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 137 50 137 54 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 1 152 44 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 1 150 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 1 150 14 , srcInfoPoints = [] } "ruleCantMatch") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 15 150 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 150 15 150 16 , SrcSpan "tests/examples/RealGHC.lhs" 150 28 150 29 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 16 150 28 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 16 150 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 16 150 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 16 150 20 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 21 150 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 21 150 23 , srcInfoPoints = [] } "n1") ]) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 24 150 25 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 24 150 25 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 26 150 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 26 150 28 , srcInfoPoints = [] } "ts"))) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 30 150 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 150 30 150 31 , SrcSpan "tests/examples/RealGHC.lhs" 150 43 150 44 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 31 150 43 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 31 150 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 31 150 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 31 150 35 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 36 150 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 36 150 38 , srcInfoPoints = [] } "n2") ]) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 39 150 40 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 39 150 40 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 41 150 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 41 150 43 , srcInfoPoints = [] } "as"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 45 150 78 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 150 45 150 46 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 47 150 78 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 47 150 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 47 150 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 47 150 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 47 150 49 , srcInfoPoints = [] } "n1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 50 150 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 50 150 52 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 50 150 52 , srcInfoPoints = [] } "/="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 53 150 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 53 150 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 53 150 55 , srcInfoPoints = [] } "n2")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 56 150 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 56 150 58 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 56 150 58 , srcInfoPoints = [] } "||"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 59 150 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 59 150 75 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 59 150 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 59 150 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 59 150 72 , srcInfoPoints = [] } "ruleCantMatch"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 73 150 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 73 150 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 73 150 75 , srcInfoPoints = [] } "ts")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 76 150 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 76 150 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 150 76 150 78 , srcInfoPoints = [] } "as")))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 1 151 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 1 151 14 , srcInfoPoints = [] } "ruleCantMatch") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 15 151 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 151 15 151 16 , SrcSpan "tests/examples/RealGHC.lhs" 151 28 151 29 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 16 151 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 16 151 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 16 151 17 , srcInfoPoints = [] } "t")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 24 151 25 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 24 151 25 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 26 151 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 26 151 28 , srcInfoPoints = [] } "ts"))) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 30 151 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 151 30 151 31 , SrcSpan "tests/examples/RealGHC.lhs" 151 43 151 44 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 31 151 43 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 31 151 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 31 151 32 , srcInfoPoints = [] } "a")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 39 151 40 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 39 151 40 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 41 151 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 41 151 43 , srcInfoPoints = [] } "as"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 45 151 66 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 151 45 151 46 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 47 151 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 47 151 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 47 151 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 47 151 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 47 151 60 , srcInfoPoints = [] } "ruleCantMatch"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 61 151 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 61 151 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 61 151 63 , srcInfoPoints = [] } "ts")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 64 151 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 64 151 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 151 64 151 66 , srcInfoPoints = [] } "as"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 1 152 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 1 152 14 , srcInfoPoints = [] } "ruleCantMatch") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 15 152 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 15 152 17 , srcInfoPoints = [] } "ts") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 26 152 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 26 152 28 , srcInfoPoints = [] } "as") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 37 152 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 152 37 152 38 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 39 152 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 39 152 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 152 39 152 44 , srcInfoPoints = [] } "False")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 1 156 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 156 17 156 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 1 156 16 , srcInfoPoints = [] } "pprRulesForUser" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 20 156 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 156 31 156 33 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 20 156 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 156 20 156 21 , SrcSpan "tests/examples/RealGHC.lhs" 156 29 156 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 21 156 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 21 156 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 21 156 29 , srcInfoPoints = [] } "CoreRule")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 34 156 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 34 156 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 156 34 156 38 , srcInfoPoints = [] } "SDoc")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 162 1 168 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 167 3 167 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 162 1 168 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 167 3 167 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 162 1 162 16 , srcInfoPoints = [] } "pprRulesForUser") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 162 17 162 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 162 17 162 22 , srcInfoPoints = [] } "rules") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 3 166 33 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 163 3 163 4 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 5 166 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 5 163 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 5 163 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 5 163 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 5 163 17 , srcInfoPoints = [] } "withPprStyle"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 18 163 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 18 163 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 18 163 34 , srcInfoPoints = [] } "defaultUserStyle")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 35 163 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 35 163 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 163 35 163 36 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 164 5 166 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 164 5 164 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 164 5 164 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 164 5 164 13 , srcInfoPoints = [] } "pprRules"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 164 14 164 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 164 14 164 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 164 14 164 15 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 5 166 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 5 165 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 5 165 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 5 165 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 5 165 11 , srcInfoPoints = [] } "sortLe"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 12 165 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 12 165 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 12 165 19 , srcInfoPoints = [] } "le_rule")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 21 165 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 21 165 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 165 21 165 22 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 5 166 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 5 166 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 5 166 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 5 166 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 5 166 14 , srcInfoPoints = [] } "tidyRules"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 15 166 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 15 166 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 15 166 27 , srcInfoPoints = [] } "emptyTidyEnv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 28 166 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 28 166 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 166 28 166 33 , srcInfoPoints = [] } "rules")))))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 5 168 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 168 5 168 5 , SrcSpan "tests/examples/RealGHC.lhs" 181 1 181 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 5 168 45 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 5 168 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 5 168 12 , srcInfoPoints = [] } "le_rule") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 13 168 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 13 168 15 , srcInfoPoints = [] } "r1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 16 168 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 16 168 18 , srcInfoPoints = [] } "r2") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 19 168 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 168 19 168 20 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 21 168 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 21 168 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 21 168 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 21 168 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 21 168 28 , srcInfoPoints = [] } "ru_name"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 29 168 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 29 168 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 29 168 31 , srcInfoPoints = [] } "r1")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 32 168 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 32 168 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 32 168 34 , srcInfoPoints = [] } "<="))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 35 168 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 35 168 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 35 168 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 35 168 42 , srcInfoPoints = [] } "ru_name"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 43 168 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 43 168 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 168 43 168 45 , srcInfoPoints = [] } "r2")))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 1 181 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 181 12 181 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 1 181 11 , srcInfoPoints = [] } "mkSpecInfo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 15 181 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 181 26 181 28 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 15 181 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 181 15 181 16 , SrcSpan "tests/examples/RealGHC.lhs" 181 24 181 25 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 16 181 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 16 181 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 16 181 24 , srcInfoPoints = [] } "CoreRule")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 29 181 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 29 181 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 181 29 181 37 , srcInfoPoints = [] } "SpecInfo")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 1 182 56 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 1 182 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 1 182 11 , srcInfoPoints = [] } "mkSpecInfo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 12 182 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 12 182 17 , srcInfoPoints = [] } "rules") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 18 182 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 182 18 182 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 20 182 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 20 182 34 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 20 182 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 20 182 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 20 182 28 , srcInfoPoints = [] } "SpecInfo"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 29 182 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 29 182 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 29 182 34 , srcInfoPoints = [] } "rules")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 35 182 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 182 35 182 36 , SrcSpan "tests/examples/RealGHC.lhs" 182 55 182 56 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 36 182 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 36 182 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 36 182 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 36 182 49 , srcInfoPoints = [] } "rulesFreeVars"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 50 182 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 50 182 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 182 50 182 55 , srcInfoPoints = [] } "rules"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 1 184 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 184 16 184 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 1 184 15 , srcInfoPoints = [] } "extendSpecInfo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 19 184 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 184 28 184 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 19 184 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 19 184 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 19 184 27 , srcInfoPoints = [] } "SpecInfo"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 31 184 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 184 42 184 44 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 31 184 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 184 31 184 32 , SrcSpan "tests/examples/RealGHC.lhs" 184 40 184 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 32 184 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 32 184 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 32 184 40 , srcInfoPoints = [] } "CoreRule")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 45 184 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 45 184 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 184 45 184 53 , srcInfoPoints = [] } "SpecInfo"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 1 186 65 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 1 186 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 1 185 15 , srcInfoPoints = [] } "extendSpecInfo") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 16 185 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 185 16 185 17 , SrcSpan "tests/examples/RealGHC.lhs" 185 34 185 35 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 17 185 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 17 185 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 17 185 25 , srcInfoPoints = [] } "SpecInfo")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 26 185 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 26 185 29 , srcInfoPoints = [] } "rs1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 30 185 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 30 185 34 , srcInfoPoints = [] } "fvs1") ]) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 36 185 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 185 36 185 39 , srcInfoPoints = [] } "rs2") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 3 186 65 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 186 3 186 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 5 186 65 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 5 186 26 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 5 186 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 5 186 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 5 186 13 , srcInfoPoints = [] } "SpecInfo"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 14 186 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 186 14 186 15 , SrcSpan "tests/examples/RealGHC.lhs" 186 25 186 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 15 186 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 15 186 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 15 186 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 15 186 18 , srcInfoPoints = [] } "rs2"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 19 186 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 19 186 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 19 186 21 , srcInfoPoints = [] } "++"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 22 186 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 22 186 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 22 186 25 , srcInfoPoints = [] } "rs1")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 27 186 65 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 186 27 186 28 , SrcSpan "tests/examples/RealGHC.lhs" 186 64 186 65 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 28 186 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 28 186 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 28 186 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 28 186 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 28 186 41 , srcInfoPoints = [] } "rulesFreeVars"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 42 186 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 42 186 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 42 186 45 , srcInfoPoints = [] } "rs2")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 46 186 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 186 46 186 47 , SrcSpan "tests/examples/RealGHC.lhs" 186 47 186 58 , SrcSpan "tests/examples/RealGHC.lhs" 186 58 186 59 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 46 186 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 186 46 186 47 , SrcSpan "tests/examples/RealGHC.lhs" 186 47 186 58 , SrcSpan "tests/examples/RealGHC.lhs" 186 58 186 59 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 47 186 58 , srcInfoPoints = [] } "unionVarSet"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 60 186 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 60 186 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 186 60 186 64 , srcInfoPoints = [] } "fvs1"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 1 188 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 188 13 188 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 1 188 12 , srcInfoPoints = [] } "addSpecInfo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 16 188 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 188 25 188 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 16 188 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 16 188 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 16 188 24 , srcInfoPoints = [] } "SpecInfo"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 28 188 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 188 37 188 39 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 28 188 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 28 188 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 28 188 36 , srcInfoPoints = [] } "SpecInfo"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 40 188 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 40 188 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 188 40 188 48 , srcInfoPoints = [] } "SpecInfo"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 1 190 52 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 1 190 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 1 189 12 , srcInfoPoints = [] } "addSpecInfo") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 13 189 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 189 13 189 14 , SrcSpan "tests/examples/RealGHC.lhs" 189 31 189 32 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 14 189 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 14 189 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 14 189 22 , srcInfoPoints = [] } "SpecInfo")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 23 189 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 23 189 26 , srcInfoPoints = [] } "rs1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 27 189 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 27 189 31 , srcInfoPoints = [] } "fvs1") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 33 189 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 189 33 189 34 , SrcSpan "tests/examples/RealGHC.lhs" 189 51 189 52 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 34 189 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 34 189 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 34 189 42 , srcInfoPoints = [] } "SpecInfo")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 43 189 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 43 189 46 , srcInfoPoints = [] } "rs2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 47 189 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 189 47 189 51 , srcInfoPoints = [] } "fvs2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 3 190 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 190 3 190 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 5 190 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 5 190 26 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 5 190 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 5 190 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 5 190 13 , srcInfoPoints = [] } "SpecInfo"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 14 190 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 190 14 190 15 , SrcSpan "tests/examples/RealGHC.lhs" 190 25 190 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 15 190 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 15 190 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 15 190 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 15 190 18 , srcInfoPoints = [] } "rs1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 19 190 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 19 190 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 19 190 21 , srcInfoPoints = [] } "++"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 22 190 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 22 190 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 22 190 25 , srcInfoPoints = [] } "rs2")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 27 190 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 190 27 190 28 , SrcSpan "tests/examples/RealGHC.lhs" 190 51 190 52 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 28 190 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 28 190 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 28 190 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 28 190 32 , srcInfoPoints = [] } "fvs1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 33 190 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 190 33 190 34 , SrcSpan "tests/examples/RealGHC.lhs" 190 34 190 45 , SrcSpan "tests/examples/RealGHC.lhs" 190 45 190 46 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 33 190 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 190 33 190 34 , SrcSpan "tests/examples/RealGHC.lhs" 190 34 190 45 , SrcSpan "tests/examples/RealGHC.lhs" 190 45 190 46 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 34 190 45 , srcInfoPoints = [] } "unionVarSet"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 47 190 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 47 190 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 190 47 190 51 , srcInfoPoints = [] } "fvs2"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 1 192 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 192 22 192 24 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 1 192 21 , srcInfoPoints = [] } "addIdSpecialisations" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 25 192 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 192 28 192 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 25 192 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 25 192 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 25 192 27 , srcInfoPoints = [] } "Id"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 31 192 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 192 42 192 44 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 31 192 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 192 31 192 32 , SrcSpan "tests/examples/RealGHC.lhs" 192 40 192 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 32 192 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 32 192 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 32 192 40 , srcInfoPoints = [] } "CoreRule")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 45 192 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 45 192 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 192 45 192 47 , srcInfoPoints = [] } "Id"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 193 1 197 47 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 193 1 194 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 193 1 193 21 , srcInfoPoints = [] } "addIdSpecialisations") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 193 22 193 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 193 22 193 24 , srcInfoPoints = [] } "id") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 193 25 193 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 193 25 193 26 , SrcSpan "tests/examples/RealGHC.lhs" 193 26 193 27 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 194 3 194 7 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 194 3 194 4 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 194 5 194 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 194 5 194 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 194 5 194 7 , srcInfoPoints = [] } "id")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 195 1 197 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 195 1 195 21 , srcInfoPoints = [] } "addIdSpecialisations") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 195 22 195 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 195 22 195 24 , srcInfoPoints = [] } "id") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 195 25 195 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 195 25 195 30 , srcInfoPoints = [] } "rules") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 3 197 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 196 3 196 4 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 5 197 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 5 196 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 5 196 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 5 196 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 5 196 24 , srcInfoPoints = [] } "setIdSpecialisation"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 25 196 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 25 196 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 25 196 27 , srcInfoPoints = [] } "id")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 28 196 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 28 196 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 196 28 196 29 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 5 197 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 5 197 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 5 197 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 5 197 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 5 197 19 , srcInfoPoints = [] } "extendSpecInfo"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 20 197 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 197 20 197 21 , SrcSpan "tests/examples/RealGHC.lhs" 197 40 197 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 21 197 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 21 197 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 21 197 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 21 197 37 , srcInfoPoints = [] } "idSpecialisation"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 38 197 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 38 197 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 38 197 40 , srcInfoPoints = [] } "id")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 42 197 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 42 197 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 197 42 197 47 , srcInfoPoints = [] } "rules")))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 1 200 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 200 14 200 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 1 200 13 , srcInfoPoints = [] } "rulesOfBinds" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 17 200 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 200 28 200 30 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 17 200 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 200 17 200 18 , SrcSpan "tests/examples/RealGHC.lhs" 200 26 200 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 18 200 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 18 200 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 18 200 26 , srcInfoPoints = [] } "CoreBind")))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 31 200 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 200 31 200 32 , SrcSpan "tests/examples/RealGHC.lhs" 200 40 200 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 32 200 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 32 200 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 200 32 200 40 , srcInfoPoints = [] } "CoreRule"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 1 201 73 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 1 201 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 1 201 13 , srcInfoPoints = [] } "rulesOfBinds") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 14 201 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 14 201 19 , srcInfoPoints = [] } "binds") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 20 201 73 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 201 20 201 21 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 22 201 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 22 201 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 22 201 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 22 201 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 22 201 31 , srcInfoPoints = [] } "concatMap"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 32 201 67 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 201 32 201 33 , SrcSpan "tests/examples/RealGHC.lhs" 201 66 201 67 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 33 201 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 33 201 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 33 201 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 33 201 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 33 201 42 , srcInfoPoints = [] } "concatMap"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 43 201 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 43 201 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 43 201 54 , srcInfoPoints = [] } "idCoreRules")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 55 201 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 55 201 56 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 55 201 56 , srcInfoPoints = [] } "."))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 57 201 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 57 201 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 57 201 66 , srcInfoPoints = [] } "bindersOf")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 68 201 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 68 201 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 201 68 201 73 , srcInfoPoints = [] } "binds"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 1 203 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 203 10 203 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 1 203 9 , srcInfoPoints = [] } "getRules" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 13 203 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 203 22 203 24 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 13 203 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 13 203 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 13 203 21 , srcInfoPoints = [] } "RuleBase"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 25 203 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 203 28 203 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 25 203 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 25 203 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 25 203 27 , srcInfoPoints = [] } "Id"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 31 203 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 203 31 203 32 , SrcSpan "tests/examples/RealGHC.lhs" 203 40 203 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 32 203 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 32 203 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 203 32 203 40 , srcInfoPoints = [] } "CoreRule")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 208 1 212 80 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 208 1 212 80 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 208 1 208 9 , srcInfoPoints = [] } "getRules") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 208 10 208 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 208 10 208 19 , srcInfoPoints = [] } "rule_base") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 208 20 208 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 208 20 208 22 , srcInfoPoints = [] } "fn") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 3 212 80 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 3 209 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 209 3 209 4 , SrcSpan "tests/examples/RealGHC.lhs" 209 19 209 20 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 5 209 17 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 5 209 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 5 209 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 5 209 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 5 209 14 , srcInfoPoints = [] } "isLocalId"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 15 209 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 15 209 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 15 209 17 , srcInfoPoints = [] } "fn")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 21 209 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 21 209 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 21 209 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 21 209 32 , srcInfoPoints = [] } "idCoreRules"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 33 209 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 33 209 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 209 33 209 35 , srcInfoPoints = [] } "fn")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 3 212 80 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 210 3 210 4 , SrcSpan "tests/examples/RealGHC.lhs" 210 19 210 20 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 5 210 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 5 210 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 5 210 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 5 210 14 , srcInfoPoints = [] } "otherwise"))) ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 21 212 80 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 21 212 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 21 212 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 21 211 48 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 21 210 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 21 210 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 21 210 25 , srcInfoPoints = [] } "WARN"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 25 211 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 210 25 210 26 , SrcSpan "tests/examples/RealGHC.lhs" 210 74 210 75 , SrcSpan "tests/examples/RealGHC.lhs" 211 47 211 48 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 27 210 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 27 210 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 27 210 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 27 210 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 27 210 30 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 31 210 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 210 31 210 32 , SrcSpan "tests/examples/RealGHC.lhs" 210 45 210 46 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 32 210 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 32 210 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 32 210 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 32 210 42 , srcInfoPoints = [] } "isPrimOpId"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 43 210 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 43 210 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 43 210 45 , srcInfoPoints = [] } "fn")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 47 210 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 47 210 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 47 210 49 , srcInfoPoints = [] } "&&"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 50 210 74 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 50 210 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 50 210 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 50 210 57 , srcInfoPoints = [] } "notNull"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 58 210 74 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 210 58 210 59 , SrcSpan "tests/examples/RealGHC.lhs" 210 73 210 74 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 59 210 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 59 210 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 59 210 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 59 210 70 , srcInfoPoints = [] } "idCoreRules"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 71 210 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 71 210 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 210 71 210 73 , srcInfoPoints = [] } "fn")))))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 15 211 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 15 211 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 15 211 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 15 211 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 15 211 18 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 19 211 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 19 211 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 19 211 21 , srcInfoPoints = [] } "fn")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 22 211 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 22 211 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 22 211 25 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 26 211 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 26 211 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 26 211 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 26 211 29 , srcInfoPoints = [] } "ppr"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 30 211 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 211 30 211 31 , SrcSpan "tests/examples/RealGHC.lhs" 211 45 211 46 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 31 211 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 31 211 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 31 211 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 31 211 42 , srcInfoPoints = [] } "idCoreRules"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 43 211 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 43 211 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 211 43 211 45 , srcInfoPoints = [] } "fn")))))) ])) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 13 212 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 13 212 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 13 212 24 , srcInfoPoints = [] } "idCoreRules")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 25 212 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 25 212 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 25 212 27 , srcInfoPoints = [] } "fn")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 28 212 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 28 212 30 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 28 212 30 , srcInfoPoints = [] } "++"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 31 212 80 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 212 31 212 32 , SrcSpan "tests/examples/RealGHC.lhs" 212 79 212 80 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 32 212 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 32 212 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 32 212 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 32 212 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 32 212 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 32 212 45 , srcInfoPoints = [] } "lookupNameEnv"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 46 212 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 46 212 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 46 212 55 , srcInfoPoints = [] } "rule_base")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 56 212 67 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 212 56 212 57 , SrcSpan "tests/examples/RealGHC.lhs" 212 66 212 67 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 57 212 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 57 212 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 57 212 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 57 212 63 , srcInfoPoints = [] } "idName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 64 212 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 64 212 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 64 212 66 , srcInfoPoints = [] } "fn")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 68 212 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 212 68 212 69 , SrcSpan "tests/examples/RealGHC.lhs" 212 69 212 75 , SrcSpan "tests/examples/RealGHC.lhs" 212 75 212 76 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 68 212 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 212 68 212 69 , SrcSpan "tests/examples/RealGHC.lhs" 212 69 212 75 , SrcSpan "tests/examples/RealGHC.lhs" 212 75 212 76 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 69 212 75 , srcInfoPoints = [] } "orElse"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 212 77 212 79 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 212 77 212 78 , SrcSpan "tests/examples/RealGHC.lhs" 212 78 212 79 ] } [])))) ]) Nothing ] , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 1 225 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 225 1 225 5 , SrcSpan "tests/examples/RealGHC.lhs" 225 15 225 16 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 6 225 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 6 225 14 , srcInfoPoints = [] } "RuleBase")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 17 225 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 17 225 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 17 225 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 17 225 24 , srcInfoPoints = [] } "NameEnv"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 25 225 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 225 25 225 26 , SrcSpan "tests/examples/RealGHC.lhs" 225 34 225 35 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 26 225 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 26 225 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 225 26 225 34 , srcInfoPoints = [] } "CoreRule"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 229 1 229 29 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 229 1 229 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 229 1 229 14 , srcInfoPoints = [] } "emptyRuleBase")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 229 15 229 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 229 15 229 16 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 229 17 229 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 229 17 229 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 229 17 229 29 , srcInfoPoints = [] } "emptyNameEnv")))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 1 231 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 231 12 231 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 1 231 11 , srcInfoPoints = [] } "mkRuleBase" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 15 231 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 231 26 231 28 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 15 231 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 231 15 231 16 , SrcSpan "tests/examples/RealGHC.lhs" 231 24 231 25 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 16 231 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 16 231 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 16 231 24 , srcInfoPoints = [] } "CoreRule")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 29 231 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 29 231 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 231 29 231 37 , srcInfoPoints = [] } "RuleBase")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 1 232 58 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 1 232 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 1 232 11 , srcInfoPoints = [] } "mkRuleBase") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 12 232 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 12 232 17 , srcInfoPoints = [] } "rules") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 18 232 58 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 232 18 232 19 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 20 232 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 20 232 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 20 232 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 20 232 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 20 232 38 , srcInfoPoints = [] } "extendRuleBaseList"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 39 232 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 39 232 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 39 232 52 , srcInfoPoints = [] } "emptyRuleBase")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 53 232 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 53 232 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 232 53 232 58 , srcInfoPoints = [] } "rules"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 1 234 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 234 20 234 22 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 1 234 19 , srcInfoPoints = [] } "extendRuleBaseList" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 23 234 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 234 32 234 34 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 23 234 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 23 234 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 23 234 31 , srcInfoPoints = [] } "RuleBase"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 35 234 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 234 46 234 48 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 35 234 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 234 35 234 36 , SrcSpan "tests/examples/RealGHC.lhs" 234 44 234 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 36 234 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 36 234 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 36 234 44 , srcInfoPoints = [] } "CoreRule")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 49 234 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 49 234 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 234 49 234 57 , srcInfoPoints = [] } "RuleBase"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 235 1 236 44 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 235 1 236 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 235 1 235 19 , srcInfoPoints = [] } "extendRuleBaseList") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 235 20 235 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 235 20 235 29 , srcInfoPoints = [] } "rule_base") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 235 30 235 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 235 30 235 38 , srcInfoPoints = [] } "new_guys") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 3 236 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 236 3 236 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 5 236 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 5 236 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 5 236 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 5 236 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 5 236 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 5 236 10 , srcInfoPoints = [] } "foldl"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 11 236 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 11 236 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 11 236 25 , srcInfoPoints = [] } "extendRuleBase")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 26 236 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 26 236 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 26 236 35 , srcInfoPoints = [] } "rule_base")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 36 236 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 36 236 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 236 36 236 44 , srcInfoPoints = [] } "new_guys"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 1 238 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 238 15 238 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 1 238 14 , srcInfoPoints = [] } "unionRuleBase" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 18 238 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 238 27 238 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 18 238 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 18 238 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 18 238 26 , srcInfoPoints = [] } "RuleBase"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 30 238 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 238 39 238 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 30 238 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 30 238 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 30 238 38 , srcInfoPoints = [] } "RuleBase"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 42 238 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 42 238 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 238 42 238 50 , srcInfoPoints = [] } "RuleBase"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 1 239 51 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 1 239 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 1 239 14 , srcInfoPoints = [] } "unionRuleBase") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 15 239 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 15 239 18 , srcInfoPoints = [] } "rb1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 19 239 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 19 239 22 , srcInfoPoints = [] } "rb2") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 23 239 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 239 23 239 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 25 239 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 25 239 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 25 239 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 25 239 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 25 239 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 25 239 38 , srcInfoPoints = [] } "plusNameEnv_C"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 39 239 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 239 39 239 40 , SrcSpan "tests/examples/RealGHC.lhs" 239 40 239 42 , SrcSpan "tests/examples/RealGHC.lhs" 239 42 239 43 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 39 239 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 239 39 239 40 , SrcSpan "tests/examples/RealGHC.lhs" 239 40 239 42 , SrcSpan "tests/examples/RealGHC.lhs" 239 42 239 43 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 40 239 42 , srcInfoPoints = [] } "++")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 44 239 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 44 239 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 44 239 47 , srcInfoPoints = [] } "rb1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 48 239 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 48 239 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 239 48 239 51 , srcInfoPoints = [] } "rb2"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 1 241 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 241 16 241 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 1 241 15 , srcInfoPoints = [] } "extendRuleBase" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 19 241 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 241 28 241 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 19 241 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 19 241 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 19 241 27 , srcInfoPoints = [] } "RuleBase"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 31 241 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 241 40 241 42 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 31 241 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 31 241 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 31 241 39 , srcInfoPoints = [] } "CoreRule"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 43 241 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 43 241 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 241 43 241 51 , srcInfoPoints = [] } "RuleBase"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 242 1 243 69 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 242 1 243 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 242 1 242 15 , srcInfoPoints = [] } "extendRuleBase") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 242 16 242 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 242 16 242 25 , srcInfoPoints = [] } "rule_base") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 242 26 242 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 242 26 242 30 , srcInfoPoints = [] } "rule") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 3 243 69 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 243 3 243 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 5 243 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 5 243 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 5 243 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 5 243 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 5 243 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 5 243 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 5 243 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 5 243 22 , srcInfoPoints = [] } "extendNameEnv_Acc"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 23 243 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 243 23 243 24 , SrcSpan "tests/examples/RealGHC.lhs" 243 24 243 25 , SrcSpan "tests/examples/RealGHC.lhs" 243 25 243 26 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 23 243 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 243 23 243 24 , SrcSpan "tests/examples/RealGHC.lhs" 243 24 243 25 , SrcSpan "tests/examples/RealGHC.lhs" 243 25 243 26 ] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 24 243 25 , srcInfoPoints = [] })))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 27 243 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 27 243 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 27 243 36 , srcInfoPoints = [] } "singleton")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 37 243 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 37 243 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 37 243 46 , srcInfoPoints = [] } "rule_base")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 47 243 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 243 47 243 48 , SrcSpan "tests/examples/RealGHC.lhs" 243 63 243 64 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 48 243 63 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 48 243 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 48 243 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 48 243 58 , srcInfoPoints = [] } "ruleIdName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 59 243 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 59 243 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 59 243 63 , srcInfoPoints = [] } "rule")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 65 243 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 65 243 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 243 65 243 69 , srcInfoPoints = [] } "rule"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 1 245 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 245 13 245 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 1 245 12 , srcInfoPoints = [] } "pprRuleBase" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 16 245 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 245 25 245 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 16 245 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 16 245 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 16 245 24 , srcInfoPoints = [] } "RuleBase"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 28 245 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 28 245 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 245 28 245 32 , srcInfoPoints = [] } "SDoc")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 1 247 41 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 1 247 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 1 246 12 , srcInfoPoints = [] } "pprRuleBase") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 13 246 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 13 246 18 , srcInfoPoints = [] } "rules") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 19 247 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 246 19 246 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 21 247 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 21 246 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 21 246 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 21 246 25 , srcInfoPoints = [] } "vcat"))) (ListComp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 26 247 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 246 26 246 27 , SrcSpan "tests/examples/RealGHC.lhs" 247 14 247 15 , SrcSpan "tests/examples/RealGHC.lhs" 247 40 247 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 28 246 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 28 246 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 28 246 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 28 246 36 , srcInfoPoints = [] } "pprRules"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 37 246 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 246 37 246 38 , SrcSpan "tests/examples/RealGHC.lhs" 246 63 246 64 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 38 246 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 38 246 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 38 246 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 38 246 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 38 246 47 , srcInfoPoints = [] } "tidyRules"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 48 246 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 48 246 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 48 246 60 , srcInfoPoints = [] } "emptyTidyEnv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 61 246 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 61 246 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 246 61 246 63 , srcInfoPoints = [] } "rs")))))) [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 16 247 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 247 19 247 21 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 16 247 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 247 19 247 21 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 16 247 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 16 247 18 , srcInfoPoints = [] } "rs")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 22 247 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 22 247 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 22 247 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 22 247 33 , srcInfoPoints = [] } "nameEnvElts"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 34 247 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 34 247 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 247 34 247 39 , srcInfoPoints = [] } "rules"))))) ]))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 1 280 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 278 12 278 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 1 278 11 , srcInfoPoints = [] } "lookupRule" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 15 280 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 278 36 278 38 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 15 278 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 278 15 278 16 , SrcSpan "tests/examples/RealGHC.lhs" 278 34 278 35 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 16 278 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 278 27 278 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 16 278 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 16 278 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 16 278 26 , srcInfoPoints = [] } "Activation"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 30 278 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 30 278 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 30 278 34 , srcInfoPoints = [] } "Bool"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 39 280 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 279 9 279 11 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 39 278 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 39 278 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 278 39 278 49 , srcInfoPoints = [] } "InScopeSet"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 12 280 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 279 15 279 17 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 12 279 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 12 279 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 12 279 14 , srcInfoPoints = [] } "Id"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 18 280 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 280 9 280 11 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 18 279 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 279 18 279 19 , SrcSpan "tests/examples/RealGHC.lhs" 279 27 279 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 19 279 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 19 279 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 279 19 279 27 , srcInfoPoints = [] } "CoreExpr")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 12 280 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 280 23 280 25 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 12 280 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 280 12 280 13 , SrcSpan "tests/examples/RealGHC.lhs" 280 21 280 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 13 280 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 13 280 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 13 280 21 , srcInfoPoints = [] } "CoreRule")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 26 280 52 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 26 280 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 26 280 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 26 280 31 , srcInfoPoints = [] } "Maybe"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 32 280 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 280 32 280 33 , SrcSpan "tests/examples/RealGHC.lhs" 280 41 280 42 , SrcSpan "tests/examples/RealGHC.lhs" 280 51 280 52 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 33 280 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 33 280 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 33 280 41 , srcInfoPoints = [] } "CoreRule")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 43 280 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 43 280 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 280 43 280 51 , srcInfoPoints = [] } "CoreExpr")) ]))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 1 298 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 289 3 289 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 1 298 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 289 3 289 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 1 284 11 , srcInfoPoints = [] } "lookupRule") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 12 284 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 12 284 21 , srcInfoPoints = [] } "is_active") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 22 284 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 22 284 30 , srcInfoPoints = [] } "in_scope") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 31 284 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 31 284 33 , srcInfoPoints = [] } "fn") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 34 284 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 34 284 38 , srcInfoPoints = [] } "args") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 39 284 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 284 39 284 44 , srcInfoPoints = [] } "rules") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 285 3 288 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 285 3 285 4 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 5 288 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 286 5 286 9 , SrcSpan "tests/examples/RealGHC.lhs" 286 22 286 24 , SrcSpan "tests/examples/RealGHC.lhs" 287 5 287 5 , SrcSpan "tests/examples/RealGHC.lhs" 288 5 288 5 , SrcSpan "tests/examples/RealGHC.lhs" 289 3 289 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 10 286 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 10 286 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 10 286 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 10 286 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 10 286 12 , srcInfoPoints = [] } "go"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 13 286 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 286 13 286 14 , SrcSpan "tests/examples/RealGHC.lhs" 286 14 286 15 ] } [])) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 16 286 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 16 286 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 286 16 286 21 , srcInfoPoints = [] } "rules")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 287 5 287 22 , srcInfoPoints = [] } (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 287 5 287 7 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 287 5 287 6 , SrcSpan "tests/examples/RealGHC.lhs" 287 6 287 7 ] } []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 287 12 287 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 287 12 287 14 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 287 15 287 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 287 15 287 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 287 15 287 22 , srcInfoPoints = [] } "Nothing")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 5 288 45 , srcInfoPoints = [] } (PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 5 288 11 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 288 5 288 6 , SrcSpan "tests/examples/RealGHC.lhs" 288 10 288 11 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 6 288 10 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 6 288 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 6 288 7 , srcInfoPoints = [] } "m")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 7 288 8 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 7 288 8 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 8 288 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 8 288 10 , srcInfoPoints = [] } "ms")))) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 12 288 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 288 12 288 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 15 288 45 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 15 288 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 15 288 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 15 288 19 , srcInfoPoints = [] } "Just"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 20 288 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 288 20 288 21 , SrcSpan "tests/examples/RealGHC.lhs" 288 44 288 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 21 288 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 21 288 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 21 288 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 21 288 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 21 288 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 21 288 29 , srcInfoPoints = [] } "findBest"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 30 288 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 288 30 288 31 , SrcSpan "tests/examples/RealGHC.lhs" 288 33 288 34 , SrcSpan "tests/examples/RealGHC.lhs" 288 38 288 39 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 31 288 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 31 288 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 31 288 33 , srcInfoPoints = [] } "fn")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 34 288 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 34 288 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 34 288 38 , srcInfoPoints = [] } "args")) ])) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 40 288 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 40 288 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 40 288 41 , srcInfoPoints = [] } "m")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 42 288 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 42 288 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 288 42 288 44 , srcInfoPoints = [] } "ms"))))))) Nothing ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 5 298 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 290 5 290 5 , SrcSpan "tests/examples/RealGHC.lhs" 292 5 292 5 , SrcSpan "tests/examples/RealGHC.lhs" 293 5 293 5 , SrcSpan "tests/examples/RealGHC.lhs" 294 5 294 5 , SrcSpan "tests/examples/RealGHC.lhs" 300 1 300 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 5 290 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 5 290 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 5 290 15 , srcInfoPoints = [] } "rough_args")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 16 290 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 290 16 290 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 18 290 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 18 290 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 18 290 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 18 290 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 18 290 21 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 22 290 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 22 290 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 22 290 34 , srcInfoPoints = [] } "roughTopName")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 35 290 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 35 290 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 290 35 290 39 , srcInfoPoints = [] } "args"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 5 292 71 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 292 8 292 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 5 292 7 , srcInfoPoints = [] } "go" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 11 292 71 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 292 33 292 35 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 11 292 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 292 11 292 12 , SrcSpan "tests/examples/RealGHC.lhs" 292 31 292 32 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 12 292 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 292 12 292 13 , SrcSpan "tests/examples/RealGHC.lhs" 292 21 292 22 , SrcSpan "tests/examples/RealGHC.lhs" 292 30 292 31 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 13 292 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 13 292 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 13 292 21 , srcInfoPoints = [] } "CoreRule")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 22 292 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 22 292 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 22 292 30 , srcInfoPoints = [] } "CoreExpr")) ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 36 292 71 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 292 47 292 49 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 36 292 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 292 36 292 37 , SrcSpan "tests/examples/RealGHC.lhs" 292 45 292 46 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 37 292 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 37 292 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 37 292 45 , srcInfoPoints = [] } "CoreRule")))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 50 292 71 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 292 50 292 51 , SrcSpan "tests/examples/RealGHC.lhs" 292 70 292 71 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 51 292 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 292 51 292 52 , SrcSpan "tests/examples/RealGHC.lhs" 292 60 292 61 , SrcSpan "tests/examples/RealGHC.lhs" 292 69 292 70 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 52 292 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 52 292 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 52 292 60 , srcInfoPoints = [] } "CoreRule")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 61 292 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 61 292 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 292 61 292 69 , srcInfoPoints = [] } "CoreExpr")) ])))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 5 298 36 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 5 293 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 5 293 7 , srcInfoPoints = [] } "go") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 8 293 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 8 293 10 , srcInfoPoints = [] } "ms") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 11 293 13 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 293 11 293 12 , SrcSpan "tests/examples/RealGHC.lhs" 293 12 293 13 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 24 293 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 293 24 293 25 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 26 293 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 26 293 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 293 26 293 28 , srcInfoPoints = [] } "ms")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 5 298 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 5 294 7 , srcInfoPoints = [] } "go") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 8 294 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 8 294 10 , srcInfoPoints = [] } "ms") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 11 294 17 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 294 11 294 12 , SrcSpan "tests/examples/RealGHC.lhs" 294 16 294 17 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 12 294 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 12 294 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 12 294 13 , srcInfoPoints = [] } "r")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 13 294 14 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 13 294 14 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 14 294 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 14 294 16 , srcInfoPoints = [] } "rs"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 18 298 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 294 18 294 19 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 20 298 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 294 20 294 24 , SrcSpan "tests/examples/RealGHC.lhs" 294 74 294 76 , SrcSpan "tests/examples/RealGHC.lhs" 295 13 295 13 , SrcSpan "tests/examples/RealGHC.lhs" 296 13 296 13 , SrcSpan "tests/examples/RealGHC.lhs" 300 1 300 0 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 25 294 73 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 294 25 294 26 , SrcSpan "tests/examples/RealGHC.lhs" 294 72 294 73 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 26 294 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 26 294 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 26 294 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 26 294 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 26 294 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 26 294 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 26 294 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 26 294 35 , srcInfoPoints = [] } "matchRule"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 36 294 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 36 294 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 36 294 45 , srcInfoPoints = [] } "is_active")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 46 294 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 46 294 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 46 294 54 , srcInfoPoints = [] } "in_scope")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 55 294 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 55 294 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 55 294 59 , srcInfoPoints = [] } "args")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 60 294 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 60 294 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 60 294 70 , srcInfoPoints = [] } "rough_args")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 71 294 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 71 294 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 294 71 294 72 , srcInfoPoints = [] } "r"))))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 13 295 40 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 13 295 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 13 295 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 13 295 17 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 18 295 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 18 295 19 , srcInfoPoints = [] } "e") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 21 295 40 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 295 21 295 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 24 295 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 24 295 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 24 295 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 24 295 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 24 295 26 , srcInfoPoints = [] } "go"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 27 295 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 295 27 295 28 , SrcSpan "tests/examples/RealGHC.lhs" 295 36 295 37 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 28 295 36 , srcInfoPoints = [] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 28 295 33 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 295 28 295 29 , SrcSpan "tests/examples/RealGHC.lhs" 295 30 295 31 , SrcSpan "tests/examples/RealGHC.lhs" 295 32 295 33 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 29 295 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 29 295 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 29 295 30 , srcInfoPoints = [] } "r")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 31 295 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 31 295 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 31 295 32 , srcInfoPoints = [] } "e")) ]) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 33 295 34 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 33 295 34 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 33 295 34 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 34 295 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 34 295 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 34 295 36 , srcInfoPoints = [] } "ms")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 38 295 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 38 295 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 295 38 295 40 , srcInfoPoints = [] } "rs"))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 296 13 298 36 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 296 13 296 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 296 13 296 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 296 13 296 20 , srcInfoPoints = [] } "Nothing")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 296 21 298 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 296 21 296 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 20 298 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 20 298 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 20 298 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 20 298 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 20 298 22 , srcInfoPoints = [] } "go"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 23 298 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 23 298 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 23 298 25 , srcInfoPoints = [] } "ms")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 34 298 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 34 298 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 298 34 298 36 , srcInfoPoints = [] } "rs"))))) Nothing ])) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 1 301 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 300 10 300 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 1 300 9 , srcInfoPoints = [] } "findBest" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 13 301 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 301 6 301 8 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 13 300 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 300 13 300 14 , SrcSpan "tests/examples/RealGHC.lhs" 300 16 300 17 , SrcSpan "tests/examples/RealGHC.lhs" 300 28 300 29 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 14 300 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 14 300 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 14 300 16 , srcInfoPoints = [] } "Id")) , TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 18 300 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 300 18 300 19 , SrcSpan "tests/examples/RealGHC.lhs" 300 27 300 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 19 300 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 19 300 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 300 19 300 27 , srcInfoPoints = [] } "CoreExpr"))) ]) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 9 301 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 301 29 301 31 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 9 301 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 301 9 301 10 , SrcSpan "tests/examples/RealGHC.lhs" 301 18 301 19 , SrcSpan "tests/examples/RealGHC.lhs" 301 27 301 28 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 10 301 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 10 301 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 10 301 18 , srcInfoPoints = [] } "CoreRule")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 19 301 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 19 301 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 19 301 27 , srcInfoPoints = [] } "CoreExpr")) ]) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 32 301 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 301 54 301 56 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 32 301 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 301 32 301 33 , SrcSpan "tests/examples/RealGHC.lhs" 301 52 301 53 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 33 301 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 301 33 301 34 , SrcSpan "tests/examples/RealGHC.lhs" 301 42 301 43 , SrcSpan "tests/examples/RealGHC.lhs" 301 51 301 52 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 34 301 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 34 301 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 34 301 42 , srcInfoPoints = [] } "CoreRule")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 43 301 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 43 301 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 43 301 51 , srcInfoPoints = [] } "CoreExpr")) ])) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 57 301 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 301 57 301 58 , SrcSpan "tests/examples/RealGHC.lhs" 301 66 301 67 , SrcSpan "tests/examples/RealGHC.lhs" 301 75 301 76 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 58 301 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 58 301 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 58 301 66 , srcInfoPoints = [] } "CoreRule")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 67 301 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 67 301 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 301 67 301 75 , srcInfoPoints = [] } "CoreExpr")) ])))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 1 322 23 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 1 306 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 1 306 9 , srcInfoPoints = [] } "findBest") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 10 306 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 10 306 16 , srcInfoPoints = [] } "target") , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 17 306 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 306 17 306 18 , SrcSpan "tests/examples/RealGHC.lhs" 306 22 306 23 , SrcSpan "tests/examples/RealGHC.lhs" 306 26 306 27 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 18 306 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 18 306 22 , srcInfoPoints = [] } "rule") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 23 306 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 23 306 26 , srcInfoPoints = [] } "ans") ] , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 30 306 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 306 30 306 31 , SrcSpan "tests/examples/RealGHC.lhs" 306 31 306 32 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 33 306 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 306 33 306 34 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 35 306 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 306 35 306 36 , SrcSpan "tests/examples/RealGHC.lhs" 306 40 306 41 , SrcSpan "tests/examples/RealGHC.lhs" 306 44 306 45 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 36 306 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 36 306 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 36 306 40 , srcInfoPoints = [] } "rule")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 41 306 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 41 306 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 306 41 306 44 , srcInfoPoints = [] } "ans")) ])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 1 322 23 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 321 3 321 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 1 307 9 , srcInfoPoints = [] } "findBest") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 10 307 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 10 307 16 , srcInfoPoints = [] } "target") , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 17 307 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 307 17 307 18 , SrcSpan "tests/examples/RealGHC.lhs" 307 23 307 24 , SrcSpan "tests/examples/RealGHC.lhs" 307 28 307 29 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 18 307 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 18 307 23 , srcInfoPoints = [] } "rule1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 24 307 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 24 307 28 , srcInfoPoints = [] } "ans1") ] , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 30 307 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 307 30 307 31 , SrcSpan "tests/examples/RealGHC.lhs" 307 47 307 48 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 31 307 47 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 31 307 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 307 31 307 32 , SrcSpan "tests/examples/RealGHC.lhs" 307 37 307 38 , SrcSpan "tests/examples/RealGHC.lhs" 307 42 307 43 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 32 307 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 32 307 37 , srcInfoPoints = [] } "rule2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 38 307 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 38 307 42 , srcInfoPoints = [] } "ans2") ]) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 43 307 44 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 43 307 44 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 44 307 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 307 44 307 47 , srcInfoPoints = [] } "prs"))) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 3 320 49 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 3 308 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 308 3 308 4 , SrcSpan "tests/examples/RealGHC.lhs" 308 34 308 35 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 5 308 33 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 5 308 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 5 308 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 5 308 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 5 308 10 , srcInfoPoints = [] } "rule1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 11 308 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 308 11 308 12 , SrcSpan "tests/examples/RealGHC.lhs" 308 12 308 26 , SrcSpan "tests/examples/RealGHC.lhs" 308 26 308 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 11 308 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 308 11 308 12 , SrcSpan "tests/examples/RealGHC.lhs" 308 12 308 26 , SrcSpan "tests/examples/RealGHC.lhs" 308 26 308 27 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 12 308 26 , srcInfoPoints = [] } "isMoreSpecific"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 28 308 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 28 308 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 28 308 33 , srcInfoPoints = [] } "rule2")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 36 308 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 36 308 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 36 308 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 36 308 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 36 308 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 36 308 44 , srcInfoPoints = [] } "findBest"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 45 308 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 45 308 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 45 308 51 , srcInfoPoints = [] } "target")))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 52 308 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 308 52 308 53 , SrcSpan "tests/examples/RealGHC.lhs" 308 58 308 59 , SrcSpan "tests/examples/RealGHC.lhs" 308 63 308 64 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 53 308 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 53 308 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 53 308 58 , srcInfoPoints = [] } "rule1")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 59 308 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 59 308 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 59 308 63 , srcInfoPoints = [] } "ans1")) ])) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 65 308 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 65 308 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 308 65 308 68 , srcInfoPoints = [] } "prs")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 3 309 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 309 3 309 4 , SrcSpan "tests/examples/RealGHC.lhs" 309 34 309 35 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 5 309 33 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 5 309 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 5 309 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 5 309 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 5 309 10 , srcInfoPoints = [] } "rule2"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 11 309 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 309 11 309 12 , SrcSpan "tests/examples/RealGHC.lhs" 309 12 309 26 , SrcSpan "tests/examples/RealGHC.lhs" 309 26 309 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 11 309 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 309 11 309 12 , SrcSpan "tests/examples/RealGHC.lhs" 309 12 309 26 , SrcSpan "tests/examples/RealGHC.lhs" 309 26 309 27 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 12 309 26 , srcInfoPoints = [] } "isMoreSpecific"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 28 309 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 28 309 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 28 309 33 , srcInfoPoints = [] } "rule1")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 36 309 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 36 309 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 36 309 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 36 309 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 36 309 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 36 309 44 , srcInfoPoints = [] } "findBest"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 45 309 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 45 309 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 45 309 51 , srcInfoPoints = [] } "target")))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 52 309 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 309 52 309 53 , SrcSpan "tests/examples/RealGHC.lhs" 309 58 309 59 , SrcSpan "tests/examples/RealGHC.lhs" 309 63 309 64 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 53 309 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 53 309 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 53 309 58 , srcInfoPoints = [] } "rule2")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 59 309 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 59 309 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 59 309 63 , srcInfoPoints = [] } "ans2")) ])) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 65 309 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 65 309 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 309 65 309 68 , srcInfoPoints = [] } "prs")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 3 319 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 310 3 310 4 , SrcSpan "tests/examples/RealGHC.lhs" 310 15 310 16 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 5 310 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 5 310 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 5 310 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 5 310 14 , srcInfoPoints = [] } "debugIsOn"))) ] (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 17 319 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 310 17 310 20 , SrcSpan "tests/examples/RealGHC.lhs" 313 17 313 19 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 21 312 83 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 310 21 310 21 , SrcSpan "tests/examples/RealGHC.lhs" 313 17 313 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 21 312 83 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 21 312 83 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 21 310 28 , srcInfoPoints = [] } "pp_rule") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 29 310 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 310 29 310 33 , srcInfoPoints = [] } "rule") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 25 312 83 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 25 311 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 311 25 311 26 , SrcSpan "tests/examples/RealGHC.lhs" 311 46 311 47 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 27 311 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 27 311 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 27 311 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 27 311 45 , srcInfoPoints = [] } "opt_PprStyle_Debug"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 48 311 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 48 311 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 48 311 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 48 311 51 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 52 311 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 52 311 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 311 52 311 56 , srcInfoPoints = [] } "rule")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 25 312 83 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 312 25 312 26 , SrcSpan "tests/examples/RealGHC.lhs" 312 46 312 47 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 27 312 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 27 312 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 27 312 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 27 312 36 , srcInfoPoints = [] } "otherwise"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 48 312 83 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 48 312 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 48 312 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 48 312 60 , srcInfoPoints = [] } "doubleQuotes"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 61 312 83 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 312 61 312 62 , SrcSpan "tests/examples/RealGHC.lhs" 312 82 312 83 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 62 312 82 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 62 312 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 62 312 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 62 312 67 , srcInfoPoints = [] } "ftext"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 68 312 82 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 312 68 312 69 , SrcSpan "tests/examples/RealGHC.lhs" 312 81 312 82 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 69 312 81 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 69 312 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 69 312 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 69 312 76 , srcInfoPoints = [] } "ru_name"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 77 312 81 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 77 312 81 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 312 77 312 81 , srcInfoPoints = [] } "rule")))))))) ]) Nothing ] ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 313 20 319 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 313 20 318 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 313 20 313 73 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 313 20 313 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 313 20 313 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 313 20 313 28 , srcInfoPoints = [] } "pprTrace"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 313 29 313 73 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 313 29 313 73 , srcInfoPoints = [] } "Rules.findBest: rule overlap (Rule 1 wins)" "Rules.findBest: rule overlap (Rule 1 wins)"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 22 318 71 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 314 22 314 23 , SrcSpan "tests/examples/RealGHC.lhs" 318 70 318 71 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 23 318 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 23 314 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 23 314 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 23 314 27 , srcInfoPoints = [] } "vcat"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 28 318 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 314 28 314 29 , SrcSpan "tests/examples/RealGHC.lhs" 316 43 316 44 , SrcSpan "tests/examples/RealGHC.lhs" 317 69 317 70 , SrcSpan "tests/examples/RealGHC.lhs" 318 69 318 70 ] } [ If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 29 316 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 314 29 314 31 , SrcSpan "tests/examples/RealGHC.lhs" 314 51 314 55 , SrcSpan "tests/examples/RealGHC.lhs" 316 33 316 37 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 32 314 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 32 314 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 314 32 314 50 , srcInfoPoints = [] } "opt_PprStyle_Debug"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 32 315 101 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 32 315 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 32 315 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 32 315 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 32 315 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 32 315 37 , srcInfoPoints = [] } "ptext"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 38 315 67 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 315 38 315 39 , SrcSpan "tests/examples/RealGHC.lhs" 315 66 315 67 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 39 315 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 39 315 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 39 315 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 39 315 43 , srcInfoPoints = [] } "sLit"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 44 315 66 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 44 315 66 , srcInfoPoints = [] } "Expression to match:" "Expression to match:"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 68 315 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 68 315 71 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 68 315 71 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 72 315 78 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 72 315 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 72 315 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 72 315 75 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 76 315 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 76 315 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 76 315 78 , srcInfoPoints = [] } "fn"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 79 315 82 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 79 315 82 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 79 315 82 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 83 315 101 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 83 315 86 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 83 315 86 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 83 315 86 , srcInfoPoints = [] } "sep"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 87 315 101 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 315 87 315 88 , SrcSpan "tests/examples/RealGHC.lhs" 315 100 315 101 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 88 315 100 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 88 315 95 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 88 315 91 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 88 315 91 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 88 315 91 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 92 315 95 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 92 315 95 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 92 315 95 , srcInfoPoints = [] } "ppr")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 96 315 100 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 96 315 100 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 315 96 315 100 , srcInfoPoints = [] } "args"))))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 316 38 316 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 316 38 316 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 316 38 316 43 , srcInfoPoints = [] } "empty"))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 29 317 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 29 317 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 29 317 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 29 317 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 29 317 34 , srcInfoPoints = [] } "ptext"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 35 317 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 317 35 317 36 , SrcSpan "tests/examples/RealGHC.lhs" 317 50 317 51 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 36 317 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 36 317 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 36 317 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 36 317 40 , srcInfoPoints = [] } "sLit"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 41 317 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 41 317 50 , srcInfoPoints = [] } "Rule 1:" "Rule 1:"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 52 317 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 52 317 55 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 52 317 55 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 56 317 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 56 317 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 56 317 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 56 317 63 , srcInfoPoints = [] } "pp_rule"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 64 317 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 64 317 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 317 64 317 69 , srcInfoPoints = [] } "rule1")))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 29 318 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 29 318 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 29 318 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 29 318 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 29 318 34 , srcInfoPoints = [] } "ptext"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 35 318 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 318 35 318 36 , SrcSpan "tests/examples/RealGHC.lhs" 318 50 318 51 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 36 318 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 36 318 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 36 318 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 36 318 40 , srcInfoPoints = [] } "sLit"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 41 318 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 41 318 50 , srcInfoPoints = [] } "Rule 2:" "Rule 2:"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 52 318 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 52 318 55 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 52 318 55 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 56 318 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 56 318 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 56 318 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 56 318 63 , srcInfoPoints = [] } "pp_rule"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 64 318 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 64 318 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 64 318 69 , srcInfoPoints = [] } "rule2")))) ])))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 72 318 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 72 318 73 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 318 72 318 73 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 25 319 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 25 319 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 25 319 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 25 319 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 25 319 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 25 319 33 , srcInfoPoints = [] } "findBest"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 34 319 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 34 319 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 34 319 40 , srcInfoPoints = [] } "target")))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 41 319 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 319 41 319 42 , SrcSpan "tests/examples/RealGHC.lhs" 319 47 319 48 , SrcSpan "tests/examples/RealGHC.lhs" 319 52 319 53 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 42 319 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 42 319 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 42 319 47 , srcInfoPoints = [] } "rule1")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 48 319 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 48 319 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 48 319 52 , srcInfoPoints = [] } "ans1")) ])) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 54 319 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 54 319 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 319 54 319 57 , srcInfoPoints = [] } "prs")))))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 3 320 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 320 3 320 4 , SrcSpan "tests/examples/RealGHC.lhs" 320 15 320 16 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 5 320 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 5 320 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 5 320 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 5 320 14 , srcInfoPoints = [] } "otherwise"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 17 320 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 17 320 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 17 320 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 17 320 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 17 320 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 17 320 25 , srcInfoPoints = [] } "findBest"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 26 320 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 26 320 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 26 320 32 , srcInfoPoints = [] } "target")))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 33 320 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 320 33 320 34 , SrcSpan "tests/examples/RealGHC.lhs" 320 39 320 40 , SrcSpan "tests/examples/RealGHC.lhs" 320 44 320 45 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 34 320 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 34 320 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 34 320 39 , srcInfoPoints = [] } "rule1")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 40 320 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 40 320 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 40 320 44 , srcInfoPoints = [] } "ans1")) ])) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 46 320 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 46 320 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 320 46 320 49 , srcInfoPoints = [] } "prs")))) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 5 322 23 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 322 5 322 5 , SrcSpan "tests/examples/RealGHC.lhs" 324 1 324 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 5 322 23 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 5 322 14 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 322 5 322 6 , SrcSpan "tests/examples/RealGHC.lhs" 322 8 322 9 , SrcSpan "tests/examples/RealGHC.lhs" 322 13 322 14 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 6 322 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 6 322 8 , srcInfoPoints = [] } "fn") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 9 322 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 9 322 13 , srcInfoPoints = [] } "args") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 15 322 23 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 322 15 322 16 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 17 322 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 17 322 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 322 17 322 23 , srcInfoPoints = [] } "target")))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 1 324 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 324 16 324 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 1 324 15 , srcInfoPoints = [] } "isMoreSpecific" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 19 324 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 324 28 324 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 19 324 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 19 324 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 19 324 27 , srcInfoPoints = [] } "CoreRule"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 31 324 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 324 40 324 42 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 31 324 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 31 324 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 31 324 39 , srcInfoPoints = [] } "CoreRule"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 43 324 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 43 324 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 324 43 324 47 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 1 331 45 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 1 325 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 1 325 15 , srcInfoPoints = [] } "isMoreSpecific") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 16 325 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 325 16 325 17 , SrcSpan "tests/examples/RealGHC.lhs" 325 31 325 32 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 17 325 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 325 29 325 30 , SrcSpan "tests/examples/RealGHC.lhs" 325 30 325 31 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 17 325 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 17 325 28 , srcInfoPoints = [] } "BuiltinRule")) []) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 33 325 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 33 325 35 , srcInfoPoints = [] } "r2") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 36 325 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 325 36 325 37 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 38 325 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 38 325 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 325 38 325 42 , srcInfoPoints = [] } "True")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 1 326 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 1 326 15 , srcInfoPoints = [] } "isMoreSpecific") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 16 326 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 16 326 18 , srcInfoPoints = [] } "r1") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 19 326 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 326 19 326 20 , SrcSpan "tests/examples/RealGHC.lhs" 326 34 326 35 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 20 326 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 326 32 326 33 , SrcSpan "tests/examples/RealGHC.lhs" 326 33 326 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 20 326 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 20 326 31 , srcInfoPoints = [] } "BuiltinRule")) []) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 36 326 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 326 36 326 37 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 38 326 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 38 326 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 326 38 326 43 , srcInfoPoints = [] } "False")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 1 331 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 330 3 330 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 1 327 15 , srcInfoPoints = [] } "isMoreSpecific") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 16 327 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 327 16 327 17 , SrcSpan "tests/examples/RealGHC.lhs" 327 60 327 61 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 17 327 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 327 22 327 23 , SrcSpan "tests/examples/RealGHC.lhs" 327 41 327 42 , SrcSpan "tests/examples/RealGHC.lhs" 327 59 327 60 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 17 327 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 17 327 21 , srcInfoPoints = [] } "Rule")) [ PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 24 327 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 327 33 327 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 24 327 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 24 327 32 , srcInfoPoints = [] } "ru_bndrs")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 35 327 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 35 327 41 , srcInfoPoints = [] } "bndrs1")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 43 327 58 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 327 51 327 52 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 43 327 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 43 327 50 , srcInfoPoints = [] } "ru_args")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 53 327 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 327 53 327 58 , srcInfoPoints = [] } "args1")) ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 12 328 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 328 12 328 13 , SrcSpan "tests/examples/RealGHC.lhs" 328 56 328 57 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 13 328 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 328 18 328 19 , SrcSpan "tests/examples/RealGHC.lhs" 328 37 328 38 , SrcSpan "tests/examples/RealGHC.lhs" 328 55 328 56 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 13 328 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 13 328 17 , srcInfoPoints = [] } "Rule")) [ PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 20 328 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 328 29 328 30 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 20 328 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 20 328 28 , srcInfoPoints = [] } "ru_bndrs")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 31 328 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 31 328 37 , srcInfoPoints = [] } "bndrs2")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 39 328 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 328 47 328 48 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 39 328 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 39 328 46 , srcInfoPoints = [] } "ru_args")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 49 328 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 328 49 328 54 , srcInfoPoints = [] } "args2")) ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 3 329 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 329 3 329 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 5 329 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 5 329 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 5 329 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 5 329 11 , srcInfoPoints = [] } "isJust"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 12 329 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 329 12 329 13 , SrcSpan "tests/examples/RealGHC.lhs" 329 47 329 48 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 13 329 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 13 329 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 13 329 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 13 329 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 13 329 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 13 329 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 13 329 19 , srcInfoPoints = [] } "matchN"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 20 329 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 20 329 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 20 329 28 , srcInfoPoints = [] } "in_scope")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 29 329 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 29 329 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 29 329 35 , srcInfoPoints = [] } "bndrs2")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 36 329 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 36 329 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 36 329 41 , srcInfoPoints = [] } "args2")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 42 329 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 42 329 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 329 42 329 47 , srcInfoPoints = [] } "args1"))))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 4 331 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 331 4 331 4 , SrcSpan "tests/examples/RealGHC.lhs" 335 1 335 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 4 331 45 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 4 331 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 4 331 12 , srcInfoPoints = [] } "in_scope")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 13 331 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 331 13 331 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 15 331 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 15 331 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 15 331 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 15 331 27 , srcInfoPoints = [] } "mkInScopeSet"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 28 331 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 331 28 331 29 , SrcSpan "tests/examples/RealGHC.lhs" 331 44 331 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 29 331 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 29 331 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 29 331 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 29 331 37 , srcInfoPoints = [] } "mkVarSet"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 38 331 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 38 331 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 331 38 331 44 , srcInfoPoints = [] } "bndrs1"))))))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 1 335 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 335 13 335 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 1 335 12 , srcInfoPoints = [] } "noBlackList" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 16 335 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 335 27 335 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 16 335 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 16 335 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 16 335 26 , srcInfoPoints = [] } "Activation"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 30 335 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 30 335 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 335 30 335 34 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 1 336 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 1 336 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 1 336 12 , srcInfoPoints = [] } "noBlackList") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 13 336 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 13 336 16 , srcInfoPoints = [] } "act") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 17 336 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 336 17 336 18 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 19 336 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 19 336 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 336 19 336 24 , srcInfoPoints = [] } "False")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 1 340 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 338 11 338 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 1 338 10 , srcInfoPoints = [] } "matchRule" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 14 340 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 338 35 338 37 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 14 338 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 338 14 338 15 , SrcSpan "tests/examples/RealGHC.lhs" 338 33 338 34 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 15 338 33 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 338 26 338 28 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 15 338 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 15 338 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 15 338 25 , srcInfoPoints = [] } "Activation"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 29 338 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 29 338 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 29 338 33 , srcInfoPoints = [] } "Bool"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 38 340 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 339 7 339 9 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 38 338 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 38 338 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 338 38 338 48 , srcInfoPoints = [] } "InScopeSet"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 10 340 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 339 21 339 23 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 10 339 20 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 339 10 339 11 , SrcSpan "tests/examples/RealGHC.lhs" 339 19 339 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 11 339 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 11 339 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 11 339 19 , srcInfoPoints = [] } "CoreExpr")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 24 340 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 340 7 340 9 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 24 339 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 339 24 339 25 , SrcSpan "tests/examples/RealGHC.lhs" 339 35 339 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 25 339 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 25 339 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 25 339 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 25 339 30 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 31 339 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 31 339 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 339 31 339 35 , srcInfoPoints = [] } "Name"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 10 340 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 340 19 340 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 10 340 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 10 340 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 10 340 18 , srcInfoPoints = [] } "CoreRule"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 22 340 36 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 22 340 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 22 340 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 22 340 27 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 28 340 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 28 340 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 340 28 340 36 , srcInfoPoints = [] } "CoreExpr"))))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 1 382 53 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 1 368 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 1 364 10 , srcInfoPoints = [] } "matchRule") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 11 364 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 11 364 20 , srcInfoPoints = [] } "is_active") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 21 364 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 21 364 29 , srcInfoPoints = [] } "in_scope") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 30 364 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 30 364 34 , srcInfoPoints = [] } "args") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 35 364 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 364 35 364 45 , srcInfoPoints = [] } "rough_args") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 7 365 58 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 365 7 365 8 , SrcSpan "tests/examples/RealGHC.lhs" 365 57 365 58 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 8 365 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 365 20 365 21 , SrcSpan "tests/examples/RealGHC.lhs" 365 36 365 37 , SrcSpan "tests/examples/RealGHC.lhs" 365 56 365 57 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 8 365 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 8 365 19 , srcInfoPoints = [] } "BuiltinRule")) [ PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 22 365 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 365 30 365 31 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 22 365 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 22 365 29 , srcInfoPoints = [] } "ru_name")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 32 365 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 32 365 36 , srcInfoPoints = [] } "name")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 38 365 55 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 365 45 365 46 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 38 365 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 38 365 44 , srcInfoPoints = [] } "ru_try")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 47 365 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 365 47 365 55 , srcInfoPoints = [] } "match_fn")) ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 3 368 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 366 3 366 4 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 5 368 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 366 5 366 9 , SrcSpan "tests/examples/RealGHC.lhs" 366 24 366 26 , SrcSpan "tests/examples/RealGHC.lhs" 367 5 367 5 , SrcSpan "tests/examples/RealGHC.lhs" 368 5 368 5 , SrcSpan "tests/examples/RealGHC.lhs" 370 1 370 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 10 366 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 10 366 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 10 366 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 10 366 18 , srcInfoPoints = [] } "match_fn"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 19 366 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 19 366 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 366 19 366 23 , srcInfoPoints = [] } "args")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 5 367 27 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 5 367 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 5 367 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 5 367 9 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 10 367 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 10 367 14 , srcInfoPoints = [] } "expr") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 15 367 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 367 15 367 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 18 367 27 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 18 367 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 18 367 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 18 367 22 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 23 367 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 23 367 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 367 23 367 27 , srcInfoPoints = [] } "expr"))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 368 5 368 25 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 368 5 368 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 368 5 368 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 368 5 368 12 , srcInfoPoints = [] } "Nothing")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 368 15 368 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 368 15 368 17 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 368 18 368 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 368 18 368 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 368 18 368 25 , srcInfoPoints = [] } "Nothing")))) Nothing ])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 1 382 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 381 3 381 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 1 370 10 , srcInfoPoints = [] } "matchRule") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 11 370 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 11 370 20 , srcInfoPoints = [] } "is_active") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 21 370 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 21 370 29 , srcInfoPoints = [] } "in_scope") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 30 370 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 30 370 34 , srcInfoPoints = [] } "args") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 35 370 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 370 35 370 45 , srcInfoPoints = [] } "rough_args") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 11 373 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 371 11 371 12 , SrcSpan "tests/examples/RealGHC.lhs" 373 25 373 26 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 12 373 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 371 17 371 18 , SrcSpan "tests/examples/RealGHC.lhs" 371 31 371 32 , SrcSpan "tests/examples/RealGHC.lhs" 371 45 371 46 , SrcSpan "tests/examples/RealGHC.lhs" 371 66 371 67 , SrcSpan "tests/examples/RealGHC.lhs" 372 30 372 31 , SrcSpan "tests/examples/RealGHC.lhs" 372 50 372 51 , SrcSpan "tests/examples/RealGHC.lhs" 373 24 373 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 12 371 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 12 371 16 , srcInfoPoints = [] } "Rule")) [ PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 19 371 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 371 27 371 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 19 371 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 19 371 26 , srcInfoPoints = [] } "ru_name")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 29 371 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 29 371 31 , srcInfoPoints = [] } "rn")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 33 371 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 371 40 371 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 33 371 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 33 371 39 , srcInfoPoints = [] } "ru_act")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 42 371 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 42 371 45 , srcInfoPoints = [] } "act")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 47 371 66 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 371 56 371 57 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 47 371 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 47 371 55 , srcInfoPoints = [] } "ru_rough")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 58 371 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 371 58 371 66 , srcInfoPoints = [] } "tpl_tops")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 11 372 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 372 20 372 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 11 372 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 11 372 19 , srcInfoPoints = [] } "ru_bndrs")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 22 372 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 22 372 30 , srcInfoPoints = [] } "tpl_vars")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 32 372 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 372 40 372 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 32 372 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 32 372 39 , srcInfoPoints = [] } "ru_args")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 42 372 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 372 42 372 50 , srcInfoPoints = [] } "tpl_args")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 373 11 373 23 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 373 18 373 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 373 11 373 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 373 11 373 17 , srcInfoPoints = [] } "ru_rhs")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 373 20 373 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 373 20 373 23 , srcInfoPoints = [] } "rhs")) ]) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 3 380 47 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 3 374 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 374 3 374 4 , SrcSpan "tests/examples/RealGHC.lhs" 374 35 374 36 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 5 374 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 5 374 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 5 374 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 5 374 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 5 374 8 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 9 374 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 374 9 374 10 , SrcSpan "tests/examples/RealGHC.lhs" 374 23 374 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 10 374 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 10 374 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 10 374 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 10 374 19 , srcInfoPoints = [] } "is_active"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 20 374 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 20 374 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 20 374 23 , srcInfoPoints = [] } "act")))))) ] (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 37 374 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 37 374 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 374 37 374 44 , srcInfoPoints = [] } "Nothing"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 3 375 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 375 3 375 4 , SrcSpan "tests/examples/RealGHC.lhs" 375 39 375 40 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 5 375 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 5 375 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 5 375 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 5 375 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 5 375 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 5 375 18 , srcInfoPoints = [] } "ruleCantMatch"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 19 375 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 19 375 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 19 375 27 , srcInfoPoints = [] } "tpl_tops")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 28 375 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 28 375 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 28 375 38 , srcInfoPoints = [] } "rough_args")))) ] (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 41 375 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 41 375 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 375 41 375 48 , srcInfoPoints = [] } "Nothing"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 376 3 380 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 376 3 376 4 , SrcSpan "tests/examples/RealGHC.lhs" 377 3 377 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 376 5 376 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 376 5 376 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 376 5 376 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 376 5 376 14 , srcInfoPoints = [] } "otherwise"))) ] (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 5 380 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 377 5 377 9 , SrcSpan "tests/examples/RealGHC.lhs" 377 49 377 51 , SrcSpan "tests/examples/RealGHC.lhs" 378 5 378 5 , SrcSpan "tests/examples/RealGHC.lhs" 379 5 379 5 , SrcSpan "tests/examples/RealGHC.lhs" 381 3 381 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 10 377 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 10 377 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 10 377 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 10 377 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 10 377 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 10 377 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 10 377 16 , srcInfoPoints = [] } "matchN"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 17 377 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 17 377 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 17 377 25 , srcInfoPoints = [] } "in_scope")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 26 377 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 26 377 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 26 377 34 , srcInfoPoints = [] } "tpl_vars")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 35 377 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 35 377 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 35 377 43 , srcInfoPoints = [] } "tpl_args")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 44 377 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 44 377 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 377 44 377 48 , srcInfoPoints = [] } "args")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 378 5 378 34 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 378 5 378 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 378 5 378 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 378 5 378 12 , srcInfoPoints = [] } "Nothing")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 378 24 378 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 378 24 378 26 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 378 27 378 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 378 27 378 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 378 27 378 34 , srcInfoPoints = [] } "Nothing")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 5 380 47 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 5 379 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 5 379 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 5 379 9 , srcInfoPoints = [] } "Just")) [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 10 379 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 379 10 379 11 , SrcSpan "tests/examples/RealGHC.lhs" 379 16 379 17 , SrcSpan "tests/examples/RealGHC.lhs" 379 26 379 27 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 11 379 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 11 379 16 , srcInfoPoints = [] } "binds") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 18 379 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 18 379 26 , srcInfoPoints = [] } "tpl_vals") ] ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 28 380 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 379 28 379 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 31 380 47 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 31 379 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 31 379 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 31 379 35 , srcInfoPoints = [] } "Just"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 36 380 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 379 36 379 37 , SrcSpan "tests/examples/RealGHC.lhs" 380 46 380 47 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 37 380 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 37 379 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 37 379 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 37 379 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 37 379 43 , srcInfoPoints = [] } "mkLets"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 44 379 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 44 379 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 44 379 49 , srcInfoPoints = [] } "binds")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 50 379 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 50 379 51 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 379 50 379 51 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 21 380 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 21 380 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 21 380 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 21 380 28 , srcInfoPoints = [] } "rule_fn"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 29 380 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 380 29 380 30 , SrcSpan "tests/examples/RealGHC.lhs" 380 30 380 36 , SrcSpan "tests/examples/RealGHC.lhs" 380 36 380 37 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 29 380 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 380 29 380 30 , SrcSpan "tests/examples/RealGHC.lhs" 380 30 380 36 , SrcSpan "tests/examples/RealGHC.lhs" 380 36 380 37 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 30 380 36 , srcInfoPoints = [] } "mkApps"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 38 380 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 38 380 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 380 38 380 46 , srcInfoPoints = [] } "tpl_vals")))))))) Nothing ]) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 5 382 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 382 5 382 5 , SrcSpan "tests/examples/RealGHC.lhs" 390 1 390 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 5 382 53 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 5 382 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 5 382 12 , srcInfoPoints = [] } "rule_fn")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 13 382 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 382 13 382 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 15 382 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 15 382 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 15 382 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 15 382 31 , srcInfoPoints = [] } "occurAnalyseExpr"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 32 382 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 382 32 382 33 , SrcSpan "tests/examples/RealGHC.lhs" 382 52 382 53 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 33 382 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 33 382 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 33 382 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 33 382 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 33 382 39 , srcInfoPoints = [] } "mkLams"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 40 382 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 40 382 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 40 382 48 , srcInfoPoints = [] } "tpl_vars")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 49 382 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 49 382 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 382 49 382 52 , srcInfoPoints = [] } "rhs"))))))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 390 1 395 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 390 9 390 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 390 1 390 7 , srcInfoPoints = [] } "matchN" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 390 12 395 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 391 5 391 7 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 390 12 390 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 390 12 390 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 390 12 390 22 , srcInfoPoints = [] } "InScopeSet"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 391 8 395 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 392 5 392 7 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 391 8 391 13 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 391 8 391 9 , SrcSpan "tests/examples/RealGHC.lhs" 391 12 391 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 391 9 391 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 391 9 391 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 391 9 391 12 , srcInfoPoints = [] } "Var")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 392 8 395 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 393 5 393 7 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 392 8 392 18 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 392 8 392 9 , SrcSpan "tests/examples/RealGHC.lhs" 392 17 392 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 392 9 392 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 392 9 392 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 392 9 392 17 , srcInfoPoints = [] } "CoreExpr")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 393 8 395 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 394 5 394 7 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 393 8 393 18 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 393 8 393 9 , SrcSpan "tests/examples/RealGHC.lhs" 393 17 393 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 393 9 393 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 393 9 393 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 393 9 393 17 , srcInfoPoints = [] } "CoreExpr")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 8 395 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 8 394 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 8 394 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 8 394 13 , srcInfoPoints = [] } "Maybe"))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 14 395 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 394 14 394 15 , SrcSpan "tests/examples/RealGHC.lhs" 394 25 394 26 , SrcSpan "tests/examples/RealGHC.lhs" 395 21 395 22 ] } Boxed [ TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 15 394 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 394 15 394 16 , SrcSpan "tests/examples/RealGHC.lhs" 394 24 394 25 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 16 394 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 16 394 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 394 16 394 24 , srcInfoPoints = [] } "CoreBind"))) , TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 395 11 395 21 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 395 11 395 12 , SrcSpan "tests/examples/RealGHC.lhs" 395 20 395 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 395 12 395 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 395 12 395 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 395 12 395 20 , srcInfoPoints = [] } "CoreExpr"))) ])))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 1 423 89 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 402 3 402 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 1 423 89 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 402 3 402 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 1 397 7 , srcInfoPoints = [] } "matchN") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 8 397 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 8 397 16 , srcInfoPoints = [] } "in_scope") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 17 397 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 17 397 26 , srcInfoPoints = [] } "tmpl_vars") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 27 397 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 27 397 34 , srcInfoPoints = [] } "tmpl_es") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 35 397 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 397 35 397 44 , srcInfoPoints = [] } "target_es") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 3 401 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 398 3 398 4 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 5 401 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 398 5 398 7 , SrcSpan "tests/examples/RealGHC.lhs" 398 9 398 10 , SrcSpan "tests/examples/RealGHC.lhs" 400 5 400 6 , SrcSpan "tests/examples/RealGHC.lhs" 401 59 401 60 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 11 399 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 399 9 399 11 ] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 11 398 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 398 11 398 12 , SrcSpan "tests/examples/RealGHC.lhs" 398 20 398 21 , SrcSpan "tests/examples/RealGHC.lhs" 398 30 398 31 , SrcSpan "tests/examples/RealGHC.lhs" 398 37 398 38 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 12 398 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 12 398 20 , srcInfoPoints = [] } "tv_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 22 398 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 22 398 30 , srcInfoPoints = [] } "id_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 32 398 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 398 32 398 37 , srcInfoPoints = [] } "binds") ]) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 12 399 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 12 399 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 12 399 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 12 399 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 12 399 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 12 399 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 12 399 14 , srcInfoPoints = [] } "go"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 15 399 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 15 399 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 15 399 24 , srcInfoPoints = [] } "init_menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 25 399 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 25 399 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 25 399 38 , srcInfoPoints = [] } "emptySubstEnv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 39 399 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 39 399 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 39 399 46 , srcInfoPoints = [] } "tmpl_es")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 47 399 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 47 399 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 399 47 399 56 , srcInfoPoints = [] } "target_es")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 7 401 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 7 401 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 7 400 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 7 400 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 7 400 13 , srcInfoPoints = [] } "return"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 14 401 58 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 400 14 400 15 , SrcSpan "tests/examples/RealGHC.lhs" 400 27 400 28 , SrcSpan "tests/examples/RealGHC.lhs" 401 57 401 58 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 15 400 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 15 400 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 15 400 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 15 400 21 , srcInfoPoints = [] } "fromOL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 22 400 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 22 400 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 400 22 400 27 , srcInfoPoints = [] } "binds"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 11 401 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 11 401 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 11 401 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 11 401 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 11 401 14 , srcInfoPoints = [] } "map"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 15 401 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 401 15 401 16 , SrcSpan "tests/examples/RealGHC.lhs" 401 45 401 46 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 16 401 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 16 401 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 16 401 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 16 401 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 16 401 27 , srcInfoPoints = [] } "lookup_tmpl"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 28 401 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 28 401 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 28 401 36 , srcInfoPoints = [] } "tv_subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 37 401 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 37 401 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 37 401 45 , srcInfoPoints = [] } "id_subst")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 47 401 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 47 401 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 401 47 401 57 , srcInfoPoints = [] } "tmpl_vars'"))) ])) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 5 423 89 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 403 5 403 5 , SrcSpan "tests/examples/RealGHC.lhs" 406 5 406 5 , SrcSpan "tests/examples/RealGHC.lhs" 408 5 408 5 , SrcSpan "tests/examples/RealGHC.lhs" 409 5 409 5 , SrcSpan "tests/examples/RealGHC.lhs" 410 5 410 5 , SrcSpan "tests/examples/RealGHC.lhs" 413 5 413 5 , SrcSpan "tests/examples/RealGHC.lhs" 414 5 414 5 , SrcSpan "tests/examples/RealGHC.lhs" 422 5 422 5 , SrcSpan "tests/examples/RealGHC.lhs" 457 1 457 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 5 403 80 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 5 403 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 403 5 403 6 , SrcSpan "tests/examples/RealGHC.lhs" 403 17 403 18 , SrcSpan "tests/examples/RealGHC.lhs" 403 29 403 30 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 6 403 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 6 403 17 , srcInfoPoints = [] } "init_rn_env") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 19 403 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 19 403 29 , srcInfoPoints = [] } "tmpl_vars'") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 31 403 80 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 403 31 403 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 33 403 80 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 33 403 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 33 403 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 33 403 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 33 403 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 33 403 42 , srcInfoPoints = [] } "mapAccumL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 43 403 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 43 403 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 43 403 50 , srcInfoPoints = [] } "rnBndrL")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 51 403 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 403 51 403 52 , SrcSpan "tests/examples/RealGHC.lhs" 403 69 403 70 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 52 403 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 52 403 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 52 403 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 52 403 60 , srcInfoPoints = [] } "mkRnEnv2"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 61 403 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 61 403 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 61 403 69 , srcInfoPoints = [] } "in_scope")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 71 403 80 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 71 403 80 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 403 71 403 80 , srcInfoPoints = [] } "tmpl_vars"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 5 406 76 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 5 406 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 5 406 14 , srcInfoPoints = [] } "init_menv")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 15 406 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 406 15 406 16 ] } (RecConstr SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 17 406 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 406 20 406 21 , SrcSpan "tests/examples/RealGHC.lhs" 406 52 406 53 , SrcSpan "tests/examples/RealGHC.lhs" 406 75 406 76 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 17 406 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 17 406 19 , srcInfoPoints = [] } "ME")) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 22 406 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 406 31 406 32 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 22 406 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 22 406 30 , srcInfoPoints = [] } "me_tmpls")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 33 406 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 33 406 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 33 406 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 33 406 41 , srcInfoPoints = [] } "mkVarSet"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 42 406 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 42 406 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 42 406 52 , srcInfoPoints = [] } "tmpl_vars'")))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 54 406 74 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 406 61 406 62 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 54 406 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 54 406 60 , srcInfoPoints = [] } "me_env")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 63 406 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 63 406 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 406 63 406 74 , srcInfoPoints = [] } "init_rn_env"))) ])) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 5 411 46 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 5 408 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 5 408 7 , srcInfoPoints = [] } "go") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 8 408 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 8 408 12 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 13 408 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 13 408 18 , srcInfoPoints = [] } "subst") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 19 408 21 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 408 19 408 20 , SrcSpan "tests/examples/RealGHC.lhs" 408 20 408 21 ] } [] , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 26 408 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 26 408 28 , srcInfoPoints = [] } "es") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 33 408 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 408 33 408 34 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 35 408 45 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 35 408 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 35 408 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 35 408 39 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 40 408 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 40 408 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 408 40 408 45 , srcInfoPoints = [] } "subst"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 5 409 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 5 409 7 , srcInfoPoints = [] } "go") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 8 409 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 8 409 12 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 13 409 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 13 409 18 , srcInfoPoints = [] } "subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 19 409 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 19 409 21 , srcInfoPoints = [] } "ts") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 26 409 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 409 26 409 27 , SrcSpan "tests/examples/RealGHC.lhs" 409 27 409 28 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 33 409 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 409 33 409 34 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 35 409 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 35 409 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 409 35 409 42 , srcInfoPoints = [] } "Nothing")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 5 411 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 5 410 7 , srcInfoPoints = [] } "go") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 8 410 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 8 410 12 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 13 410 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 13 410 18 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 19 410 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 410 19 410 20 , SrcSpan "tests/examples/RealGHC.lhs" 410 24 410 25 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 20 410 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 20 410 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 20 410 21 , srcInfoPoints = [] } "t")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 21 410 22 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 21 410 22 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 22 410 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 22 410 24 , srcInfoPoints = [] } "ts"))) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 26 410 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 410 26 410 27 , SrcSpan "tests/examples/RealGHC.lhs" 410 31 410 32 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 27 410 31 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 27 410 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 27 410 28 , srcInfoPoints = [] } "e")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 28 410 29 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 28 410 29 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 29 410 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 29 410 31 , srcInfoPoints = [] } "es"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 33 411 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 410 33 410 34 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 35 411 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 410 35 410 37 , SrcSpan "tests/examples/RealGHC.lhs" 410 38 410 39 , SrcSpan "tests/examples/RealGHC.lhs" 411 22 411 23 , SrcSpan "tests/examples/RealGHC.lhs" 411 45 411 46 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 40 410 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 410 47 410 49 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 40 410 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 40 410 46 , srcInfoPoints = [] } "subst1")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 50 410 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 50 410 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 50 410 66 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 50 410 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 50 410 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 50 410 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 50 410 55 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 56 410 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 56 410 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 56 410 60 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 61 410 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 61 410 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 61 410 66 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 67 410 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 67 410 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 67 410 68 , srcInfoPoints = [] } "t")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 69 410 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 69 410 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 410 69 410 70 , srcInfoPoints = [] } "e")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 24 411 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 24 411 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 24 411 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 24 411 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 24 411 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 24 411 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 24 411 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 24 411 26 , srcInfoPoints = [] } "go"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 27 411 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 27 411 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 27 411 31 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 32 411 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 32 411 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 32 411 38 , srcInfoPoints = [] } "subst1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 39 411 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 39 411 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 39 411 41 , srcInfoPoints = [] } "ts")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 42 411 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 42 411 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 411 42 411 44 , srcInfoPoints = [] } "es")))) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 5 413 63 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 413 17 413 19 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 5 413 16 , srcInfoPoints = [] } "lookup_tmpl" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 20 413 63 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 413 31 413 33 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 20 413 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 20 413 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 20 413 30 , srcInfoPoints = [] } "TvSubstEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 34 413 63 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 413 45 413 47 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 34 413 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 34 413 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 34 413 44 , srcInfoPoints = [] } "IdSubstEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 48 413 63 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 413 52 413 54 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 48 413 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 48 413 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 48 413 51 , srcInfoPoints = [] } "Var"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 55 413 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 55 413 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 413 55 413 63 , srcInfoPoints = [] } "CoreExpr")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 5 420 44 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 5 420 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 5 414 16 , srcInfoPoints = [] } "lookup_tmpl") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 17 414 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 17 414 25 , srcInfoPoints = [] } "tv_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 26 414 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 26 414 34 , srcInfoPoints = [] } "id_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 35 414 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 414 35 414 44 , srcInfoPoints = [] } "tmpl_var'") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 9 420 44 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 9 417 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 415 9 415 10 , SrcSpan "tests/examples/RealGHC.lhs" 415 29 415 30 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 11 415 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 11 415 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 11 415 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 11 415 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 11 415 18 , srcInfoPoints = [] } "isTyVar"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 19 415 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 19 415 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 19 415 28 , srcInfoPoints = [] } "tmpl_var'")))) ] (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 31 417 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 415 31 415 35 , SrcSpan "tests/examples/RealGHC.lhs" 415 68 415 70 , SrcSpan "tests/examples/RealGHC.lhs" 416 17 416 17 , SrcSpan "tests/examples/RealGHC.lhs" 417 17 417 17 , SrcSpan "tests/examples/RealGHC.lhs" 418 9 418 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 36 415 67 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 36 415 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 36 415 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 36 415 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 36 415 48 , srcInfoPoints = [] } "lookupVarEnv"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 49 415 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 49 415 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 49 415 57 , srcInfoPoints = [] } "tv_subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 58 415 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 58 415 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 415 58 415 67 , srcInfoPoints = [] } "tmpl_var'")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 17 416 39 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 17 416 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 17 416 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 17 416 21 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 22 416 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 22 416 24 , srcInfoPoints = [] } "ty") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 29 416 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 416 29 416 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 32 416 39 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 32 416 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 32 416 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 32 416 36 , srcInfoPoints = [] } "Type"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 37 416 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 37 416 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 416 37 416 39 , srcInfoPoints = [] } "ty"))))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 17 417 49 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 17 417 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 17 417 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 17 417 24 , srcInfoPoints = [] } "Nothing")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 29 417 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 417 29 417 31 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 32 417 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 32 417 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 32 417 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 32 417 39 , srcInfoPoints = [] } "unbound"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 40 417 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 40 417 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 417 40 417 49 , srcInfoPoints = [] } "tmpl_var'"))))) Nothing ]) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 9 420 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 418 9 418 10 , SrcSpan "tests/examples/RealGHC.lhs" 418 25 418 26 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 11 418 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 11 418 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 11 418 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 11 418 20 , srcInfoPoints = [] } "otherwise"))) ] (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 27 420 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 418 27 418 31 , SrcSpan "tests/examples/RealGHC.lhs" 418 64 418 66 , SrcSpan "tests/examples/RealGHC.lhs" 419 17 419 17 , SrcSpan "tests/examples/RealGHC.lhs" 420 17 420 17 , SrcSpan "tests/examples/RealGHC.lhs" 422 5 422 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 32 418 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 32 418 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 32 418 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 32 418 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 32 418 44 , srcInfoPoints = [] } "lookupVarEnv"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 45 418 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 45 418 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 45 418 53 , srcInfoPoints = [] } "id_subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 54 418 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 54 418 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 418 54 418 63 , srcInfoPoints = [] } "tmpl_var'")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 17 419 28 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 17 419 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 17 419 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 17 419 21 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 22 419 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 22 419 23 , srcInfoPoints = [] } "e") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 24 419 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 419 24 419 26 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 27 419 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 27 419 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 419 27 419 28 , srcInfoPoints = [] } "e")))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 17 420 44 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 17 420 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 17 420 22 , srcInfoPoints = [] } "other")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 24 420 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 420 24 420 26 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 27 420 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 27 420 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 27 420 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 27 420 34 , srcInfoPoints = [] } "unbound"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 35 420 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 35 420 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 420 35 420 44 , srcInfoPoints = [] } "tmpl_var'"))))) Nothing ]) ]) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 5 423 89 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 5 423 89 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 5 422 12 , srcInfoPoints = [] } "unbound") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 13 422 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 13 422 16 , srcInfoPoints = [] } "var") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 17 423 89 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 422 17 422 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 19 423 89 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 19 422 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 19 422 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 19 422 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 19 422 27 , srcInfoPoints = [] } "pprPanic"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 28 422 71 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 422 28 422 71 , srcInfoPoints = [] } "Template variable unbound in rewrite rule" "Template variable unbound in rewrite rule"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 13 423 89 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 423 13 423 14 , SrcSpan "tests/examples/RealGHC.lhs" 423 88 423 89 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 14 423 88 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 14 423 71 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 14 423 56 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 14 423 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 14 423 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 14 423 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 14 423 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 14 423 17 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 18 423 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 18 423 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 18 423 21 , srcInfoPoints = [] } "var")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 22 423 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 22 423 24 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 22 423 24 , srcInfoPoints = [] } "$$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 25 423 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 25 423 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 25 423 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 25 423 28 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 29 423 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 29 423 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 29 423 38 , srcInfoPoints = [] } "tmpl_vars"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 39 423 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 39 423 41 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 39 423 41 , srcInfoPoints = [] } "$$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 42 423 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 42 423 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 42 423 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 42 423 45 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 46 423 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 46 423 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 46 423 56 , srcInfoPoints = [] } "tmpl_vars'"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 57 423 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 57 423 59 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 57 423 59 , srcInfoPoints = [] } "$$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 60 423 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 60 423 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 60 423 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 60 423 63 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 64 423 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 64 423 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 64 423 71 , srcInfoPoints = [] } "tmpl_es"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 72 423 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 72 423 74 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 72 423 74 , srcInfoPoints = [] } "$$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 75 423 88 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 75 423 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 75 423 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 75 423 78 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 79 423 88 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 79 423 88 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 423 79 423 88 , srcInfoPoints = [] } "target_es")))))))) Nothing ] ])) ] , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 1 457 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 457 1 457 5 , SrcSpan "tests/examples/RealGHC.lhs" 457 17 457 18 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 6 457 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 6 457 14 , srcInfoPoints = [] } "SubstEnv")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 19 457 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 457 19 457 20 , SrcSpan "tests/examples/RealGHC.lhs" 457 30 457 31 , SrcSpan "tests/examples/RealGHC.lhs" 457 42 457 43 , SrcSpan "tests/examples/RealGHC.lhs" 457 60 457 61 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 20 457 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 20 457 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 20 457 30 , srcInfoPoints = [] } "TvSubstEnv")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 32 457 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 32 457 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 32 457 42 , srcInfoPoints = [] } "IdSubstEnv")) , TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 44 457 60 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 44 457 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 44 457 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 44 457 51 , srcInfoPoints = [] } "OrdList"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 52 457 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 52 457 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 457 52 457 60 , srcInfoPoints = [] } "CoreBind"))) ]) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 1 458 33 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 458 1 458 5 , SrcSpan "tests/examples/RealGHC.lhs" 458 17 458 18 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 6 458 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 6 458 16 , srcInfoPoints = [] } "IdSubstEnv")) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 19 458 33 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 19 458 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 19 458 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 19 458 24 , srcInfoPoints = [] } "IdEnv"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 25 458 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 25 458 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 458 25 458 33 , srcInfoPoints = [] } "CoreExpr")))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 460 1 460 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 460 15 460 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 460 1 460 14 , srcInfoPoints = [] } "emptySubstEnv" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 460 18 460 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 460 18 460 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 460 18 460 26 , srcInfoPoints = [] } "SubstEnv"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 1 461 50 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 1 461 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 1 461 14 , srcInfoPoints = [] } "emptySubstEnv")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 15 461 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 461 15 461 16 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 17 461 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 461 17 461 18 , SrcSpan "tests/examples/RealGHC.lhs" 461 29 461 30 , SrcSpan "tests/examples/RealGHC.lhs" 461 42 461 43 , SrcSpan "tests/examples/RealGHC.lhs" 461 49 461 50 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 18 461 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 18 461 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 18 461 29 , srcInfoPoints = [] } "emptyVarEnv")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 31 461 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 31 461 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 31 461 42 , srcInfoPoints = [] } "emptyVarEnv")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 44 461 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 44 461 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 461 44 461 49 , srcInfoPoints = [] } "nilOL")) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 473 1 477 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 473 7 473 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 473 1 473 6 , srcInfoPoints = [] } "match" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 473 10 477 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 474 7 474 9 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 473 10 473 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 473 10 473 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 473 10 473 18 , srcInfoPoints = [] } "MatchEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 474 10 477 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 475 7 475 9 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 474 10 474 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 474 10 474 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 474 10 474 18 , srcInfoPoints = [] } "SubstEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 475 10 477 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 476 7 476 9 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 475 10 475 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 475 10 475 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 475 10 475 18 , srcInfoPoints = [] } "CoreExpr"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 476 10 477 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 477 7 477 9 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 476 10 476 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 476 10 476 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 476 10 476 18 , srcInfoPoints = [] } "CoreExpr"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 477 10 477 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 477 10 477 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 477 10 477 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 477 10 477 15 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 477 16 477 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 477 16 477 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 477 16 477 24 , srcInfoPoints = [] } "SubstEnv")))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 1 671 21 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 1 497 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 1 495 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 7 495 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 7 495 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 12 495 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 12 495 17 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 18 495 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 495 18 495 19 , SrcSpan "tests/examples/RealGHC.lhs" 495 25 495 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 19 495 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 19 495 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 19 495 22 , srcInfoPoints = [] } "Var")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 23 495 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 23 495 25 , srcInfoPoints = [] } "v1") ]) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 27 495 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 495 27 495 29 , srcInfoPoints = [] } "e2") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 3 497 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 496 3 496 4 , SrcSpan "tests/examples/RealGHC.lhs" 497 3 497 4 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 3 497 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 496 3 496 4 , SrcSpan "tests/examples/RealGHC.lhs" 497 3 497 4 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 5 496 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 496 16 496 18 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 5 496 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 5 496 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 5 496 9 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 10 496 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 10 496 15 , srcInfoPoints = [] } "subst") ]) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 19 496 45 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 19 496 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 19 496 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 19 496 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 19 496 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 19 496 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 19 496 28 , srcInfoPoints = [] } "match_var"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 29 496 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 29 496 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 29 496 33 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 34 496 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 34 496 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 34 496 39 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 40 496 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 40 496 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 40 496 42 , srcInfoPoints = [] } "v1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 43 496 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 43 496 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 496 43 496 45 , srcInfoPoints = [] } "e2")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 497 5 497 15 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 497 5 497 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 497 5 497 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 497 5 497 9 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 497 10 497 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 497 10 497 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 497 10 497 15 , srcInfoPoints = [] } "subst")))) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 1 500 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 1 499 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 7 499 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 7 499 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 12 499 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 12 499 17 , srcInfoPoints = [] } "subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 18 499 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 18 499 20 , srcInfoPoints = [] } "e1") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 21 499 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 499 21 499 22 , SrcSpan "tests/examples/RealGHC.lhs" 499 31 499 32 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 22 499 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 22 499 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 22 499 26 , srcInfoPoints = [] } "Note")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 27 499 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 27 499 28 , srcInfoPoints = [] } "n") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 29 499 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 499 29 499 31 , srcInfoPoints = [] } "e2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 3 500 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 500 3 500 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 5 500 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 5 500 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 5 500 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 5 500 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 5 500 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 5 500 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 5 500 10 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 11 500 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 11 500 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 11 500 15 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 16 500 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 16 500 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 16 500 21 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 22 500 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 22 500 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 22 500 24 , srcInfoPoints = [] } "e1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 25 500 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 25 500 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 500 25 500 27 , srcInfoPoints = [] } "e2"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 1 518 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 516 3 516 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 1 513 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 7 513 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 7 513 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 12 513 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 12 513 17 , srcInfoPoints = [] } "subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 18 513 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 18 513 20 , srcInfoPoints = [] } "e1") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 21 513 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 513 21 513 22 , SrcSpan "tests/examples/RealGHC.lhs" 513 28 513 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 22 513 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 22 513 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 22 513 25 , srcInfoPoints = [] } "Var")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 26 513 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 513 26 513 28 , srcInfoPoints = [] } "v2") ]) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 3 515 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 514 3 514 4 , SrcSpan "tests/examples/RealGHC.lhs" 515 3 515 4 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 3 515 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 514 3 514 4 , SrcSpan "tests/examples/RealGHC.lhs" 515 3 515 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 5 514 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 5 514 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 5 514 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 5 514 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 5 514 21 , srcInfoPoints = [] } "isCheapUnfolding"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 22 514 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 22 514 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 514 22 514 31 , srcInfoPoints = [] } "unfolding")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 5 515 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 5 515 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 5 515 21 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 5 515 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 5 515 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 5 515 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 5 515 10 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 11 515 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 11 515 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 11 515 15 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 16 515 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 16 515 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 16 515 21 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 22 515 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 22 515 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 22 515 24 , srcInfoPoints = [] } "e1")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 25 515 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 515 25 515 26 , SrcSpan "tests/examples/RealGHC.lhs" 515 53 515 54 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 26 515 53 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 26 515 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 26 515 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 26 515 43 , srcInfoPoints = [] } "unfoldingTemplate"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 44 515 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 44 515 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 515 44 515 53 , srcInfoPoints = [] } "unfolding")))))) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 5 518 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 517 5 517 5 , SrcSpan "tests/examples/RealGHC.lhs" 518 5 518 5 , SrcSpan "tests/examples/RealGHC.lhs" 571 1 571 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 5 517 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 5 517 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 5 517 11 , srcInfoPoints = [] } "rn_env")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 15 517 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 517 15 517 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 17 517 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 17 517 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 17 517 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 17 517 23 , srcInfoPoints = [] } "me_env"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 24 517 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 24 517 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 517 24 517 28 , srcInfoPoints = [] } "menv"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 5 518 72 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 5 518 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 5 518 14 , srcInfoPoints = [] } "unfolding")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 15 518 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 518 15 518 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 17 518 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 17 518 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 17 518 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 17 518 28 , srcInfoPoints = [] } "idUnfolding"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 29 518 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 518 29 518 30 , SrcSpan "tests/examples/RealGHC.lhs" 518 71 518 72 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 30 518 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 30 518 52 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 30 518 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 30 518 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 30 518 45 , srcInfoPoints = [] } "lookupRnInScope"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 46 518 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 46 518 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 46 518 52 , srcInfoPoints = [] } "rn_env")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 53 518 71 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 518 53 518 54 , SrcSpan "tests/examples/RealGHC.lhs" 518 70 518 71 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 54 518 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 54 518 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 54 518 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 54 518 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 54 518 60 , srcInfoPoints = [] } "rnOccR"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 61 518 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 61 518 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 61 518 67 , srcInfoPoints = [] } "rn_env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 68 518 70 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 68 518 70 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 518 68 518 70 , srcInfoPoints = [] } "v2"))))))))) Nothing ])) , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 1 585 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 577 3 577 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 1 571 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 7 571 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 7 571 11 , srcInfoPoints = [] } "menv") , PAsPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 12 571 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 571 17 571 18 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 12 571 17 , srcInfoPoints = [] } "subst") (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 18 571 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 571 18 571 19 , SrcSpan "tests/examples/RealGHC.lhs" 571 27 571 28 , SrcSpan "tests/examples/RealGHC.lhs" 571 37 571 38 , SrcSpan "tests/examples/RealGHC.lhs" 571 44 571 45 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 19 571 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 19 571 27 , srcInfoPoints = [] } "tv_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 29 571 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 29 571 37 , srcInfoPoints = [] } "id_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 39 571 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 39 571 44 , srcInfoPoints = [] } "binds") ]) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 46 571 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 46 571 48 , srcInfoPoints = [] } "e1") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 49 571 62 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 571 49 571 50 , SrcSpan "tests/examples/RealGHC.lhs" 571 61 571 62 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 50 571 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 50 571 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 50 571 53 , srcInfoPoints = [] } "Let")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 54 571 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 54 571 58 , srcInfoPoints = [] } "bind") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 59 571 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 571 59 571 61 , srcInfoPoints = [] } "e2") ]) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 3 576 13 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 572 3 572 4 , SrcSpan "tests/examples/RealGHC.lhs" 572 28 572 29 , SrcSpan "tests/examples/RealGHC.lhs" 574 3 574 4 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 3 576 13 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 572 3 572 4 , SrcSpan "tests/examples/RealGHC.lhs" 572 28 572 29 , SrcSpan "tests/examples/RealGHC.lhs" 574 3 574 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 5 572 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 5 572 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 5 572 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 5 572 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 5 572 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 5 572 8 , srcInfoPoints = [] } "all"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 9 572 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 9 572 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 9 572 22 , srcInfoPoints = [] } "freshly_bound")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 23 572 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 23 572 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 572 23 572 28 , srcInfoPoints = [] } "bndrs")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 5 573 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 5 573 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 5 573 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 5 573 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 5 573 8 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 9 573 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 573 9 573 10 , SrcSpan "tests/examples/RealGHC.lhs" 573 36 573 37 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 10 573 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 10 573 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 10 573 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 10 573 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 10 573 13 , srcInfoPoints = [] } "any"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 14 573 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 14 573 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 14 573 27 , srcInfoPoints = [] } "locally_bound")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 28 573 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 28 573 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 573 28 573 36 , srcInfoPoints = [] } "bind_fvs")))))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 5 576 13 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 5 576 9 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 5 575 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 5 574 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 5 574 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 5 574 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 5 574 10 , srcInfoPoints = [] } "match"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 11 574 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 574 11 574 12 , SrcSpan "tests/examples/RealGHC.lhs" 574 37 574 38 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 12 574 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 574 17 574 18 , SrcSpan "tests/examples/RealGHC.lhs" 574 36 574 37 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 12 574 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 12 574 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 12 574 16 , srcInfoPoints = [] } "menv"))) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 19 574 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 574 26 574 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 19 574 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 19 574 25 , srcInfoPoints = [] } "me_env")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 28 574 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 28 574 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 574 28 574 35 , srcInfoPoints = [] } "rn_env'"))) ]))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 7 575 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 575 7 575 8 , SrcSpan "tests/examples/RealGHC.lhs" 575 16 575 17 , SrcSpan "tests/examples/RealGHC.lhs" 575 26 575 27 , SrcSpan "tests/examples/RealGHC.lhs" 575 48 575 49 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 8 575 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 8 575 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 8 575 16 , srcInfoPoints = [] } "tv_subst")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 18 575 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 18 575 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 18 575 26 , srcInfoPoints = [] } "id_subst")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 28 575 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 28 575 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 28 575 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 28 575 33 , srcInfoPoints = [] } "binds"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 34 575 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 575 34 575 35 , SrcSpan "tests/examples/RealGHC.lhs" 575 35 575 41 , SrcSpan "tests/examples/RealGHC.lhs" 575 41 575 42 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 34 575 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 575 34 575 35 , SrcSpan "tests/examples/RealGHC.lhs" 575 35 575 41 , SrcSpan "tests/examples/RealGHC.lhs" 575 41 575 42 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 35 575 41 , srcInfoPoints = [] } "snocOL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 43 575 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 43 575 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 575 43 575 48 , srcInfoPoints = [] } "bind'"))) ])) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 576 7 576 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 576 7 576 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 576 7 576 9 , srcInfoPoints = [] } "e1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 576 10 576 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 576 10 576 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 576 10 576 13 , srcInfoPoints = [] } "e2'")))) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 5 585 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 578 5 578 5 , SrcSpan "tests/examples/RealGHC.lhs" 579 5 579 5 , SrcSpan "tests/examples/RealGHC.lhs" 580 5 580 5 , SrcSpan "tests/examples/RealGHC.lhs" 581 5 581 5 , SrcSpan "tests/examples/RealGHC.lhs" 582 5 582 5 , SrcSpan "tests/examples/RealGHC.lhs" 583 5 583 5 , SrcSpan "tests/examples/RealGHC.lhs" 584 5 584 5 , SrcSpan "tests/examples/RealGHC.lhs" 585 5 585 5 , SrcSpan "tests/examples/RealGHC.lhs" 597 1 597 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 5 578 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 5 578 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 5 578 11 , srcInfoPoints = [] } "rn_env")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 14 578 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 578 14 578 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 16 578 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 16 578 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 16 578 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 16 578 22 , srcInfoPoints = [] } "me_env"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 23 578 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 23 578 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 578 23 578 27 , srcInfoPoints = [] } "menv"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 5 579 31 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 5 579 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 5 579 10 , srcInfoPoints = [] } "bndrs")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 14 579 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 579 14 579 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 16 579 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 16 579 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 16 579 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 16 579 25 , srcInfoPoints = [] } "bindersOf"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 27 579 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 27 579 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 579 27 579 31 , srcInfoPoints = [] } "bind"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 5 580 47 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 5 580 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 5 580 13 , srcInfoPoints = [] } "bind_fvs")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 14 580 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 580 14 580 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 16 580 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 16 580 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 16 580 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 16 580 27 , srcInfoPoints = [] } "varSetElems"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 28 580 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 580 28 580 29 , SrcSpan "tests/examples/RealGHC.lhs" 580 46 580 47 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 29 580 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 29 580 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 29 580 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 29 580 41 , srcInfoPoints = [] } "bindFreeVars"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 42 580 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 42 580 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 580 42 580 46 , srcInfoPoints = [] } "bind"))))))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 5 581 42 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 5 581 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 5 581 18 , srcInfoPoints = [] } "locally_bound") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 19 581 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 19 581 20 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 23 581 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 581 23 581 24 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 25 581 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 25 581 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 25 581 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 25 581 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 25 581 33 , srcInfoPoints = [] } "inRnEnvR"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 34 581 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 34 581 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 34 581 40 , srcInfoPoints = [] } "rn_env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 41 581 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 41 581 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 581 41 581 42 , srcInfoPoints = [] } "x"))))) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 5 582 49 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 5 582 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 5 582 18 , srcInfoPoints = [] } "freshly_bound") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 19 582 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 19 582 20 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 21 582 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 582 21 582 22 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 23 582 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 23 582 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 23 582 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 23 582 26 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 27 582 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 582 27 582 28 , SrcSpan "tests/examples/RealGHC.lhs" 582 48 582 49 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 28 582 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 28 582 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 28 582 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 28 582 29 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 30 582 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 582 30 582 31 , SrcSpan "tests/examples/RealGHC.lhs" 582 31 582 40 , SrcSpan "tests/examples/RealGHC.lhs" 582 40 582 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 30 582 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 582 30 582 31 , SrcSpan "tests/examples/RealGHC.lhs" 582 31 582 40 , SrcSpan "tests/examples/RealGHC.lhs" 582 40 582 41 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 31 582 40 , srcInfoPoints = [] } "rnInScope"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 42 582 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 42 582 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 582 42 582 48 , srcInfoPoints = [] } "rn_env"))))))) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 583 5 583 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 583 5 583 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 583 5 583 10 , srcInfoPoints = [] } "bind'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 583 11 583 17 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 583 11 583 12 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 583 13 583 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 583 13 583 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 583 13 583 17 , srcInfoPoints = [] } "bind")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 584 5 584 15 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 584 5 584 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 584 5 584 8 , srcInfoPoints = [] } "e2'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 584 11 584 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 584 11 584 12 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 584 13 584 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 584 13 584 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 584 13 584 15 , srcInfoPoints = [] } "e2")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 5 585 47 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 5 585 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 5 585 12 , srcInfoPoints = [] } "rn_env'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 13 585 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 585 13 585 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 15 585 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 15 585 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 15 585 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 15 585 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 15 585 34 , srcInfoPoints = [] } "extendRnInScopeList"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 35 585 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 35 585 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 35 585 41 , srcInfoPoints = [] } "rn_env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 42 585 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 42 585 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 585 42 585 47 , srcInfoPoints = [] } "bndrs"))))) Nothing ])) , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 1 599 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 1 597 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 7 597 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 7 597 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 12 597 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 12 597 17 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 18 597 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 597 18 597 19 , SrcSpan "tests/examples/RealGHC.lhs" 597 27 597 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 19 597 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 19 597 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 19 597 22 , srcInfoPoints = [] } "Lit")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 23 597 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 23 597 27 , srcInfoPoints = [] } "lit1") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 29 597 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 597 29 597 30 , SrcSpan "tests/examples/RealGHC.lhs" 597 38 597 39 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 30 597 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 30 597 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 30 597 33 , srcInfoPoints = [] } "Lit")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 34 597 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 597 34 597 38 , srcInfoPoints = [] } "lit2") ]) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 3 599 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 598 3 598 4 , SrcSpan "tests/examples/RealGHC.lhs" 599 3 599 4 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 3 599 15 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 598 3 598 4 , SrcSpan "tests/examples/RealGHC.lhs" 599 3 599 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 5 598 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 5 598 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 5 598 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 5 598 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 5 598 9 , srcInfoPoints = [] } "lit1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 10 598 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 10 598 12 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 10 598 12 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 13 598 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 13 598 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 598 13 598 17 , srcInfoPoints = [] } "lit2")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 599 5 599 15 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 599 5 599 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 599 5 599 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 599 5 599 9 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 599 10 599 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 599 10 599 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 599 10 599 15 , srcInfoPoints = [] } "subst")))) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 1 603 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 1 601 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 7 601 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 7 601 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 12 601 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 12 601 17 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 18 601 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 601 18 601 19 , SrcSpan "tests/examples/RealGHC.lhs" 601 28 601 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 19 601 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 19 601 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 19 601 22 , srcInfoPoints = [] } "App")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 23 601 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 23 601 25 , srcInfoPoints = [] } "f1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 26 601 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 26 601 28 , srcInfoPoints = [] } "a1") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 30 601 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 601 30 601 31 , SrcSpan "tests/examples/RealGHC.lhs" 601 40 601 41 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 31 601 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 31 601 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 31 601 34 , srcInfoPoints = [] } "App")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 35 601 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 35 601 37 , srcInfoPoints = [] } "f2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 38 601 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 601 38 601 40 , srcInfoPoints = [] } "a2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 3 603 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 602 3 602 4 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 5 603 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 602 5 602 7 , SrcSpan "tests/examples/RealGHC.lhs" 602 9 602 10 , SrcSpan "tests/examples/RealGHC.lhs" 603 5 603 6 , SrcSpan "tests/examples/RealGHC.lhs" 603 31 603 32 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 11 602 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 602 18 602 20 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 11 602 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 11 602 17 , srcInfoPoints = [] } "subst'")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 21 602 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 21 602 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 21 602 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 21 602 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 21 602 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 21 602 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 21 602 26 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 27 602 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 27 602 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 27 602 31 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 32 602 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 32 602 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 32 602 37 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 38 602 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 38 602 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 38 602 40 , srcInfoPoints = [] } "f1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 41 602 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 41 602 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 602 41 602 43 , srcInfoPoints = [] } "f2")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 7 603 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 7 603 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 7 603 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 7 603 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 7 603 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 7 603 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 7 603 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 7 603 12 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 13 603 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 13 603 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 13 603 17 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 18 603 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 18 603 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 18 603 24 , srcInfoPoints = [] } "subst'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 25 603 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 25 603 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 25 603 27 , srcInfoPoints = [] } "a1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 28 603 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 28 603 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 603 28 603 30 , srcInfoPoints = [] } "a2")))) ])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 1 608 58 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 607 3 607 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 1 605 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 7 605 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 7 605 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 12 605 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 12 605 17 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 18 605 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 605 18 605 19 , SrcSpan "tests/examples/RealGHC.lhs" 605 28 605 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 19 605 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 19 605 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 19 605 22 , srcInfoPoints = [] } "Lam")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 23 605 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 23 605 25 , srcInfoPoints = [] } "x1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 26 605 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 26 605 28 , srcInfoPoints = [] } "e1") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 30 605 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 605 30 605 31 , SrcSpan "tests/examples/RealGHC.lhs" 605 40 605 41 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 31 605 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 31 605 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 31 605 34 , srcInfoPoints = [] } "Lam")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 35 605 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 35 605 37 , srcInfoPoints = [] } "x2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 38 605 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 605 38 605 40 , srcInfoPoints = [] } "e2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 3 606 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 606 3 606 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 5 606 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 5 606 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 5 606 22 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 5 606 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 5 606 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 5 606 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 5 606 10 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 11 606 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 11 606 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 11 606 16 , srcInfoPoints = [] } "menv'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 17 606 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 17 606 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 17 606 22 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 23 606 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 23 606 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 23 606 25 , srcInfoPoints = [] } "e1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 26 606 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 26 606 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 606 26 606 28 , srcInfoPoints = [] } "e2"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 5 608 58 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 608 5 608 5 , SrcSpan "tests/examples/RealGHC.lhs" 615 1 615 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 5 608 58 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 5 608 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 5 608 10 , srcInfoPoints = [] } "menv'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 11 608 58 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 608 11 608 12 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 13 608 58 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 608 18 608 19 , SrcSpan "tests/examples/RealGHC.lhs" 608 57 608 58 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 13 608 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 13 608 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 13 608 17 , srcInfoPoints = [] } "menv"))) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 20 608 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 608 27 608 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 20 608 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 20 608 26 , srcInfoPoints = [] } "me_env")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 29 608 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 29 608 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 29 608 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 29 608 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 29 608 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 29 608 36 , srcInfoPoints = [] } "rnBndr2"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 37 608 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 608 37 608 38 , SrcSpan "tests/examples/RealGHC.lhs" 608 49 608 50 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 38 608 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 38 608 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 38 608 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 38 608 44 , srcInfoPoints = [] } "me_env"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 45 608 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 45 608 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 45 608 49 , srcInfoPoints = [] } "menv")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 51 608 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 51 608 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 51 608 53 , srcInfoPoints = [] } "x1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 54 608 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 54 608 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 608 54 608 56 , srcInfoPoints = [] } "x2")))) ])) Nothing ])) , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 1 619 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 617 3 617 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 1 615 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 7 615 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 7 615 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 12 615 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 12 615 17 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 18 615 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 615 18 615 19 , SrcSpan "tests/examples/RealGHC.lhs" 615 28 615 29 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 19 615 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 19 615 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 19 615 22 , srcInfoPoints = [] } "Lam")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 23 615 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 23 615 25 , srcInfoPoints = [] } "x1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 26 615 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 26 615 28 , srcInfoPoints = [] } "e1") ]) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 30 615 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 615 30 615 32 , srcInfoPoints = [] } "e2") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 3 616 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 616 3 616 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 5 616 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 5 616 25 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 5 616 22 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 5 616 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 5 616 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 5 616 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 5 616 10 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 11 616 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 11 616 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 11 616 16 , srcInfoPoints = [] } "menv'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 17 616 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 17 616 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 17 616 22 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 23 616 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 23 616 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 23 616 25 , srcInfoPoints = [] } "e1")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 26 616 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 616 26 616 27 , SrcSpan "tests/examples/RealGHC.lhs" 616 55 616 56 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 27 616 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 27 616 33 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 27 616 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 27 616 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 27 616 30 , srcInfoPoints = [] } "App"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 31 616 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 31 616 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 31 616 33 , srcInfoPoints = [] } "e2")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 34 616 55 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 616 34 616 35 , SrcSpan "tests/examples/RealGHC.lhs" 616 54 616 55 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 35 616 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 35 616 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 35 616 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 35 616 48 , srcInfoPoints = [] } "varToCoreExpr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 49 616 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 49 616 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 616 49 616 54 , srcInfoPoints = [] } "new_x"))))))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 5 619 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 618 5 618 5 , SrcSpan "tests/examples/RealGHC.lhs" 619 5 619 5 , SrcSpan "tests/examples/RealGHC.lhs" 623 1 623 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 5 618 48 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 5 618 21 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 618 5 618 6 , SrcSpan "tests/examples/RealGHC.lhs" 618 13 618 14 , SrcSpan "tests/examples/RealGHC.lhs" 618 20 618 21 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 6 618 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 6 618 13 , srcInfoPoints = [] } "rn_env'") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 15 618 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 15 618 20 , srcInfoPoints = [] } "new_x") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 22 618 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 618 22 618 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 24 618 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 24 618 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 24 618 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 24 618 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 24 618 31 , srcInfoPoints = [] } "rnBndrL"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 32 618 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 618 32 618 33 , SrcSpan "tests/examples/RealGHC.lhs" 618 44 618 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 33 618 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 33 618 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 33 618 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 33 618 39 , srcInfoPoints = [] } "me_env"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 40 618 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 40 618 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 40 618 44 , srcInfoPoints = [] } "menv")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 46 618 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 46 618 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 618 46 618 48 , srcInfoPoints = [] } "x1"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 5 619 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 5 619 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 5 619 10 , srcInfoPoints = [] } "menv'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 11 619 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 619 11 619 12 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 13 619 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 619 18 619 19 , SrcSpan "tests/examples/RealGHC.lhs" 619 37 619 38 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 13 619 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 13 619 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 13 619 17 , srcInfoPoints = [] } "menv"))) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 20 619 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 619 27 619 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 20 619 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 20 619 26 , srcInfoPoints = [] } "me_env")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 29 619 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 29 619 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 619 29 619 36 , srcInfoPoints = [] } "rn_env'"))) ])) Nothing ])) , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 1 627 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 625 3 625 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 1 623 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 7 623 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 7 623 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 12 623 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 12 623 17 , srcInfoPoints = [] } "subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 18 623 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 18 623 20 , srcInfoPoints = [] } "e1") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 21 623 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 623 21 623 22 , SrcSpan "tests/examples/RealGHC.lhs" 623 31 623 32 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 22 623 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 22 623 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 22 623 25 , srcInfoPoints = [] } "Lam")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 26 623 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 26 623 28 , srcInfoPoints = [] } "x2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 29 623 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 623 29 623 31 , srcInfoPoints = [] } "e2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 3 624 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 624 3 624 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 5 624 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 5 624 53 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 5 624 22 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 5 624 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 5 624 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 5 624 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 5 624 10 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 11 624 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 11 624 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 11 624 16 , srcInfoPoints = [] } "menv'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 17 624 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 17 624 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 17 624 22 , srcInfoPoints = [] } "subst")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 23 624 53 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 624 23 624 24 , SrcSpan "tests/examples/RealGHC.lhs" 624 52 624 53 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 24 624 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 24 624 30 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 24 624 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 24 624 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 24 624 27 , srcInfoPoints = [] } "App"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 28 624 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 28 624 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 28 624 30 , srcInfoPoints = [] } "e1")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 31 624 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 624 31 624 32 , SrcSpan "tests/examples/RealGHC.lhs" 624 51 624 52 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 32 624 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 32 624 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 32 624 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 32 624 45 , srcInfoPoints = [] } "varToCoreExpr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 46 624 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 46 624 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 46 624 51 , srcInfoPoints = [] } "new_x")))))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 54 624 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 54 624 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 624 54 624 56 , srcInfoPoints = [] } "e2"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 5 627 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 626 5 626 5 , SrcSpan "tests/examples/RealGHC.lhs" 627 5 627 5 , SrcSpan "tests/examples/RealGHC.lhs" 629 1 629 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 5 626 48 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 5 626 21 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 626 5 626 6 , SrcSpan "tests/examples/RealGHC.lhs" 626 13 626 14 , SrcSpan "tests/examples/RealGHC.lhs" 626 20 626 21 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 6 626 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 6 626 13 , srcInfoPoints = [] } "rn_env'") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 15 626 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 15 626 20 , srcInfoPoints = [] } "new_x") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 22 626 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 626 22 626 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 24 626 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 24 626 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 24 626 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 24 626 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 24 626 31 , srcInfoPoints = [] } "rnBndrR"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 32 626 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 626 32 626 33 , SrcSpan "tests/examples/RealGHC.lhs" 626 44 626 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 33 626 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 33 626 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 33 626 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 33 626 39 , srcInfoPoints = [] } "me_env"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 40 626 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 40 626 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 40 626 44 , srcInfoPoints = [] } "menv")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 46 626 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 46 626 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 626 46 626 48 , srcInfoPoints = [] } "x2"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 5 627 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 5 627 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 5 627 10 , srcInfoPoints = [] } "menv'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 11 627 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 627 11 627 12 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 13 627 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 627 18 627 19 , SrcSpan "tests/examples/RealGHC.lhs" 627 37 627 38 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 13 627 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 13 627 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 13 627 17 , srcInfoPoints = [] } "menv"))) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 20 627 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 627 27 627 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 20 627 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 20 627 26 , srcInfoPoints = [] } "me_env")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 29 627 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 29 627 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 627 29 627 36 , srcInfoPoints = [] } "rn_env'"))) ])) Nothing ])) , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 1 634 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 1 629 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 7 629 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 7 629 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 12 629 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 12 629 17 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 18 629 40 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 629 18 629 19 , SrcSpan "tests/examples/RealGHC.lhs" 629 39 629 40 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 19 629 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 19 629 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 19 629 23 , srcInfoPoints = [] } "Case")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 24 629 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 24 629 26 , srcInfoPoints = [] } "e1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 27 629 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 27 629 29 , srcInfoPoints = [] } "x1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 30 629 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 30 629 33 , srcInfoPoints = [] } "ty1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 34 629 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 34 629 39 , srcInfoPoints = [] } "alts1") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 41 629 63 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 629 41 629 42 , SrcSpan "tests/examples/RealGHC.lhs" 629 62 629 63 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 42 629 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 42 629 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 42 629 46 , srcInfoPoints = [] } "Case")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 47 629 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 47 629 49 , srcInfoPoints = [] } "e2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 50 629 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 50 629 52 , srcInfoPoints = [] } "x2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 53 629 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 53 629 56 , srcInfoPoints = [] } "ty2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 57 629 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 629 57 629 62 , srcInfoPoints = [] } "alts2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 3 634 6 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 630 3 630 4 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 5 634 6 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 630 5 630 7 , SrcSpan "tests/examples/RealGHC.lhs" 630 9 630 10 , SrcSpan "tests/examples/RealGHC.lhs" 631 5 631 6 , SrcSpan "tests/examples/RealGHC.lhs" 632 5 632 6 , SrcSpan "tests/examples/RealGHC.lhs" 633 5 633 6 , SrcSpan "tests/examples/RealGHC.lhs" 634 5 634 6 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 11 630 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 630 18 630 20 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 11 630 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 11 630 17 , srcInfoPoints = [] } "subst1")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 21 630 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 21 630 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 21 630 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 21 630 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 21 630 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 21 630 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 21 630 29 , srcInfoPoints = [] } "match_ty"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 30 630 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 30 630 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 30 630 34 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 35 630 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 35 630 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 35 630 40 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 41 630 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 41 630 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 41 630 44 , srcInfoPoints = [] } "ty1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 45 630 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 45 630 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 630 45 630 48 , srcInfoPoints = [] } "ty2")))) , Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 7 631 40 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 631 14 631 16 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 7 631 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 7 631 13 , srcInfoPoints = [] } "subst2")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 17 631 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 17 631 37 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 17 631 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 17 631 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 17 631 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 17 631 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 17 631 22 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 23 631 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 23 631 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 23 631 27 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 28 631 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 28 631 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 28 631 34 , srcInfoPoints = [] } "subst1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 35 631 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 35 631 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 35 631 37 , srcInfoPoints = [] } "e1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 38 631 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 38 631 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 631 38 631 40 , srcInfoPoints = [] } "e2")))) , LetStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 7 632 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 632 7 632 10 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 11 632 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 632 11 632 11 , SrcSpan "tests/examples/RealGHC.lhs" 633 5 633 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 11 632 64 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 11 632 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 11 632 16 , srcInfoPoints = [] } "menv'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 17 632 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 632 17 632 18 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 19 632 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 632 24 632 25 , SrcSpan "tests/examples/RealGHC.lhs" 632 63 632 64 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 19 632 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 19 632 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 19 632 23 , srcInfoPoints = [] } "menv"))) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 26 632 62 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 632 33 632 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 26 632 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 26 632 32 , srcInfoPoints = [] } "me_env")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 35 632 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 35 632 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 35 632 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 35 632 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 35 632 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 35 632 42 , srcInfoPoints = [] } "rnBndr2"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 43 632 56 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 632 43 632 44 , SrcSpan "tests/examples/RealGHC.lhs" 632 55 632 56 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 44 632 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 44 632 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 44 632 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 44 632 50 , srcInfoPoints = [] } "me_env"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 51 632 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 51 632 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 51 632 55 , srcInfoPoints = [] } "menv")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 57 632 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 57 632 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 57 632 59 , srcInfoPoints = [] } "x1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 60 632 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 60 632 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 632 60 632 62 , srcInfoPoints = [] } "x2")))) ])) Nothing ]) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 7 633 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 7 633 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 7 633 36 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 7 633 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 7 633 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 7 633 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 7 633 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 7 633 17 , srcInfoPoints = [] } "match_alts"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 18 633 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 18 633 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 18 633 23 , srcInfoPoints = [] } "menv'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 24 633 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 24 633 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 24 633 30 , srcInfoPoints = [] } "subst2")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 31 633 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 31 633 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 31 633 36 , srcInfoPoints = [] } "alts1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 37 633 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 37 633 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 633 37 633 42 , srcInfoPoints = [] } "alts2")))) ])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 1 637 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 1 636 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 7 636 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 7 636 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 12 636 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 12 636 17 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 18 636 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 636 18 636 19 , SrcSpan "tests/examples/RealGHC.lhs" 636 27 636 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 19 636 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 19 636 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 19 636 23 , srcInfoPoints = [] } "Type")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 24 636 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 24 636 27 , srcInfoPoints = [] } "ty1") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 29 636 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 636 29 636 30 , SrcSpan "tests/examples/RealGHC.lhs" 636 38 636 39 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 30 636 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 30 636 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 30 636 34 , srcInfoPoints = [] } "Type")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 35 636 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 636 35 636 38 , srcInfoPoints = [] } "ty2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 3 637 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 637 3 637 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 5 637 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 5 637 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 5 637 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 5 637 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 5 637 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 5 637 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 5 637 13 , srcInfoPoints = [] } "match_ty"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 14 637 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 14 637 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 14 637 18 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 19 637 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 19 637 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 19 637 24 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 25 637 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 25 637 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 25 637 28 , srcInfoPoints = [] } "ty1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 29 637 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 29 637 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 637 29 637 32 , srcInfoPoints = [] } "ty2"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 1 641 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 1 639 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 7 639 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 7 639 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 12 639 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 12 639 17 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 18 639 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 639 18 639 19 , SrcSpan "tests/examples/RealGHC.lhs" 639 30 639 31 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 19 639 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 19 639 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 19 639 23 , srcInfoPoints = [] } "Cast")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 24 639 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 24 639 26 , srcInfoPoints = [] } "e1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 27 639 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 27 639 30 , srcInfoPoints = [] } "co1") ]) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 32 639 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 639 32 639 33 , SrcSpan "tests/examples/RealGHC.lhs" 639 44 639 45 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 33 639 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 33 639 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 33 639 37 , srcInfoPoints = [] } "Cast")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 38 639 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 38 639 40 , srcInfoPoints = [] } "e2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 41 639 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 639 41 639 44 , srcInfoPoints = [] } "co2") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 3 641 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 640 3 640 4 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 5 641 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 640 5 640 7 , SrcSpan "tests/examples/RealGHC.lhs" 640 9 640 10 , SrcSpan "tests/examples/RealGHC.lhs" 641 5 641 6 , SrcSpan "tests/examples/RealGHC.lhs" 641 31 641 32 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 11 640 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 640 18 640 20 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 11 640 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 11 640 17 , srcInfoPoints = [] } "subst1")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 21 640 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 21 640 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 21 640 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 21 640 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 21 640 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 21 640 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 21 640 29 , srcInfoPoints = [] } "match_ty"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 30 640 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 30 640 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 30 640 34 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 35 640 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 35 640 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 35 640 40 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 41 640 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 41 640 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 41 640 44 , srcInfoPoints = [] } "co1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 45 640 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 45 640 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 640 45 640 48 , srcInfoPoints = [] } "co2")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 7 641 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 7 641 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 7 641 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 7 641 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 7 641 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 7 641 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 7 641 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 7 641 12 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 13 641 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 13 641 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 13 641 17 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 18 641 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 18 641 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 18 641 24 , srcInfoPoints = [] } "subst1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 25 641 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 25 641 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 25 641 27 , srcInfoPoints = [] } "e1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 28 641 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 28 641 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 641 28 641 30 , srcInfoPoints = [] } "e2")))) ])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 1 671 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 1 670 6 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 7 670 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 7 670 11 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 12 670 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 12 670 17 , srcInfoPoints = [] } "subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 18 670 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 18 670 20 , srcInfoPoints = [] } "e1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 21 670 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 21 670 23 , srcInfoPoints = [] } "e2") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 670 24 671 21 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 670 24 670 25 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 671 14 671 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 671 14 671 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 671 14 671 21 , srcInfoPoints = [] } "Nothing")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 674 1 678 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 674 11 674 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 674 1 674 10 , srcInfoPoints = [] } "match_var" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 674 14 678 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 675 11 675 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 674 14 674 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 674 14 674 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 674 14 674 22 , srcInfoPoints = [] } "MatchEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 675 14 678 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 676 11 676 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 675 14 675 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 675 14 675 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 675 14 675 22 , srcInfoPoints = [] } "SubstEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 676 14 678 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 677 11 677 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 676 14 676 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 676 14 676 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 676 14 676 17 , srcInfoPoints = [] } "Var"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 677 14 678 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 678 11 678 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 677 14 677 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 677 14 677 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 677 14 677 22 , srcInfoPoints = [] } "CoreExpr"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 678 14 678 28 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 678 14 678 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 678 14 678 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 678 14 678 19 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 678 20 678 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 678 20 678 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 678 20 678 28 , srcInfoPoints = [] } "SubstEnv")))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 1 715 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 713 3 713 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 1 715 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 713 3 713 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 1 679 10 , srcInfoPoints = [] } "match_var") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 11 679 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 11 679 15 , srcInfoPoints = [] } "menv") , PAsPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 16 679 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 679 21 679 22 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 16 679 21 , srcInfoPoints = [] } "subst") (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 22 679 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 679 22 679 23 , SrcSpan "tests/examples/RealGHC.lhs" 679 31 679 32 , SrcSpan "tests/examples/RealGHC.lhs" 679 41 679 42 , SrcSpan "tests/examples/RealGHC.lhs" 679 48 679 49 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 23 679 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 23 679 31 , srcInfoPoints = [] } "tv_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 33 679 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 33 679 41 , srcInfoPoints = [] } "id_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 43 679 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 43 679 48 , srcInfoPoints = [] } "binds") ]) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 50 679 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 50 679 52 , srcInfoPoints = [] } "v1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 53 679 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 679 53 679 55 , srcInfoPoints = [] } "e2") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 3 711 39 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 3 706 20 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 680 3 680 4 , SrcSpan "tests/examples/RealGHC.lhs" 681 3 681 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 5 680 35 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 5 680 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 5 680 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 5 680 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 5 680 8 , srcInfoPoints = [] } "v1'"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 9 680 21 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 680 9 680 10 , SrcSpan "tests/examples/RealGHC.lhs" 680 10 680 20 , SrcSpan "tests/examples/RealGHC.lhs" 680 20 680 21 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 9 680 21 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 680 9 680 10 , SrcSpan "tests/examples/RealGHC.lhs" 680 10 680 20 , SrcSpan "tests/examples/RealGHC.lhs" 680 20 680 21 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 10 680 20 , srcInfoPoints = [] } "elemVarSet"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 22 680 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 22 680 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 22 680 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 22 680 30 , srcInfoPoints = [] } "me_tmpls"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 31 680 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 31 680 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 680 31 680 35 , srcInfoPoints = [] } "menv"))))) ] (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 5 706 20 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 681 5 681 9 , SrcSpan "tests/examples/RealGHC.lhs" 681 36 681 38 , SrcSpan "tests/examples/RealGHC.lhs" 682 5 682 5 , SrcSpan "tests/examples/RealGHC.lhs" 702 5 702 5 , SrcSpan "tests/examples/RealGHC.lhs" 708 3 708 0 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 10 681 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 10 681 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 10 681 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 10 681 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 10 681 22 , srcInfoPoints = [] } "lookupVarEnv"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 23 681 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 23 681 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 23 681 31 , srcInfoPoints = [] } "id_subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 32 681 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 32 681 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 681 32 681 35 , srcInfoPoints = [] } "v1'")))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 5 700 72 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 5 682 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 5 682 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 5 682 12 , srcInfoPoints = [] } "Nothing")) []) (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 13 700 72 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 13 683 19 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 682 13 682 14 , SrcSpan "tests/examples/RealGHC.lhs" 683 9 683 11 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 15 682 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 15 682 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 15 682 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 15 682 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 15 682 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 15 682 18 , srcInfoPoints = [] } "any"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 19 682 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 682 19 682 20 , SrcSpan "tests/examples/RealGHC.lhs" 682 35 682 36 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 20 682 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 20 682 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 20 682 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 20 682 28 , srcInfoPoints = [] } "inRnEnvR"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 29 682 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 29 682 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 29 682 35 , srcInfoPoints = [] } "rn_env")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 37 682 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 682 37 682 38 , SrcSpan "tests/examples/RealGHC.lhs" 682 67 682 68 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 38 682 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 38 682 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 38 682 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 38 682 49 , srcInfoPoints = [] } "varSetElems"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 50 682 67 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 682 50 682 51 , SrcSpan "tests/examples/RealGHC.lhs" 682 66 682 67 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 51 682 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 51 682 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 51 682 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 51 682 63 , srcInfoPoints = [] } "exprFreeVars"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 64 682 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 64 682 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 682 64 682 66 , srcInfoPoints = [] } "e2")))))))) ] (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 683 12 683 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 683 12 683 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 683 12 683 19 , srcInfoPoints = [] } "Nothing"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 686 9 700 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 686 9 686 10 , SrcSpan "tests/examples/RealGHC.lhs" 698 9 698 11 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 686 11 686 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 686 11 686 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 686 11 686 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 686 11 686 20 , srcInfoPoints = [] } "otherwise"))) ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 12 700 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 698 12 698 14 , SrcSpan "tests/examples/RealGHC.lhs" 698 17 698 18 , SrcSpan "tests/examples/RealGHC.lhs" 700 13 700 14 , SrcSpan "tests/examples/RealGHC.lhs" 700 71 700 72 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 19 698 91 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 698 29 698 31 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 19 698 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 19 698 28 , srcInfoPoints = [] } "tv_subst'")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 32 698 91 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 32 698 77 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 32 698 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 32 698 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 32 698 50 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 32 698 50 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 32 698 50 , srcInfoPoints = [] } "Unify") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 32 698 50 , srcInfoPoints = [] } "ruleMatchTyX"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 51 698 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 51 698 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 51 698 55 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 56 698 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 56 698 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 56 698 64 , srcInfoPoints = [] } "tv_subst")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 65 698 77 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 698 65 698 66 , SrcSpan "tests/examples/RealGHC.lhs" 698 76 698 77 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 66 698 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 66 698 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 66 698 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 66 698 72 , srcInfoPoints = [] } "idType"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 73 698 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 73 698 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 73 698 76 , srcInfoPoints = [] } "v1'")))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 78 698 91 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 698 78 698 79 , SrcSpan "tests/examples/RealGHC.lhs" 698 90 698 91 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 79 698 90 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 79 698 87 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 79 698 87 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 79 698 87 , srcInfoPoints = [] } "exprType"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 88 698 90 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 88 698 90 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 698 88 698 90 , srcInfoPoints = [] } "e2")))))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 15 700 70 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 15 700 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 15 700 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 15 700 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 15 700 21 , srcInfoPoints = [] } "return"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 22 700 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 700 22 700 23 , SrcSpan "tests/examples/RealGHC.lhs" 700 32 700 33 , SrcSpan "tests/examples/RealGHC.lhs" 700 62 700 63 , SrcSpan "tests/examples/RealGHC.lhs" 700 69 700 70 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 23 700 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 23 700 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 23 700 32 , srcInfoPoints = [] } "tv_subst'")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 34 700 62 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 34 700 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 34 700 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 34 700 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 34 700 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 34 700 46 , srcInfoPoints = [] } "extendVarEnv"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 47 700 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 47 700 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 47 700 55 , srcInfoPoints = [] } "id_subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 56 700 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 56 700 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 56 700 59 , srcInfoPoints = [] } "v1'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 60 700 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 60 700 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 60 700 62 , srcInfoPoints = [] } "e2"))) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 64 700 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 64 700 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 700 64 700 69 , srcInfoPoints = [] } "binds")) ])) ]) ]) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 5 706 20 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 5 702 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 5 702 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 5 702 9 , srcInfoPoints = [] } "Just")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 10 702 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 10 702 13 , srcInfoPoints = [] } "e1'") ]) (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 14 706 20 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 14 703 23 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 702 14 702 15 , SrcSpan "tests/examples/RealGHC.lhs" 703 10 703 12 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 16 702 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 16 702 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 16 702 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 16 702 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 16 702 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 16 702 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 16 702 25 , srcInfoPoints = [] } "tcEqExprX"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 26 702 45 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 702 26 702 27 , SrcSpan "tests/examples/RealGHC.lhs" 702 44 702 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 27 702 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 27 702 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 27 702 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 27 702 37 , srcInfoPoints = [] } "nukeRnEnvL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 38 702 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 38 702 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 38 702 44 , srcInfoPoints = [] } "rn_env")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 46 702 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 46 702 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 46 702 49 , srcInfoPoints = [] } "e1'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 50 702 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 50 702 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 702 50 702 52 , srcInfoPoints = [] } "e2")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 703 13 703 23 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 703 13 703 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 703 13 703 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 703 13 703 17 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 703 18 703 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 703 18 703 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 703 18 703 23 , srcInfoPoints = [] } "subst")))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 705 10 706 20 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 705 10 705 11 , SrcSpan "tests/examples/RealGHC.lhs" 706 10 706 12 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 705 12 705 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 705 12 705 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 705 12 705 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 705 12 705 21 , srcInfoPoints = [] } "otherwise"))) ] (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 706 13 706 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 706 13 706 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 706 13 706 20 , srcInfoPoints = [] } "Nothing"))) ]) Nothing ]) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 708 3 711 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 708 3 708 4 , SrcSpan "tests/examples/RealGHC.lhs" 709 3 709 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 708 5 708 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 708 5 708 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 708 5 708 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 708 5 708 14 , srcInfoPoints = [] } "otherwise"))) ] (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 709 5 711 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 709 5 709 9 , SrcSpan "tests/examples/RealGHC.lhs" 709 13 709 15 , SrcSpan "tests/examples/RealGHC.lhs" 710 8 710 8 , SrcSpan "tests/examples/RealGHC.lhs" 711 8 711 8 , SrcSpan "tests/examples/RealGHC.lhs" 713 3 713 0 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 709 10 709 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 709 10 709 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 709 10 709 12 , srcInfoPoints = [] } "e2"))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 8 710 54 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 8 710 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 8 710 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 8 710 11 , srcInfoPoints = [] } "Var")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 12 710 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 12 710 14 , srcInfoPoints = [] } "v2") ]) (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 15 710 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 710 15 710 16 , SrcSpan "tests/examples/RealGHC.lhs" 710 41 710 43 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 15 710 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 710 15 710 16 , SrcSpan "tests/examples/RealGHC.lhs" 710 41 710 43 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 17 710 40 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 17 710 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 17 710 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 17 710 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 17 710 20 , srcInfoPoints = [] } "v1'"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 21 710 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 21 710 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 21 710 23 , srcInfoPoints = [] } "=="))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 24 710 40 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 24 710 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 24 710 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 24 710 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 24 710 30 , srcInfoPoints = [] } "rnOccR"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 31 710 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 31 710 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 31 710 37 , srcInfoPoints = [] } "rn_env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 38 710 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 38 710 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 38 710 40 , srcInfoPoints = [] } "v2"))))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 44 710 54 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 44 710 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 44 710 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 44 710 48 , srcInfoPoints = [] } "Just"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 49 710 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 49 710 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 710 49 710 54 , srcInfoPoints = [] } "subst")))) ]) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 711 8 711 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 711 8 711 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 711 8 711 13 , srcInfoPoints = [] } "other")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 711 29 711 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 711 29 711 31 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 711 32 711 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 711 32 711 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 711 32 711 39 , srcInfoPoints = [] } "Nothing")))) Nothing ]) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 5 715 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 714 5 714 5 , SrcSpan "tests/examples/RealGHC.lhs" 715 5 715 5 , SrcSpan "tests/examples/RealGHC.lhs" 723 1 723 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 5 714 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 5 714 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 5 714 11 , srcInfoPoints = [] } "rn_env")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 12 714 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 714 12 714 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 14 714 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 14 714 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 14 714 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 14 714 20 , srcInfoPoints = [] } "me_env"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 21 714 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 21 714 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 714 21 714 25 , srcInfoPoints = [] } "menv"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 5 715 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 5 715 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 5 715 8 , srcInfoPoints = [] } "v1'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 12 715 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 715 12 715 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 14 715 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 14 715 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 14 715 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 14 715 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 14 715 20 , srcInfoPoints = [] } "rnOccL"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 21 715 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 21 715 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 21 715 27 , srcInfoPoints = [] } "rn_env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 28 715 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 28 715 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 715 28 715 30 , srcInfoPoints = [] } "v1"))))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 723 1 727 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 723 12 723 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 723 1 723 11 , srcInfoPoints = [] } "match_alts" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 723 15 727 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 724 7 724 9 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 723 15 723 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 723 15 723 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 723 15 723 23 , srcInfoPoints = [] } "MatchEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 724 10 727 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 725 7 725 9 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 724 10 724 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 724 10 724 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 724 10 724 18 , srcInfoPoints = [] } "SubstEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 725 10 727 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 726 7 726 9 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 725 10 725 19 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 725 10 725 11 , SrcSpan "tests/examples/RealGHC.lhs" 725 18 725 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 725 11 725 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 725 11 725 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 725 11 725 18 , srcInfoPoints = [] } "CoreAlt")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 726 10 727 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 727 7 727 9 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 726 10 726 19 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 726 10 726 11 , SrcSpan "tests/examples/RealGHC.lhs" 726 18 726 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 726 11 726 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 726 11 726 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 726 11 726 18 , srcInfoPoints = [] } "CoreAlt")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 727 10 727 24 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 727 10 727 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 727 10 727 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 727 10 727 15 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 727 16 727 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 727 16 727 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 727 16 727 24 , srcInfoPoints = [] } "SubstEnv")))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 1 739 12 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 1 729 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 1 728 11 , srcInfoPoints = [] } "match_alts") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 12 728 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 12 728 16 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 17 728 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 17 728 22 , srcInfoPoints = [] } "subst") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 23 728 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 728 23 728 24 , SrcSpan "tests/examples/RealGHC.lhs" 728 24 728 25 ] } [] , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 728 26 728 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 728 26 728 27 , SrcSpan "tests/examples/RealGHC.lhs" 728 27 728 28 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 729 3 729 17 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 729 3 729 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 729 5 729 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 729 5 729 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 729 5 729 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 729 5 729 11 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 729 12 729 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 729 12 729 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 729 12 729 17 , srcInfoPoints = [] } "subst"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 1 736 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 734 3 734 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 1 730 11 , srcInfoPoints = [] } "match_alts") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 12 730 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 12 730 16 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 17 730 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 17 730 22 , srcInfoPoints = [] } "subst") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 23 730 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 730 23 730 24 , SrcSpan "tests/examples/RealGHC.lhs" 730 41 730 42 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 24 730 41 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 24 730 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 730 24 730 25 , SrcSpan "tests/examples/RealGHC.lhs" 730 27 730 28 , SrcSpan "tests/examples/RealGHC.lhs" 730 31 730 32 , SrcSpan "tests/examples/RealGHC.lhs" 730 34 730 35 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 25 730 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 25 730 27 , srcInfoPoints = [] } "c1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 28 730 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 28 730 31 , srcInfoPoints = [] } "vs1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 32 730 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 32 730 34 , srcInfoPoints = [] } "r1") ]) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 35 730 36 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 35 730 36 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 36 730 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 36 730 41 , srcInfoPoints = [] } "alts1"))) , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 43 730 62 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 730 43 730 44 , SrcSpan "tests/examples/RealGHC.lhs" 730 61 730 62 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 44 730 61 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 44 730 55 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 730 44 730 45 , SrcSpan "tests/examples/RealGHC.lhs" 730 47 730 48 , SrcSpan "tests/examples/RealGHC.lhs" 730 51 730 52 , SrcSpan "tests/examples/RealGHC.lhs" 730 54 730 55 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 45 730 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 45 730 47 , srcInfoPoints = [] } "c2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 48 730 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 48 730 51 , srcInfoPoints = [] } "vs2") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 52 730 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 52 730 54 , srcInfoPoints = [] } "r2") ]) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 55 730 56 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 55 730 56 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 56 730 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 730 56 730 61 , srcInfoPoints = [] } "alts2"))) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 3 733 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 731 3 731 4 , SrcSpan "tests/examples/RealGHC.lhs" 732 3 732 4 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 3 733 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 731 3 731 4 , SrcSpan "tests/examples/RealGHC.lhs" 732 3 732 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 5 731 13 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 5 731 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 5 731 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 5 731 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 5 731 7 , srcInfoPoints = [] } "c1"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 8 731 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 8 731 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 8 731 10 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 11 731 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 11 731 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 731 11 731 13 , srcInfoPoints = [] } "c2")))) ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 5 733 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 732 5 732 7 , SrcSpan "tests/examples/RealGHC.lhs" 732 9 732 10 , SrcSpan "tests/examples/RealGHC.lhs" 733 5 733 6 , SrcSpan "tests/examples/RealGHC.lhs" 733 42 733 43 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 11 732 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 732 18 732 20 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 11 732 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 11 732 17 , srcInfoPoints = [] } "subst1")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 21 732 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 21 732 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 21 732 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 21 732 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 21 732 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 21 732 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 21 732 26 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 27 732 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 27 732 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 27 732 32 , srcInfoPoints = [] } "menv'")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 33 732 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 33 732 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 33 732 38 , srcInfoPoints = [] } "subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 39 732 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 39 732 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 39 732 41 , srcInfoPoints = [] } "r1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 42 732 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 42 732 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 732 42 732 44 , srcInfoPoints = [] } "r2")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 7 733 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 7 733 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 7 733 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 7 733 29 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 7 733 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 7 733 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 7 733 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 7 733 17 , srcInfoPoints = [] } "match_alts"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 18 733 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 18 733 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 18 733 22 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 23 733 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 23 733 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 23 733 29 , srcInfoPoints = [] } "subst1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 30 733 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 30 733 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 30 733 35 , srcInfoPoints = [] } "alts1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 36 733 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 36 733 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 733 36 733 41 , srcInfoPoints = [] } "alts2")))) ]) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 735 5 736 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 735 5 735 5 , SrcSpan "tests/examples/RealGHC.lhs" 736 5 736 5 , SrcSpan "tests/examples/RealGHC.lhs" 738 1 738 0 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 735 5 735 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 735 11 735 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 735 5 735 10 , srcInfoPoints = [] } "menv'" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 735 14 735 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 735 14 735 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 735 14 735 22 , srcInfoPoints = [] } "MatchEnv"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 5 736 61 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 5 736 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 5 736 10 , srcInfoPoints = [] } "menv'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 11 736 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 736 11 736 12 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 13 736 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 736 18 736 19 , SrcSpan "tests/examples/RealGHC.lhs" 736 60 736 61 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 13 736 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 13 736 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 13 736 17 , srcInfoPoints = [] } "menv"))) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 20 736 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 736 27 736 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 20 736 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 20 736 26 , srcInfoPoints = [] } "me_env")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 29 736 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 29 736 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 29 736 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 29 736 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 29 736 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 29 736 37 , srcInfoPoints = [] } "rnBndrs2"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 38 736 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 736 38 736 39 , SrcSpan "tests/examples/RealGHC.lhs" 736 50 736 51 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 39 736 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 39 736 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 39 736 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 39 736 45 , srcInfoPoints = [] } "me_env"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 46 736 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 46 736 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 46 736 50 , srcInfoPoints = [] } "menv")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 52 736 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 52 736 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 52 736 55 , srcInfoPoints = [] } "vs1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 56 736 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 56 736 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 736 56 736 59 , srcInfoPoints = [] } "vs2")))) ])) Nothing ])) , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 1 739 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 1 738 11 , srcInfoPoints = [] } "match_alts") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 12 738 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 12 738 16 , srcInfoPoints = [] } "menv") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 17 738 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 17 738 22 , srcInfoPoints = [] } "subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 23 738 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 23 738 28 , srcInfoPoints = [] } "alts1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 29 738 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 738 29 738 34 , srcInfoPoints = [] } "alts2") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 739 3 739 12 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 739 3 739 4 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 739 5 739 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 739 5 739 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 739 5 739 12 , srcInfoPoints = [] } "Nothing")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 750 1 754 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 750 10 750 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 750 1 750 9 , srcInfoPoints = [] } "match_ty" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 750 13 754 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 751 10 751 12 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 750 13 750 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 750 13 750 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 750 13 750 21 , srcInfoPoints = [] } "MatchEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 751 13 754 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 752 10 752 12 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 751 13 751 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 751 13 751 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 751 13 751 21 , srcInfoPoints = [] } "SubstEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 752 13 754 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 753 10 753 12 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 752 13 752 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 752 13 752 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 752 13 752 17 , srcInfoPoints = [] } "Type"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 753 13 754 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 754 10 754 12 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 753 13 753 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 753 13 753 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 753 13 753 17 , srcInfoPoints = [] } "Type"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 754 13 754 27 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 754 13 754 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 754 13 754 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 754 13 754 18 , srcInfoPoints = [] } "Maybe"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 754 19 754 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 754 19 754 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 754 19 754 27 , srcInfoPoints = [] } "SubstEnv")))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 1 757 44 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 1 757 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 1 755 9 , srcInfoPoints = [] } "match_ty") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 10 755 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 10 755 14 , srcInfoPoints = [] } "menv") , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 15 755 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 755 15 755 16 , SrcSpan "tests/examples/RealGHC.lhs" 755 24 755 25 , SrcSpan "tests/examples/RealGHC.lhs" 755 34 755 35 , SrcSpan "tests/examples/RealGHC.lhs" 755 41 755 42 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 16 755 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 16 755 24 , srcInfoPoints = [] } "tv_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 26 755 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 26 755 34 , srcInfoPoints = [] } "id_subst") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 36 755 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 36 755 41 , srcInfoPoints = [] } "binds") ] , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 43 755 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 43 755 46 , srcInfoPoints = [] } "ty1") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 47 755 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 755 47 755 50 , srcInfoPoints = [] } "ty2") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 3 757 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 756 3 756 4 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 5 757 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 756 5 756 7 , SrcSpan "tests/examples/RealGHC.lhs" 756 9 756 10 , SrcSpan "tests/examples/RealGHC.lhs" 757 5 757 6 , SrcSpan "tests/examples/RealGHC.lhs" 757 43 757 44 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 11 756 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 756 21 756 23 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 11 756 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 11 756 20 , srcInfoPoints = [] } "tv_subst'")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 24 756 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 24 756 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 24 756 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 24 756 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 24 756 42 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 24 756 42 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 24 756 42 , srcInfoPoints = [] } "Unify") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 24 756 42 , srcInfoPoints = [] } "ruleMatchTyX"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 43 756 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 43 756 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 43 756 47 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 48 756 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 48 756 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 48 756 56 , srcInfoPoints = [] } "tv_subst")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 57 756 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 57 756 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 57 756 60 , srcInfoPoints = [] } "ty1")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 61 756 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 61 756 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 756 61 756 64 , srcInfoPoints = [] } "ty2")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 7 757 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 7 757 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 7 757 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 7 757 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 7 757 13 , srcInfoPoints = [] } "return"))) (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 14 757 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 757 14 757 15 , SrcSpan "tests/examples/RealGHC.lhs" 757 24 757 25 , SrcSpan "tests/examples/RealGHC.lhs" 757 34 757 35 , SrcSpan "tests/examples/RealGHC.lhs" 757 41 757 42 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 15 757 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 15 757 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 15 757 24 , srcInfoPoints = [] } "tv_subst'")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 26 757 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 26 757 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 26 757 34 , srcInfoPoints = [] } "id_subst")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 36 757 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 36 757 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 757 36 757 41 , srcInfoPoints = [] } "binds")) ])) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 1 817 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 813 18 813 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 1 813 17 , srcInfoPoints = [] } "ruleCheckProgram" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 21 817 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 814 18 814 20 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 21 813 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 813 21 813 22 , SrcSpan "tests/examples/RealGHC.lhs" 813 40 813 41 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 22 813 40 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 813 33 813 35 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 22 813 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 22 813 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 22 813 32 , srcInfoPoints = [] } "Activation"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 36 813 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 36 813 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 813 36 813 40 , srcInfoPoints = [] } "Bool"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 814 21 817 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 815 18 815 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 814 21 814 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 814 21 814 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 814 21 814 27 , srcInfoPoints = [] } "String"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 815 21 817 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 816 18 816 20 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 815 21 815 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 815 21 815 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 815 21 815 29 , srcInfoPoints = [] } "RuleBase"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 816 21 817 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 817 18 817 20 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 816 21 816 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 816 21 816 22 , SrcSpan "tests/examples/RealGHC.lhs" 816 30 816 31 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 816 22 816 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 816 22 816 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 816 22 816 30 , srcInfoPoints = [] } "CoreBind")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 817 21 817 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 817 21 817 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 817 21 817 25 , srcInfoPoints = [] } "SDoc"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 1 828 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 826 3 826 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 1 828 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 826 3 826 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 1 818 17 , srcInfoPoints = [] } "ruleCheckProgram") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 18 818 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 18 818 27 , srcInfoPoints = [] } "is_active") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 28 818 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 28 818 36 , srcInfoPoints = [] } "rule_pat") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 37 818 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 37 818 46 , srcInfoPoints = [] } "rule_base") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 47 818 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 818 47 818 52 , srcInfoPoints = [] } "binds") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 3 825 7 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 3 820 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 819 3 819 4 , SrcSpan "tests/examples/RealGHC.lhs" 820 3 820 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 5 819 23 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 5 819 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 5 819 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 5 819 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 5 819 15 , srcInfoPoints = [] } "isEmptyBag"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 16 819 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 16 819 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 819 16 819 23 , srcInfoPoints = [] } "results")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 820 5 820 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 820 5 820 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 820 5 820 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 820 5 820 9 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 820 10 820 57 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 820 10 820 57 , srcInfoPoints = [] } "Rule check results: no rule application sites" "Rule check results: no rule application sites"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 821 3 825 7 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 821 3 821 4 , SrcSpan "tests/examples/RealGHC.lhs" 822 3 822 4 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 821 5 821 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 821 5 821 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 821 5 821 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 821 5 821 14 , srcInfoPoints = [] } "otherwise"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 5 825 7 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 5 822 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 5 822 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 5 822 9 , srcInfoPoints = [] } "vcat"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 10 825 7 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 822 10 822 11 , SrcSpan "tests/examples/RealGHC.lhs" 822 37 822 38 , SrcSpan "tests/examples/RealGHC.lhs" 823 11 823 12 , SrcSpan "tests/examples/RealGHC.lhs" 825 6 825 7 ] } [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 11 822 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 11 822 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 11 822 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 11 822 15 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 16 822 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 822 16 822 37 , srcInfoPoints = [] } "Rule check results:" "Rule check results:")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 823 7 823 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 823 7 823 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 823 7 823 11 , srcInfoPoints = [] } "line")) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 7 824 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 7 824 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 7 824 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 7 824 11 , srcInfoPoints = [] } "vcat"))) (ListComp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 12 824 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 824 12 824 13 , SrcSpan "tests/examples/RealGHC.lhs" 824 24 824 25 , SrcSpan "tests/examples/RealGHC.lhs" 824 49 824 50 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 14 824 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 14 824 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 14 824 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 14 824 15 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 16 824 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 16 824 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 16 824 18 , srcInfoPoints = [] } "$$"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 19 824 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 19 824 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 19 824 23 , srcInfoPoints = [] } "line")))) [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 26 824 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 824 28 824 30 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 26 824 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 824 28 824 30 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 26 824 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 26 824 27 , srcInfoPoints = [] } "p")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 31 824 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 31 824 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 31 824 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 31 824 40 , srcInfoPoints = [] } "bagToList"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 41 824 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 41 824 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 824 41 824 48 , srcInfoPoints = [] } "results"))))) ]) ])) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 5 828 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 827 5 827 5 , SrcSpan "tests/examples/RealGHC.lhs" 828 5 828 5 , SrcSpan "tests/examples/RealGHC.lhs" 830 1 830 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 5 827 100 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 5 827 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 5 827 12 , srcInfoPoints = [] } "results")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 13 827 100 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 827 13 827 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 15 827 100 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 15 827 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 15 827 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 15 827 28 , srcInfoPoints = [] } "unionManyBags"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 29 827 100 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 827 29 827 30 , SrcSpan "tests/examples/RealGHC.lhs" 827 99 827 100 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 30 827 99 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 30 827 93 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 30 827 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 30 827 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 30 827 33 , srcInfoPoints = [] } "map"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 34 827 93 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 827 34 827 35 , SrcSpan "tests/examples/RealGHC.lhs" 827 92 827 93 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 35 827 92 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 35 827 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 35 827 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 35 827 48 , srcInfoPoints = [] } "ruleCheckBind"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 49 827 92 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 827 49 827 50 , SrcSpan "tests/examples/RealGHC.lhs" 827 91 827 92 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 50 827 91 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 50 827 81 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 50 827 72 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 50 827 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 50 827 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 50 827 62 , srcInfoPoints = [] } "RuleCheckEnv"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 63 827 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 63 827 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 63 827 72 , srcInfoPoints = [] } "is_active")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 73 827 81 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 73 827 81 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 73 827 81 , srcInfoPoints = [] } "rule_pat")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 82 827 91 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 82 827 91 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 82 827 91 , srcInfoPoints = [] } "rule_base")))))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 94 827 99 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 94 827 99 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 827 94 827 99 , srcInfoPoints = [] } "binds"))))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 5 828 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 5 828 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 5 828 9 , srcInfoPoints = [] } "line")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 10 828 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 828 10 828 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 12 828 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 12 828 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 12 828 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 12 828 16 , srcInfoPoints = [] } "text"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 17 828 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 828 17 828 18 , SrcSpan "tests/examples/RealGHC.lhs" 828 34 828 35 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 18 828 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 18 828 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 18 828 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 18 828 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 18 828 27 , srcInfoPoints = [] } "replicate"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 28 828 30 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 28 828 30 , srcInfoPoints = [] } 20 "20"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 31 828 34 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 828 31 828 34 , srcInfoPoints = [] } '-' "-")))))) Nothing ])) ] , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 830 1 834 2 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 830 19 830 20 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 830 1 830 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 830 6 830 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 830 6 830 18 , srcInfoPoints = [] } "RuleCheckEnv")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 830 21 834 2 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 830 34 830 35 , SrcSpan "tests/examples/RealGHC.lhs" 831 39 831 40 , SrcSpan "tests/examples/RealGHC.lhs" 832 25 832 26 , SrcSpan "tests/examples/RealGHC.lhs" 834 1 834 2 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 830 21 834 2 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 830 34 830 35 , SrcSpan "tests/examples/RealGHC.lhs" 831 39 831 40 , SrcSpan "tests/examples/RealGHC.lhs" 832 25 832 26 , SrcSpan "tests/examples/RealGHC.lhs" 834 1 834 2 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 830 21 830 33 , srcInfoPoints = [] } "RuleCheckEnv") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 5 831 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 831 18 831 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 5 831 17 , srcInfoPoints = [] } "rc_is_active" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 21 831 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 831 32 831 34 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 21 831 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 21 831 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 21 831 31 , srcInfoPoints = [] } "Activation"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 35 831 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 35 831 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 831 35 831 39 , srcInfoPoints = [] } "Bool")))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 832 5 832 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 832 16 832 18 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 832 5 832 15 , srcInfoPoints = [] } "rc_pattern" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 832 19 832 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 832 19 832 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 832 19 832 25 , srcInfoPoints = [] } "String"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 833 5 833 29 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 833 18 833 20 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 833 5 833 17 , srcInfoPoints = [] } "rc_rule_base" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 833 21 833 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 833 21 833 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 833 21 833 29 , srcInfoPoints = [] } "RuleBase"))) ]) ] Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 1 836 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 836 15 836 17 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 1 836 14 , srcInfoPoints = [] } "ruleCheckBind" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 18 836 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 836 31 836 33 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 18 836 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 18 836 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 18 836 30 , srcInfoPoints = [] } "RuleCheckEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 34 836 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 836 43 836 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 34 836 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 34 836 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 34 836 42 , srcInfoPoints = [] } "CoreBind"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 46 836 54 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 46 836 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 46 836 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 46 836 49 , srcInfoPoints = [] } "Bag"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 50 836 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 50 836 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 836 50 836 54 , srcInfoPoints = [] } "SDoc")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 1 839 80 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 1 838 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 1 838 14 , srcInfoPoints = [] } "ruleCheckBind") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 15 838 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 15 838 18 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 19 838 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 838 19 838 20 , SrcSpan "tests/examples/RealGHC.lhs" 838 30 838 31 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 20 838 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 20 838 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 20 838 26 , srcInfoPoints = [] } "NonRec")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 27 838 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 27 838 28 , srcInfoPoints = [] } "b") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 29 838 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 29 838 30 , srcInfoPoints = [] } "r") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 32 838 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 838 32 838 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 34 838 49 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 34 838 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 34 838 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 34 838 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 34 838 43 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 44 838 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 44 838 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 44 838 47 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 48 838 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 48 838 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 838 48 838 49 , srcInfoPoints = [] } "r"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 1 839 80 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 1 839 14 , srcInfoPoints = [] } "ruleCheckBind") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 15 839 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 15 839 18 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 19 839 28 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 839 19 839 20 , SrcSpan "tests/examples/RealGHC.lhs" 839 27 839 28 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 20 839 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 20 839 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 20 839 23 , srcInfoPoints = [] } "Rec")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 24 839 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 24 839 27 , srcInfoPoints = [] } "prs") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 32 839 80 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 839 32 839 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 34 839 80 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 34 839 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 34 839 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 34 839 47 , srcInfoPoints = [] } "unionManyBags"))) (ListComp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 48 839 80 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 839 48 839 49 , SrcSpan "tests/examples/RealGHC.lhs" 839 65 839 66 , SrcSpan "tests/examples/RealGHC.lhs" 839 79 839 80 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 49 839 64 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 49 839 62 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 49 839 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 49 839 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 49 839 58 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 59 839 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 59 839 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 59 839 62 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 63 839 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 63 839 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 63 839 64 , srcInfoPoints = [] } "r")))) [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 67 839 79 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 839 73 839 75 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 67 839 79 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 839 73 839 75 ] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 67 839 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 839 67 839 68 , SrcSpan "tests/examples/RealGHC.lhs" 839 69 839 70 , SrcSpan "tests/examples/RealGHC.lhs" 839 71 839 72 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 68 839 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 68 839 69 , srcInfoPoints = [] } "b") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 70 839 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 70 839 71 , srcInfoPoints = [] } "r") ]) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 76 839 79 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 76 839 79 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 839 76 839 79 , srcInfoPoints = [] } "prs")))) ]))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 1 841 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 841 11 841 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 1 841 10 , srcInfoPoints = [] } "ruleCheck" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 14 841 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 841 27 841 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 14 841 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 14 841 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 14 841 26 , srcInfoPoints = [] } "RuleCheckEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 30 841 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 841 39 841 41 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 30 841 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 30 841 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 30 841 38 , srcInfoPoints = [] } "CoreExpr"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 42 841 50 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 42 841 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 42 841 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 42 841 45 , srcInfoPoints = [] } "Bag"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 46 841 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 46 841 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 841 46 841 50 , srcInfoPoints = [] } "SDoc")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 1 851 68 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 1 842 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 1 842 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 11 842 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 11 842 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 15 842 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 842 15 842 16 , SrcSpan "tests/examples/RealGHC.lhs" 842 21 842 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 16 842 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 16 842 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 16 842 19 , srcInfoPoints = [] } "Var")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 20 842 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 20 842 21 , srcInfoPoints = [] } "v") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 29 842 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 842 29 842 30 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 31 842 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 31 842 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 842 31 842 39 , srcInfoPoints = [] } "emptyBag")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 1 843 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 1 843 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 11 843 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 11 843 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 15 843 22 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 843 15 843 16 , SrcSpan "tests/examples/RealGHC.lhs" 843 21 843 22 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 16 843 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 16 843 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 16 843 19 , srcInfoPoints = [] } "Lit")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 20 843 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 20 843 21 , srcInfoPoints = [] } "l") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 29 843 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 843 29 843 30 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 31 843 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 31 843 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 843 31 843 39 , srcInfoPoints = [] } "emptyBag")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 1 844 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 1 844 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 11 844 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 11 844 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 15 844 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 844 15 844 16 , SrcSpan "tests/examples/RealGHC.lhs" 844 23 844 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 16 844 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 16 844 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 16 844 20 , srcInfoPoints = [] } "Type")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 21 844 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 21 844 23 , srcInfoPoints = [] } "ty") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 29 844 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 844 29 844 30 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 31 844 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 31 844 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 844 31 844 39 , srcInfoPoints = [] } "emptyBag")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 1 845 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 1 845 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 11 845 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 11 845 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 15 845 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 845 15 845 16 , SrcSpan "tests/examples/RealGHC.lhs" 845 23 845 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 16 845 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 16 845 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 16 845 19 , srcInfoPoints = [] } "App")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 20 845 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 20 845 21 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 22 845 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 22 845 23 , srcInfoPoints = [] } "a") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 29 845 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 845 29 845 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 31 845 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 31 845 57 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 31 845 47 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 31 845 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 31 845 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 31 845 43 , srcInfoPoints = [] } "ruleCheckApp"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 44 845 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 44 845 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 44 845 47 , srcInfoPoints = [] } "env")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 48 845 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 845 48 845 49 , SrcSpan "tests/examples/RealGHC.lhs" 845 56 845 57 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 49 845 56 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 49 845 54 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 49 845 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 49 845 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 49 845 52 , srcInfoPoints = [] } "App"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 53 845 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 53 845 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 53 845 54 , srcInfoPoints = [] } "f")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 55 845 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 55 845 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 55 845 56 , srcInfoPoints = [] } "a")))))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 845 58 845 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 845 58 845 59 , SrcSpan "tests/examples/RealGHC.lhs" 845 59 845 60 ] } []))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 1 846 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 1 846 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 11 846 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 11 846 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 15 846 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 846 15 846 16 , SrcSpan "tests/examples/RealGHC.lhs" 846 24 846 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 16 846 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 16 846 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 16 846 20 , srcInfoPoints = [] } "Note")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 21 846 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 21 846 22 , srcInfoPoints = [] } "n") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 23 846 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 23 846 24 , srcInfoPoints = [] } "e") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 29 846 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 846 29 846 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 31 846 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 31 846 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 31 846 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 31 846 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 31 846 40 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 41 846 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 41 846 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 41 846 44 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 45 846 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 45 846 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 846 45 846 46 , srcInfoPoints = [] } "e"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 1 847 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 1 847 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 11 847 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 11 847 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 15 847 26 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 847 15 847 16 , SrcSpan "tests/examples/RealGHC.lhs" 847 25 847 26 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 16 847 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 16 847 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 16 847 20 , srcInfoPoints = [] } "Cast")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 21 847 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 21 847 22 , srcInfoPoints = [] } "e") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 23 847 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 23 847 25 , srcInfoPoints = [] } "co") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 29 847 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 847 29 847 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 31 847 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 31 847 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 31 847 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 31 847 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 31 847 40 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 41 847 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 41 847 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 41 847 44 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 45 847 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 45 847 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 847 45 847 46 , srcInfoPoints = [] } "e"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 1 848 79 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 1 848 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 11 848 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 11 848 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 15 848 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 848 15 848 16 , SrcSpan "tests/examples/RealGHC.lhs" 848 24 848 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 16 848 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 16 848 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 16 848 19 , srcInfoPoints = [] } "Let")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 20 848 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 20 848 22 , srcInfoPoints = [] } "bd") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 23 848 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 23 848 24 , srcInfoPoints = [] } "e") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 29 848 79 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 848 29 848 30 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 31 848 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 31 848 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 31 848 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 31 848 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 31 848 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 31 848 44 , srcInfoPoints = [] } "ruleCheckBind"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 45 848 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 45 848 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 45 848 48 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 49 848 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 49 848 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 49 848 51 , srcInfoPoints = [] } "bd")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 52 848 63 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 848 52 848 53 , SrcSpan "tests/examples/RealGHC.lhs" 848 53 848 62 , SrcSpan "tests/examples/RealGHC.lhs" 848 62 848 63 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 52 848 63 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 848 52 848 53 , SrcSpan "tests/examples/RealGHC.lhs" 848 53 848 62 , SrcSpan "tests/examples/RealGHC.lhs" 848 62 848 63 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 53 848 62 , srcInfoPoints = [] } "unionBags"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 64 848 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 64 848 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 64 848 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 64 848 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 64 848 73 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 74 848 77 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 74 848 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 74 848 77 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 78 848 79 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 78 848 79 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 848 78 848 79 , srcInfoPoints = [] } "e")))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 1 849 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 1 849 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 11 849 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 11 849 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 15 849 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 849 15 849 16 , SrcSpan "tests/examples/RealGHC.lhs" 849 23 849 24 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 16 849 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 16 849 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 16 849 19 , srcInfoPoints = [] } "Lam")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 20 849 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 20 849 21 , srcInfoPoints = [] } "b") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 22 849 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 22 849 23 , srcInfoPoints = [] } "e") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 29 849 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 849 29 849 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 31 849 46 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 31 849 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 31 849 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 31 849 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 31 849 40 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 41 849 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 41 849 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 41 849 44 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 45 849 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 45 849 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 849 45 849 46 , srcInfoPoints = [] } "e"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 1 851 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 1 850 10 , srcInfoPoints = [] } "ruleCheck") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 11 850 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 11 850 14 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 15 850 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 850 15 850 16 , SrcSpan "tests/examples/RealGHC.lhs" 850 29 850 30 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 16 850 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 16 850 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 16 850 20 , srcInfoPoints = [] } "Case")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 21 850 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 21 850 22 , srcInfoPoints = [] } "e") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 23 850 24 , srcInfoPoints = [] } , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 25 850 26 , srcInfoPoints = [] } , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 27 850 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 27 850 29 , srcInfoPoints = [] } "as") ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 31 851 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 850 31 850 32 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 33 851 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 33 850 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 33 850 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 33 850 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 33 850 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 33 850 42 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 43 850 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 43 850 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 43 850 46 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 47 850 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 47 850 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 47 850 48 , srcInfoPoints = [] } "e")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 49 850 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 850 49 850 50 , SrcSpan "tests/examples/RealGHC.lhs" 850 50 850 59 , SrcSpan "tests/examples/RealGHC.lhs" 850 59 850 60 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 49 850 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 850 49 850 50 , SrcSpan "tests/examples/RealGHC.lhs" 850 50 850 59 , SrcSpan "tests/examples/RealGHC.lhs" 850 59 850 60 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 850 50 850 59 , srcInfoPoints = [] } "unionBags"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 21 851 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 21 851 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 21 851 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 21 851 34 , srcInfoPoints = [] } "unionManyBags"))) (ListComp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 35 851 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 851 35 851 36 , SrcSpan "tests/examples/RealGHC.lhs" 851 52 851 53 , SrcSpan "tests/examples/RealGHC.lhs" 851 67 851 68 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 36 851 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 36 851 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 36 851 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 36 851 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 36 851 45 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 46 851 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 46 851 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 46 851 49 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 50 851 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 50 851 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 50 851 51 , srcInfoPoints = [] } "r")))) [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 54 851 67 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 851 62 851 64 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 54 851 67 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 851 62 851 64 ] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 54 851 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 851 54 851 55 , SrcSpan "tests/examples/RealGHC.lhs" 851 56 851 57 , SrcSpan "tests/examples/RealGHC.lhs" 851 58 851 59 , SrcSpan "tests/examples/RealGHC.lhs" 851 60 851 61 ] } Boxed [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 55 851 56 , srcInfoPoints = [] } , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 57 851 58 , srcInfoPoints = [] } , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 59 851 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 59 851 60 , srcInfoPoints = [] } "r") ]) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 65 851 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 65 851 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 851 65 851 67 , srcInfoPoints = [] } "as")))) ])))) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 1 855 52 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 1 853 86 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 1 853 13 , srcInfoPoints = [] } "ruleCheckApp") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 14 853 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 14 853 17 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 18 853 27 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 853 18 853 19 , SrcSpan "tests/examples/RealGHC.lhs" 853 26 853 27 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 19 853 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 19 853 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 19 853 22 , srcInfoPoints = [] } "App")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 23 853 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 23 853 24 , srcInfoPoints = [] } "f") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 25 853 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 25 853 26 , srcInfoPoints = [] } "a") ]) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 28 853 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 28 853 30 , srcInfoPoints = [] } "as") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 31 853 86 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 853 31 853 32 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 33 853 86 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 33 853 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 33 853 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 33 853 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 33 853 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 33 853 42 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 43 853 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 43 853 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 43 853 46 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 47 853 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 47 853 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 47 853 48 , srcInfoPoints = [] } "a")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 49 853 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 853 49 853 50 , SrcSpan "tests/examples/RealGHC.lhs" 853 50 853 59 , SrcSpan "tests/examples/RealGHC.lhs" 853 59 853 60 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 49 853 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 853 49 853 50 , SrcSpan "tests/examples/RealGHC.lhs" 853 50 853 59 , SrcSpan "tests/examples/RealGHC.lhs" 853 59 853 60 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 50 853 59 , srcInfoPoints = [] } "unionBags"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 61 853 86 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 61 853 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 61 853 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 61 853 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 61 853 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 61 853 73 , srcInfoPoints = [] } "ruleCheckApp"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 74 853 77 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 74 853 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 74 853 77 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 78 853 79 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 78 853 79 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 78 853 79 , srcInfoPoints = [] } "f")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 80 853 86 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 853 80 853 81 , SrcSpan "tests/examples/RealGHC.lhs" 853 85 853 86 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 81 853 85 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 81 853 82 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 81 853 82 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 81 853 82 , srcInfoPoints = [] } "a"))) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 82 853 83 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 82 853 83 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 82 853 83 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 83 853 85 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 83 853 85 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 853 83 853 85 , srcInfoPoints = [] } "as")))))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 1 854 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 1 854 13 , srcInfoPoints = [] } "ruleCheckApp") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 14 854 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 14 854 17 , srcInfoPoints = [] } "env") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 18 854 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 854 18 854 19 , SrcSpan "tests/examples/RealGHC.lhs" 854 24 854 25 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 19 854 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 19 854 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 19 854 22 , srcInfoPoints = [] } "Var")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 23 854 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 23 854 24 , srcInfoPoints = [] } "f") ]) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 26 854 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 26 854 28 , srcInfoPoints = [] } "as") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 31 854 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 854 31 854 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 33 854 54 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 33 854 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 33 854 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 33 854 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 33 854 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 33 854 45 , srcInfoPoints = [] } "ruleCheckFun"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 46 854 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 46 854 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 46 854 49 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 50 854 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 50 854 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 50 854 51 , srcInfoPoints = [] } "f")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 52 854 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 52 854 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 854 52 854 54 , srcInfoPoints = [] } "as"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 1 855 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 1 855 13 , srcInfoPoints = [] } "ruleCheckApp") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 14 855 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 14 855 17 , srcInfoPoints = [] } "env") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 18 855 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 18 855 23 , srcInfoPoints = [] } "other") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 24 855 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 24 855 26 , srcInfoPoints = [] } "as") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 31 855 52 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 855 31 855 32 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 33 855 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 33 855 46 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 33 855 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 33 855 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 33 855 42 , srcInfoPoints = [] } "ruleCheck"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 43 855 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 43 855 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 43 855 46 , srcInfoPoints = [] } "env")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 47 855 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 47 855 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 855 47 855 52 , srcInfoPoints = [] } "other"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 1 859 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 859 14 859 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 1 859 13 , srcInfoPoints = [] } "ruleCheckFun" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 17 859 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 859 30 859 32 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 17 859 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 17 859 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 17 859 29 , srcInfoPoints = [] } "RuleCheckEnv"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 33 859 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 859 36 859 38 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 33 859 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 33 859 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 33 859 35 , srcInfoPoints = [] } "Id"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 39 859 61 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 859 50 859 52 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 39 859 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 859 39 859 40 , SrcSpan "tests/examples/RealGHC.lhs" 859 48 859 49 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 40 859 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 40 859 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 40 859 48 , srcInfoPoints = [] } "CoreExpr")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 53 859 61 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 53 859 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 53 859 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 53 859 56 , srcInfoPoints = [] } "Bag"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 57 859 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 57 859 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 859 57 859 61 , srcInfoPoints = [] } "SDoc"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 1 868 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 866 3 866 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 1 868 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 866 3 866 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 1 863 13 , srcInfoPoints = [] } "ruleCheckFun") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 14 863 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 14 863 17 , srcInfoPoints = [] } "env") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 18 863 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 18 863 20 , srcInfoPoints = [] } "fn") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 21 863 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 863 21 863 25 , srcInfoPoints = [] } "args") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 3 865 96 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 3 864 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 864 3 864 4 , SrcSpan "tests/examples/RealGHC.lhs" 864 27 864 28 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 5 864 26 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 5 864 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 5 864 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 5 864 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 5 864 9 , srcInfoPoints = [] } "null"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 10 864 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 10 864 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 10 864 26 , srcInfoPoints = [] } "name_match_rules")))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 29 864 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 29 864 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 864 29 864 37 , srcInfoPoints = [] } "emptyBag"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 3 865 96 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 865 3 865 4 , SrcSpan "tests/examples/RealGHC.lhs" 865 23 865 24 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 5 865 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 5 865 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 5 865 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 5 865 14 , srcInfoPoints = [] } "otherwise"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 25 865 96 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 25 865 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 25 865 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 25 865 32 , srcInfoPoints = [] } "unitBag"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 33 865 96 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 865 33 865 34 , SrcSpan "tests/examples/RealGHC.lhs" 865 95 865 96 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 34 865 95 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 34 865 78 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 34 865 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 34 865 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 34 865 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 34 865 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 34 865 51 , srcInfoPoints = [] } "ruleAppCheck_help"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 52 865 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 865 52 865 53 , SrcSpan "tests/examples/RealGHC.lhs" 865 69 865 70 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 53 865 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 53 865 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 53 865 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 53 865 65 , srcInfoPoints = [] } "rc_is_active"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 66 865 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 66 865 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 66 865 69 , srcInfoPoints = [] } "env")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 71 865 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 71 865 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 71 865 73 , srcInfoPoints = [] } "fn")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 74 865 78 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 74 865 78 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 74 865 78 , srcInfoPoints = [] } "args")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 79 865 95 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 79 865 95 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 865 79 865 95 , srcInfoPoints = [] } "name_match_rules")))))) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 5 868 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 867 5 867 5 , SrcSpan "tests/examples/RealGHC.lhs" 868 5 868 5 , SrcSpan "tests/examples/RealGHC.lhs" 870 1 870 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 5 867 69 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 5 867 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 5 867 21 , srcInfoPoints = [] } "name_match_rules")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 22 867 69 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 867 22 867 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 24 867 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 24 867 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 24 867 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 24 867 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 24 867 30 , srcInfoPoints = [] } "filter"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 31 867 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 31 867 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 31 867 36 , srcInfoPoints = [] } "match")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 37 867 69 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 867 37 867 38 , SrcSpan "tests/examples/RealGHC.lhs" 867 68 867 69 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 38 867 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 38 867 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 38 867 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 38 867 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 38 867 46 , srcInfoPoints = [] } "getRules"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 47 867 65 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 867 47 867 48 , SrcSpan "tests/examples/RealGHC.lhs" 867 64 867 65 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 48 867 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 48 867 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 48 867 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 48 867 60 , srcInfoPoints = [] } "rc_rule_base"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 61 867 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 61 867 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 61 867 64 , srcInfoPoints = [] } "env")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 66 867 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 66 867 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 867 66 867 68 , srcInfoPoints = [] } "fn"))))))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 5 868 72 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 5 868 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 5 868 10 , srcInfoPoints = [] } "match") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 11 868 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 11 868 15 , srcInfoPoints = [] } "rule") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 16 868 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 868 16 868 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 18 868 72 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 18 868 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 868 18 868 19 , SrcSpan "tests/examples/RealGHC.lhs" 868 33 868 34 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 19 868 33 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 19 868 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 19 868 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 19 868 29 , srcInfoPoints = [] } "rc_pattern"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 30 868 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 30 868 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 30 868 33 , srcInfoPoints = [] } "env"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 35 868 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 868 35 868 36 , SrcSpan "tests/examples/RealGHC.lhs" 868 36 868 46 , SrcSpan "tests/examples/RealGHC.lhs" 868 46 868 47 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 35 868 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 868 35 868 36 , SrcSpan "tests/examples/RealGHC.lhs" 868 36 868 46 , SrcSpan "tests/examples/RealGHC.lhs" 868 46 868 47 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 36 868 46 , srcInfoPoints = [] } "isPrefixOf"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 48 868 72 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 48 868 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 48 868 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 48 868 56 , srcInfoPoints = [] } "unpackFS"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 57 868 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 868 57 868 58 , SrcSpan "tests/examples/RealGHC.lhs" 868 71 868 72 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 58 868 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 58 868 66 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 58 868 66 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 58 868 66 , srcInfoPoints = [] } "ruleName"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 67 868 71 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 67 868 71 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 868 67 868 71 , srcInfoPoints = [] } "rule")))))))) Nothing ] ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 1 870 84 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 19 870 21 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 1 870 18 , srcInfoPoints = [] } "ruleAppCheck_help" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 22 870 84 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 43 870 45 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 22 870 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 22 870 23 , SrcSpan "tests/examples/RealGHC.lhs" 870 41 870 42 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 23 870 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 34 870 36 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 23 870 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 23 870 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 23 870 33 , srcInfoPoints = [] } "Activation"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 37 870 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 37 870 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 37 870 41 , srcInfoPoints = [] } "Bool"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 46 870 84 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 49 870 51 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 46 870 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 46 870 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 46 870 48 , srcInfoPoints = [] } "Id"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 52 870 84 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 63 870 65 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 52 870 62 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 52 870 53 , SrcSpan "tests/examples/RealGHC.lhs" 870 61 870 62 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 53 870 61 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 53 870 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 53 870 61 , srcInfoPoints = [] } "CoreExpr")))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 66 870 84 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 77 870 79 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 66 870 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 870 66 870 67 , SrcSpan "tests/examples/RealGHC.lhs" 870 75 870 76 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 67 870 75 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 67 870 75 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 67 870 75 , srcInfoPoints = [] } "CoreRule")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 80 870 84 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 80 870 84 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 870 80 870 84 , srcInfoPoints = [] } "SDoc"))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 1 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 875 3 875 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 1 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 875 3 875 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 1 871 18 , srcInfoPoints = [] } "ruleAppCheck_help") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 19 871 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 19 871 28 , srcInfoPoints = [] } "is_active") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 29 871 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 29 871 31 , srcInfoPoints = [] } "fn") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 32 871 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 32 871 36 , srcInfoPoints = [] } "args") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 37 871 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 871 37 871 42 , srcInfoPoints = [] } "rules") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 872 3 874 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 872 3 872 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 5 874 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 5 873 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 5 873 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 5 873 9 , srcInfoPoints = [] } "vcat"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 10 874 35 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 873 10 873 11 , SrcSpan "tests/examples/RealGHC.lhs" 873 60 873 61 , SrcSpan "tests/examples/RealGHC.lhs" 874 34 874 35 ] } [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 11 873 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 11 873 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 11 873 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 11 873 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 11 873 15 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 16 873 29 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 16 873 29 , srcInfoPoints = [] } "Expression:" "Expression:"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 30 873 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 30 873 33 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 30 873 33 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 34 873 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 34 873 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 34 873 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 34 873 37 , srcInfoPoints = [] } "ppr"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 38 873 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 873 38 873 39 , SrcSpan "tests/examples/RealGHC.lhs" 873 59 873 60 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 39 873 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 39 873 54 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 39 873 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 39 873 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 39 873 45 , srcInfoPoints = [] } "mkApps"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 46 873 54 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 873 46 873 47 , SrcSpan "tests/examples/RealGHC.lhs" 873 53 873 54 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 47 873 53 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 47 873 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 47 873 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 47 873 50 , srcInfoPoints = [] } "Var"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 51 873 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 51 873 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 51 873 53 , srcInfoPoints = [] } "fn")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 55 873 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 55 873 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 873 55 873 59 , srcInfoPoints = [] } "args")))))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 7 874 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 7 874 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 7 874 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 7 874 11 , srcInfoPoints = [] } "vcat"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 12 874 34 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 874 12 874 13 , SrcSpan "tests/examples/RealGHC.lhs" 874 33 874 34 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 13 874 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 13 874 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 13 874 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 13 874 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 13 874 16 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 17 874 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 17 874 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 17 874 27 , srcInfoPoints = [] } "check_rule")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 28 874 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 28 874 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 874 28 874 33 , srcInfoPoints = [] } "rules"))))) ]))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 5 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 876 5 876 5 , SrcSpan "tests/examples/RealGHC.lhs" 877 5 877 5 , SrcSpan "tests/examples/RealGHC.lhs" 878 5 878 5 , SrcSpan "tests/examples/RealGHC.lhs" 880 5 880 5 , SrcSpan "tests/examples/RealGHC.lhs" 882 5 882 5 , SrcSpan "tests/examples/RealGHC.lhs" 884 5 884 5 , SrcSpan "tests/examples/RealGHC.lhs" 887 5 887 5 , SrcSpan "tests/examples/RealGHC.lhs" 891 5 891 5 , SrcSpan "tests/examples/RealGHC.lhs" 893 5 893 5 , SrcSpan "tests/examples/RealGHC.lhs" 915 1 915 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 5 876 25 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 5 876 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 5 876 11 , srcInfoPoints = [] } "n_args")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 12 876 25 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 876 12 876 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 14 876 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 14 876 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 14 876 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 14 876 20 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 21 876 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 21 876 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 876 21 876 25 , srcInfoPoints = [] } "args"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 5 877 36 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 5 877 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 5 877 11 , srcInfoPoints = [] } "i_args")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 12 877 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 877 12 877 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 14 877 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 14 877 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 14 877 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 14 877 18 , srcInfoPoints = [] } "args"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 19 877 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 877 19 877 20 , SrcSpan "tests/examples/RealGHC.lhs" 877 20 877 23 , SrcSpan "tests/examples/RealGHC.lhs" 877 23 877 24 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 19 877 24 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 877 19 877 20 , SrcSpan "tests/examples/RealGHC.lhs" 877 20 877 23 , SrcSpan "tests/examples/RealGHC.lhs" 877 23 877 24 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 20 877 23 , srcInfoPoints = [] } "zip"))) (EnumFrom SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 25 877 36 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 877 25 877 26 , SrcSpan "tests/examples/RealGHC.lhs" 877 33 877 35 , SrcSpan "tests/examples/RealGHC.lhs" 877 35 877 36 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 26 877 32 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 877 27 877 29 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 26 877 27 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 26 877 27 , srcInfoPoints = [] } 1 "1")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 29 877 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 29 877 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 877 29 877 32 , srcInfoPoints = [] } "Int"))))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 5 878 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 5 878 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 5 878 15 , srcInfoPoints = [] } "rough_args")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 16 878 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 878 16 878 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 18 878 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 18 878 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 18 878 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 18 878 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 18 878 21 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 22 878 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 22 878 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 22 878 34 , srcInfoPoints = [] } "roughTopName")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 35 878 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 35 878 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 878 35 878 39 , srcInfoPoints = [] } "args"))))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 5 880 67 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 5 880 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 5 880 15 , srcInfoPoints = [] } "check_rule") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 16 880 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 16 880 20 , srcInfoPoints = [] } "rule") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 21 880 67 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 880 21 880 22 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 23 880 67 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 23 880 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 23 880 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 23 880 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 23 880 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 23 880 34 , srcInfoPoints = [] } "rule_herald"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 35 880 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 35 880 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 35 880 39 , srcInfoPoints = [] } "rule")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 40 880 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 40 880 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 40 880 42 , srcInfoPoints = [] } "<>"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 43 880 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 43 880 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 43 880 48 , srcInfoPoints = [] } "colon")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 49 880 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 49 880 52 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 49 880 52 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 53 880 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 53 880 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 53 880 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 53 880 62 , srcInfoPoints = [] } "rule_info"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 63 880 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 63 880 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 880 63 880 67 , srcInfoPoints = [] } "rule")))))) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 5 885 60 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 5 883 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 5 882 16 , srcInfoPoints = [] } "rule_herald") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 17 882 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 882 17 882 18 , SrcSpan "tests/examples/RealGHC.lhs" 882 48 882 49 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 18 882 48 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 882 30 882 31 , SrcSpan "tests/examples/RealGHC.lhs" 882 47 882 48 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 18 882 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 18 882 29 , srcInfoPoints = [] } "BuiltinRule")) [ PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 32 882 46 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 882 40 882 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 32 882 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 32 882 39 , srcInfoPoints = [] } "ru_name")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 42 882 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 882 42 882 46 , srcInfoPoints = [] } "name")) ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 9 883 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 883 9 883 10 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 11 883 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 11 883 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 11 883 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 11 883 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 11 883 16 , srcInfoPoints = [] } "ptext"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 17 883 38 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 883 17 883 18 , SrcSpan "tests/examples/RealGHC.lhs" 883 37 883 38 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 18 883 37 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 18 883 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 18 883 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 18 883 22 , srcInfoPoints = [] } "sLit"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 23 883 37 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 23 883 37 , srcInfoPoints = [] } "Builtin rule" "Builtin rule"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 39 883 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 39 883 42 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 39 883 42 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 43 883 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 43 883 55 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 43 883 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 43 883 55 , srcInfoPoints = [] } "doubleQuotes"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 56 883 68 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 883 56 883 57 , SrcSpan "tests/examples/RealGHC.lhs" 883 67 883 68 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 57 883 67 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 57 883 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 57 883 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 57 883 62 , srcInfoPoints = [] } "ftext"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 63 883 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 63 883 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 883 63 883 67 , srcInfoPoints = [] } "name")))))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 5 885 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 5 884 16 , srcInfoPoints = [] } "rule_herald") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 17 884 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 884 17 884 18 , SrcSpan "tests/examples/RealGHC.lhs" 884 41 884 42 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 18 884 41 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 884 23 884 24 , SrcSpan "tests/examples/RealGHC.lhs" 884 40 884 41 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 18 884 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 18 884 22 , srcInfoPoints = [] } "Rule")) [ PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 25 884 39 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 884 33 884 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 25 884 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 25 884 32 , srcInfoPoints = [] } "ru_name")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 35 884 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 884 35 884 39 , srcInfoPoints = [] } "name")) ]) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 9 885 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 885 9 885 10 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 11 885 60 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 11 885 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 11 885 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 11 885 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 11 885 16 , srcInfoPoints = [] } "ptext"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 17 885 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 885 17 885 18 , SrcSpan "tests/examples/RealGHC.lhs" 885 29 885 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 18 885 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 18 885 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 18 885 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 18 885 22 , srcInfoPoints = [] } "sLit"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 23 885 29 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 23 885 29 , srcInfoPoints = [] } "Rule" "Rule"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 31 885 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 31 885 34 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 31 885 34 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 35 885 60 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 35 885 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 35 885 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 35 885 47 , srcInfoPoints = [] } "doubleQuotes"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 48 885 60 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 885 48 885 49 , SrcSpan "tests/examples/RealGHC.lhs" 885 59 885 60 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 49 885 59 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 49 885 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 49 885 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 49 885 54 , srcInfoPoints = [] } "ftext"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 55 885 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 55 885 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 885 55 885 59 , srcInfoPoints = [] } "name")))))))) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 887 5 911 59 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 887 5 889 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 887 5 887 14 , srcInfoPoints = [] } "rule_info") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 887 15 887 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 887 15 887 19 , srcInfoPoints = [] } "rule") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 9 889 55 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 888 9 888 10 , SrcSpan "tests/examples/RealGHC.lhs" 889 13 889 14 ] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 9 889 55 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 888 9 888 10 , SrcSpan "tests/examples/RealGHC.lhs" 889 13 889 14 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 11 888 79 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 888 18 888 20 ] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 11 888 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 11 888 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 11 888 15 , srcInfoPoints = [] } "Just")) [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 16 888 17 , srcInfoPoints = [] } ]) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 21 888 79 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 21 888 74 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 21 888 63 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 21 888 58 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 21 888 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 21 888 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 21 888 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 21 888 30 , srcInfoPoints = [] } "matchRule"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 31 888 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 31 888 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 31 888 42 , srcInfoPoints = [] } "noBlackList")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 43 888 58 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 43 888 58 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 43 888 58 , srcInfoPoints = [] } "emptyInScopeSet")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 59 888 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 59 888 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 59 888 63 , srcInfoPoints = [] } "args")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 64 888 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 64 888 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 64 888 74 , srcInfoPoints = [] } "rough_args")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 75 888 79 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 75 888 79 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 888 75 888 79 , srcInfoPoints = [] } "rule")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 889 15 889 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 889 15 889 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 889 15 889 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 889 15 889 19 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 889 20 889 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 889 20 889 55 , srcInfoPoints = [] } "matches (which is very peculiar!)" "matches (which is very peculiar!)"))) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 5 891 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 5 891 14 , srcInfoPoints = [] } "rule_info") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 15 891 31 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 891 15 891 16 , SrcSpan "tests/examples/RealGHC.lhs" 891 30 891 31 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 16 891 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 891 28 891 29 , SrcSpan "tests/examples/RealGHC.lhs" 891 29 891 30 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 16 891 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 16 891 27 , srcInfoPoints = [] } "BuiltinRule")) []) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 32 891 55 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 891 32 891 33 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 34 891 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 34 891 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 34 891 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 34 891 38 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 39 891 55 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 891 39 891 55 , srcInfoPoints = [] } "does not match" "does not match")))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 5 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 900 9 900 14 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 5 893 14 , srcInfoPoints = [] } "rule_info") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 15 894 67 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 893 15 893 16 , SrcSpan "tests/examples/RealGHC.lhs" 894 66 894 67 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 16 894 66 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 893 21 893 22 , SrcSpan "tests/examples/RealGHC.lhs" 893 37 893 38 , SrcSpan "tests/examples/RealGHC.lhs" 893 51 893 52 , SrcSpan "tests/examples/RealGHC.lhs" 894 44 894 45 , SrcSpan "tests/examples/RealGHC.lhs" 894 65 894 66 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 16 893 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 16 893 20 , srcInfoPoints = [] } "Rule")) [ PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 23 893 37 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 893 31 893 32 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 23 893 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 23 893 30 , srcInfoPoints = [] } "ru_name")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 33 893 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 33 893 37 , srcInfoPoints = [] } "name")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 39 893 51 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 893 46 893 47 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 39 893 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 39 893 45 , srcInfoPoints = [] } "ru_act")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 48 893 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 893 48 893 51 , srcInfoPoints = [] } "act")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 23 894 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 894 32 894 33 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 23 894 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 23 894 31 , srcInfoPoints = [] } "ru_bndrs")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 34 894 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 34 894 44 , srcInfoPoints = [] } "rule_bndrs")) , PFieldPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 46 894 65 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 894 54 894 55 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 46 894 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 46 894 53 , srcInfoPoints = [] } "ru_args")) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 56 894 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 894 56 894 65 , srcInfoPoints = [] } "rule_args")) ]) ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 9 899 105 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 9 895 69 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 895 9 895 10 , SrcSpan "tests/examples/RealGHC.lhs" 895 34 895 35 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 11 895 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 11 895 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 11 895 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 11 895 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 11 895 14 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 15 895 30 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 895 15 895 16 , SrcSpan "tests/examples/RealGHC.lhs" 895 29 895 30 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 16 895 29 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 16 895 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 16 895 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 16 895 25 , srcInfoPoints = [] } "is_active"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 26 895 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 26 895 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 26 895 29 , srcInfoPoints = [] } "act")))))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 36 895 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 36 895 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 36 895 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 36 895 40 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 41 895 69 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 895 41 895 69 , srcInfoPoints = [] } "active only in later phase" "active only in later phase"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 9 896 65 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 896 9 896 10 , SrcSpan "tests/examples/RealGHC.lhs" 896 39 896 40 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 11 896 31 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 11 896 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 11 896 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 11 896 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 11 896 17 , srcInfoPoints = [] } "n_args"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 18 896 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 18 896 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 18 896 19 , srcInfoPoints = [] } "<"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 20 896 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 20 896 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 20 896 31 , srcInfoPoints = [] } "n_rule_args")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 41 896 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 41 896 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 41 896 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 41 896 45 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 46 896 65 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 896 46 896 65 , srcInfoPoints = [] } "too few arguments" "too few arguments"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 9 897 66 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 897 9 897 10 , SrcSpan "tests/examples/RealGHC.lhs" 897 39 897 40 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 11 897 38 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 11 897 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 11 897 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 11 897 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 11 897 23 , srcInfoPoints = [] } "n_mismatches"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 24 897 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 24 897 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 24 897 26 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 27 897 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 27 897 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 27 897 38 , srcInfoPoints = [] } "n_rule_args")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 41 897 66 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 41 897 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 41 897 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 41 897 45 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 46 897 66 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 897 46 897 66 , srcInfoPoints = [] } "no arguments match" "no arguments match"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 9 898 119 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 898 9 898 10 , SrcSpan "tests/examples/RealGHC.lhs" 898 35 898 36 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 11 898 28 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 11 898 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 11 898 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 11 898 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 11 898 23 , srcInfoPoints = [] } "n_mismatches"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 24 898 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 24 898 26 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 24 898 26 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 27 898 28 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 27 898 28 , srcInfoPoints = [] } 0 "0"))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 37 898 119 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 37 898 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 37 898 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 37 898 41 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 42 898 119 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 898 42 898 119 , srcInfoPoints = [] } "all arguments match (considered individually), but rule as a whole does not" "all arguments match (considered individually), but rule as a whole does not"))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 9 899 105 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 899 9 899 10 , SrcSpan "tests/examples/RealGHC.lhs" 899 31 899 32 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 11 899 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 11 899 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 11 899 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 11 899 20 , srcInfoPoints = [] } "otherwise"))) ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 33 899 105 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 33 899 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 33 899 49 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 33 899 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 33 899 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 33 899 37 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 38 899 49 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 38 899 49 , srcInfoPoints = [] } "arguments" "arguments"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 50 899 53 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 50 899 53 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 50 899 53 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 54 899 68 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 54 899 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 54 899 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 54 899 57 , srcInfoPoints = [] } "ppr"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 58 899 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 58 899 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 58 899 68 , srcInfoPoints = [] } "mismatches"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 69 899 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 69 899 72 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 69 899 72 , srcInfoPoints = [] } "<+>"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 73 899 105 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 73 899 77 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 73 899 77 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 73 899 77 , srcInfoPoints = [] } "text"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 78 899 105 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 899 78 899 105 , srcInfoPoints = [] } "do not match (1-indexing)" "do not match (1-indexing)")))) ]) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 11 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 901 11 901 11 , SrcSpan "tests/examples/RealGHC.lhs" 902 11 902 11 , SrcSpan "tests/examples/RealGHC.lhs" 903 11 903 11 , SrcSpan "tests/examples/RealGHC.lhs" 906 11 906 11 , SrcSpan "tests/examples/RealGHC.lhs" 907 11 907 11 , SrcSpan "tests/examples/RealGHC.lhs" 915 1 915 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 11 901 42 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 11 901 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 11 901 22 , srcInfoPoints = [] } "n_rule_args")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 24 901 42 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 901 24 901 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 26 901 42 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 26 901 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 26 901 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 26 901 32 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 33 901 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 33 901 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 901 33 901 42 , srcInfoPoints = [] } "rule_args"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 11 902 43 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 11 902 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 11 902 23 , srcInfoPoints = [] } "n_mismatches")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 24 902 43 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 902 24 902 25 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 26 902 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 26 902 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 26 902 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 26 902 32 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 33 902 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 33 902 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 902 33 902 43 , srcInfoPoints = [] } "mismatches"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 11 904 72 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 11 903 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 11 903 21 , srcInfoPoints = [] } "mismatches")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 24 904 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 903 24 903 25 ] } (ListComp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 26 904 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 903 26 903 27 , SrcSpan "tests/examples/RealGHC.lhs" 903 29 903 30 , SrcSpan "tests/examples/RealGHC.lhs" 903 76 903 77 , SrcSpan "tests/examples/RealGHC.lhs" 904 71 904 72 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 27 903 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 27 903 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 27 903 28 , srcInfoPoints = [] } "i"))) [ QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 31 903 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 903 51 903 53 ] } (Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 31 903 76 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 903 51 903 53 ] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 31 903 50 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 903 31 903 32 , SrcSpan "tests/examples/RealGHC.lhs" 903 40 903 41 , SrcSpan "tests/examples/RealGHC.lhs" 903 49 903 50 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 32 903 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 32 903 40 , srcInfoPoints = [] } "rule_arg") , PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 42 903 49 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 903 42 903 43 , SrcSpan "tests/examples/RealGHC.lhs" 903 46 903 47 , SrcSpan "tests/examples/RealGHC.lhs" 903 48 903 49 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 43 903 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 43 903 46 , srcInfoPoints = [] } "arg") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 47 903 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 47 903 48 , srcInfoPoints = [] } "i") ] ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 54 903 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 54 903 63 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 54 903 63 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 54 903 63 , srcInfoPoints = [] } "rule_args"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 64 903 69 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 903 64 903 65 , SrcSpan "tests/examples/RealGHC.lhs" 903 65 903 68 , SrcSpan "tests/examples/RealGHC.lhs" 903 68 903 69 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 64 903 69 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 903 64 903 65 , SrcSpan "tests/examples/RealGHC.lhs" 903 65 903 68 , SrcSpan "tests/examples/RealGHC.lhs" 903 68 903 69 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 65 903 68 , srcInfoPoints = [] } "zip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 70 903 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 70 903 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 903 70 903 76 , srcInfoPoints = [] } "i_args"))))) , QualStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 35 904 71 , srcInfoPoints = [] } (Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 35 904 71 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 35 904 71 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 35 904 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 35 904 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 35 904 38 , srcInfoPoints = [] } "not"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 39 904 71 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 904 39 904 40 , SrcSpan "tests/examples/RealGHC.lhs" 904 70 904 71 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 40 904 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 40 904 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 40 904 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 40 904 46 , srcInfoPoints = [] } "isJust"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 47 904 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 904 47 904 48 , SrcSpan "tests/examples/RealGHC.lhs" 904 69 904 70 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 48 904 69 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 48 904 65 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 48 904 56 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 48 904 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 48 904 56 , srcInfoPoints = [] } "match_fn"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 57 904 65 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 57 904 65 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 57 904 65 , srcInfoPoints = [] } "rule_arg")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 66 904 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 66 904 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 904 66 904 69 , srcInfoPoints = [] } "arg"))))))))) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 11 906 44 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 11 906 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 11 906 18 , srcInfoPoints = [] } "lhs_fvs")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 19 906 44 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 906 19 906 20 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 21 906 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 21 906 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 21 906 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 21 906 34 , srcInfoPoints = [] } "exprsFreeVars"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 35 906 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 35 906 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 906 35 906 44 , srcInfoPoints = [] } "rule_args"))))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 11 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 908 13 908 18 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 11 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 908 13 908 18 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 11 907 19 , srcInfoPoints = [] } "match_fn") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 20 907 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 20 907 28 , srcInfoPoints = [] } "rule_arg") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 29 907 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 29 907 32 , srcInfoPoints = [] } "arg") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 33 907 72 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 907 33 907 34 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 35 907 72 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 35 907 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 35 907 59 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 35 907 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 35 907 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 35 907 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 35 907 40 , srcInfoPoints = [] } "match"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 41 907 45 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 41 907 45 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 41 907 45 , srcInfoPoints = [] } "menv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 46 907 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 46 907 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 46 907 59 , srcInfoPoints = [] } "emptySubstEnv")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 60 907 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 60 907 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 60 907 68 , srcInfoPoints = [] } "rule_arg")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 69 907 72 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 69 907 72 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 907 69 907 72 , srcInfoPoints = [] } "arg"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 15 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 909 15 909 15 , SrcSpan "tests/examples/RealGHC.lhs" 910 15 910 15 , SrcSpan "tests/examples/RealGHC.lhs" 915 1 915 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 15 909 64 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 15 909 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 15 909 23 , srcInfoPoints = [] } "in_scope")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 24 909 64 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 909 24 909 25 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 26 909 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 26 909 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 26 909 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 26 909 33 , srcInfoPoints = [] } "lhs_fvs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 34 909 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 909 34 909 35 , SrcSpan "tests/examples/RealGHC.lhs" 909 35 909 46 , SrcSpan "tests/examples/RealGHC.lhs" 909 46 909 47 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 34 909 47 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 909 34 909 35 , SrcSpan "tests/examples/RealGHC.lhs" 909 35 909 46 , SrcSpan "tests/examples/RealGHC.lhs" 909 46 909 47 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 35 909 46 , srcInfoPoints = [] } "unionVarSet"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 48 909 64 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 48 909 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 48 909 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 48 909 60 , srcInfoPoints = [] } "exprFreeVars"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 61 909 64 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 61 909 64 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 909 61 909 64 , srcInfoPoints = [] } "arg")))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 15 911 59 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 15 910 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 15 910 19 , srcInfoPoints = [] } "menv")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 20 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 910 20 910 21 ] } (RecConstr SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 22 911 59 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 910 25 910 26 , SrcSpan "tests/examples/RealGHC.lhs" 911 25 911 26 , SrcSpan "tests/examples/RealGHC.lhs" 911 58 911 59 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 22 910 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 22 910 24 , srcInfoPoints = [] } "ME")) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 27 910 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 910 36 910 37 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 27 910 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 27 910 33 , srcInfoPoints = [] } "me_env")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 38 910 70 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 38 910 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 38 910 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 38 910 46 , srcInfoPoints = [] } "mkRnEnv2"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 47 910 70 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 910 47 910 48 , SrcSpan "tests/examples/RealGHC.lhs" 910 69 910 70 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 48 910 69 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 48 910 60 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 48 910 60 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 48 910 60 , srcInfoPoints = [] } "mkInScopeSet"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 61 910 69 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 61 910 69 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 910 61 910 69 , srcInfoPoints = [] } "in_scope")))))) , FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 27 911 57 , srcInfoPoints = [ SrcSpan "tests/examples/RealGHC.lhs" 911 36 911 37 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 27 911 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 27 911 35 , srcInfoPoints = [] } "me_tmpls")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 38 911 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 38 911 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 38 911 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 38 911 46 , srcInfoPoints = [] } "mkVarSet"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 47 911 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 47 911 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RealGHC.lhs" 911 47 911 57 , srcInfoPoints = [] } "rule_bndrs")))) ])) Nothing ])) ] ])) ] ])) ] ] , [ Comment False (SrcSpan "tests/examples/RealGHC.lhs" 9 1 9 60) " The above warning supression flag is a temporary kludge." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 10 1 10 72) " While working on this module you are encouraged to remove it and fix" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 11 1 11 35) " any warnings in the module. See" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 12 1 12 80) " http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 13 1 13 15) " for details" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 15 1 15 79) " | Functions for collecting together and applying rewrite rules to a module." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 16 1 16 57) " The 'CoreRule' datatype itself is declared elsewhere." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 18 5 18 18) " * RuleBase" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 21 5 21 23) " ** Constructing" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 25 5 25 37) " ** Checking rule applications" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 28 9 28 44) " ** Manipulating 'SpecInfo' rules" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 32 5 32 32) " * Misc. CoreRule helpers" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 38 1 38 27) " #include \"HsVersions.h\"" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 40 21 40 33) " All of it" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 106 1 106 69) " ^ Used to make 'CoreRule' for an 'Id' defined in the module being" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 107 1 107 41) " compiled. See also 'CoreSyn.CoreRule'" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 114 1 114 15) "------------" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 116 1 116 57) " ^ Find the \\\"top\\\" free names of several expressions." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 117 1 117 26) " Such names are either:" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 118 1 118 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 119 1 119 68) " 1. The function finally being applied to in an application chain" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 120 1 120 64) " (if that name is a GlobalId: see \"Var#globalvslocal\"), or" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 121 1 121 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 122 1 122 48) " 2. The 'TyCon' if the expression is a 'Type'" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 123 1 123 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 124 1 124 52) " This is used for the fast-match-check for rules;" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 125 1 125 49) " if the top names don't match, the rest can't" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 138 1 138 62) " ^ @ruleCantMatch tpl actual@ returns True only if @actual@" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 139 1 139 56) " definitely can't match @tpl@ by instantiating @tpl@." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 140 1 140 58) " It's only a one-way match; unlike instance matching we" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 141 1 141 31) " don't consider unification." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 142 1 142 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 143 1 143 21) " Notice that [_$_]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 144 1 144 48) " @ruleCantMatch [Nothing] [Just n2] = False@" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 145 1 145 70) " Reason: a template variable can be instantiated by a constant" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 146 1 146 9) " Also:" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 147 1 147 48) " @ruleCantMatch [Just n1] [Nothing] = False@" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 148 1 148 64) " Reason: a local variable @v@ in the actuals might [_$_]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 157 1 157 22) " (a) tidy the rules" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 158 1 158 51) " (b) sort them into order based on the rule name" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 159 1 159 51) " (c) suppress uniques (unless -dppr-debug is on)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 160 1 160 69) " This combination makes the output stable so we can use in testing" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 161 1 161 63) " It's here rather than in PprCore because it calls tidyRules" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 179 1 179 68) " | Make a 'SpecInfo' containing a number of 'CoreRule's, suitable" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 180 1 180 32) " for putting into an 'IdInfo'" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 199 1 199 83) " | Gather all the rules for locally bound identifiers from the supplied bindings" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 204 5 204 49) " The rules for an Id come from two places:" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 205 5 205 54) " (a) the ones it is born with (idCoreRules fn)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 206 5 206 60) " (b) rules added in subsequent modules (extra_rules)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 207 5 207 70) " PrimOps, for example, are born with a bunch of rules under (a)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 213 5 213 77) " Only PrimOpIds have rules inside themselves, and perhaps more besides" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 224 1 224 82) " | Gathers a collection of 'CoreRule's. Maps (the name of) an 'Id' to its rules" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 226 5 226 36) " The rules are are unordered;" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 227 5 227 42) " we sort out any overlaps on lookup" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 274 1 274 69) " | The main rule matching function. Attempts to apply all (active)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 275 1 275 64) " supplied rules to this instance of an application in a given" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 276 1 276 71) " context, returning the rule applied and the resulting expression if" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 277 1 277 15) " successful." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 282 1 282 42) " See Note [Extra args in rule matching]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 283 1 283 29) " See comments on matchRule" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 285 5 285 54) " pprTrace \"matchRules\" (ppr fn <+> ppr rules) $" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 296 24 296 72) " pprTrace \"match failed\" (ppr r $$ ppr args $$" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 297 20 297 137) " ppr [(arg_id, unfoldingTemplate unf) | Var arg_id <- args, let unf = idUnfolding arg_id, isCheapUnfolding unf] )" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 302 1 302 42) " All these pairs matched the expression" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 303 1 303 46) " Return the pair the the most specific rule" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 304 1 304 47) " The (fn,args) is just for overlap reporting" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 332 5 332 57) " Actually we should probably include the free vars" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 333 5 333 48) " of rule1's args, but I can't be bothered" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 336 29 336 55) " Nothing is black listed" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 342 1 342 52) " If (matchRule rule args) returns Just (name,rhs)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 343 1 343 57) " then (f args) matches the rule, and the corresponding" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 344 1 344 24) " rewritten RHS is rhs" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 345 1 345 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 346 1 346 44) " The bndrs and rhs is occurrence-analysed" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 347 1 347 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 348 1 348 12) " Example" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 349 1 349 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 350 1 350 12) " The rule" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 351 1 351 52) " forall f g x. map f (map g x) ==> map (f . g) x" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 352 1 352 13) " is stored" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 353 1 353 23) " CoreRule \"map/map\"" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 354 1 354 36) " [f,g,x] -- tpl_vars" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 355 1 355 40) " [f,map g x] -- tpl_args" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 356 1 356 35) " map (f.g) x) -- rhs" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 357 1 357 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 358 1 358 52) " Then the call: matchRule the_rule [e1,map e2 e3]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 359 1 359 51) " = Just (\"map/map\", (\\f,g,x -> rhs) e1 e2 e3)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 360 1 360 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 361 1 361 66) " Any 'surplus' arguments in the input are simply put on the end" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 362 1 362 18) " of the output." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 383 5 383 71) " We could do this when putting things into the rulebase, I guess" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 387 1 387 72) " For a given match template and context, find bindings to wrap around" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 388 1 388 80) " the entire result and what should be substituted for each template variable." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 389 1 389 84) " Fail if there are two few actual arguments from the target to match the template" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 390 33 390 56) " ^ In-scope variables" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 391 21 391 55) " ^ Match template type variables" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 392 25 392 44) " ^ Match template" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 393 25 393 78) " ^ Target; can have more elements than the template" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 404 5 404 35) " See Note [Template binders]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 409 45 409 75) " Fail if too few actual args" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 448 1 448 55) " These two definitions are not the same as in Subst," , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 449 1 449 63) " but they simple and direct, and purely local to this module" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 450 1 450 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 451 1 451 66) " * The domain of the TvSubstEnv and IdSubstEnv are the template" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 452 1 452 38) " variables passed into the match." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 453 1 453 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 454 1 454 71) " * The (OrdList CoreBind) in a SubstEnv are the bindings floated out" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 455 1 455 59) " from nested matches; see the Let case of match, below" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 456 1 456 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 464 1 464 57) " At one stage I tried to match even if there are more" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 465 1 465 34) " template args than real args." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 467 1 467 45) " I now think this is probably a bad idea." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 468 1 468 64) " Should the template (map f xs) match (map g)? I think not." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 469 1 469 55) " For a start, in general eta expansion wastes work." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 470 1 470 17) " SLPJ July 99" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 475 25 475 36) " Template" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 476 25 476 34) " Target" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 479 1 479 55) " See the notes with Unify.match, which matches types" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 480 1 480 40) " Everything is very similar for terms" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 482 1 482 25) " Interesting examples:" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 483 1 483 21) " Consider matching" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 484 1 484 32) " \\x->f against \\f->f" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 485 1 485 70) " When we meet the lambdas we must remember to rename f to f' in the" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 486 1 486 44) " second expresion. The RnEnv2 does that." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 487 1 487 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 488 1 488 21) " Consider matching" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 489 1 489 39) " forall a. \\b->b against \\a->3" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 490 1 490 65) " We must rename the \\a. Otherwise when we meet the lambdas we" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 491 1 491 64) " might substitute [a/b] in the template, and then erroneously" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 492 1 492 76) " succeed in matching what looks like the template variable 'a' against 3." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 494 1 494 60) " The Var case follows closely what happens in Unify.match" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 501 5 501 37) " Note [Notes in RULE matching]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 502 5 502 37) " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 503 5 503 60) " Look through Notes. In particular, we don't want to" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 504 5 504 63) " be confused by InlineMe notes. Maybe we should be more" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 505 5 505 59) " careful about profiling notes, but for now I'm just" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 506 5 506 35) " riding roughshod over them." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 507 5 507 56) "- See Note [Notes in call patterns] in SpecConstr" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 509 1 509 66) " Here is another important rule: if the term being matched is a" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 510 1 510 61) " variable, we expand it so long as its unfolding is a WHNF" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 511 1 511 62) " (Its occurrence information is not necessarily up to date," , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 512 1 512 25) " so we don't use it.)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 519 5 519 53) " Notice that we look up v2 in the in-scope set" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 520 5 520 34) " See Note [Lookup in-scope]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 521 5 521 59) " Remember to apply any renaming first (hence rnOccR)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 523 1 523 24) " Note [Matching lets]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 524 1 524 24) " ~~~~~~~~~~~~~~~~~~~~" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 525 1 525 40) " Matching a let-expression. Consider" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 526 1 526 36) " RULE forall x. f (g x) = " , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 527 1 527 25) " and target expression" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 528 1 528 28) " f (let { w=R } in g E))" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 529 1 529 49) " Then we'd like the rule to match, to generate" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 530 1 530 33) " let { w=R } in (\\x. ) E" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 531 1 531 66) " In effect, we want to float the let-binding outward, to enable" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 532 1 532 67) " the match to happen. This is the WHOLE REASON for accumulating" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 533 1 533 28) " bindings in the SubstEnv" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 534 1 534 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 535 1 535 26) " We can only do this if" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 536 1 536 63) " (a) Widening the scope of w does not capture any variables" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 537 1 537 62) " We use a conservative test: w is not already in scope" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 538 1 538 53) " If not, we clone the binders, and substitute" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 539 1 539 65) " (b) The free variables of R are not bound by the part of the" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 540 1 540 56) " target expression outside the let binding; e.g." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 541 1 541 35) " f (\\v. let w = v+1 in g E)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 542 1 542 62) " Here we obviously cannot float the let-binding for w." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 543 1 543 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 544 1 544 70) " You may think rule (a) would never apply, because rule matching is" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 545 1 545 71) " mostly invoked from the simplifier, when we have just run substExpr" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 546 1 546 60) " over the argument, so there will be no shadowing anyway." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 547 1 547 65) " The fly in the ointment is that the forall'd variables of the" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 548 1 548 40) " RULE itself are considered in scope." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 549 1 549 3) "" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 550 1 550 67) " I though of various cheapo ways to solve this tiresome problem," , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 551 1 551 61) " but ended up doing the straightforward thing, which is to" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 552 1 552 63) " clone the binders if they are in scope. It's tiresome, and" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 553 1 553 63) " potentially inefficient, because of the calls to substExpr," , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 554 1 554 51) " but I don't think it'll happen much in pracice." , Comment True (SrcSpan "tests/examples/RealGHC.lhs" 556 1 569 69) " Cases to think about\n (let x=y+1 in \\x. (x,x))\n --> let x=y+1 in (\\x1. (x1,x1))\n (\\x. let x = y+1 in (x,x))\n --> let x1 = y+1 in (\\x. (x1,x1)\n (let x=y+1 in (x,x), let x=y-1 in (x,x))\n --> let x=y+1 in let x1=y-1 in ((x,x),(x1,x1))\n\nWatch out!\n (let x=y+1 in let z=x+1 in (z,z)\n --> matches (p,p) but watch out that the use of\n x on z's rhs is OK!\nI'm removing the cloning because that makes the above case\nfail, because the inner let looks as if it has locally-bound vars " , Comment True (SrcSpan "tests/examples/RealGHC.lhs" 586 1 595 3) "\n (rn_env', bndrs') = mapAccumL rnBndrR rn_env bndrs\n s_prs = [(bndr, Var bndr') | (bndr,bndr') <- zip bndrs bndrs', bndr /= bndr']\n subst = mkSubst (rnInScopeSet rn_env) emptyVarEnv (mkVarEnv s_prs)\n (bind', e2') | null s_prs = (bind, e2)\n | otherwise = (s_bind, substExpr subst e2)\n s_bind = case bind of\n NonRec {} -> NonRec (head bndrs') (head rhss)\n Rec {} -> Rec (bndrs' `zip` map (substExpr subst) rhss)\n" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 610 1 610 32) " This rule does eta expansion" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 611 1 611 38) " (\\x.M) ~ N iff M ~ N x" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 612 1 612 53) " It's important that this is *after* the let rule," , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 613 1 613 43) " so that (\\x.M) ~ (let y = e in \\y.N)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 614 1 614 60) " does the let thing, and then gets the lam/lam rule above" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 621 1 621 31) " Eta expansion the other way" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 622 1 622 39) " M ~ (\\y.N) iff M y ~ N" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 633 45 633 68) " Alts are both sorted" , Comment True (SrcSpan "tests/examples/RealGHC.lhs" 643 1 667 3) " REMOVING OLD CODE: I think that the above handling for let is\n better than the stuff here, which looks\n pretty suspicious to me. SLPJ Sept 06\n-- This is an interesting rule: we simply ignore lets in the\n-- term being matched against! The unfolding inside it is (by assumption)\n-- already inside any occurrences of the bound variables, so we'll expand\n-- them when we encounter them. This gives a chance of matching\n-- forall x,y. f (g (x,y))\n-- against\n-- f (let v = (a,b) in g v)\n\nmatch menv subst e1 (Let bind e2)\n = match (menv { me_env = rn_env' }) subst e1 e2\n where\n (rn_env', _bndrs') = mapAccumL rnBndrR (me_env menv) (bindersOf bind)\n -- It's important to do this renaming, so that the bndrs\n -- are brought into the local scope. For example:\n -- Matching\n -- forall f,x,xs. f (x:xs)\n -- against\n -- f (let y = e in (y:[]))\n -- We must not get success with x->y! So we record that y is\n -- locally bound (with rnBndrR), and proceed. The Var case\n -- will fail when trying to bind x->y\n" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 669 1 669 25) " Everything else fails" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 670 26 670 105) " pprTrace \"Failing at\" ((text \"e1:\" <+> ppr e1) $$ (text \"e2:\" <+> ppr e2)) $" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 673 1 673 43) "----------------------------------------" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 676 25 676 36) " Template" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 677 29 677 38) " Target" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 683 21 683 44) " Occurs check failure" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 684 9 684 61) " e.g. match forall a. (\\x-> a x) against (\\y. y y)" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 686 21 686 68) " No renaming to do on e2, because no free var" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 687 17 687 54) " of e2 is in the rnEnvR of the envt" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 688 9 688 42) " Note [Matching variable types]" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 689 9 689 42) " ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 690 9 690 52) " However, we must match the *types*; e.g." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 691 9 691 46) " forall (c::Char->Int) (x::Char)." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 692 9 692 35) " f (c x) = \"RULE FIRED\"" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 693 9 693 63) " We must only match on args that have the right type" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 694 9 694 79) " It's actually quite difficult to come up with an example that shows" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 695 9 695 80) " you need type matching, esp since matching is left-to-right, so type" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 696 9 696 77) " args get matched first. But it's possible (e.g. simplrun008) and" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 697 9 697 41) " this is the Right Thing to do" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 699 25 699 47) " c.f. match_ty below" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 708 17 708 83) " v1 is not a template variable; check for an exact match with e2" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 716 5 716 26) " If the template is" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 717 5 717 38) " forall x. f x (\\x -> x) = ..." , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 718 5 718 46) " Then the x inside the lambda isn't the" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 719 5 719 44) " template x, so we must rename first!" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 722 1 722 43) "----------------------------------------" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 725 25 725 36) " Template" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 726 25 726 34) " Target" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 749 1 749 43) "----------------------------------------" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 752 25 752 36) " Template" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 753 25 753 34) " Target" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 811 1 811 67) " | Report partial matches for rules beginning with the specified" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 812 1 812 46) " string for the purposes of error reporting" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 813 45 813 70) " ^ Rule activation test" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 814 49 814 66) " ^ Rule pattern" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 815 49 815 71) " ^ Database of rules" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 816 49 816 74) " ^ Bindings to check in" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 817 49 817 77) " ^ Resulting check message" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 837 4 837 61) " The Bag returned has one SDoc for each call site found" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 860 1 860 57) " Produce a report for all rules matching the predicate" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 861 1 861 57) " saying why it doesn't match the specified application" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 872 9 872 70) " The rules match the pattern, so we want to print something" , Comment False (SrcSpan "tests/examples/RealGHC.lhs" 906 45 906 72) " Includes template tyvars" ] ) haskell-src-exts-1.18.2/tests/examples/RealGHC.lhs.prettyparser.golden0000644000000000000000000000000612746233113024067 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RealGHC.lhs.prettyprinter.golden0000644000000000000000000003730612746233113024273 0ustar0000000000000000{-# OPTIONS -w #-} {-# LANGUAGE PatternGuards #-} module Rules (RuleBase, emptyRuleBase, mkRuleBase, extendRuleBaseList, unionRuleBase, pprRuleBase, ruleCheckProgram, mkSpecInfo, extendSpecInfo, addSpecInfo, addIdSpecialisations, rulesOfBinds, getRules, pprRulesForUser, lookupRule, mkLocalRule, roughTopNames) where import CoreSyn import OccurAnal (occurAnalyseExpr) import CoreFVs (exprFreeVars, exprsFreeVars, bindFreeVars, rulesFreeVars) import CoreUtils (tcEqExprX, exprType) import PprCore (pprRules) import Type (Type, TvSubstEnv) import Coercion (coercionKind) import TcType (tcSplitTyConApp_maybe) import CoreTidy (tidyRules) import Id import IdInfo (SpecInfo(SpecInfo)) import Var (Var) import VarEnv import VarSet import Name (Name, NamedThing(..)) import NameEnv import Unify (ruleMatchTyX, MatchEnv(..)) import BasicTypes (Activation) import StaticFlags (opt_PprStyle_Debug) import Outputable import FastString import Maybes import OrdList import Bag import Util import Data.List mkLocalRule :: RuleName -> Activation -> Name -> [CoreBndr] -> [CoreExpr] -> CoreExpr -> CoreRule mkLocalRule name act fn bndrs args rhs = Rule{ru_name = name, ru_fn = fn, ru_act = act, ru_bndrs = bndrs, ru_args = args, ru_rhs = rhs, ru_rough = roughTopNames args, ru_local = True} roughTopNames :: [CoreExpr] -> [Maybe Name] roughTopNames args = map roughTopName args roughTopName :: CoreExpr -> Maybe Name roughTopName (Type ty) = case tcSplitTyConApp_maybe ty of Just (tc, _) -> Just (getName tc) Nothing -> Nothing roughTopName (App f a) = roughTopName f roughTopName (Var f) | isGlobalId f = Just (idName f) | otherwise = Nothing roughTopName other = Nothing ruleCantMatch :: [Maybe Name] -> [Maybe Name] -> Bool ruleCantMatch (Just n1 : ts) (Just n2 : as) = n1 /= n2 || ruleCantMatch ts as ruleCantMatch (t : ts) (a : as) = ruleCantMatch ts as ruleCantMatch ts as = False pprRulesForUser :: [CoreRule] -> SDoc pprRulesForUser rules = withPprStyle defaultUserStyle $ pprRules $ sortLe le_rule $ tidyRules emptyTidyEnv rules where le_rule r1 r2 = ru_name r1 <= ru_name r2 mkSpecInfo :: [CoreRule] -> SpecInfo mkSpecInfo rules = SpecInfo rules (rulesFreeVars rules) extendSpecInfo :: SpecInfo -> [CoreRule] -> SpecInfo extendSpecInfo (SpecInfo rs1 fvs1) rs2 = SpecInfo (rs2 ++ rs1) (rulesFreeVars rs2 `unionVarSet` fvs1) addSpecInfo :: SpecInfo -> SpecInfo -> SpecInfo addSpecInfo (SpecInfo rs1 fvs1) (SpecInfo rs2 fvs2) = SpecInfo (rs1 ++ rs2) (fvs1 `unionVarSet` fvs2) addIdSpecialisations :: Id -> [CoreRule] -> Id addIdSpecialisations id [] = id addIdSpecialisations id rules = setIdSpecialisation id $ extendSpecInfo (idSpecialisation id) rules rulesOfBinds :: [CoreBind] -> [CoreRule] rulesOfBinds binds = concatMap (concatMap idCoreRules . bindersOf) binds getRules :: RuleBase -> Id -> [CoreRule] getRules rule_base fn | isLocalId fn = idCoreRules fn | otherwise = WARN (not (isPrimOpId fn) && notNull (idCoreRules fn), ppr fn <+> ppr (idCoreRules fn)) idCoreRules fn ++ (lookupNameEnv rule_base (idName fn) `orElse` []) type RuleBase = NameEnv [CoreRule] emptyRuleBase = emptyNameEnv mkRuleBase :: [CoreRule] -> RuleBase mkRuleBase rules = extendRuleBaseList emptyRuleBase rules extendRuleBaseList :: RuleBase -> [CoreRule] -> RuleBase extendRuleBaseList rule_base new_guys = foldl extendRuleBase rule_base new_guys unionRuleBase :: RuleBase -> RuleBase -> RuleBase unionRuleBase rb1 rb2 = plusNameEnv_C (++) rb1 rb2 extendRuleBase :: RuleBase -> CoreRule -> RuleBase extendRuleBase rule_base rule = extendNameEnv_Acc (:) singleton rule_base (ruleIdName rule) rule pprRuleBase :: RuleBase -> SDoc pprRuleBase rules = vcat [pprRules (tidyRules emptyTidyEnv rs) | rs <- nameEnvElts rules] lookupRule :: (Activation -> Bool) -> InScopeSet -> Id -> [CoreExpr] -> [CoreRule] -> Maybe (CoreRule, CoreExpr) lookupRule is_active in_scope fn args rules = case go [] rules of [] -> Nothing (m : ms) -> Just (findBest (fn, args) m ms) where rough_args = map roughTopName args go :: [(CoreRule, CoreExpr)] -> [CoreRule] -> [(CoreRule, CoreExpr)] go ms [] = ms go ms (r : rs) = case (matchRule is_active in_scope args rough_args r) of Just e -> go ((r, e) : ms) rs Nothing -> go ms rs findBest :: (Id, [CoreExpr]) -> (CoreRule, CoreExpr) -> [(CoreRule, CoreExpr)] -> (CoreRule, CoreExpr) findBest target (rule, ans) [] = (rule, ans) findBest target (rule1, ans1) ((rule2, ans2) : prs) | rule1 `isMoreSpecific` rule2 = findBest target (rule1, ans1) prs | rule2 `isMoreSpecific` rule1 = findBest target (rule2, ans2) prs | debugIsOn = let pp_rule rule | opt_PprStyle_Debug = ppr rule | otherwise = doubleQuotes (ftext (ru_name rule)) in pprTrace "Rules.findBest: rule overlap (Rule 1 wins)" (vcat [if opt_PprStyle_Debug then ptext (sLit "Expression to match:") <+> ppr fn <+> sep (map ppr args) else empty, ptext (sLit "Rule 1:") <+> pp_rule rule1, ptext (sLit "Rule 2:") <+> pp_rule rule2]) $ findBest target (rule1, ans1) prs | otherwise = findBest target (rule1, ans1) prs where (fn, args) = target isMoreSpecific :: CoreRule -> CoreRule -> Bool isMoreSpecific (BuiltinRule{}) r2 = True isMoreSpecific r1 (BuiltinRule{}) = False isMoreSpecific (Rule{ru_bndrs = bndrs1, ru_args = args1}) (Rule{ru_bndrs = bndrs2, ru_args = args2}) = isJust (matchN in_scope bndrs2 args2 args1) where in_scope = mkInScopeSet (mkVarSet bndrs1) noBlackList :: Activation -> Bool noBlackList act = False matchRule :: (Activation -> Bool) -> InScopeSet -> [CoreExpr] -> [Maybe Name] -> CoreRule -> Maybe CoreExpr matchRule is_active in_scope args rough_args (BuiltinRule{ru_name = name, ru_try = match_fn}) = case match_fn args of Just expr -> Just expr Nothing -> Nothing matchRule is_active in_scope args rough_args (Rule{ru_name = rn, ru_act = act, ru_rough = tpl_tops, ru_bndrs = tpl_vars, ru_args = tpl_args, ru_rhs = rhs}) | not (is_active act) = Nothing | ruleCantMatch tpl_tops rough_args = Nothing | otherwise = case matchN in_scope tpl_vars tpl_args args of Nothing -> Nothing Just (binds, tpl_vals) -> Just (mkLets binds $ rule_fn `mkApps` tpl_vals) where rule_fn = occurAnalyseExpr (mkLams tpl_vars rhs) matchN :: InScopeSet -> [Var] -> [CoreExpr] -> [CoreExpr] -> Maybe ([CoreBind], [CoreExpr]) matchN in_scope tmpl_vars tmpl_es target_es = do (tv_subst, id_subst, binds) <- go init_menv emptySubstEnv tmpl_es target_es return (fromOL binds, map (lookup_tmpl tv_subst id_subst) tmpl_vars') where (init_rn_env, tmpl_vars') = mapAccumL rnBndrL (mkRnEnv2 in_scope) tmpl_vars init_menv = ME{me_tmpls = mkVarSet tmpl_vars', me_env = init_rn_env} go menv subst [] es = Just subst go menv subst ts [] = Nothing go menv subst (t : ts) (e : es) = do subst1 <- match menv subst t e go menv subst1 ts es lookup_tmpl :: TvSubstEnv -> IdSubstEnv -> Var -> CoreExpr lookup_tmpl tv_subst id_subst tmpl_var' | isTyVar tmpl_var' = case lookupVarEnv tv_subst tmpl_var' of Just ty -> Type ty Nothing -> unbound tmpl_var' | otherwise = case lookupVarEnv id_subst tmpl_var' of Just e -> e other -> unbound tmpl_var' unbound var = pprPanic "Template variable unbound in rewrite rule" (ppr var $$ ppr tmpl_vars $$ ppr tmpl_vars' $$ ppr tmpl_es $$ ppr target_es) type SubstEnv = (TvSubstEnv, IdSubstEnv, OrdList CoreBind) type IdSubstEnv = IdEnv CoreExpr emptySubstEnv :: SubstEnv emptySubstEnv = (emptyVarEnv, emptyVarEnv, nilOL) match :: MatchEnv -> SubstEnv -> CoreExpr -> CoreExpr -> Maybe SubstEnv match menv subst (Var v1) e2 | Just subst <- match_var menv subst v1 e2 = Just subst match menv subst e1 (Note n e2) = match menv subst e1 e2 match menv subst e1 (Var v2) | isCheapUnfolding unfolding = match menv subst e1 (unfoldingTemplate unfolding) where rn_env = me_env menv unfolding = idUnfolding (lookupRnInScope rn_env (rnOccR rn_env v2)) match menv subst@(tv_subst, id_subst, binds) e1 (Let bind e2) | all freshly_bound bndrs, not (any locally_bound bind_fvs) = match (menv{me_env = rn_env'}) (tv_subst, id_subst, binds `snocOL` bind') e1 e2' where rn_env = me_env menv bndrs = bindersOf bind bind_fvs = varSetElems (bindFreeVars bind) locally_bound x = inRnEnvR rn_env x freshly_bound x = not (x `rnInScope` rn_env) bind' = bind e2' = e2 rn_env' = extendRnInScopeList rn_env bndrs match menv subst (Lit lit1) (Lit lit2) | lit1 == lit2 = Just subst match menv subst (App f1 a1) (App f2 a2) = do subst' <- match menv subst f1 f2 match menv subst' a1 a2 match menv subst (Lam x1 e1) (Lam x2 e2) = match menv' subst e1 e2 where menv' = menv{me_env = rnBndr2 (me_env menv) x1 x2} match menv subst (Lam x1 e1) e2 = match menv' subst e1 (App e2 (varToCoreExpr new_x)) where (rn_env', new_x) = rnBndrL (me_env menv) x1 menv' = menv{me_env = rn_env'} match menv subst e1 (Lam x2 e2) = match menv' subst (App e1 (varToCoreExpr new_x)) e2 where (rn_env', new_x) = rnBndrR (me_env menv) x2 menv' = menv{me_env = rn_env'} match menv subst (Case e1 x1 ty1 alts1) (Case e2 x2 ty2 alts2) = do subst1 <- match_ty menv subst ty1 ty2 subst2 <- match menv subst1 e1 e2 let menv' = menv{me_env = rnBndr2 (me_env menv) x1 x2} match_alts menv' subst2 alts1 alts2 match menv subst (Type ty1) (Type ty2) = match_ty menv subst ty1 ty2 match menv subst (Cast e1 co1) (Cast e2 co2) = do subst1 <- match_ty menv subst co1 co2 match menv subst1 e1 e2 match menv subst e1 e2 = Nothing match_var :: MatchEnv -> SubstEnv -> Var -> CoreExpr -> Maybe SubstEnv match_var menv subst@(tv_subst, id_subst, binds) v1 e2 | v1' `elemVarSet` me_tmpls menv = case lookupVarEnv id_subst v1' of Nothing | any (inRnEnvR rn_env) (varSetElems (exprFreeVars e2)) -> Nothing | otherwise -> do tv_subst' <- Unify.ruleMatchTyX menv tv_subst (idType v1') (exprType e2) return (tv_subst', extendVarEnv id_subst v1' e2, binds) Just e1' | tcEqExprX (nukeRnEnvL rn_env) e1' e2 -> Just subst | otherwise -> Nothing | otherwise = case e2 of Var v2 | v1' == rnOccR rn_env v2 -> Just subst other -> Nothing where rn_env = me_env menv v1' = rnOccL rn_env v1 match_alts :: MatchEnv -> SubstEnv -> [CoreAlt] -> [CoreAlt] -> Maybe SubstEnv match_alts menv subst [] [] = return subst match_alts menv subst ((c1, vs1, r1) : alts1) ((c2, vs2, r2) : alts2) | c1 == c2 = do subst1 <- match menv' subst r1 r2 match_alts menv subst1 alts1 alts2 where menv' :: MatchEnv menv' = menv{me_env = rnBndrs2 (me_env menv) vs1 vs2} match_alts menv subst alts1 alts2 = Nothing match_ty :: MatchEnv -> SubstEnv -> Type -> Type -> Maybe SubstEnv match_ty menv (tv_subst, id_subst, binds) ty1 ty2 = do tv_subst' <- Unify.ruleMatchTyX menv tv_subst ty1 ty2 return (tv_subst', id_subst, binds) ruleCheckProgram :: (Activation -> Bool) -> String -> RuleBase -> [CoreBind] -> SDoc ruleCheckProgram is_active rule_pat rule_base binds | isEmptyBag results = text "Rule check results: no rule application sites" | otherwise = vcat [text "Rule check results:", line, vcat [p $$ line | p <- bagToList results]] where results = unionManyBags (map (ruleCheckBind (RuleCheckEnv is_active rule_pat rule_base)) binds) line = text (replicate 20 '-') data RuleCheckEnv = RuleCheckEnv{rc_is_active :: Activation -> Bool, rc_pattern :: String, rc_rule_base :: RuleBase} ruleCheckBind :: RuleCheckEnv -> CoreBind -> Bag SDoc ruleCheckBind env (NonRec b r) = ruleCheck env r ruleCheckBind env (Rec prs) = unionManyBags [ruleCheck env r | (b, r) <- prs] ruleCheck :: RuleCheckEnv -> CoreExpr -> Bag SDoc ruleCheck env (Var v) = emptyBag ruleCheck env (Lit l) = emptyBag ruleCheck env (Type ty) = emptyBag ruleCheck env (App f a) = ruleCheckApp env (App f a) [] ruleCheck env (Note n e) = ruleCheck env e ruleCheck env (Cast e co) = ruleCheck env e ruleCheck env (Let bd e) = ruleCheckBind env bd `unionBags` ruleCheck env e ruleCheck env (Lam b e) = ruleCheck env e ruleCheck env (Case e _ _ as) = ruleCheck env e `unionBags` unionManyBags [ruleCheck env r | (_, _, r) <- as] ruleCheckApp env (App f a) as = ruleCheck env a `unionBags` ruleCheckApp env f (a : as) ruleCheckApp env (Var f) as = ruleCheckFun env f as ruleCheckApp env other as = ruleCheck env other ruleCheckFun :: RuleCheckEnv -> Id -> [CoreExpr] -> Bag SDoc ruleCheckFun env fn args | null name_match_rules = emptyBag | otherwise = unitBag (ruleAppCheck_help (rc_is_active env) fn args name_match_rules) where name_match_rules = filter match (getRules (rc_rule_base env) fn) match rule = (rc_pattern env) `isPrefixOf` unpackFS (ruleName rule) ruleAppCheck_help :: (Activation -> Bool) -> Id -> [CoreExpr] -> [CoreRule] -> SDoc ruleAppCheck_help is_active fn args rules = vcat [text "Expression:" <+> ppr (mkApps (Var fn) args), vcat (map check_rule rules)] where n_args = length args i_args = args `zip` [1 :: Int ..] rough_args = map roughTopName args check_rule rule = rule_herald rule <> colon <+> rule_info rule rule_herald (BuiltinRule{ru_name = name}) = ptext (sLit "Builtin rule") <+> doubleQuotes (ftext name) rule_herald (Rule{ru_name = name}) = ptext (sLit "Rule") <+> doubleQuotes (ftext name) rule_info rule | Just _ <- matchRule noBlackList emptyInScopeSet args rough_args rule = text "matches (which is very peculiar!)" rule_info (BuiltinRule{}) = text "does not match" rule_info (Rule{ru_name = name, ru_act = act, ru_bndrs = rule_bndrs, ru_args = rule_args}) | not (is_active act) = text "active only in later phase" | n_args < n_rule_args = text "too few arguments" | n_mismatches == n_rule_args = text "no arguments match" | n_mismatches == 0 = text "all arguments match (considered individually), but rule as a whole does not" | otherwise = text "arguments" <+> ppr mismatches <+> text "do not match (1-indexing)" where n_rule_args = length rule_args n_mismatches = length mismatches mismatches = [i | (rule_arg, (arg, i)) <- rule_args `zip` i_args, not (isJust (match_fn rule_arg arg))] lhs_fvs = exprsFreeVars rule_args match_fn rule_arg arg = match menv emptySubstEnv rule_arg arg where in_scope = lhs_fvs `unionVarSet` exprFreeVars arg menv = ME{me_env = mkRnEnv2 (mkInScopeSet in_scope), me_tmpls = mkVarSet rule_bndrs} haskell-src-exts-1.18.2/tests/examples/RecordInfixSelector.hs0000644000000000000000000000013212746233113022411 0ustar0000000000000000data RecordWithInfixSelector = Cons { (<>) :: Int -> Int } idRecord = Cons { (<>) = id } haskell-src-exts-1.18.2/tests/examples/RecordInfixSelector.hs.exactprinter.golden0000644000000000000000000000000612746233113026367 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RecordInfixSelector.hs.parser.golden0000644000000000000000000002343612746233113025167 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 1 1 1 1 , SrcSpan "tests/examples/RecordInfixSelector.hs" 1 1 1 1 , SrcSpan "tests/examples/RecordInfixSelector.hs" 1 1 1 1 , SrcSpan "tests/examples/RecordInfixSelector.hs" 3 1 3 1 , SrcSpan "tests/examples/RecordInfixSelector.hs" 4 1 4 1 , SrcSpan "tests/examples/RecordInfixSelector.hs" 4 1 4 1 ] } Nothing [] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 1 1 59 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 1 30 1 31 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 1 1 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 6 1 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 6 1 29 , srcInfoPoints = [] } "RecordWithInfixSelector")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 32 1 59 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 1 37 1 38 , SrcSpan "tests/examples/RecordInfixSelector.hs" 1 58 1 59 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 32 1 59 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 1 37 1 38 , SrcSpan "tests/examples/RecordInfixSelector.hs" 1 58 1 59 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 32 1 36 , srcInfoPoints = [] } "Cons") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 39 1 57 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 1 44 1 46 ] } [ Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 39 1 43 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 1 39 1 40 , SrcSpan "tests/examples/RecordInfixSelector.hs" 1 40 1 42 , SrcSpan "tests/examples/RecordInfixSelector.hs" 1 42 1 43 ] } "<>" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 47 1 57 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 1 51 1 53 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 47 1 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 47 1 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 47 1 50 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 54 1 57 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 54 1 57 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 1 54 1 57 , srcInfoPoints = [] } "Int")))) ]) ] Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 1 3 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 1 3 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 1 3 9 , srcInfoPoints = [] } "idRecord")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 10 3 30 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 3 10 3 11 ] } (RecConstr SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 12 3 30 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 3 17 3 18 , SrcSpan "tests/examples/RecordInfixSelector.hs" 3 29 3 30 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 12 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 12 3 16 , srcInfoPoints = [] } "Cons")) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 19 3 28 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 3 24 3 25 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 19 3 23 , srcInfoPoints = [ SrcSpan "tests/examples/RecordInfixSelector.hs" 3 19 3 20 , SrcSpan "tests/examples/RecordInfixSelector.hs" 3 20 3 22 , SrcSpan "tests/examples/RecordInfixSelector.hs" 3 22 3 23 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 20 3 22 , srcInfoPoints = [] } "<>")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 26 3 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 26 3 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordInfixSelector.hs" 3 26 3 28 , srcInfoPoints = [] } "id"))) ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/RecordInfixSelector.hs.prettyparser.golden0000644000000000000000000000000612746233113026423 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RecordInfixSelector.hs.prettyprinter.golden0000644000000000000000000000012312746233113026612 0ustar0000000000000000data RecordWithInfixSelector = Cons{(<>) :: Int -> Int} idRecord = Cons{(<>) = id} haskell-src-exts-1.18.2/tests/examples/RecordPatternSynonyms.hs0000644000000000000000000000042212746233113023032 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} module ShouldCompile where pattern Single{x} = [x] pattern Double{y,z} = (y,z) pattern More{x} <- (x,_) where More x = (x, Nothing) -- Selector selector :: Int selector = x [5] update :: [String] update = ["String"] { x = "updated" } haskell-src-exts-1.18.2/tests/examples/RecordPatternSynonyms.hs.exactprinter.golden0000644000000000000000000000000612746233113027006 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RecordPatternSynonyms.hs.parser.golden0000644000000000000000000006707112746233113025611 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 1 1 17 1 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 1 1 1 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 2 1 2 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 2 1 2 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 1 4 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 1 6 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 1 8 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 12 1 12 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 1 13 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 1 15 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 1 16 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 17 1 17 1 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 17 1 17 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 2 1 2 7 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 2 22 2 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 2 8 2 21 , srcInfoPoints = [] } "ShouldCompile") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 1 1 1 13 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 1 14 1 29 , srcInfoPoints = [] } "PatternSynonyms" ] ] [] [ PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 1 4 24 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 1 4 8 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 19 4 20 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 9 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 15 4 16 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 17 4 18 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 9 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 9 4 15 , srcInfoPoints = [] } "Single")) [ PFieldPun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 16 4 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 16 4 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 16 4 17 , srcInfoPoints = [] } "x")) ]) (PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 21 4 24 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 21 4 22 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 23 4 24 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 22 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 4 22 4 23 , srcInfoPoints = [] } "x") ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 1 6 28 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 1 6 8 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 21 6 22 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 9 6 20 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 15 6 16 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 17 6 18 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 19 6 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 9 6 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 9 6 15 , srcInfoPoints = [] } "Double")) [ PFieldPun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 16 6 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 16 6 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 16 6 17 , srcInfoPoints = [] } "y")) , PFieldPun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 18 6 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 18 6 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 18 6 19 , srcInfoPoints = [] } "z")) ]) (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 23 6 28 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 23 6 24 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 25 6 26 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 27 6 28 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 24 6 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 24 6 25 , srcInfoPoints = [] } "y") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 26 6 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 6 26 6 27 , srcInfoPoints = [] } "z") ]) ImplicitBidirectional , PatSyn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 1 8 25 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 1 8 8 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 17 8 19 ] } (PRec SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 9 8 16 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 13 8 14 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 15 8 16 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 9 8 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 9 8 13 , srcInfoPoints = [] } "More")) [ PFieldPun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 14 8 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 14 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 14 8 15 , srcInfoPoints = [] } "x")) ]) (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 20 8 25 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 20 8 21 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 22 8 23 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 24 8 25 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 21 8 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 21 8 22 , srcInfoPoints = [] } "x") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 23 8 24 , srcInfoPoints = [] } ]) (ExplicitBidirectional SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 26 12 0 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 8 26 8 31 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 3 9 3 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 12 1 12 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 3 9 24 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 3 9 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 3 9 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 3 9 7 , srcInfoPoints = [] } "More")) [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 8 9 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 8 9 9 , srcInfoPoints = [] } "x") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 10 9 24 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 10 9 11 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 12 9 24 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 12 9 13 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 14 9 15 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 23 9 24 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 13 9 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 13 9 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 13 9 14 , srcInfoPoints = [] } "x")) , Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 16 9 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 16 9 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 9 16 9 23 , srcInfoPoints = [] } "Nothing")) ])) Nothing ]) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 12 1 12 16 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 12 10 12 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 12 1 12 9 , srcInfoPoints = [] } "selector" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 12 13 12 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 12 13 12 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 12 13 12 16 , srcInfoPoints = [] } "Int"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 1 13 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 1 13 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 1 13 9 , srcInfoPoints = [] } "selector")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 10 13 17 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 10 13 11 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 12 13 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 12 13 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 12 13 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 12 13 13 , srcInfoPoints = [] } "x"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 14 13 17 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 14 13 15 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 16 13 17 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 15 13 16 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 13 15 13 16 , srcInfoPoints = [] } 5 "5") ]))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 1 15 19 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 8 15 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 1 15 7 , srcInfoPoints = [] } "update" ] (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 11 15 19 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 11 15 12 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 18 15 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 12 15 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 12 15 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 15 12 15 18 , srcInfoPoints = [] } "String")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 1 16 38 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 1 16 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 1 16 7 , srcInfoPoints = [] } "update")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 8 16 38 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 8 16 9 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 10 16 38 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 21 16 22 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 37 16 38 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 10 16 20 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 10 16 11 , SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 19 16 20 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 11 16 19 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 11 16 19 , srcInfoPoints = [] } "String" "String") ]) [ FieldUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 23 16 36 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 25 16 26 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 23 16 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 23 16 24 , srcInfoPoints = [] } "x")) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 27 16 36 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPatternSynonyms.hs" 16 27 16 36 , srcInfoPoints = [] } "updated" "updated")) ])) Nothing ] , [ Comment False (SrcSpan "tests/examples/RecordPatternSynonyms.hs" 11 1 11 12) " Selector" ] ) haskell-src-exts-1.18.2/tests/examples/RecordPatternSynonyms.hs.prettyparser.golden0000644000000000000000000000000612746233113027042 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RecordPatternSynonyms.hs.prettyprinter.golden0000644000000000000000000000040612746233113027235 0ustar0000000000000000{-# LANGUAGE PatternSynonyms #-} module ShouldCompile where pattern Single{x} = [x] pattern Double{y, z} = (y, z) pattern More{x} <- (x, _) where More x = (x, Nothing) selector :: Int selector = x [5] update :: [String] update = ["String"]{x = "updated"} haskell-src-exts-1.18.2/tests/examples/RecordPuns.hs0000644000000000000000000000012712746233113020564 0ustar0000000000000000{-# LANGUAGE NamedFieldPuns #-} module RecordPuns where cotile = tile {Kind.ospeedup} haskell-src-exts-1.18.2/tests/examples/RecordPuns.hs.exactprinter.golden0000644000000000000000000000000612746233113024536 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RecordPuns.hs.parser.golden0000644000000000000000000001074612746233113023336 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPuns.hs" 1 1 1 1 , SrcSpan "tests/examples/RecordPuns.hs" 2 1 2 1 , SrcSpan "tests/examples/RecordPuns.hs" 2 1 2 1 , SrcSpan "tests/examples/RecordPuns.hs" 4 1 4 1 , SrcSpan "tests/examples/RecordPuns.hs" 5 1 5 1 , SrcSpan "tests/examples/RecordPuns.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 2 1 2 24 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPuns.hs" 2 1 2 7 , SrcSpan "tests/examples/RecordPuns.hs" 2 19 2 24 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 2 8 2 18 , srcInfoPoints = [] } "RecordPuns") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 1 1 1 32 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPuns.hs" 1 1 1 13 , SrcSpan "tests/examples/RecordPuns.hs" 1 29 1 32 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 1 14 1 28 , srcInfoPoints = [] } "NamedFieldPuns" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 1 4 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 1 4 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 1 4 7 , srcInfoPoints = [] } "cotile")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 8 4 30 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPuns.hs" 4 8 4 9 ] } (RecUpdate SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 10 4 30 , srcInfoPoints = [ SrcSpan "tests/examples/RecordPuns.hs" 4 15 4 16 , SrcSpan "tests/examples/RecordPuns.hs" 4 29 4 30 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 10 4 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 10 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 10 4 14 , srcInfoPoints = [] } "tile"))) [ FieldPun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 16 4 29 , srcInfoPoints = [] } (Qual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 16 4 29 , srcInfoPoints = [] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 16 4 29 , srcInfoPoints = [] } "Kind") (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecordPuns.hs" 4 16 4 29 , srcInfoPoints = [] } "ospeedup")) ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/RecordPuns.hs.prettyparser.golden0000644000000000000000000000000612746233113024572 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RecordPuns.hs.prettyprinter.golden0000644000000000000000000000012512746233113024763 0ustar0000000000000000{-# LANGUAGE NamedFieldPuns #-} module RecordPuns where cotile = tile{Kind.ospeedup} haskell-src-exts-1.18.2/tests/examples/RecordWildcard.hs0000644000000000000000000000011412746233113021364 0ustar0000000000000000{-# LANGUAGE RecordWildCards #-} -- Should fail. f A { .., b = v, .. } = v haskell-src-exts-1.18.2/tests/examples/RecordWildcard.hs.exactprinter.golden0000644000000000000000000000011512746233113025343 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/RecordWildcard.hs" 3 9) "Parse error: ," haskell-src-exts-1.18.2/tests/examples/RecordWildcard.hs.parser.golden0000644000000000000000000000011712746233113024131 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/RecordWildcard.hs" 3 9) "Parse error: ," haskell-src-exts-1.18.2/tests/examples/RecordWildcard.hs.prettyparser.golden0000644000000000000000000000011512746233113025377 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/RecordWildcard.hs" 3 9) "Parse error: ," haskell-src-exts-1.18.2/tests/examples/RecordWildcard.hs.prettyprinter.golden0000644000000000000000000000011512746233113025566 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/RecordWildcard.hs" 3 9) "Parse error: ," haskell-src-exts-1.18.2/tests/examples/RecordWildcardError.hs0000644000000000000000000000002412746233113022376 0ustar0000000000000000foo Record{..} = xs haskell-src-exts-1.18.2/tests/examples/RecordWildcardError.hs.exactprinter.golden0000644000000000000000000000030512746233113026356 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/RecordWildcardError.hs" 1 12) "RecordWildCards language extension is not enabled. Please add {-# LANGUAGE RecordWildCards #-} pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/RecordWildcardError.hs.parser.golden0000644000000000000000000000031112746233113025137 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/RecordWildcardError.hs" 1 12) "RecordWildCards language extension is not enabled. Please add {-# LANGUAGE RecordWildCards #-} pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/RecordWildcardError.hs.prettyparser.golden0000644000000000000000000000030512746233113026412 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/RecordWildcardError.hs" 1 12) "RecordWildCards language extension is not enabled. Please add {-# LANGUAGE RecordWildCards #-} pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/RecordWildcardError.hs.prettyprinter.golden0000644000000000000000000000030512746233113026601 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/RecordWildcardError.hs" 1 12) "RecordWildCards language extension is not enabled. Please add {-# LANGUAGE RecordWildCards #-} pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/RecursiveDo.hs0000644000000000000000000000014112746233113020726 0ustar0000000000000000{-# LANGUAGE RecursiveDo #-} justOnes = do rec xs <- Just (1:xs) return (map negate xs) haskell-src-exts-1.18.2/tests/examples/RecursiveDo.hs.exactprinter.golden0000644000000000000000000000000612746233113024704 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RecursiveDo.hs.parser.golden0000644000000000000000000003330112746233113023474 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/RecursiveDo.hs" 1 1 1 1 , SrcSpan "tests/examples/RecursiveDo.hs" 2 1 2 1 , SrcSpan "tests/examples/RecursiveDo.hs" 2 1 2 1 , SrcSpan "tests/examples/RecursiveDo.hs" 2 1 2 1 , SrcSpan "tests/examples/RecursiveDo.hs" 6 1 6 1 , SrcSpan "tests/examples/RecursiveDo.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/RecursiveDo.hs" 1 1 1 13 , SrcSpan "tests/examples/RecursiveDo.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 1 14 1 25 , srcInfoPoints = [] } "RecursiveDo" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 2 1 4 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 2 1 2 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 2 1 2 9 , srcInfoPoints = [] } "justOnes")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 2 10 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/RecursiveDo.hs" 2 10 2 11 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 2 12 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/RecursiveDo.hs" 2 12 2 14 , SrcSpan "tests/examples/RecursiveDo.hs" 3 5 3 5 , SrcSpan "tests/examples/RecursiveDo.hs" 4 5 4 5 , SrcSpan "tests/examples/RecursiveDo.hs" 6 1 6 0 ] } [ RecStmt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 5 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/RecursiveDo.hs" 3 5 3 8 , SrcSpan "tests/examples/RecursiveDo.hs" 3 9 3 9 , SrcSpan "tests/examples/RecursiveDo.hs" 4 5 4 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 9 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/RecursiveDo.hs" 3 12 3 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 9 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 9 3 11 , srcInfoPoints = [] } "xs")) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 15 3 26 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 15 3 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 15 3 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 15 3 19 , srcInfoPoints = [] } "Just"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 20 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/RecursiveDo.hs" 3 20 3 21 , SrcSpan "tests/examples/RecursiveDo.hs" 3 25 3 26 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 21 3 25 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 21 3 22 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 21 3 22 , srcInfoPoints = [] } 1 "1")) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 22 3 23 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 22 3 23 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 22 3 23 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 23 3 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 23 3 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 3 23 3 25 , srcInfoPoints = [] } "xs")))))) ] , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 5 4 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 5 4 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 5 4 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 5 4 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 5 4 11 , srcInfoPoints = [] } "return"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 12 4 27 , srcInfoPoints = [ SrcSpan "tests/examples/RecursiveDo.hs" 4 12 4 13 , SrcSpan "tests/examples/RecursiveDo.hs" 4 26 4 27 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 13 4 26 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 13 4 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 13 4 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 13 4 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 13 4 16 , srcInfoPoints = [] } "map"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 17 4 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 17 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 17 4 23 , srcInfoPoints = [] } "negate")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 24 4 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 24 4 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RecursiveDo.hs" 4 24 4 26 , srcInfoPoints = [] } "xs")))))) ])) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/RecursiveDo.hs.prettyparser.golden0000644000000000000000000000000612746233113024740 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RecursiveDo.hs.prettyprinter.golden0000644000000000000000000000014312746233113025131 0ustar0000000000000000{-# LANGUAGE RecursiveDo #-} justOnes = do rec xs <- Just (1 : xs) return (map negate xs) haskell-src-exts-1.18.2/tests/examples/RegularPatterns.hs0000644000000000000000000000035712746233113021627 0ustar0000000000000000{-# OPTIONS_GHC -F -pgmFhsx2hs #-} {-# LANGUAGE RegularPatterns #-} module RegularPatterns where f :: [Int] -> [[Int]] f [ 0+!, b+, 1?, (| 2,3 |) ] = [b] f [ 1+, (| x | x `mod` 2 == 0 |) ] = [[x]] f [ 2, a@(| b@:_, _ |)* ] = b:a f _ = [] haskell-src-exts-1.18.2/tests/examples/RegularPatterns.hs.exactprinter.golden0000644000000000000000000000000612746233113025574 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RegularPatterns.hs.parser.golden0000644000000000000000000011516712746233113024377 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 1 1 10 1 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 1 1 1 1 , SrcSpan "tests/examples/RegularPatterns.hs" 2 1 2 1 , SrcSpan "tests/examples/RegularPatterns.hs" 3 1 3 1 , SrcSpan "tests/examples/RegularPatterns.hs" 3 1 3 1 , SrcSpan "tests/examples/RegularPatterns.hs" 5 1 5 1 , SrcSpan "tests/examples/RegularPatterns.hs" 6 1 6 1 , SrcSpan "tests/examples/RegularPatterns.hs" 7 1 7 1 , SrcSpan "tests/examples/RegularPatterns.hs" 8 1 8 1 , SrcSpan "tests/examples/RegularPatterns.hs" 9 1 9 1 , SrcSpan "tests/examples/RegularPatterns.hs" 10 1 10 1 , SrcSpan "tests/examples/RegularPatterns.hs" 10 1 10 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 3 1 3 29 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 3 1 3 7 , SrcSpan "tests/examples/RegularPatterns.hs" 3 24 3 29 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 3 8 3 23 , srcInfoPoints = [] } "RegularPatterns") Nothing Nothing)) [ OptionsPragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 1 1 1 35 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 1 1 1 32 , SrcSpan "tests/examples/RegularPatterns.hs" 1 32 1 35 ] } (Just GHC) "-F -pgmFhsx2hs " , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 2 1 2 33 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 2 1 2 13 , SrcSpan "tests/examples/RegularPatterns.hs" 2 30 2 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 2 14 2 29 , srcInfoPoints = [] } "RegularPatterns" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 1 5 22 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 5 3 5 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 1 5 2 , srcInfoPoints = [] } "f" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 6 5 22 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 5 12 5 14 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 6 5 11 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 5 6 5 7 , SrcSpan "tests/examples/RegularPatterns.hs" 5 10 5 11 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 7 5 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 7 5 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 7 5 10 , srcInfoPoints = [] } "Int")))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 15 5 22 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 5 15 5 16 , SrcSpan "tests/examples/RegularPatterns.hs" 5 21 5 22 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 16 5 21 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 5 16 5 17 , SrcSpan "tests/examples/RegularPatterns.hs" 5 20 5 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 17 5 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 17 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 5 17 5 20 , srcInfoPoints = [] } "Int")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 1 9 9 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 1 6 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 1 6 2 , srcInfoPoints = [] } "f") [ PRPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 3 6 29 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 6 3 6 4 , SrcSpan "tests/examples/RegularPatterns.hs" 6 8 6 9 , SrcSpan "tests/examples/RegularPatterns.hs" 6 12 6 13 , SrcSpan "tests/examples/RegularPatterns.hs" 6 16 6 17 , SrcSpan "tests/examples/RegularPatterns.hs" 6 28 6 29 ] } [ RPOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 5 6 8 , srcInfoPoints = [] } (RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 5 6 6 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 5 6 6 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 5 6 6 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 5 6 6 , srcInfoPoints = [] } 0 "0"))) (RPPlusG SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 6 6 8 , srcInfoPoints = [] }) , RPOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 10 6 12 , srcInfoPoints = [] } (RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 10 6 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 10 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 10 6 11 , srcInfoPoints = [] } "b"))) (RPPlus SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 11 6 12 , srcInfoPoints = [] }) , RPOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 14 6 16 , srcInfoPoints = [] } (RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 14 6 15 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 14 6 15 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 14 6 15 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 14 6 15 , srcInfoPoints = [] } 1 "1"))) (RPOpt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 15 6 16 , srcInfoPoints = [] }) , RPSeq SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 18 6 27 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 6 18 6 20 , SrcSpan "tests/examples/RegularPatterns.hs" 6 22 6 23 , SrcSpan "tests/examples/RegularPatterns.hs" 6 25 6 27 ] } [ RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 21 6 22 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 21 6 22 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 21 6 22 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 21 6 22 , srcInfoPoints = [] } 2 "2")) , RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 23 6 24 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 23 6 24 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 23 6 24 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 23 6 24 , srcInfoPoints = [] } 3 "3")) ] ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 30 6 35 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 6 30 6 31 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 32 6 35 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 6 32 6 33 , SrcSpan "tests/examples/RegularPatterns.hs" 6 34 6 35 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 33 6 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 33 6 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 6 33 6 34 , srcInfoPoints = [] } "b")) ])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 1 7 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 1 7 2 , srcInfoPoints = [] } "f") [ PRPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 3 7 35 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 7 3 7 4 , SrcSpan "tests/examples/RegularPatterns.hs" 7 7 7 8 , SrcSpan "tests/examples/RegularPatterns.hs" 7 34 7 35 ] } [ RPOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 5 7 7 , srcInfoPoints = [] } (RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 5 7 6 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 5 7 6 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 5 7 6 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 5 7 6 , srcInfoPoints = [] } 1 "1"))) (RPPlus SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 6 7 7 , srcInfoPoints = [] }) , RPGuard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 9 7 33 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 7 9 7 11 , SrcSpan "tests/examples/RegularPatterns.hs" 7 14 7 15 , SrcSpan "tests/examples/RegularPatterns.hs" 7 31 7 33 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 12 7 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 12 7 13 , srcInfoPoints = [] } "x")) [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 16 7 30 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 16 7 30 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 16 7 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 16 7 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 16 7 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 16 7 17 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 18 7 23 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 7 18 7 19 , SrcSpan "tests/examples/RegularPatterns.hs" 7 19 7 22 , SrcSpan "tests/examples/RegularPatterns.hs" 7 22 7 23 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 18 7 23 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 7 18 7 19 , SrcSpan "tests/examples/RegularPatterns.hs" 7 19 7 22 , SrcSpan "tests/examples/RegularPatterns.hs" 7 22 7 23 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 19 7 22 , srcInfoPoints = [] } "mod"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 24 7 25 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 24 7 25 , srcInfoPoints = [] } 2 "2"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 26 7 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 26 7 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 26 7 28 , srcInfoPoints = [] } "=="))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 29 7 30 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 29 7 30 , srcInfoPoints = [] } 0 "0"))) ] ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 36 7 43 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 7 36 7 37 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 38 7 43 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 7 38 7 39 , SrcSpan "tests/examples/RegularPatterns.hs" 7 42 7 43 ] } [ List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 39 7 42 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 7 39 7 40 , SrcSpan "tests/examples/RegularPatterns.hs" 7 41 7 42 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 40 7 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 40 7 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 7 40 7 41 , srcInfoPoints = [] } "x")) ] ])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 1 8 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 1 8 2 , srcInfoPoints = [] } "f") [ PRPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 3 8 26 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 8 3 8 4 , SrcSpan "tests/examples/RegularPatterns.hs" 8 6 8 7 , SrcSpan "tests/examples/RegularPatterns.hs" 8 25 8 26 ] } [ RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 5 8 6 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 5 8 6 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 5 8 6 , srcInfoPoints = [] }) (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 5 8 6 , srcInfoPoints = [] } 2 "2")) , RPAs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 8 8 23 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 8 9 8 10 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 8 8 9 , srcInfoPoints = [] } "a") (RPOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 8 8 24 , srcInfoPoints = [] } (RPSeq SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 10 8 23 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 8 10 8 12 , SrcSpan "tests/examples/RegularPatterns.hs" 8 17 8 18 , SrcSpan "tests/examples/RegularPatterns.hs" 8 21 8 23 ] } [ RPCAs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 13 8 17 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 8 14 8 16 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 13 8 14 , srcInfoPoints = [] } "b") (RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 16 8 17 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 16 8 17 , srcInfoPoints = [] })) , RPPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 19 8 20 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 19 8 20 , srcInfoPoints = [] }) ]) (RPStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 23 8 24 , srcInfoPoints = [] })) ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 27 8 32 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 8 27 8 28 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 29 8 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 29 8 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 29 8 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 29 8 30 , srcInfoPoints = [] } "b"))) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 30 8 31 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 30 8 31 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 30 8 31 , srcInfoPoints = [] }))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 31 8 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 31 8 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 8 31 8 32 , srcInfoPoints = [] } "a"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 9 1 9 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 9 1 9 2 , srcInfoPoints = [] } "f") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 9 3 9 4 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 9 5 9 9 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 9 5 9 6 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RegularPatterns.hs" 9 7 9 9 , srcInfoPoints = [ SrcSpan "tests/examples/RegularPatterns.hs" 9 7 9 8 , SrcSpan "tests/examples/RegularPatterns.hs" 9 8 9 9 ] } [])) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/RegularPatterns.hs.prettyparser.golden0000644000000000000000000000000612746233113025630 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RegularPatterns.hs.prettyprinter.golden0000644000000000000000000000035412746233113026025 0ustar0000000000000000{-# OPTIONS_GHC -F -pgmFhsx2hs #-} {-# LANGUAGE RegularPatterns #-} module RegularPatterns where f :: [Int] -> [[Int]] f [0+!, b+, 1?, (| 2, 3 |)] = [b] f [1+, (| x | x `mod` 2 == 0 |)] = [[x]] f [2, a@(| b@:_, _ |)*] = b : a f _ = [] haskell-src-exts-1.18.2/tests/examples/RelaxedDo.hs0000644000000000000000000000045112746233113020347 0ustar0000000000000000{-# LANGUAGE NondecreasingIndentation #-} module Main where import Control.Monad main :: IO () main = do when ( 2 > 1) $ do putStrLn "a" putStrLn "b" nestedDoBlocks = getChar >>= (\c1 -> do getChar >>= (\c2 -> do getChar >>= (\c3 -> return [c1,c2,c3]))) haskell-src-exts-1.18.2/tests/examples/RelaxedDo.hs.exactprinter.golden0000644000000000000000000000000612746233113024321 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RelaxedDo.hs.parser.golden0000644000000000000000000014421412746233113023117 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 1 1 15 1 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 1 1 1 1 , SrcSpan "tests/examples/RelaxedDo.hs" 2 1 2 1 , SrcSpan "tests/examples/RelaxedDo.hs" 2 1 2 1 , SrcSpan "tests/examples/RelaxedDo.hs" 4 1 4 1 , SrcSpan "tests/examples/RelaxedDo.hs" 6 1 6 1 , SrcSpan "tests/examples/RelaxedDo.hs" 7 1 7 1 , SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 1 , SrcSpan "tests/examples/RelaxedDo.hs" 15 1 15 1 , SrcSpan "tests/examples/RelaxedDo.hs" 15 1 15 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 2 1 2 18 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 2 1 2 7 , SrcSpan "tests/examples/RelaxedDo.hs" 2 13 2 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 2 8 2 12 , srcInfoPoints = [] } "Main") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 1 1 1 42 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 1 1 1 13 , SrcSpan "tests/examples/RelaxedDo.hs" 1 39 1 42 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 1 14 1 38 , srcInfoPoints = [] } "NondecreasingIndentation" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 4 8 4 21 , srcInfoPoints = [] } "Control.Monad" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 1 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 6 6 6 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 1 6 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 9 6 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 9 6 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 9 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 9 6 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 13 , SrcSpan "tests/examples/RelaxedDo.hs" 6 13 6 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 13 , SrcSpan "tests/examples/RelaxedDo.hs" 6 13 6 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 6 12 6 13 , SrcSpan "tests/examples/RelaxedDo.hs" 6 13 6 14 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 1 10 15 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 1 7 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 1 7 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 6 10 15 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 7 6 7 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 7 8 10 15 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 7 8 7 10 , SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 3 , SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 10 15 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 10 15 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 3 8 7 , srcInfoPoints = [] } "when"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 8 8 16 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 8 8 8 9 , SrcSpan "tests/examples/RelaxedDo.hs" 8 15 8 16 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 10 8 15 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 10 8 11 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 10 8 11 , srcInfoPoints = [] } 2 "2")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 12 8 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 12 8 13 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 12 8 13 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 14 8 15 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 14 8 15 , srcInfoPoints = [] } 1 "1"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 17 8 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 17 8 18 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 17 8 18 , srcInfoPoints = [] } "$"))) (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 8 19 10 15 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 8 19 8 21 , SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 3 , SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 3 , SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 3 , SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 0 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 15 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 3 9 11 , srcInfoPoints = [] } "putStrLn"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 12 9 15 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 9 12 9 15 , srcInfoPoints = [] } "a" "a"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 15 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 3 10 11 , srcInfoPoints = [] } "putStrLn"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 12 10 15 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 10 12 10 15 , srcInfoPoints = [] } "b" "b"))) ])) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 1 14 58 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 1 12 15 , srcInfoPoints = [] } "nestedDoBlocks")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 16 14 58 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 12 16 12 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 18 14 58 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 18 12 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 18 12 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 18 12 25 , srcInfoPoints = [] } "getChar"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 26 12 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 26 12 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 26 12 29 , srcInfoPoints = [] } ">>="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 30 14 58 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 12 30 12 31 , SrcSpan "tests/examples/RelaxedDo.hs" 14 57 14 58 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 31 14 57 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 12 31 12 32 , SrcSpan "tests/examples/RelaxedDo.hs" 12 35 12 37 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 32 12 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 32 12 34 , srcInfoPoints = [] } "c1") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 12 38 14 57 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 12 38 12 40 , SrcSpan "tests/examples/RelaxedDo.hs" 13 18 13 18 , SrcSpan "tests/examples/RelaxedDo.hs" 14 57 14 57 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 14 57 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 14 57 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 13 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 13 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 18 13 25 , srcInfoPoints = [] } "getChar"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 26 13 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 26 13 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 26 13 29 , srcInfoPoints = [] } ">>="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 30 14 57 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 13 30 13 31 , SrcSpan "tests/examples/RelaxedDo.hs" 14 56 14 57 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 31 14 56 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 13 31 13 32 , SrcSpan "tests/examples/RelaxedDo.hs" 13 35 13 37 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 32 13 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 32 13 34 , srcInfoPoints = [] } "c2") ] (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 13 38 14 56 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 13 38 13 40 , SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 18 , SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 18 , SrcSpan "tests/examples/RelaxedDo.hs" 14 56 14 56 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 56 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 56 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 18 14 25 , srcInfoPoints = [] } "getChar"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 26 14 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 26 14 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 26 14 29 , srcInfoPoints = [] } ">>="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 30 14 56 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 14 30 14 31 , SrcSpan "tests/examples/RelaxedDo.hs" 14 55 14 56 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 31 14 55 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 14 31 14 32 , SrcSpan "tests/examples/RelaxedDo.hs" 14 35 14 37 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 32 14 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 32 14 34 , srcInfoPoints = [] } "c3") ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 38 14 55 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 38 14 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 38 14 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 38 14 44 , srcInfoPoints = [] } "return"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 45 14 55 , srcInfoPoints = [ SrcSpan "tests/examples/RelaxedDo.hs" 14 45 14 46 , SrcSpan "tests/examples/RelaxedDo.hs" 14 48 14 49 , SrcSpan "tests/examples/RelaxedDo.hs" 14 51 14 52 , SrcSpan "tests/examples/RelaxedDo.hs" 14 54 14 55 ] } [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 46 14 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 46 14 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 46 14 48 , srcInfoPoints = [] } "c1")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 49 14 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 49 14 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 49 14 51 , srcInfoPoints = [] } "c2")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 52 14 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 52 14 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RelaxedDo.hs" 14 52 14 54 , srcInfoPoints = [] } "c3")) ]))))) ])))) ]))))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/RelaxedDo.hs.prettyparser.golden0000644000000000000000000000000612746233113024355 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RelaxedDo.hs.prettyprinter.golden0000644000000000000000000000047112746233113024552 0ustar0000000000000000{-# LANGUAGE NondecreasingIndentation #-} module Main where import Control.Monad main :: IO () main = do when (2 > 1) $ do putStrLn "a" putStrLn "b" nestedDoBlocks = getChar >>= (\ c1 -> do getChar >>= (\ c2 -> do getChar >>= (\ c3 -> return [c1, c2, c3]))) haskell-src-exts-1.18.2/tests/examples/RoleAnnotations.hs0000644000000000000000000000043012746233113021614 0ustar0000000000000000{-# LANGUAGE RoleAnnotations, PolyKinds, KindSignatures #-} module Roles where data T1 a = K1 a data T2 a = K2 a data T5 a = K5 a data T6 a = K6 data T7 a b = K7 b type role T1 nominal type role T2 representational type role T3 phantom type role T4 nominal _ type role T5 _ haskell-src-exts-1.18.2/tests/examples/RoleAnnotations.hs.exactprinter.golden0000644000000000000000000000000612746233113025571 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RoleAnnotations.hs.parser.golden0000644000000000000000000005525412746233113024374 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 1 1 17 1 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 1 1 1 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 3 1 3 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 3 1 3 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 5 1 5 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 6 1 6 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 8 1 8 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 9 1 9 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 10 1 10 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 12 1 12 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 13 1 13 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 14 1 14 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 15 1 15 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 16 1 16 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 17 1 17 1 , SrcSpan "tests/examples/RoleAnnotations.hs" 17 1 17 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 3 1 3 19 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 3 1 3 7 , SrcSpan "tests/examples/RoleAnnotations.hs" 3 14 3 19 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 3 8 3 13 , srcInfoPoints = [] } "Roles") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 1 1 1 60 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 1 1 1 13 , SrcSpan "tests/examples/RoleAnnotations.hs" 1 29 1 30 , SrcSpan "tests/examples/RoleAnnotations.hs" 1 40 1 41 , SrcSpan "tests/examples/RoleAnnotations.hs" 1 57 1 60 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 1 14 1 29 , srcInfoPoints = [] } "RoleAnnotations" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 1 31 1 40 , srcInfoPoints = [] } "PolyKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 1 42 1 56 , srcInfoPoints = [] } "KindSignatures" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 1 5 17 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 5 11 5 12 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 1 5 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 6 5 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 6 5 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 6 5 8 , srcInfoPoints = [] } "T1")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 9 5 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 9 5 10 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 13 5 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 13 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 13 5 15 , srcInfoPoints = [] } "K1") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 16 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 5 16 5 17 , srcInfoPoints = [] } "a") ]) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 1 6 17 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 6 11 6 12 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 1 6 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 6 6 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 6 6 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 6 6 8 , srcInfoPoints = [] } "T2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 9 6 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 9 6 10 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 13 6 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 13 6 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 13 6 15 , srcInfoPoints = [] } "K2") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 16 6 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 6 16 6 17 , srcInfoPoints = [] } "a") ]) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 1 8 17 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 8 11 8 12 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 1 8 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 6 8 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 6 8 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 6 8 8 , srcInfoPoints = [] } "T5")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 9 8 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 9 8 10 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 13 8 17 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 13 8 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 13 8 15 , srcInfoPoints = [] } "K5") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 16 8 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 8 16 8 17 , srcInfoPoints = [] } "a") ]) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 1 9 15 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 9 11 9 12 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 1 9 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 6 9 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 6 9 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 6 9 8 , srcInfoPoints = [] } "T6")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 9 9 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 9 9 10 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 13 9 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 13 9 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 9 13 9 15 , srcInfoPoints = [] } "K6") []) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 1 10 19 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 10 13 10 14 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 1 10 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 6 10 12 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 6 10 10 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 6 10 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 6 10 8 , srcInfoPoints = [] } "T7")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 9 10 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 9 10 10 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 11 10 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 11 10 12 , srcInfoPoints = [] } "b"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 15 10 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 15 10 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 15 10 17 , srcInfoPoints = [] } "K7") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 18 10 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 10 18 10 19 , srcInfoPoints = [] } "b") ]) ] Nothing , RoleAnnotDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 12 1 12 21 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 12 1 12 5 , SrcSpan "tests/examples/RoleAnnotations.hs" 12 6 12 10 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 12 11 12 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 12 11 12 13 , srcInfoPoints = [] } "T1")) [ Nominal SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 12 14 12 21 , srcInfoPoints = [] } ] , RoleAnnotDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 13 1 13 30 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 13 1 13 5 , SrcSpan "tests/examples/RoleAnnotations.hs" 13 6 13 10 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 13 11 13 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 13 11 13 13 , srcInfoPoints = [] } "T2")) [ Representational SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 13 14 13 30 , srcInfoPoints = [] } ] , RoleAnnotDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 14 1 14 21 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 14 1 14 5 , SrcSpan "tests/examples/RoleAnnotations.hs" 14 6 14 10 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 14 11 14 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 14 11 14 13 , srcInfoPoints = [] } "T3")) [ Phantom SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 14 14 14 21 , srcInfoPoints = [] } ] , RoleAnnotDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 15 1 15 23 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 15 1 15 5 , SrcSpan "tests/examples/RoleAnnotations.hs" 15 6 15 10 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 15 11 15 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 15 11 15 13 , srcInfoPoints = [] } "T4")) [ Nominal SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 15 14 15 21 , srcInfoPoints = [] } , RoleWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 15 22 15 23 , srcInfoPoints = [] } ] , RoleAnnotDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 16 1 16 17 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations.hs" 16 1 16 5 , SrcSpan "tests/examples/RoleAnnotations.hs" 16 6 16 10 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 16 11 16 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 16 11 16 13 , srcInfoPoints = [] } "T5")) [ RoleWildcard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations.hs" 16 16 16 17 , srcInfoPoints = [] } ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/RoleAnnotations.hs.prettyparser.golden0000644000000000000000000000000612746233113025625 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RoleAnnotations.hs.prettyprinter.golden0000644000000000000000000000043412746233113026021 0ustar0000000000000000{-# LANGUAGE RoleAnnotations, PolyKinds, KindSignatures #-} module Roles where data T1 a = K1 a data T2 a = K2 a data T5 a = K5 a data T6 a = K6 data T7 a b = K7 b type role T1 nominal type role T2 representational type role T3 phantom type role T4 nominal _ type role T5 _ haskell-src-exts-1.18.2/tests/examples/RoleAnnotations2.hs0000644000000000000000000000021312746233113021675 0ustar0000000000000000{-# LANGUAGE RoleAnnotations #-} data Foo a = Foo a type role Foo representational main = print $ foo 1 foo :: Int -> Int foo role = 42 haskell-src-exts-1.18.2/tests/examples/RoleAnnotations2.hs.exactprinter.golden0000644000000000000000000000000612746233113025653 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RoleAnnotations2.hs.parser.golden0000644000000000000000000003356012746233113024452 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 1 1 10 1 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations2.hs" 1 1 1 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 3 1 3 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 3 1 3 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 3 1 3 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 4 1 4 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 6 1 6 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 8 1 8 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 9 1 9 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 10 1 10 1 , SrcSpan "tests/examples/RoleAnnotations2.hs" 10 1 10 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations2.hs" 1 1 1 13 , SrcSpan "tests/examples/RoleAnnotations2.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 1 14 1 29 , srcInfoPoints = [] } "RoleAnnotations" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 1 3 19 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations2.hs" 3 12 3 13 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 6 3 11 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 6 3 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 6 3 9 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 10 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 10 3 11 , srcInfoPoints = [] } "a"))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 14 3 19 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 14 3 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 14 3 17 , srcInfoPoints = [] } "Foo") [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 18 3 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 3 18 3 19 , srcInfoPoints = [] } "a") ]) ] Nothing , RoleAnnotDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 4 1 4 31 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations2.hs" 4 1 4 5 , SrcSpan "tests/examples/RoleAnnotations2.hs" 4 6 4 10 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 4 11 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 4 11 4 14 , srcInfoPoints = [] } "Foo")) [ Representational SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 4 15 4 31 , srcInfoPoints = [] } ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 1 6 21 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 1 6 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 1 6 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 6 6 21 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations2.hs" 6 6 6 7 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 8 6 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 8 6 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 8 6 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 8 6 13 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 14 6 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 14 6 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 14 6 15 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 16 6 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 16 6 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 16 6 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 16 6 19 , srcInfoPoints = [] } "foo"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 20 6 21 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 6 20 6 21 , srcInfoPoints = [] } 1 "1"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 1 8 18 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations2.hs" 8 5 8 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 1 8 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 8 8 18 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations2.hs" 8 12 8 14 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 8 8 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 8 8 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 8 8 11 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 15 8 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 15 8 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 8 15 8 18 , srcInfoPoints = [] } "Int")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 9 1 9 14 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 9 1 9 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 9 1 9 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 9 5 9 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 9 5 9 9 , srcInfoPoints = [] } "role") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 9 10 9 14 , srcInfoPoints = [ SrcSpan "tests/examples/RoleAnnotations2.hs" 9 10 9 11 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 9 12 9 14 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/RoleAnnotations2.hs" 9 12 9 14 , srcInfoPoints = [] } 42 "42"))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/RoleAnnotations2.hs.prettyparser.golden0000644000000000000000000000000612746233113025707 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/RoleAnnotations2.hs.prettyprinter.golden0000644000000000000000000000021312746233113026076 0ustar0000000000000000{-# LANGUAGE RoleAnnotations #-} data Foo a = Foo a type role Foo representational main = print $ foo 1 foo :: Int -> Int foo role = 42 haskell-src-exts-1.18.2/tests/examples/Rules.hs0000644000000000000000000000015112746233113017567 0ustar0000000000000000{-# RULES "head/build" forall (g::forall b.(a->b->b)->b->b) . head (build g) = g (\x _ -> x) badHead #-} haskell-src-exts-1.18.2/tests/examples/Rules.hs.exactprinter.golden0000644000000000000000000000000612746233113023544 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Rules.hs.parser.golden0000644000000000000000000003624512746233113022346 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 1 1 1 , SrcSpan "tests/examples/Rules.hs" 1 1 1 1 , SrcSpan "tests/examples/Rules.hs" 1 1 1 1 , SrcSpan "tests/examples/Rules.hs" 2 1 2 1 , SrcSpan "tests/examples/Rules.hs" 2 1 2 1 ] } Nothing [] [] [ RulePragmaDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 1 1 105 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 1 1 10 , SrcSpan "tests/examples/Rules.hs" 1 102 1 105 ] } [ Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 11 1 101 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 11 1 23 , SrcSpan "tests/examples/Rules.hs" 1 24 1 30 , SrcSpan "tests/examples/Rules.hs" 1 61 1 62 , SrcSpan "tests/examples/Rules.hs" 1 78 1 79 ] } "head/build" Nothing (Just [ TypedRuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 31 1 60 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 31 1 32 , SrcSpan "tests/examples/Rules.hs" 1 33 1 35 , SrcSpan "tests/examples/Rules.hs" 1 59 1 60 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 32 1 33 , srcInfoPoints = [] } "g") (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 35 1 59 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 35 1 41 , SrcSpan "tests/examples/Rules.hs" 1 43 1 44 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 42 1 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 42 1 43 , srcInfoPoints = [] } "b") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 44 1 59 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 53 1 55 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 44 1 53 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 44 1 45 , SrcSpan "tests/examples/Rules.hs" 1 52 1 53 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 45 1 52 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 46 1 48 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 45 1 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 45 1 46 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 48 1 52 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 49 1 51 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 48 1 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 48 1 49 , srcInfoPoints = [] } "b")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 51 1 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 51 1 52 , srcInfoPoints = [] } "b"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 55 1 59 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 56 1 58 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 55 1 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 55 1 56 , srcInfoPoints = [] } "b")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 58 1 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 58 1 59 , srcInfoPoints = [] } "b"))))) ]) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 63 1 77 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 63 1 67 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 63 1 67 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 63 1 67 , srcInfoPoints = [] } "head"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 68 1 77 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 68 1 69 , SrcSpan "tests/examples/Rules.hs" 1 76 1 77 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 69 1 76 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 69 1 74 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 69 1 74 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 69 1 74 , srcInfoPoints = [] } "build"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 75 1 76 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 75 1 76 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 75 1 76 , srcInfoPoints = [] } "g")))))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 80 1 101 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 80 1 93 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 80 1 81 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 80 1 81 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 80 1 81 , srcInfoPoints = [] } "g"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 82 1 93 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 82 1 83 , SrcSpan "tests/examples/Rules.hs" 1 92 1 93 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 83 1 92 , srcInfoPoints = [ SrcSpan "tests/examples/Rules.hs" 1 83 1 84 , SrcSpan "tests/examples/Rules.hs" 1 88 1 90 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 84 1 85 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 84 1 85 , srcInfoPoints = [] } "x") , PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 86 1 87 , srcInfoPoints = [] } ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 91 1 92 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 91 1 92 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 91 1 92 , srcInfoPoints = [] } "x")))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 94 1 101 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 94 1 101 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Rules.hs" 1 94 1 101 , srcInfoPoints = [] } "badHead")))) ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/Rules.hs.prettyparser.golden0000644000000000000000000000000612746233113023600 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Rules.hs.prettyprinter.golden0000644000000000000000000000020412746233113023767 0ustar0000000000000000{-# RULES "head/build" forall (g :: forall b . (a -> b -> b) -> b -> b) . head (build g) = g (\ x _ -> x) badHead #-} haskell-src-exts-1.18.2/tests/examples/SafeImports1.hs0000644000000000000000000000006612746233113021017 0ustar0000000000000000{-# LANGUAGE SafeImports #-} import safe Prelude as P haskell-src-exts-1.18.2/tests/examples/SafeImports1.hs.exactprinter.golden0000644000000000000000000000000612746233113024767 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SafeImports1.hs.parser.golden0000644000000000000000000000434312746233113023563 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports1.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports1.hs" 1 1 1 1 , SrcSpan "tests/examples/SafeImports1.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports1.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports1.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports1.hs" 3 1 3 1 , SrcSpan "tests/examples/SafeImports1.hs" 3 1 3 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports1.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports1.hs" 1 1 1 13 , SrcSpan "tests/examples/SafeImports1.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports1.hs" 1 14 1 25 , srcInfoPoints = [] } "SafeImports" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports1.hs" 2 1 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports1.hs" 2 1 2 7 , SrcSpan "tests/examples/SafeImports1.hs" 2 8 2 12 , SrcSpan "tests/examples/SafeImports1.hs" 2 21 2 23 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports1.hs" 2 13 2 20 , srcInfoPoints = [] } "Prelude" , importQualified = False , importSrc = False , importSafe = True , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports1.hs" 2 24 2 25 , srcInfoPoints = [] } "P") , importSpecs = Nothing } ] [] , [] ) haskell-src-exts-1.18.2/tests/examples/SafeImports1.hs.prettyparser.golden0000644000000000000000000000000612746233113025023 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SafeImports1.hs.prettyprinter.golden0000644000000000000000000000006612746233113025220 0ustar0000000000000000{-# LANGUAGE SafeImports #-} import safe Prelude as P haskell-src-exts-1.18.2/tests/examples/SafeImports2.hs0000644000000000000000000000005712746233113021020 0ustar0000000000000000{-# LANGUAGE Safe #-} import safe Prelude as P haskell-src-exts-1.18.2/tests/examples/SafeImports2.hs.exactprinter.golden0000644000000000000000000000000612746233113024770 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SafeImports2.hs.parser.golden0000644000000000000000000000433412746233113023564 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports2.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports2.hs" 1 1 1 1 , SrcSpan "tests/examples/SafeImports2.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports2.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports2.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports2.hs" 3 1 3 1 , SrcSpan "tests/examples/SafeImports2.hs" 3 1 3 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports2.hs" 1 1 1 22 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports2.hs" 1 1 1 13 , SrcSpan "tests/examples/SafeImports2.hs" 1 19 1 22 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports2.hs" 1 14 1 18 , srcInfoPoints = [] } "Safe" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports2.hs" 2 1 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports2.hs" 2 1 2 7 , SrcSpan "tests/examples/SafeImports2.hs" 2 8 2 12 , SrcSpan "tests/examples/SafeImports2.hs" 2 21 2 23 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports2.hs" 2 13 2 20 , srcInfoPoints = [] } "Prelude" , importQualified = False , importSrc = False , importSafe = True , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports2.hs" 2 24 2 25 , srcInfoPoints = [] } "P") , importSpecs = Nothing } ] [] , [] ) haskell-src-exts-1.18.2/tests/examples/SafeImports2.hs.prettyparser.golden0000644000000000000000000000000612746233113025024 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SafeImports2.hs.prettyprinter.golden0000644000000000000000000000005712746233113025221 0ustar0000000000000000{-# LANGUAGE Safe #-} import safe Prelude as P haskell-src-exts-1.18.2/tests/examples/SafeImports3.hs0000644000000000000000000000006612746233113021021 0ustar0000000000000000{-# LANGUAGE Trustworthy #-} import safe Prelude as P haskell-src-exts-1.18.2/tests/examples/SafeImports3.hs.exactprinter.golden0000644000000000000000000000000612746233113024771 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SafeImports3.hs.parser.golden0000644000000000000000000000434312746233113023565 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports3.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports3.hs" 1 1 1 1 , SrcSpan "tests/examples/SafeImports3.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports3.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports3.hs" 2 1 2 1 , SrcSpan "tests/examples/SafeImports3.hs" 3 1 3 1 , SrcSpan "tests/examples/SafeImports3.hs" 3 1 3 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports3.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports3.hs" 1 1 1 13 , SrcSpan "tests/examples/SafeImports3.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports3.hs" 1 14 1 25 , srcInfoPoints = [] } "Trustworthy" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports3.hs" 2 1 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/SafeImports3.hs" 2 1 2 7 , SrcSpan "tests/examples/SafeImports3.hs" 2 8 2 12 , SrcSpan "tests/examples/SafeImports3.hs" 2 21 2 23 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports3.hs" 2 13 2 20 , srcInfoPoints = [] } "Prelude" , importQualified = False , importSrc = False , importSafe = True , importPkg = Nothing , importAs = Just (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SafeImports3.hs" 2 24 2 25 , srcInfoPoints = [] } "P") , importSpecs = Nothing } ] [] , [] ) haskell-src-exts-1.18.2/tests/examples/SafeImports3.hs.prettyparser.golden0000644000000000000000000000000612746233113025025 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SafeImports3.hs.prettyprinter.golden0000644000000000000000000000006612746233113025222 0ustar0000000000000000{-# LANGUAGE Trustworthy #-} import safe Prelude as P haskell-src-exts-1.18.2/tests/examples/SCCPragmas.hs0000644000000000000000000000006412746233113020423 0ustar0000000000000000module SCCPragmas where x = {-# SCC "wibble" #-} 3 haskell-src-exts-1.18.2/tests/examples/SCCPragmas.hs.exactprinter.golden0000644000000000000000000000000612746233113024375 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SCCPragmas.hs.parser.golden0000644000000000000000000000532012746233113023165 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/SCCPragmas.hs" 1 1 1 1 , SrcSpan "tests/examples/SCCPragmas.hs" 1 1 1 1 , SrcSpan "tests/examples/SCCPragmas.hs" 3 1 3 1 , SrcSpan "tests/examples/SCCPragmas.hs" 4 1 4 1 , SrcSpan "tests/examples/SCCPragmas.hs" 4 1 4 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 1 1 1 24 , srcInfoPoints = [ SrcSpan "tests/examples/SCCPragmas.hs" 1 1 1 7 , SrcSpan "tests/examples/SCCPragmas.hs" 1 19 1 24 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 1 8 1 18 , srcInfoPoints = [] } "SCCPragmas") Nothing Nothing)) [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 3 1 3 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 3 1 3 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 3 1 3 2 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 3 3 3 27 , srcInfoPoints = [ SrcSpan "tests/examples/SCCPragmas.hs" 3 3 3 4 ] } (SCCPragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 3 5 3 27 , srcInfoPoints = [ SrcSpan "tests/examples/SCCPragmas.hs" 3 13 3 21 , SrcSpan "tests/examples/SCCPragmas.hs" 3 22 3 25 ] } "wibble" (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 3 26 3 27 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SCCPragmas.hs" 3 26 3 27 , srcInfoPoints = [] } 3 "3")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/SCCPragmas.hs.prettyparser.golden0000644000000000000000000000000612746233113024431 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SCCPragmas.hs.prettyprinter.golden0000644000000000000000000000006312746233113024623 0ustar0000000000000000module SCCPragmas where x = {-# SCC "wibble" #-} 3 haskell-src-exts-1.18.2/tests/examples/ScopedTypeVariables.hs0000644000000000000000000000034112746233113022406 0ustar0000000000000000{-# LANGUAGE ScopedTypeVariables #-} test :: IO Char test = do x :: Char <- getChar return x value :: String = "Hello" forallTest :: forall x . Eq x => x -> x forallTest x = if x == x then (undefined :: x) else x haskell-src-exts-1.18.2/tests/examples/ScopedTypeVariables.hs.exactprinter.golden0000644000000000000000000000000612746233113026362 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ScopedTypeVariables.hs.parser.golden0000644000000000000000000006406012746233113025160 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 1 13 1 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 1 1 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 1 4 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 1 11 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 1 12 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 13 1 13 1 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 13 1 13 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 1 1 37 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 1 1 13 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 34 1 37 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 1 14 1 33 , srcInfoPoints = [] } "ScopedTypeVariables" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 16 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 6 3 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 1 3 5 , srcInfoPoints = [] } "test" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 9 3 16 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 9 3 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 9 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 9 3 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 12 3 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 12 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 3 12 3 16 , srcInfoPoints = [] } "Char")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 1 6 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 1 4 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 1 4 5 , srcInfoPoints = [] } "test")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 6 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 6 4 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 8 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 4 8 4 10 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 5 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 5 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 25 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 15 5 17 ] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 7 5 9 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 5 5 6 , srcInfoPoints = [] } "x")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 10 5 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 10 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 10 5 14 , srcInfoPoints = [] } "Char")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 18 5 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 18 5 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 5 18 5 25 , srcInfoPoints = [] } "getChar"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 13 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 5 6 11 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 12 6 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 12 6 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 6 12 6 13 , srcInfoPoints = [] } "x")))) ])) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 26 , srcInfoPoints = [] } (PatTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 16 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 7 9 9 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 1 9 6 , srcInfoPoints = [] } "value")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 10 9 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 10 9 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 10 9 16 , srcInfoPoints = [] } "String")))) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 17 9 26 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 17 9 18 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 19 9 26 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 9 19 9 26 , srcInfoPoints = [] } "Hello" "Hello"))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 1 11 40 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 12 11 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 1 11 11 , srcInfoPoints = [] } "forallTest" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 15 11 40 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 15 11 21 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 24 11 25 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 22 11 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 22 11 23 , srcInfoPoints = [] } "x") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 26 11 33 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 31 11 33 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 26 11 33 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 31 11 33 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 26 11 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 26 11 28 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 29 11 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 29 11 30 , srcInfoPoints = [] } "x") ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 34 11 40 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 36 11 38 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 34 11 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 34 11 35 , srcInfoPoints = [] } "x")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 39 11 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 11 39 11 40 , srcInfoPoints = [] } "x")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 1 12 54 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 1 12 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 1 12 11 , srcInfoPoints = [] } "forallTest") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 12 12 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 12 12 13 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 14 12 54 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 14 12 15 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 16 12 54 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 16 12 18 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 26 12 30 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 48 12 52 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 19 12 25 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 19 12 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 19 12 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 19 12 20 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 21 12 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 21 12 23 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 21 12 23 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 24 12 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 24 12 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 24 12 25 , srcInfoPoints = [] } "x")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 31 12 47 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 31 12 32 , SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 46 12 47 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 32 12 46 , srcInfoPoints = [ SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 42 12 44 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 32 12 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 32 12 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 32 12 41 , srcInfoPoints = [] } "undefined"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 45 12 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 45 12 46 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 53 12 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 53 12 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ScopedTypeVariables.hs" 12 53 12 54 , srcInfoPoints = [] } "x"))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/ScopedTypeVariables.hs.prettyparser.golden0000644000000000000000000000000612746233113026416 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ScopedTypeVariables.hs.prettyprinter.golden0000644000000000000000000000034012746233113026606 0ustar0000000000000000{-# LANGUAGE ScopedTypeVariables #-} test :: IO Char test = do x :: Char <- getChar return x value :: String = "Hello" forallTest :: forall x . Eq x => x -> x forallTest x = if x == x then (undefined :: x) else x haskell-src-exts-1.18.2/tests/examples/SimpleDeriving.hs0000644000000000000000000000002712746233113021420 0ustar0000000000000000data T = T deriving Eq haskell-src-exts-1.18.2/tests/examples/SimpleDeriving.hs.exactprinter.golden0000644000000000000000000000000612746233113025373 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SimpleDeriving.hs.parser.golden0000644000000000000000000000705712746233113024174 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/SimpleDeriving.hs" 1 1 1 1 , SrcSpan "tests/examples/SimpleDeriving.hs" 1 1 1 1 , SrcSpan "tests/examples/SimpleDeriving.hs" 1 1 1 1 , SrcSpan "tests/examples/SimpleDeriving.hs" 2 1 2 1 , SrcSpan "tests/examples/SimpleDeriving.hs" 2 1 2 1 ] } Nothing [] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/SimpleDeriving.hs" 1 8 1 9 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 1 1 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 6 1 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 6 1 7 , srcInfoPoints = [] } "T")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 10 1 11 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 10 1 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 10 1 11 , srcInfoPoints = [] } "T") []) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 12 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/SimpleDeriving.hs" 1 12 1 20 ] } [ IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 21 1 23 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 21 1 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 21 1 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SimpleDeriving.hs" 1 21 1 23 , srcInfoPoints = [] } "Eq"))) ])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/SimpleDeriving.hs.prettyparser.golden0000644000000000000000000000000612746233113025427 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SimpleDeriving.hs.prettyprinter.golden0000644000000000000000000000003612746233113025621 0ustar0000000000000000data T = T deriving Eq haskell-src-exts-1.18.2/tests/examples/SingleClassAsst.hs0000644000000000000000000000006512746233113021543 0ustar0000000000000000module Test where foo :: (Eq a) => a -> a foo x = x haskell-src-exts-1.18.2/tests/examples/SingleClassAsst.hs.exactprinter.golden0000644000000000000000000000000612746233113025514 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SingleClassAsst.hs.parser.golden0000644000000000000000000001765712746233113024324 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/SingleClassAsst.hs" 1 1 1 1 , SrcSpan "tests/examples/SingleClassAsst.hs" 1 1 1 1 , SrcSpan "tests/examples/SingleClassAsst.hs" 3 1 3 1 , SrcSpan "tests/examples/SingleClassAsst.hs" 4 1 4 1 , SrcSpan "tests/examples/SingleClassAsst.hs" 5 1 5 1 , SrcSpan "tests/examples/SingleClassAsst.hs" 5 1 5 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 1 1 1 18 , srcInfoPoints = [ SrcSpan "tests/examples/SingleClassAsst.hs" 1 1 1 7 , SrcSpan "tests/examples/SingleClassAsst.hs" 1 13 1 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 1 8 1 12 , srcInfoPoints = [] } "Test") Nothing Nothing)) [] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 1 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/SingleClassAsst.hs" 3 5 3 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 1 3 4 , srcInfoPoints = [] } "foo" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 8 3 24 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 8 3 17 , srcInfoPoints = [ SrcSpan "tests/examples/SingleClassAsst.hs" 3 8 3 9 , SrcSpan "tests/examples/SingleClassAsst.hs" 3 13 3 14 , SrcSpan "tests/examples/SingleClassAsst.hs" 3 15 3 17 ] } (ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 8 3 17 , srcInfoPoints = [ SrcSpan "tests/examples/SingleClassAsst.hs" 3 8 3 9 , SrcSpan "tests/examples/SingleClassAsst.hs" 3 13 3 14 , SrcSpan "tests/examples/SingleClassAsst.hs" 3 15 3 17 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 9 3 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 9 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 9 3 11 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 12 3 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 12 3 13 , srcInfoPoints = [] } "a") ])))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 18 3 24 , srcInfoPoints = [ SrcSpan "tests/examples/SingleClassAsst.hs" 3 20 3 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 18 3 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 18 3 19 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 23 3 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 3 23 3 24 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 1 4 10 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 1 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 1 4 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 5 4 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 5 4 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 7 4 10 , srcInfoPoints = [ SrcSpan "tests/examples/SingleClassAsst.hs" 4 7 4 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 9 4 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 9 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SingleClassAsst.hs" 4 9 4 10 , srcInfoPoints = [] } "x")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/SingleClassAsst.hs.prettyparser.golden0000644000000000000000000000000612746233113025550 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SingleClassAsst.hs.prettyprinter.golden0000644000000000000000000000006512746233113025744 0ustar0000000000000000module Test where foo :: (Eq a) => a -> a foo x = x haskell-src-exts-1.18.2/tests/examples/SpecializeInstance.hs0000644000000000000000000000032012746233113022250 0ustar0000000000000000instance Sized a => Sized (Digit a) where {-# SPECIALIZE instance Sized (Digit (Elem a)) #-} {-# SPECIALIZE instance Sized (Digit (Node a)) #-} size xs = foldl (\ i x -> i + size x) 0 xs haskell-src-exts-1.18.2/tests/examples/SpecializeInstance.hs.exactprinter.golden0000644000000000000000000000032112746233113026227 0ustar0000000000000000instance Sized a => Sized (Digit a) where {-# SPECIALISE instance Sized (Digit (Elem a)) #-} {-# SPECIALISE instance Sized (Digit (Node a)) #-} size xs = foldl (\ i x -> i + size x) 0 xs haskell-src-exts-1.18.2/tests/examples/SpecializeInstance.hs.parser.golden0000644000000000000000000012644412746233113025032 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 1 1 1 1 , SrcSpan "tests/examples/SpecializeInstance.hs" 1 1 1 1 , SrcSpan "tests/examples/SpecializeInstance.hs" 1 1 1 1 , SrcSpan "tests/examples/SpecializeInstance.hs" 5 1 5 1 , SrcSpan "tests/examples/SpecializeInstance.hs" 5 1 5 1 ] } Nothing [] [] [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 1 5 0 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 1 1 1 9 , SrcSpan "tests/examples/SpecializeInstance.hs" 1 37 1 42 , SrcSpan "tests/examples/SpecializeInstance.hs" 2 8 2 8 , SrcSpan "tests/examples/SpecializeInstance.hs" 3 8 3 8 , SrcSpan "tests/examples/SpecializeInstance.hs" 4 8 4 8 , SrcSpan "tests/examples/SpecializeInstance.hs" 5 1 5 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 10 1 36 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 10 1 20 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 1 18 1 20 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 10 1 20 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 1 18 1 20 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 10 1 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 10 1 15 , srcInfoPoints = [] } "Sized")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 16 1 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 16 1 17 , srcInfoPoints = [] } "a") ]))) (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 21 1 36 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 21 1 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 21 1 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 21 1 26 , srcInfoPoints = [] } "Sized"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 27 1 36 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 1 27 1 28 , SrcSpan "tests/examples/SpecializeInstance.hs" 1 35 1 36 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 28 1 35 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 28 1 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 28 1 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 28 1 33 , srcInfoPoints = [] } "Digit"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 34 1 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 1 34 1 35 , srcInfoPoints = [] } "a")))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 8 2 58 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 2 8 2 22 , SrcSpan "tests/examples/SpecializeInstance.hs" 2 23 2 31 , SrcSpan "tests/examples/SpecializeInstance.hs" 2 55 2 58 ] } (InstSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 8 2 58 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 2 8 2 22 , SrcSpan "tests/examples/SpecializeInstance.hs" 2 23 2 31 , SrcSpan "tests/examples/SpecializeInstance.hs" 2 55 2 58 ] } (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 32 2 54 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 32 2 54 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 32 2 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 32 2 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 32 2 37 , srcInfoPoints = [] } "Sized"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 38 2 54 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 2 38 2 39 , SrcSpan "tests/examples/SpecializeInstance.hs" 2 53 2 54 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 39 2 53 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 39 2 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 39 2 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 39 2 44 , srcInfoPoints = [] } "Digit"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 45 2 53 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 2 45 2 46 , SrcSpan "tests/examples/SpecializeInstance.hs" 2 52 2 53 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 46 2 52 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 46 2 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 46 2 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 46 2 50 , srcInfoPoints = [] } "Elem"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 51 2 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 2 51 2 52 , srcInfoPoints = [] } "a"))))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 8 3 58 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 3 8 3 22 , SrcSpan "tests/examples/SpecializeInstance.hs" 3 23 3 31 , SrcSpan "tests/examples/SpecializeInstance.hs" 3 55 3 58 ] } (InstSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 8 3 58 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 3 8 3 22 , SrcSpan "tests/examples/SpecializeInstance.hs" 3 23 3 31 , SrcSpan "tests/examples/SpecializeInstance.hs" 3 55 3 58 ] } (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 32 3 54 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 32 3 54 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 32 3 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 32 3 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 32 3 37 , srcInfoPoints = [] } "Sized"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 38 3 54 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 3 38 3 39 , SrcSpan "tests/examples/SpecializeInstance.hs" 3 53 3 54 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 39 3 53 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 39 3 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 39 3 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 39 3 44 , srcInfoPoints = [] } "Digit"))) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 45 3 53 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 3 45 3 46 , SrcSpan "tests/examples/SpecializeInstance.hs" 3 52 3 53 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 46 3 52 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 46 3 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 46 3 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 46 3 50 , srcInfoPoints = [] } "Node"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 51 3 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 3 51 3 52 , srcInfoPoints = [] } "a"))))))))) , InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 8 4 50 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 8 4 50 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 8 4 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 8 4 12 , srcInfoPoints = [] } "size") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 13 4 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 13 4 15 , srcInfoPoints = [] } "xs") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 16 4 50 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 4 16 4 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 18 4 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 18 4 47 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 18 4 45 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 18 4 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 18 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 18 4 23 , srcInfoPoints = [] } "foldl"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 24 4 45 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 4 24 4 25 , SrcSpan "tests/examples/SpecializeInstance.hs" 4 44 4 45 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 25 4 44 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializeInstance.hs" 4 25 4 26 , SrcSpan "tests/examples/SpecializeInstance.hs" 4 31 4 33 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 27 4 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 27 4 28 , srcInfoPoints = [] } "i") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 29 4 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 29 4 30 , srcInfoPoints = [] } "x") ] (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 34 4 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 34 4 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 34 4 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 34 4 35 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 36 4 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 36 4 37 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 36 4 37 , srcInfoPoints = [] } "+"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 38 4 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 38 4 42 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 38 4 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 38 4 42 , srcInfoPoints = [] } "size"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 43 4 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 43 4 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 43 4 44 , srcInfoPoints = [] } "x")))))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 46 4 47 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 46 4 47 , srcInfoPoints = [] } 0 "0"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 48 4 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 48 4 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializeInstance.hs" 4 48 4 50 , srcInfoPoints = [] } "xs"))))) Nothing ]) ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/SpecializeInstance.hs.prettyparser.golden0000644000000000000000000000000612746233113026263 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SpecializeInstance.hs.prettyprinter.golden0000644000000000000000000000033412746233113026456 0ustar0000000000000000instance Sized a => Sized (Digit a) where {-# SPECIALISE instance Sized (Digit (Elem a)) #-} {-# SPECIALISE instance Sized (Digit (Node a)) #-} size xs = foldl (\ i x -> i + size x) 0 xs haskell-src-exts-1.18.2/tests/examples/SpecializePhaseControl.hs0000644000000000000000000000064612746233113023120 0ustar0000000000000000{-# SPECIALISE [1] x :: Integer -> Integer -> Integer, Integer -> Int -> Integer, Int -> Int -> Int #-} {-# INLINABLE [1] x #-} x :: (Num a, Integral b) => a -> b -> a x = undefined {-# SPECIALISE INLINE [999] y :: Integer -> Integer -> Integer, Integer -> Int -> Integer, Int -> Int -> Int #-} {-# INLINABLE [1] y #-} y :: (Num a, Integral b) => a -> b -> a y = undefined haskell-src-exts-1.18.2/tests/examples/SpecializePhaseControl.hs.exactprinter.golden0000644000000000000000000000000612746233113027064 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SpecializePhaseControl.hs.parser.golden0000644000000000000000000012445712746233113025671 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 1 16 1 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 1 1 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 1 1 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 1 1 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 1 6 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 1 7 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 1 9 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 1 14 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 1 15 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 16 1 16 1 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 16 1 16 1 ] } Nothing [] [] [ SpecSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 1 4 30 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 1 1 15 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 22 1 24 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 38 2 39 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 34 3 35 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 27 4 30 ] } (Just (ActiveFrom SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 16 1 19 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 16 1 17 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 17 1 18 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 18 1 19 ] } 1)) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 20 1 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 1 20 1 21 , srcInfoPoints = [] } "x")) [ TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 9 2 38 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 17 2 19 ] } Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 9 2 38 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 17 2 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 9 2 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 9 2 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 9 2 16 , srcInfoPoints = [] } "Integer"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 20 2 38 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 28 2 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 20 2 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 20 2 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 20 2 27 , srcInfoPoints = [] } "Integer"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 31 2 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 31 2 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 2 31 2 38 , srcInfoPoints = [] } "Integer"))))) , TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 9 3 34 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 17 3 19 ] } Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 9 3 34 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 17 3 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 9 3 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 9 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 9 3 16 , srcInfoPoints = [] } "Integer"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 20 3 34 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 24 3 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 20 3 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 20 3 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 20 3 23 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 27 3 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 27 3 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 3 27 3 34 , srcInfoPoints = [] } "Integer"))))) , TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 9 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 13 4 15 ] } Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 9 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 13 4 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 9 4 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 9 4 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 9 4 12 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 16 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 20 4 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 16 4 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 16 4 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 16 4 19 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 23 4 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 23 4 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 4 23 4 26 , srcInfoPoints = [] } "Int"))))) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 1 6 40 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 3 6 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 1 6 2 , srcInfoPoints = [] } "x" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 6 6 40 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 6 6 28 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 6 6 7 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 12 6 13 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 24 6 25 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 26 6 28 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 7 6 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 7 6 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 7 6 10 , srcInfoPoints = [] } "Num")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 11 6 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 11 6 12 , srcInfoPoints = [] } "a") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 14 6 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 14 6 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 14 6 22 , srcInfoPoints = [] } "Integral")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 23 6 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 23 6 24 , srcInfoPoints = [] } "b") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 29 6 40 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 31 6 33 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 29 6 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 29 6 30 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 34 6 40 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 36 6 38 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 34 6 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 34 6 35 , srcInfoPoints = [] } "b")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 39 6 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 6 39 6 40 , srcInfoPoints = [] } "a"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 1 7 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 1 7 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 1 7 2 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 3 7 14 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 3 7 4 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 5 7 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 5 7 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 7 5 7 14 , srcInfoPoints = [] } "undefined")))) Nothing , SpecInlineSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 1 12 30 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 1 9 22 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 31 9 33 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 38 10 39 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 34 11 35 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 27 12 30 ] } True (Just (ActiveFrom SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 23 9 28 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 23 9 24 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 24 9 27 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 27 9 28 ] } 999)) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 29 9 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 9 29 9 30 , srcInfoPoints = [] } "y")) [ TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 9 10 38 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 17 10 19 ] } Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 9 10 38 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 17 10 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 9 10 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 9 10 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 9 10 16 , srcInfoPoints = [] } "Integer"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 20 10 38 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 28 10 30 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 20 10 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 20 10 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 20 10 27 , srcInfoPoints = [] } "Integer"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 31 10 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 31 10 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 10 31 10 38 , srcInfoPoints = [] } "Integer"))))) , TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 9 11 34 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 17 11 19 ] } Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 9 11 34 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 17 11 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 9 11 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 9 11 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 9 11 16 , srcInfoPoints = [] } "Integer"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 20 11 34 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 24 11 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 20 11 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 20 11 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 20 11 23 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 27 11 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 27 11 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 11 27 11 34 , srcInfoPoints = [] } "Integer"))))) , TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 9 12 26 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 13 12 15 ] } Nothing Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 9 12 26 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 13 12 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 9 12 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 9 12 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 9 12 12 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 16 12 26 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 20 12 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 16 12 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 16 12 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 16 12 19 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 23 12 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 23 12 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 12 23 12 26 , srcInfoPoints = [] } "Int"))))) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 1 14 40 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 3 14 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 1 14 2 , srcInfoPoints = [] } "y" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 6 14 40 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 6 14 28 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 6 14 7 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 12 14 13 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 24 14 25 , SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 26 14 28 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 7 14 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 7 14 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 7 14 10 , srcInfoPoints = [] } "Num")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 11 14 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 11 14 12 , srcInfoPoints = [] } "a") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 14 14 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 14 14 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 14 14 22 , srcInfoPoints = [] } "Integral")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 23 14 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 23 14 24 , srcInfoPoints = [] } "b") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 29 14 40 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 31 14 33 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 29 14 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 29 14 30 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 34 14 40 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 36 14 38 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 34 14 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 34 14 35 , srcInfoPoints = [] } "b")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 39 14 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 14 39 14 40 , srcInfoPoints = [] } "a"))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 1 15 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 1 15 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 1 15 2 , srcInfoPoints = [] } "y")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 3 15 14 , srcInfoPoints = [ SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 3 15 4 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 5 15 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 5 15 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/SpecializePhaseControl.hs" 15 5 15 14 , srcInfoPoints = [] } "undefined")))) Nothing ] , [ Comment True (SrcSpan "tests/examples/SpecializePhaseControl.hs" 5 1 5 24) "# INLINABLE [1] x #" , Comment True (SrcSpan "tests/examples/SpecializePhaseControl.hs" 13 1 13 24) "# INLINABLE [1] y #" ] ) haskell-src-exts-1.18.2/tests/examples/SpecializePhaseControl.hs.prettyparser.golden0000644000000000000000000000000612746233113027120 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/SpecializePhaseControl.hs.prettyprinter.golden0000644000000000000000000000055212746233113027315 0ustar0000000000000000{-# SPECIALISE [1] x :: Integer -> Integer -> Integer, Integer -> Int -> Integer, Int -> Int -> Int #-} x :: (Num a, Integral b) => a -> b -> a x = undefined {-# SPECIALISE INLINE [999] y :: Integer -> Integer -> Integer, Integer -> Int -> Integer, Int -> Int -> Int #-} y :: (Num a, Integral b) => a -> b -> a y = undefined haskell-src-exts-1.18.2/tests/examples/TabWhitespace.hs0000644000000000000000000000000712746233113021220 0ustar0000000000000000 -- hi haskell-src-exts-1.18.2/tests/examples/TabWhitespace.hs.exactprinter.golden0000644000000000000000000000001712746233113025177 0ustar0000000000000000 -- hi haskell-src-exts-1.18.2/tests/examples/TabWhitespace.hs.parser.golden0000644000000000000000000000105312746233113023764 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TabWhitespace.hs" 2 1 2 1 , srcInfoPoints = [ SrcSpan "tests/examples/TabWhitespace.hs" 2 1 2 1 , SrcSpan "tests/examples/TabWhitespace.hs" 2 1 2 1 , SrcSpan "tests/examples/TabWhitespace.hs" 2 1 2 1 , SrcSpan "tests/examples/TabWhitespace.hs" 2 1 2 1 ] } Nothing [] [] [] , [ Comment False (SrcSpan "tests/examples/TabWhitespace.hs" 1 9 1 14) " hi" ] ) haskell-src-exts-1.18.2/tests/examples/TabWhitespace.hs.prettyparser.golden0000644000000000000000000000000612746233113025231 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TabWhitespace.hs.prettyprinter.golden0000644000000000000000000000000112746233113025413 0ustar0000000000000000 haskell-src-exts-1.18.2/tests/examples/Testing.hs0000644000000000000000000000007712746233113020121 0ustar0000000000000000{-# LINE 5 "templates\GenericTemplate.hs" #-} main = return () haskell-src-exts-1.18.2/tests/examples/Testing.hs.exactprinter.golden0000644000000000000000000000000612746233113024067 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Testing.hs.parser.golden0000644000000000000000000000662112746233113022664 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/Testing.hs" 2 1 2 1 , SrcSpan "tests/examples/Testing.hs" 2 1 2 1 , SrcSpan "tests/examples/Testing.hs" 2 1 2 1 , SrcSpan "tests/examples/Testing.hs" 3 1 3 1 , SrcSpan "tests/examples/Testing.hs" 3 1 3 1 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 1 2 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 1 2 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 1 2 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 6 2 17 , srcInfoPoints = [ SrcSpan "tests/examples/Testing.hs" 2 6 2 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 8 2 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 8 2 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 8 2 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 8 2 14 , srcInfoPoints = [] } "return"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 15 2 17 , srcInfoPoints = [ SrcSpan "tests/examples/Testing.hs" 2 15 2 16 , SrcSpan "tests/examples/Testing.hs" 2 16 2 17 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 15 2 17 , srcInfoPoints = [ SrcSpan "tests/examples/Testing.hs" 2 15 2 16 , SrcSpan "tests/examples/Testing.hs" 2 16 2 17 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Testing.hs" 2 15 2 17 , srcInfoPoints = [ SrcSpan "tests/examples/Testing.hs" 2 15 2 16 , SrcSpan "tests/examples/Testing.hs" 2 16 2 17 ] }))))) Nothing ] , [ Comment True (SrcSpan "tests/examples/Testing.hs" 1 1 1 46) "# LINE 5 \"templates\\GenericTemplate.hs\" #" ] ) haskell-src-exts-1.18.2/tests/examples/Testing.hs.prettyparser.golden0000644000000000000000000000000612746233113024123 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Testing.hs.prettyprinter.golden0000644000000000000000000000002112746233113024307 0ustar0000000000000000main = return () haskell-src-exts-1.18.2/tests/examples/THTSplices.hs0000644000000000000000000000013512746233113020461 0ustar0000000000000000{-# LANGUAGE TemplateHaskell #-} import Language.Haskell.TH main = undefined :: $(undefined) haskell-src-exts-1.18.2/tests/examples/THTSplices.hs.exactprinter.golden0000644000000000000000000000000612746233113024434 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/THTSplices.hs.parser.golden0000644000000000000000000001223712746233113023231 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/THTSplices.hs" 1 1 1 1 , SrcSpan "tests/examples/THTSplices.hs" 2 1 2 1 , SrcSpan "tests/examples/THTSplices.hs" 2 1 2 1 , SrcSpan "tests/examples/THTSplices.hs" 2 1 2 1 , SrcSpan "tests/examples/THTSplices.hs" 3 1 3 1 , SrcSpan "tests/examples/THTSplices.hs" 4 1 4 1 , SrcSpan "tests/examples/THTSplices.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/THTSplices.hs" 1 1 1 13 , SrcSpan "tests/examples/THTSplices.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 1 14 1 29 , srcInfoPoints = [] } "TemplateHaskell" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/THTSplices.hs" 2 1 2 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 2 8 2 27 , srcInfoPoints = [] } "Language.Haskell.TH" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 1 3 33 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 1 3 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 1 3 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 6 3 33 , srcInfoPoints = [ SrcSpan "tests/examples/THTSplices.hs" 3 6 3 7 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 8 3 33 , srcInfoPoints = [ SrcSpan "tests/examples/THTSplices.hs" 3 18 3 20 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 8 3 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 8 3 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 8 3 17 , srcInfoPoints = [] } "undefined"))) (TySplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 21 3 33 , srcInfoPoints = [ SrcSpan "tests/examples/THTSplices.hs" 3 21 3 23 , SrcSpan "tests/examples/THTSplices.hs" 3 32 3 33 ] } (ParenSplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 21 3 33 , srcInfoPoints = [ SrcSpan "tests/examples/THTSplices.hs" 3 21 3 23 , SrcSpan "tests/examples/THTSplices.hs" 3 32 3 33 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 23 3 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 23 3 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTSplices.hs" 3 23 3 32 , srcInfoPoints = [] } "undefined"))))))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/THTSplices.hs.prettyparser.golden0000644000000000000000000000000612746233113024470 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/THTSplices.hs.prettyprinter.golden0000644000000000000000000000013712746233113024664 0ustar0000000000000000{-# LANGUAGE TemplateHaskell #-} import Language.Haskell.TH main = undefined :: $( undefined ) haskell-src-exts-1.18.2/tests/examples/THTypes.hs0000644000000000000000000000034212746233113020037 0ustar0000000000000000{-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE QuasiQuotes #-} module THTypes where import Language.Haskell.TH x :: DecsQ x = [d| instance Show $(conT (mkName "Int")) |] unit x = [t| $x |] haskell-src-exts-1.18.2/tests/examples/THTypes.hs.exactprinter.golden0000644000000000000000000000000612746233113024012 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/THTypes.hs.parser.golden0000644000000000000000000004041212746233113022603 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 1 1 12 1 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 1 1 1 1 , SrcSpan "tests/examples/THTypes.hs" 2 1 2 1 , SrcSpan "tests/examples/THTypes.hs" 3 1 3 1 , SrcSpan "tests/examples/THTypes.hs" 4 1 4 1 , SrcSpan "tests/examples/THTypes.hs" 4 1 4 1 , SrcSpan "tests/examples/THTypes.hs" 6 1 6 1 , SrcSpan "tests/examples/THTypes.hs" 8 1 8 1 , SrcSpan "tests/examples/THTypes.hs" 9 1 9 1 , SrcSpan "tests/examples/THTypes.hs" 11 1 11 1 , SrcSpan "tests/examples/THTypes.hs" 12 1 12 1 , SrcSpan "tests/examples/THTypes.hs" 12 1 12 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 4 1 4 7 , SrcSpan "tests/examples/THTypes.hs" 4 16 4 21 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 4 8 4 15 , srcInfoPoints = [] } "THTypes") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 1 1 1 35 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 1 1 1 13 , SrcSpan "tests/examples/THTypes.hs" 1 32 1 35 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 1 14 1 31 , srcInfoPoints = [] } "FlexibleInstances" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 2 1 2 33 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 2 1 2 13 , SrcSpan "tests/examples/THTypes.hs" 2 30 2 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 2 14 2 29 , srcInfoPoints = [] } "TemplateHaskell" ] , LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 3 1 3 29 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 3 1 3 13 , SrcSpan "tests/examples/THTypes.hs" 3 26 3 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 3 14 3 25 , srcInfoPoints = [] } "QuasiQuotes" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 6 1 6 27 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 6 1 6 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 6 8 6 27 , srcInfoPoints = [] } "Language.Haskell.TH" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 8 1 8 11 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 8 3 8 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 8 1 8 2 , srcInfoPoints = [] } "x" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 8 6 8 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 8 6 8 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 8 6 8 11 , srcInfoPoints = [] } "DecsQ"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 1 9 48 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 1 9 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 1 9 2 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 3 9 48 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 9 3 9 4 ] } (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 5 9 48 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 9 5 9 8 , SrcSpan "tests/examples/THTypes.hs" 9 46 9 48 ] } (DeclBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 5 9 48 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 9 9 9 9 , SrcSpan "tests/examples/THTypes.hs" 9 46 9 46 , SrcSpan "tests/examples/THTypes.hs" 9 46 9 48 ] } [ InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 9 9 45 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 9 9 9 17 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 18 9 45 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 18 9 45 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 18 9 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 18 9 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 18 9 22 , srcInfoPoints = [] } "Show"))) (TySplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 23 9 45 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 9 23 9 25 , SrcSpan "tests/examples/THTypes.hs" 9 44 9 45 ] } (ParenSplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 23 9 45 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 9 23 9 25 , SrcSpan "tests/examples/THTypes.hs" 9 44 9 45 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 25 9 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 25 9 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 25 9 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 25 9 29 , srcInfoPoints = [] } "conT"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 30 9 44 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 9 30 9 31 , SrcSpan "tests/examples/THTypes.hs" 9 43 9 44 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 31 9 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 31 9 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 31 9 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 31 9 37 , srcInfoPoints = [] } "mkName"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 38 9 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 9 38 9 43 , srcInfoPoints = [] } "Int" "Int"))))))))) Nothing ]))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 1 11 19 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 1 11 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 1 11 5 , srcInfoPoints = [] } "unit") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 6 11 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 6 11 7 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 8 11 19 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 11 8 11 9 ] } (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 10 11 19 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 11 10 11 13 , SrcSpan "tests/examples/THTypes.hs" 11 17 11 19 ] } (TypeBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 10 11 19 , srcInfoPoints = [ SrcSpan "tests/examples/THTypes.hs" 11 10 11 13 , SrcSpan "tests/examples/THTypes.hs" 11 17 11 19 ] } (TySplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 14 11 16 , srcInfoPoints = [] } (IdSplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/THTypes.hs" 11 14 11 16 , srcInfoPoints = [] } "x"))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/THTypes.hs.prettyparser.golden0000644000000000000000000000000612746233113024046 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/THTypes.hs.prettyprinter.golden0000644000000000000000000000036512746233113024245 0ustar0000000000000000{-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE QuasiQuotes #-} module THTypes where import Language.Haskell.TH x :: DecsQ x = [d| instance Show $( conT (mkName "Int") ) |] unit x = [t| $x |] haskell-src-exts-1.18.2/tests/examples/TrailingWhere.hs0000644000000000000000000000007512746233113021246 0ustar0000000000000000fail = x where broken = 24 where x = 413 haskell-src-exts-1.18.2/tests/examples/TrailingWhere.hs.exactprinter.golden0000644000000000000000000000000612746233113025216 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TrailingWhere.hs.parser.golden0000644000000000000000000001431012746233113024005 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 1 1 6 0 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere.hs" 6 1 6 0 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 1 1 5 12 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere.hs" 2 5 2 10 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 1 1 1 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 1 1 1 5 , srcInfoPoints = [] } "fail")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 1 6 1 9 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere.hs" 1 6 1 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 1 8 1 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 1 8 1 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 1 8 1 9 , srcInfoPoints = [] } "x")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 3 5 5 12 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere.hs" 3 5 3 5 , SrcSpan "tests/examples/TrailingWhere.hs" 5 5 5 5 , SrcSpan "tests/examples/TrailingWhere.hs" 6 1 6 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 3 5 5 5 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere.hs" 4 9 4 14 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 3 5 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 3 5 3 11 , srcInfoPoints = [] } "broken")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 3 12 3 16 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere.hs" 3 12 3 13 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 3 14 3 16 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 3 14 3 16 , srcInfoPoints = [] } 24 "24"))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 5 0 5 5 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere.hs" 5 5 5 5 , SrcSpan "tests/examples/TrailingWhere.hs" 5 5 5 5 , SrcSpan "tests/examples/TrailingWhere.hs" 5 0 5 0 ] } [])) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 5 5 5 12 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 5 5 5 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 5 5 5 6 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 5 7 5 12 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere.hs" 5 7 5 8 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 5 9 5 12 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere.hs" 5 9 5 12 , srcInfoPoints = [] } 413 "413"))) Nothing ])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/TrailingWhere.hs.prettyparser.golden0000644000000000000000000000000612746233113025252 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TrailingWhere.hs.prettyprinter.golden0000644000000000000000000000007512746233113025447 0ustar0000000000000000fail = x where broken = 24 where x = 413 haskell-src-exts-1.18.2/tests/examples/TrailingWhere2.hs0000644000000000000000000000011612746233113021324 0ustar0000000000000000data Baz = Baz instance Show Baz where show _ = "" where show _ = "" haskell-src-exts-1.18.2/tests/examples/TrailingWhere2.hs.exactprinter.golden0000644000000000000000000000000612746233113025300 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TrailingWhere2.hs.parser.golden0000644000000000000000000002273412746233113024100 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 1 1 7 0 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere2.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere2.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere2.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere2.hs" 3 1 3 1 , SrcSpan "tests/examples/TrailingWhere2.hs" 7 1 7 0 ] } Nothing [] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 1 1 1 15 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere2.hs" 1 10 1 11 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 1 1 1 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 1 6 1 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 1 6 1 9 , srcInfoPoints = [] } "Baz")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 1 12 1 15 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 1 12 1 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 1 12 1 15 , srcInfoPoints = [] } "Baz") []) ] Nothing , InstDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 1 7 0 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere2.hs" 3 1 3 9 , SrcSpan "tests/examples/TrailingWhere2.hs" 3 19 3 24 , SrcSpan "tests/examples/TrailingWhere2.hs" 4 3 4 3 , SrcSpan "tests/examples/TrailingWhere2.hs" 6 3 6 3 , SrcSpan "tests/examples/TrailingWhere2.hs" 7 1 7 0 ] } Nothing (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 10 3 18 , srcInfoPoints = [] } Nothing Nothing (IHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 10 3 18 , srcInfoPoints = [] } (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 10 3 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 10 3 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 10 3 14 , srcInfoPoints = [] } "Show"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 15 3 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 15 3 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 3 15 3 18 , srcInfoPoints = [] } "Baz"))))) (Just [ InsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 4 3 6 14 , srcInfoPoints = [] } (FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 4 3 6 14 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 4 3 6 3 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere2.hs" 5 5 5 10 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 4 3 4 7 , srcInfoPoints = [] } "show") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 4 8 4 9 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 4 10 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere2.hs" 4 10 4 11 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 4 12 4 14 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 4 12 4 14 , srcInfoPoints = [] } "" ""))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 6 0 6 3 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere2.hs" 6 3 6 3 , SrcSpan "tests/examples/TrailingWhere2.hs" 6 3 6 3 , SrcSpan "tests/examples/TrailingWhere2.hs" 6 0 6 0 ] } [])) , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 6 3 6 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 6 3 6 7 , srcInfoPoints = [] } "show") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 6 8 6 9 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 6 10 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere2.hs" 6 10 6 11 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 6 12 6 14 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere2.hs" 6 12 6 14 , srcInfoPoints = [] } "" ""))) Nothing ]) ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/TrailingWhere2.hs.prettyparser.golden0000644000000000000000000000000612746233113025334 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TrailingWhere2.hs.prettyprinter.golden0000644000000000000000000000014012746233113025522 0ustar0000000000000000data Baz = Baz instance Show Baz where show _ = "" where show _ = "" haskell-src-exts-1.18.2/tests/examples/TrailingWhere3.hs0000644000000000000000000000007612746233113021332 0ustar0000000000000000main = f where f = g where g = putStrLn "hello world" haskell-src-exts-1.18.2/tests/examples/TrailingWhere3.hs.exactprinter.golden0000644000000000000000000000000612746233113025301 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TrailingWhere3.hs.parser.golden0000644000000000000000000001745012746233113024100 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 1 1 4 0 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere3.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere3.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere3.hs" 1 1 1 1 , SrcSpan "tests/examples/TrailingWhere3.hs" 4 1 4 0 ] } Nothing [] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 1 1 3 31 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere3.hs" 1 10 1 15 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 1 1 1 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 1 1 1 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 1 6 1 9 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere3.hs" 1 6 1 7 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 1 8 1 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 1 8 1 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 1 8 1 9 , srcInfoPoints = [] } "f")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 2 5 3 31 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere3.hs" 2 5 2 5 , SrcSpan "tests/examples/TrailingWhere3.hs" 3 5 3 5 , SrcSpan "tests/examples/TrailingWhere3.hs" 4 1 4 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 2 5 3 5 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere3.hs" 2 11 2 16 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 2 5 2 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 2 5 2 6 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 2 7 2 10 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere3.hs" 2 7 2 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 2 9 2 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 2 9 2 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 2 9 2 10 , srcInfoPoints = [] } "g")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 0 3 5 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere3.hs" 3 5 3 5 , SrcSpan "tests/examples/TrailingWhere3.hs" 3 5 3 5 , SrcSpan "tests/examples/TrailingWhere3.hs" 3 0 3 0 ] } [])) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 5 3 31 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 5 3 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 5 3 6 , srcInfoPoints = [] } "g")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 7 3 31 , srcInfoPoints = [ SrcSpan "tests/examples/TrailingWhere3.hs" 3 7 3 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 9 3 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 9 3 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 9 3 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 9 3 17 , srcInfoPoints = [] } "putStrLn"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 18 3 31 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TrailingWhere3.hs" 3 18 3 31 , srcInfoPoints = [] } "hello world" "hello world")))) Nothing ])) ] , [] ) haskell-src-exts-1.18.2/tests/examples/TrailingWhere3.hs.prettyparser.golden0000644000000000000000000000000612746233113025335 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TrailingWhere3.hs.prettyprinter.golden0000644000000000000000000000011212746233113025522 0ustar0000000000000000main = f where f = g where g = putStrLn "hello world" haskell-src-exts-1.18.2/tests/examples/TupleSections.hs0000644000000000000000000000006212746233113021277 0ustar0000000000000000{-# LANGUAGE TupleSections #-} foo x = (1,,) x 3 haskell-src-exts-1.18.2/tests/examples/TupleSections.hs.exactprinter.golden0000644000000000000000000000000612746233113025253 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TupleSections.hs.parser.golden0000644000000000000000000001326512746233113024052 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/TupleSections.hs" 1 1 1 1 , SrcSpan "tests/examples/TupleSections.hs" 3 1 3 1 , SrcSpan "tests/examples/TupleSections.hs" 3 1 3 1 , SrcSpan "tests/examples/TupleSections.hs" 3 1 3 1 , SrcSpan "tests/examples/TupleSections.hs" 4 1 4 1 , SrcSpan "tests/examples/TupleSections.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/TupleSections.hs" 1 1 1 13 , SrcSpan "tests/examples/TupleSections.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 1 14 1 27 , srcInfoPoints = [] } "TupleSections" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 1 3 18 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 1 3 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 1 3 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 5 3 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 5 3 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 7 3 18 , srcInfoPoints = [ SrcSpan "tests/examples/TupleSections.hs" 3 7 3 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 9 3 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 9 3 16 , srcInfoPoints = [] } (TupleSection SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 9 3 14 , srcInfoPoints = [ SrcSpan "tests/examples/TupleSections.hs" 3 9 3 10 , SrcSpan "tests/examples/TupleSections.hs" 3 11 3 12 , SrcSpan "tests/examples/TupleSections.hs" 3 12 3 13 , SrcSpan "tests/examples/TupleSections.hs" 3 13 3 14 ] } Boxed [ Just (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 10 3 11 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 10 3 11 , srcInfoPoints = [] } 1 "1")) , Nothing , Nothing ]) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 15 3 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 15 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 15 3 16 , srcInfoPoints = [] } "x")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 17 3 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TupleSections.hs" 3 17 3 18 , srcInfoPoints = [] } 3 "3")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/TupleSections.hs.prettyparser.golden0000644000000000000000000000000612746233113025307 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TupleSections.hs.prettyprinter.golden0000644000000000000000000000006212746233113025500 0ustar0000000000000000{-# LANGUAGE TupleSections #-} foo x = (1, ,) x 3 haskell-src-exts-1.18.2/tests/examples/TypeEqualityParen.hs0000644000000000000000000000011312746233113022120 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} f :: ( Eq a, (a ~ Int) ) => a -> Int f _ = 3 haskell-src-exts-1.18.2/tests/examples/TypeEqualityParen.hs.exactprinter.golden0000644000000000000000000000000612746233113026077 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeEqualityParen.hs.parser.golden0000644000000000000000000002347112746233113024676 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/TypeEqualityParen.hs" 1 1 1 1 , SrcSpan "tests/examples/TypeEqualityParen.hs" 2 1 2 1 , SrcSpan "tests/examples/TypeEqualityParen.hs" 2 1 2 1 , SrcSpan "tests/examples/TypeEqualityParen.hs" 2 1 2 1 , SrcSpan "tests/examples/TypeEqualityParen.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeEqualityParen.hs" 4 1 4 1 , SrcSpan "tests/examples/TypeEqualityParen.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/TypeEqualityParen.hs" 1 1 1 13 , SrcSpan "tests/examples/TypeEqualityParen.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 1 2 37 , srcInfoPoints = [ SrcSpan "tests/examples/TypeEqualityParen.hs" 2 3 2 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 1 2 2 , srcInfoPoints = [] } "f" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 6 2 37 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 6 2 28 , srcInfoPoints = [ SrcSpan "tests/examples/TypeEqualityParen.hs" 2 6 2 7 , SrcSpan "tests/examples/TypeEqualityParen.hs" 2 12 2 13 , SrcSpan "tests/examples/TypeEqualityParen.hs" 2 24 2 25 , SrcSpan "tests/examples/TypeEqualityParen.hs" 2 26 2 28 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 8 2 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 8 2 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 8 2 10 , srcInfoPoints = [] } "Eq")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 11 2 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 11 2 12 , srcInfoPoints = [] } "a") ] , ParenA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 14 2 23 , srcInfoPoints = [ SrcSpan "tests/examples/TypeEqualityParen.hs" 2 14 2 15 , SrcSpan "tests/examples/TypeEqualityParen.hs" 2 22 2 23 ] } (EqualP SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 15 2 22 , srcInfoPoints = [ SrcSpan "tests/examples/TypeEqualityParen.hs" 2 17 2 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 15 2 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 15 2 16 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 19 2 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 19 2 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 19 2 22 , srcInfoPoints = [] } "Int")))) ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 29 2 37 , srcInfoPoints = [ SrcSpan "tests/examples/TypeEqualityParen.hs" 2 31 2 33 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 29 2 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 29 2 30 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 34 2 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 34 2 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 2 34 2 37 , srcInfoPoints = [] } "Int"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 3 1 3 8 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 3 1 3 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 3 1 3 2 , srcInfoPoints = [] } "f") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 3 3 3 4 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 3 5 3 8 , srcInfoPoints = [ SrcSpan "tests/examples/TypeEqualityParen.hs" 3 5 3 6 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 3 7 3 8 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeEqualityParen.hs" 3 7 3 8 , srcInfoPoints = [] } 3 "3"))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/TypeEqualityParen.hs.prettyparser.golden0000644000000000000000000000000612746233113026133 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeEqualityParen.hs.prettyprinter.golden0000644000000000000000000000011212746233113026320 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} f :: (Eq a, (a ~ Int)) => a -> Int f _ = 3 haskell-src-exts-1.18.2/tests/examples/TypeErrorMessage.hs0000644000000000000000000000004112746233113021733 0ustar0000000000000000newtype PoC = PoC (forall b . b) haskell-src-exts-1.18.2/tests/examples/TypeErrorMessage.hs.exactprinter.golden0000644000000000000000000000042212746233113025714 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/TypeErrorMessage.hs" 2 1) "At least one of ExplicitForAll or TypeOperators language extensions needs to be enabled. Please add: {-# LANGUAGE ExplicitForAll #-} or {-# LANGUAGE TypeOperators #-} language pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/TypeErrorMessage.hs.parser.golden0000644000000000000000000000042612746233113024504 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/TypeErrorMessage.hs" 2 1) "At least one of ExplicitForAll or TypeOperators language extensions needs to be enabled. Please add: {-# LANGUAGE ExplicitForAll #-} or {-# LANGUAGE TypeOperators #-} language pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/TypeErrorMessage.hs.prettyparser.golden0000644000000000000000000000042212746233113025750 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/TypeErrorMessage.hs" 2 1) "At least one of ExplicitForAll or TypeOperators language extensions needs to be enabled. Please add: {-# LANGUAGE ExplicitForAll #-} or {-# LANGUAGE TypeOperators #-} language pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/TypeErrorMessage.hs.prettyprinter.golden0000644000000000000000000000042212746233113026137 0ustar0000000000000000ParseFailed (SrcLoc "tests/examples/TypeErrorMessage.hs" 2 1) "At least one of ExplicitForAll or TypeOperators language extensions needs to be enabled. Please add: {-# LANGUAGE ExplicitForAll #-} or {-# LANGUAGE TypeOperators #-} language pragma at the top of your module." haskell-src-exts-1.18.2/tests/examples/TypeFunctions.hs0000644000000000000000000000017612746233113021316 0ustar0000000000000000{-# LANGUAGE TypeFamilies, KindSignatures #-} data Id = Id type family Rep (f :: * -> *) x :: * type instance Rep Id x = x haskell-src-exts-1.18.2/tests/examples/TypeFunctions.hs.exactprinter.golden0000644000000000000000000000000612746233113025264 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeFunctions.hs.parser.golden0000644000000000000000000002275312746233113024065 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/TypeFunctions.hs" 1 1 1 1 , SrcSpan "tests/examples/TypeFunctions.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeFunctions.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeFunctions.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeFunctions.hs" 5 1 5 1 , SrcSpan "tests/examples/TypeFunctions.hs" 7 1 7 1 , SrcSpan "tests/examples/TypeFunctions.hs" 8 1 8 1 , SrcSpan "tests/examples/TypeFunctions.hs" 8 1 8 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 1 1 1 46 , srcInfoPoints = [ SrcSpan "tests/examples/TypeFunctions.hs" 1 1 1 13 , SrcSpan "tests/examples/TypeFunctions.hs" 1 26 1 27 , SrcSpan "tests/examples/TypeFunctions.hs" 1 43 1 46 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 1 28 1 42 , srcInfoPoints = [] } "KindSignatures" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 3 1 3 13 , srcInfoPoints = [ SrcSpan "tests/examples/TypeFunctions.hs" 3 9 3 10 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 3 6 3 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 3 6 3 8 , srcInfoPoints = [] } "Id")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 3 11 3 13 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 3 11 3 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 3 11 3 13 , srcInfoPoints = [] } "Id") []) ] Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 1 5 32 , srcInfoPoints = [ SrcSpan "tests/examples/TypeFunctions.hs" 5 1 5 5 , SrcSpan "tests/examples/TypeFunctions.hs" 5 6 5 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 13 5 32 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 13 5 30 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 13 5 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 13 5 16 , srcInfoPoints = [] } "Rep")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 17 5 30 , srcInfoPoints = [ SrcSpan "tests/examples/TypeFunctions.hs" 5 17 5 18 , SrcSpan "tests/examples/TypeFunctions.hs" 5 20 5 22 , SrcSpan "tests/examples/TypeFunctions.hs" 5 29 5 30 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 18 5 19 , srcInfoPoints = [] } "f") (KindFn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 23 5 29 , srcInfoPoints = [ SrcSpan "tests/examples/TypeFunctions.hs" 5 25 5 27 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 23 5 24 , srcInfoPoints = [] }) (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 28 5 29 , srcInfoPoints = [] })))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 31 5 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 31 5 32 , srcInfoPoints = [] } "x"))) (Just (KindSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 33 5 37 , srcInfoPoints = [ SrcSpan "tests/examples/TypeFunctions.hs" 5 33 5 35 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 5 36 5 37 , srcInfoPoints = [] }))) Nothing , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 1 7 27 , srcInfoPoints = [ SrcSpan "tests/examples/TypeFunctions.hs" 7 1 7 5 , SrcSpan "tests/examples/TypeFunctions.hs" 7 6 7 14 , SrcSpan "tests/examples/TypeFunctions.hs" 7 24 7 25 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 15 7 23 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 15 7 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 15 7 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 15 7 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 15 7 18 , srcInfoPoints = [] } "Rep"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 19 7 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 19 7 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 19 7 21 , srcInfoPoints = [] } "Id")))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 22 7 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 22 7 23 , srcInfoPoints = [] } "x"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 26 7 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeFunctions.hs" 7 26 7 27 , srcInfoPoints = [] } "x")) ] , [] ) haskell-src-exts-1.18.2/tests/examples/TypeFunctions.hs.prettyparser.golden0000644000000000000000000000000612746233113025320 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeFunctions.hs.prettyprinter.golden0000644000000000000000000000017612746233113025517 0ustar0000000000000000{-# LANGUAGE TypeFamilies, KindSignatures #-} data Id = Id type family Rep (f :: * -> *) x :: * type instance Rep Id x = x haskell-src-exts-1.18.2/tests/examples/TypeInstances.hs0000644000000000000000000000017712746233113021276 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} class MapType v where type Key v :: * type instance Key v = TileKey v type Source v :: * haskell-src-exts-1.18.2/tests/examples/TypeInstances.hs.exactprinter.golden0000644000000000000000000000000612746233113025243 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeInstances.hs.parser.golden0000644000000000000000000002532712746233113024044 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 1 1 1 1 , SrcSpan "tests/examples/TypeInstances.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeInstances.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeInstances.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeInstances.hs" 8 1 8 1 , SrcSpan "tests/examples/TypeInstances.hs" 8 1 8 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 1 1 1 13 , SrcSpan "tests/examples/TypeInstances.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" ] ] [] [ ClassDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 3 1 7 21 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 3 1 3 6 , SrcSpan "tests/examples/TypeInstances.hs" 3 17 3 22 , SrcSpan "tests/examples/TypeInstances.hs" 4 3 4 3 , SrcSpan "tests/examples/TypeInstances.hs" 5 3 5 3 , SrcSpan "tests/examples/TypeInstances.hs" 7 3 7 3 , SrcSpan "tests/examples/TypeInstances.hs" 8 1 8 0 ] } Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 3 7 3 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 3 7 3 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 3 7 3 14 , srcInfoPoints = [] } "MapType")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 3 15 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 3 15 3 16 , srcInfoPoints = [] } "v"))) [] (Just [ ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 4 3 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 4 3 4 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 4 8 4 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 4 8 4 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 4 8 4 11 , srcInfoPoints = [] } "Key")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 4 12 4 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 4 12 4 13 , srcInfoPoints = [] } "v"))) (Just (KindSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 4 14 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 4 14 4 16 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 4 17 4 18 , srcInfoPoints = [] }))) Nothing , ClsTyDef SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 3 5 34 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 5 3 5 7 , SrcSpan "tests/examples/TypeInstances.hs" 5 8 5 16 ] } (TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 17 5 34 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 5 23 5 24 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 17 5 22 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 17 5 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 17 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 17 5 20 , srcInfoPoints = [] } "Key"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 21 5 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 21 5 22 , srcInfoPoints = [] } "v"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 25 5 34 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 25 5 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 25 5 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 25 5 32 , srcInfoPoints = [] } "TileKey"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 33 5 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 5 33 5 34 , srcInfoPoints = [] } "v")))) , ClsTyFam SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 7 3 7 21 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 7 3 7 7 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 7 8 7 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 7 8 7 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 7 8 7 14 , srcInfoPoints = [] } "Source")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 7 15 7 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 7 15 7 16 , srcInfoPoints = [] } "v"))) (Just (KindSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 7 17 7 21 , srcInfoPoints = [ SrcSpan "tests/examples/TypeInstances.hs" 7 17 7 19 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeInstances.hs" 7 20 7 21 , srcInfoPoints = [] }))) Nothing ]) ] , [] ) haskell-src-exts-1.18.2/tests/examples/TypeInstances.hs.prettyparser.golden0000644000000000000000000000000612746233113025277 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeInstances.hs.prettyprinter.golden0000644000000000000000000000020712746233113025471 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} class MapType v where type Key v :: * type Key v = TileKey v type Source v :: * haskell-src-exts-1.18.2/tests/examples/TypeListCons.hs0000644000000000000000000000023612746233113021101 0ustar0000000000000000{-# LANGUAGE DataKinds, TypeOperators #-} module TypeListCons where type List1 a = a ': '[] type List2 a b = a ': '[] type List3 a b c = a ': b ': c ': '[] haskell-src-exts-1.18.2/tests/examples/TypeListCons.hs.exactprinter.golden0000644000000000000000000000000612746233113025052 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeListCons.hs.parser.golden0000644000000000000000000005201312746233113023643 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 1 1 1 1 , SrcSpan "tests/examples/TypeListCons.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeListCons.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeListCons.hs" 5 1 5 1 , SrcSpan "tests/examples/TypeListCons.hs" 6 1 6 1 , SrcSpan "tests/examples/TypeListCons.hs" 7 1 7 1 , SrcSpan "tests/examples/TypeListCons.hs" 8 1 8 1 , SrcSpan "tests/examples/TypeListCons.hs" 8 1 8 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 3 1 3 26 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 3 1 3 7 , SrcSpan "tests/examples/TypeListCons.hs" 3 21 3 26 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 3 8 3 20 , srcInfoPoints = [] } "TypeListCons") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 1 1 1 42 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 1 1 1 13 , SrcSpan "tests/examples/TypeListCons.hs" 1 23 1 24 , SrcSpan "tests/examples/TypeListCons.hs" 1 39 1 42 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 1 14 1 23 , srcInfoPoints = [] } "DataKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 1 25 1 38 , srcInfoPoints = [] } "TypeOperators" ] ] [] [ TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 1 5 24 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 5 1 5 5 , SrcSpan "tests/examples/TypeListCons.hs" 5 14 5 15 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 6 5 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 6 5 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 6 5 11 , srcInfoPoints = [] } "List1")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 12 5 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 12 5 13 , srcInfoPoints = [] } "a"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 16 5 24 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 16 5 20 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 16 5 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 16 5 17 , srcInfoPoints = [] } "a")) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 18 5 20 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 5 18 5 19 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 18 5 20 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 5 18 5 19 ] } True (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 19 5 20 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 19 5 20 , srcInfoPoints = [] }))))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 21 5 24 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 5 21 5 22 , SrcSpan "tests/examples/TypeListCons.hs" 5 23 5 24 ] } (PromotedList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 5 21 5 24 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 5 21 5 22 , SrcSpan "tests/examples/TypeListCons.hs" 5 23 5 24 ] } True []))) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 1 6 26 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 6 1 6 5 , SrcSpan "tests/examples/TypeListCons.hs" 6 16 6 17 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 6 6 15 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 6 6 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 6 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 6 6 11 , srcInfoPoints = [] } "List2")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 12 6 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 12 6 13 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 14 6 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 14 6 15 , srcInfoPoints = [] } "b"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 18 6 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 18 6 22 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 18 6 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 18 6 19 , srcInfoPoints = [] } "a")) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 20 6 22 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 6 20 6 21 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 20 6 22 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 6 20 6 21 ] } True (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 21 6 22 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 21 6 22 , srcInfoPoints = [] }))))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 23 6 26 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 6 23 6 24 , SrcSpan "tests/examples/TypeListCons.hs" 6 25 6 26 ] } (PromotedList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 6 23 6 26 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 6 23 6 24 , SrcSpan "tests/examples/TypeListCons.hs" 6 25 6 26 ] } True []))) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 1 7 38 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 1 7 5 , SrcSpan "tests/examples/TypeListCons.hs" 7 18 7 19 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 6 7 17 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 6 7 15 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 6 7 13 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 6 7 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 6 7 11 , srcInfoPoints = [] } "List3")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 12 7 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 12 7 13 , srcInfoPoints = [] } "a"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 14 7 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 14 7 15 , srcInfoPoints = [] } "b"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 16 7 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 16 7 17 , srcInfoPoints = [] } "c"))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 20 7 38 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 20 7 34 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 20 7 31 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 20 7 29 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 20 7 26 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 20 7 24 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 20 7 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 20 7 21 , srcInfoPoints = [] } "a")) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 22 7 24 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 22 7 23 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 22 7 24 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 22 7 23 ] } True (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 23 7 24 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 23 7 24 , srcInfoPoints = [] }))))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 25 7 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 25 7 26 , srcInfoPoints = [] } "b"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 27 7 29 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 27 7 28 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 27 7 29 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 27 7 28 ] } True (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 28 7 29 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 28 7 29 , srcInfoPoints = [] }))))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 30 7 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 30 7 31 , srcInfoPoints = [] } "c"))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 32 7 34 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 32 7 33 ] } (PromotedCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 32 7 34 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 32 7 33 ] } True (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 33 7 34 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 33 7 34 , srcInfoPoints = [] }))))) (TyPromoted SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 35 7 38 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 35 7 36 , SrcSpan "tests/examples/TypeListCons.hs" 7 37 7 38 ] } (PromotedList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeListCons.hs" 7 35 7 38 , srcInfoPoints = [ SrcSpan "tests/examples/TypeListCons.hs" 7 35 7 36 , SrcSpan "tests/examples/TypeListCons.hs" 7 37 7 38 ] } True []))) ] , [] ) haskell-src-exts-1.18.2/tests/examples/TypeListCons.hs.prettyparser.golden0000644000000000000000000000000612746233113025106 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeListCons.hs.prettyprinter.golden0000644000000000000000000000023712746233113025303 0ustar0000000000000000{-# LANGUAGE DataKinds, TypeOperators #-} module TypeListCons where type List1 a = a ': '[] type List2 a b = a ': '[] type List3 a b c = a ': b ': c ': '[] haskell-src-exts-1.18.2/tests/examples/TypeOperatorAsVariable.hs0000644000000000000000000000010012746233113023056 0ustar0000000000000000{-# LANGUAGE TypeOperators #-} type T (~>) = () type Foo = () haskell-src-exts-1.18.2/tests/examples/TypeOperatorAsVariable.hs.exactprinter.golden0000644000000000000000000000000612746233113027041 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeOperatorAsVariable.hs.parser.golden0000644000000000000000000001455012746233113025636 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 1 1 1 1 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 1 5 1 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 6 1 6 1 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 1 1 1 13 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 1 14 1 27 , srcInfoPoints = [] } "TypeOperators" ] ] [] [ TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 1 3 17 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 1 3 5 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 13 3 14 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 6 3 12 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 6 3 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 6 3 7 , srcInfoPoints = [] } "T")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 8 3 12 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 8 3 9 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 9 3 11 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 11 3 12 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 9 3 11 , srcInfoPoints = [] } "~>"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 15 3 17 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 15 3 16 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 16 3 17 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 15 3 17 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 15 3 16 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 16 3 17 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 15 3 17 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 15 3 16 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 3 16 3 17 ] }))) , TypeDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 1 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 1 5 5 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 10 5 11 ] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 6 5 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 6 5 9 , srcInfoPoints = [] } "Foo")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 12 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 12 5 13 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 13 5 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 12 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 12 5 13 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 13 5 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 12 5 14 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 12 5 13 , SrcSpan "tests/examples/TypeOperatorAsVariable.hs" 5 13 5 14 ] }))) ] , [] ) haskell-src-exts-1.18.2/tests/examples/TypeOperatorAsVariable.hs.prettyparser.golden0000644000000000000000000000000612746233113027075 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeOperatorAsVariable.hs.prettyprinter.golden0000644000000000000000000000010012746233113027257 0ustar0000000000000000{-# LANGUAGE TypeOperators #-} type T (~>) = () type Foo = () haskell-src-exts-1.18.2/tests/examples/TypeOperatorsTest.hs0000644000000000000000000000016012746233113022155 0ustar0000000000000000{-# LANGUAGE TypeOperators, FlexibleContexts, FlexibleInstances #-} f :: ArrowXml (~>) => a ~> a f = undefined haskell-src-exts-1.18.2/tests/examples/TypeOperatorsTest.hs.exactprinter.golden0000644000000000000000000000000612746233113026132 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeOperatorsTest.hs.parser.golden0000644000000000000000000002137412746233113024731 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 1 1 1 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 1 3 1 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 1 4 1 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 5 1 5 1 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 1 1 68 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 1 1 13 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 27 1 28 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 45 1 46 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 65 1 68 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 14 1 27 , srcInfoPoints = [] } "TypeOperators" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 29 1 45 , srcInfoPoints = [] } "FlexibleContexts" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 1 47 1 64 , srcInfoPoints = [] } "FlexibleInstances" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 1 3 29 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 3 3 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 1 3 2 , srcInfoPoints = [] } "f" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 6 3 29 , srcInfoPoints = [] } Nothing (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 6 3 22 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 20 3 22 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 6 3 22 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 20 3 22 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 6 3 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 6 3 14 , srcInfoPoints = [] } "ArrowXml")) [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 15 3 19 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 15 3 16 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 16 3 18 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 18 3 19 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 15 3 19 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 15 3 16 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 16 3 18 , SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 18 3 19 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 16 3 18 , srcInfoPoints = [] } "~>")) ]))) (TyInfix SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 23 3 29 , srcInfoPoints = [] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 23 3 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 23 3 24 , srcInfoPoints = [] } "a")) (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 25 3 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 25 3 27 , srcInfoPoints = [] } "~>")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 28 3 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 3 28 3 29 , srcInfoPoints = [] } "a")))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 1 4 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 1 4 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 1 4 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 3 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 3 4 4 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 5 4 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 5 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TypeOperatorsTest.hs" 4 5 4 14 , srcInfoPoints = [] } "undefined")))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/TypeOperatorsTest.hs.prettyparser.golden0000644000000000000000000000000612746233113026166 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TypeOperatorsTest.hs.prettyprinter.golden0000644000000000000000000000016012746233113026356 0ustar0000000000000000{-# LANGUAGE TypeOperators, FlexibleContexts, FlexibleInstances #-} f :: ArrowXml (~>) => a ~> a f = undefined haskell-src-exts-1.18.2/tests/examples/TyQuasiQuote.hs0000644000000000000000000000012412746233113021112 0ustar0000000000000000{-# LANGUAGE QuasiQuotes, TemplateHaskell #-} f :: [qq| something in here |] f = () haskell-src-exts-1.18.2/tests/examples/TyQuasiQuote.hs.exactprinter.golden0000644000000000000000000000000612746233113025067 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TyQuasiQuote.hs.parser.golden0000644000000000000000000001003012746233113023651 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/TyQuasiQuote.hs" 1 1 1 1 , SrcSpan "tests/examples/TyQuasiQuote.hs" 2 1 2 1 , SrcSpan "tests/examples/TyQuasiQuote.hs" 2 1 2 1 , SrcSpan "tests/examples/TyQuasiQuote.hs" 2 1 2 1 , SrcSpan "tests/examples/TyQuasiQuote.hs" 3 1 3 1 , SrcSpan "tests/examples/TyQuasiQuote.hs" 4 1 4 1 , SrcSpan "tests/examples/TyQuasiQuote.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 1 1 1 46 , srcInfoPoints = [ SrcSpan "tests/examples/TyQuasiQuote.hs" 1 1 1 13 , SrcSpan "tests/examples/TyQuasiQuote.hs" 1 25 1 26 , SrcSpan "tests/examples/TyQuasiQuote.hs" 1 43 1 46 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 1 14 1 25 , srcInfoPoints = [] } "QuasiQuotes" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 1 27 1 42 , srcInfoPoints = [] } "TemplateHaskell" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 2 1 2 31 , srcInfoPoints = [ SrcSpan "tests/examples/TyQuasiQuote.hs" 2 3 2 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 2 1 2 2 , srcInfoPoints = [] } "f" ] (TyQuasiQuote SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 2 6 2 31 , srcInfoPoints = [] } "qq" " something in here ") , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 3 1 3 7 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 3 1 3 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 3 1 3 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 3 3 3 7 , srcInfoPoints = [ SrcSpan "tests/examples/TyQuasiQuote.hs" 3 3 3 4 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 3 5 3 7 , srcInfoPoints = [ SrcSpan "tests/examples/TyQuasiQuote.hs" 3 5 3 6 , SrcSpan "tests/examples/TyQuasiQuote.hs" 3 6 3 7 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 3 5 3 7 , srcInfoPoints = [ SrcSpan "tests/examples/TyQuasiQuote.hs" 3 5 3 6 , SrcSpan "tests/examples/TyQuasiQuote.hs" 3 6 3 7 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TyQuasiQuote.hs" 3 5 3 7 , srcInfoPoints = [ SrcSpan "tests/examples/TyQuasiQuote.hs" 3 5 3 6 , SrcSpan "tests/examples/TyQuasiQuote.hs" 3 6 3 7 ] })))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/TyQuasiQuote.hs.prettyparser.golden0000644000000000000000000000000612746233113025123 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TyQuasiQuote.hs.prettyprinter.golden0000644000000000000000000000012512746233113025314 0ustar0000000000000000{-# LANGUAGE QuasiQuotes, TemplateHaskell #-} f :: [qq| something in here |] f = () haskell-src-exts-1.18.2/tests/examples/TySplice.hs0000644000000000000000000000010612746233113020231 0ustar0000000000000000{-# LANGUAGE TemplateHaskell #-} [| f :: $ty |] [| f :: $(fun ty) |] haskell-src-exts-1.18.2/tests/examples/TySplice.hs.exactprinter.golden0000644000000000000000000000000612746233113024206 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TySplice.hs.parser.golden0000644000000000000000000002046112746233113023001 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 1 1 1 1 , SrcSpan "tests/examples/TySplice.hs" 3 1 3 1 , SrcSpan "tests/examples/TySplice.hs" 3 1 3 1 , SrcSpan "tests/examples/TySplice.hs" 3 1 3 1 , SrcSpan "tests/examples/TySplice.hs" 4 1 4 1 , SrcSpan "tests/examples/TySplice.hs" 5 1 5 1 , SrcSpan "tests/examples/TySplice.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 1 1 1 13 , SrcSpan "tests/examples/TySplice.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 1 14 1 29 , srcInfoPoints = [] } "TemplateHaskell" ] ] [] [ SpliceDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 1 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 3 1 3 3 , SrcSpan "tests/examples/TySplice.hs" 3 13 3 15 ] } (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 1 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 3 1 3 3 , SrcSpan "tests/examples/TySplice.hs" 3 13 3 15 ] } (ExpBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 1 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 3 1 3 3 , SrcSpan "tests/examples/TySplice.hs" 3 13 3 15 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 4 3 12 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 3 6 3 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 4 3 5 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 4 3 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 4 3 5 , srcInfoPoints = [] } "f"))) (TySplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 9 3 12 , srcInfoPoints = [] } (IdSplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 3 9 3 12 , srcInfoPoints = [] } "ty"))))) , SpliceDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 4 1 4 3 , SrcSpan "tests/examples/TySplice.hs" 4 19 4 21 ] } (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 4 1 4 3 , SrcSpan "tests/examples/TySplice.hs" 4 19 4 21 ] } (ExpBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 1 4 21 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 4 1 4 3 , SrcSpan "tests/examples/TySplice.hs" 4 19 4 21 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 4 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 4 6 4 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 4 4 5 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 4 4 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 4 4 5 , srcInfoPoints = [] } "f"))) (TySplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 9 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 4 9 4 11 , SrcSpan "tests/examples/TySplice.hs" 4 17 4 18 ] } (ParenSplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 9 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice.hs" 4 9 4 11 , SrcSpan "tests/examples/TySplice.hs" 4 17 4 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 11 4 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 11 4 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 11 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 11 4 14 , srcInfoPoints = [] } "fun"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 15 4 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 15 4 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice.hs" 4 15 4 17 , srcInfoPoints = [] } "ty"))))))))) ] , [] ) haskell-src-exts-1.18.2/tests/examples/TySplice.hs.prettyparser.golden0000644000000000000000000000000612746233113024242 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TySplice.hs.prettyprinter.golden0000644000000000000000000000011112746233113024426 0ustar0000000000000000{-# LANGUAGE TemplateHaskell #-} [| f :: $ty |] [| f :: $( fun ty ) |] haskell-src-exts-1.18.2/tests/examples/TySplice2.hs0000644000000000000000000000007512746233113020320 0ustar0000000000000000{-# LANGUAGE TemplateHaskell #-} t1 :: $( [t|Int|] ) t1 = 1 haskell-src-exts-1.18.2/tests/examples/TySplice2.hs.exactprinter.golden0000644000000000000000000000000612746233113024270 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TySplice2.hs.parser.golden0000644000000000000000000001171012746233113023060 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice2.hs" 1 1 1 1 , SrcSpan "tests/examples/TySplice2.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice2.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice2.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice2.hs" 3 1 3 1 , SrcSpan "tests/examples/TySplice2.hs" 5 1 5 1 , SrcSpan "tests/examples/TySplice2.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice2.hs" 1 1 1 13 , SrcSpan "tests/examples/TySplice2.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 1 14 1 29 , srcInfoPoints = [] } "TemplateHaskell" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 1 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice2.hs" 2 4 2 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 1 2 3 , srcInfoPoints = [] } "t1" ] (TySplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 7 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice2.hs" 2 7 2 9 , SrcSpan "tests/examples/TySplice2.hs" 2 19 2 20 ] } (ParenSplice SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 7 2 20 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice2.hs" 2 7 2 9 , SrcSpan "tests/examples/TySplice2.hs" 2 19 2 20 ] } (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 10 2 18 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice2.hs" 2 10 2 13 , SrcSpan "tests/examples/TySplice2.hs" 2 16 2 18 ] } (TypeBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 10 2 18 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice2.hs" 2 10 2 13 , SrcSpan "tests/examples/TySplice2.hs" 2 16 2 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 13 2 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 13 2 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 2 13 2 16 , srcInfoPoints = [] } "Int"))))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 3 1 3 7 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 3 1 3 3 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 3 1 3 3 , srcInfoPoints = [] } "t1")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 3 4 3 7 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice2.hs" 3 4 3 5 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 3 6 3 7 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice2.hs" 3 6 3 7 , srcInfoPoints = [] } 1 "1"))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/TySplice2.hs.prettyparser.golden0000644000000000000000000000000612746233113024324 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TySplice2.hs.prettyprinter.golden0000644000000000000000000000007712746233113024523 0ustar0000000000000000{-# LANGUAGE TemplateHaskell #-} t1 :: $( [t| Int |] ) t1 = 1 haskell-src-exts-1.18.2/tests/examples/TySplice3.hs0000644000000000000000000000005112746233113020313 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} [qq| abc |] haskell-src-exts-1.18.2/tests/examples/TySplice3.hs.exactprinter.golden0000644000000000000000000000000612746233113024271 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TySplice3.hs.parser.golden0000644000000000000000000000271012746233113023061 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice3.hs" 1 1 3 1 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice3.hs" 1 1 1 1 , SrcSpan "tests/examples/TySplice3.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice3.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice3.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice3.hs" 3 1 3 1 , SrcSpan "tests/examples/TySplice3.hs" 3 1 3 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice3.hs" 1 1 1 29 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice3.hs" 1 1 1 13 , SrcSpan "tests/examples/TySplice3.hs" 1 26 1 29 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice3.hs" 1 14 1 25 , srcInfoPoints = [] } "QuasiQuotes" ] ] [] [ SpliceDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice3.hs" 2 1 2 12 , srcInfoPoints = [] } (QuasiQuote SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice3.hs" 2 1 2 12 , srcInfoPoints = [] } "qq" " abc ") ] , [] ) haskell-src-exts-1.18.2/tests/examples/TySplice3.hs.prettyparser.golden0000644000000000000000000000000612746233113024325 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TySplice3.hs.prettyprinter.golden0000644000000000000000000000005212746233113024515 0ustar0000000000000000{-# LANGUAGE QuasiQuotes #-} [qq| abc |] haskell-src-exts-1.18.2/tests/examples/TySplice4.hs0000644000000000000000000000015712746233113020323 0ustar0000000000000000{-# LANGUAGE TemplateHaskell #-} x = [d| f :: a -> Int f x = 1 |] y = [d| f2 :: a -> Int; f2 x = 1 |] haskell-src-exts-1.18.2/tests/examples/TySplice4.hs.exactprinter.golden0000644000000000000000000000000612746233113024272 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TySplice4.hs.parser.golden0000644000000000000000000003373412746233113023074 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 1 1 1 1 , SrcSpan "tests/examples/TySplice4.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice4.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice4.hs" 2 1 2 1 , SrcSpan "tests/examples/TySplice4.hs" 5 1 5 1 , SrcSpan "tests/examples/TySplice4.hs" 6 1 6 1 , SrcSpan "tests/examples/TySplice4.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 1 1 1 33 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 1 1 1 13 , SrcSpan "tests/examples/TySplice4.hs" 1 30 1 33 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 1 14 1 29 , srcInfoPoints = [] } "TemplateHaskell" ] ] [] [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 1 3 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 1 2 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 1 2 2 , srcInfoPoints = [] } "x")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 3 3 19 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 2 3 2 4 ] } (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 5 3 19 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 2 5 2 8 , SrcSpan "tests/examples/TySplice4.hs" 3 9 3 9 , SrcSpan "tests/examples/TySplice4.hs" 3 17 3 19 ] } (DeclBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 5 3 19 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 2 9 2 9 , SrcSpan "tests/examples/TySplice4.hs" 3 9 3 9 , SrcSpan "tests/examples/TySplice4.hs" 3 17 3 17 , SrcSpan "tests/examples/TySplice4.hs" 3 17 3 19 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 9 2 22 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 2 11 2 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 9 2 10 , srcInfoPoints = [] } "f" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 14 2 22 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 2 16 2 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 14 2 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 14 2 15 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 19 2 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 19 2 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 2 19 2 22 , srcInfoPoints = [] } "Int")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 3 9 3 16 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 3 9 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 3 9 3 10 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 3 11 3 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 3 11 3 12 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 3 13 3 16 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 3 13 3 14 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 3 15 3 16 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 3 15 3 16 , srcInfoPoints = [] } 1 "1"))) Nothing ] ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 1 5 36 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 1 5 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 1 5 2 , srcInfoPoints = [] } "y")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 3 5 36 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 5 3 5 4 ] } (BracketExp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 5 5 36 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 5 5 5 8 , SrcSpan "tests/examples/TySplice4.hs" 5 23 5 24 , SrcSpan "tests/examples/TySplice4.hs" 5 34 5 36 ] } (DeclBracket SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 5 5 36 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 5 9 5 9 , SrcSpan "tests/examples/TySplice4.hs" 5 23 5 24 , SrcSpan "tests/examples/TySplice4.hs" 5 34 5 34 , SrcSpan "tests/examples/TySplice4.hs" 5 34 5 36 ] } [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 9 5 23 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 5 12 5 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 9 5 11 , srcInfoPoints = [] } "f2" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 15 5 23 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 5 17 5 19 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 15 5 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 15 5 16 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 20 5 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 20 5 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 20 5 23 , srcInfoPoints = [] } "Int")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 25 5 33 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 25 5 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 25 5 27 , srcInfoPoints = [] } "f2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 28 5 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 28 5 29 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 30 5 33 , srcInfoPoints = [ SrcSpan "tests/examples/TySplice4.hs" 5 30 5 31 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 32 5 33 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/TySplice4.hs" 5 32 5 33 , srcInfoPoints = [] } 1 "1"))) Nothing ] ]))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/TySplice4.hs.prettyparser.golden0000644000000000000000000000000612746233113024326 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/TySplice4.hs.prettyprinter.golden0000644000000000000000000000021312746233113024515 0ustar0000000000000000{-# LANGUAGE TemplateHaskell #-} x = [d| f :: a -> Int f x = 1 |] y = [d| f2 :: a -> Int f2 x = 1 |] haskell-src-exts-1.18.2/tests/examples/UnboxedSingleton.hs0000644000000000000000000000012012746233113021760 0ustar0000000000000000{-# LANGUAGE UnboxedTuples #-} -- See e.g. GHC.Prim.indexArray# foo a = (# a #) haskell-src-exts-1.18.2/tests/examples/UnboxedSingleton.hs.exactprinter.golden0000644000000000000000000000000612746233113025741 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnboxedSingleton.hs.parser.golden0000644000000000000000000001017212746233113024532 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedSingleton.hs" 1 1 1 1 , SrcSpan "tests/examples/UnboxedSingleton.hs" 3 1 3 1 , SrcSpan "tests/examples/UnboxedSingleton.hs" 3 1 3 1 , SrcSpan "tests/examples/UnboxedSingleton.hs" 3 1 3 1 , SrcSpan "tests/examples/UnboxedSingleton.hs" 4 1 4 1 , SrcSpan "tests/examples/UnboxedSingleton.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedSingleton.hs" 1 1 1 13 , SrcSpan "tests/examples/UnboxedSingleton.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 1 14 1 27 , srcInfoPoints = [] } "UnboxedTuples" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 1 3 16 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 1 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 1 3 4 , srcInfoPoints = [] } "foo") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 5 3 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 5 3 6 , srcInfoPoints = [] } "a") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 7 3 16 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedSingleton.hs" 3 7 3 8 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 9 3 16 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedSingleton.hs" 3 9 3 11 , SrcSpan "tests/examples/UnboxedSingleton.hs" 3 14 3 16 ] } Unboxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 12 3 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 12 3 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedSingleton.hs" 3 12 3 13 , srcInfoPoints = [] } "a")) ])) Nothing ] ] , [ Comment False (SrcSpan "tests/examples/UnboxedSingleton.hs" 2 1 2 33) " See e.g. GHC.Prim.indexArray#" ] ) haskell-src-exts-1.18.2/tests/examples/UnboxedSingleton.hs.prettyparser.golden0000644000000000000000000000000612746233113025775 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnboxedSingleton.hs.prettyprinter.golden0000644000000000000000000000005712746233113026172 0ustar0000000000000000{-# LANGUAGE UnboxedTuples #-} foo a = (# a #) haskell-src-exts-1.18.2/tests/examples/UnboxedTuples.hs0000644000000000000000000000017512746233113021304 0ustar0000000000000000{-# LANGUAGE UnboxedTuples #-} foo :: (a, b) -> (# b , a #) foo (a, b) = case (# b, a #) of (# b, a #) -> (# , #) b a haskell-src-exts-1.18.2/tests/examples/UnboxedTuples.hs.exactprinter.golden0000644000000000000000000000000612746233113025253 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnboxedTuples.hs.parser.golden0000644000000000000000000004215512746233113024052 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 1 1 1 1 , SrcSpan "tests/examples/UnboxedTuples.hs" 3 1 3 1 , SrcSpan "tests/examples/UnboxedTuples.hs" 3 1 3 1 , SrcSpan "tests/examples/UnboxedTuples.hs" 3 1 3 1 , SrcSpan "tests/examples/UnboxedTuples.hs" 4 1 4 1 , SrcSpan "tests/examples/UnboxedTuples.hs" 7 1 7 1 , SrcSpan "tests/examples/UnboxedTuples.hs" 7 1 7 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 1 1 1 13 , SrcSpan "tests/examples/UnboxedTuples.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 1 14 1 27 , srcInfoPoints = [] } "UnboxedTuples" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 1 3 29 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 3 5 3 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 1 3 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 8 3 29 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 3 15 3 17 ] } (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 8 3 14 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 3 8 3 9 , SrcSpan "tests/examples/UnboxedTuples.hs" 3 10 3 11 , SrcSpan "tests/examples/UnboxedTuples.hs" 3 13 3 14 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 9 3 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 9 3 10 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 12 3 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 12 3 13 , srcInfoPoints = [] } "b") ]) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 18 3 29 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 3 18 3 20 , SrcSpan "tests/examples/UnboxedTuples.hs" 3 23 3 24 , SrcSpan "tests/examples/UnboxedTuples.hs" 3 27 3 29 ] } Unboxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 21 3 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 21 3 22 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 25 3 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 3 25 3 26 , srcInfoPoints = [] } "a") ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 1 6 30 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 1 6 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 1 4 4 , srcInfoPoints = [] } "foo") [ PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 5 4 11 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 4 5 4 6 , SrcSpan "tests/examples/UnboxedTuples.hs" 4 7 4 8 , SrcSpan "tests/examples/UnboxedTuples.hs" 4 10 4 11 ] } Boxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 6 4 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 6 4 7 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 9 4 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 9 4 10 , srcInfoPoints = [] } "b") ] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 4 12 6 30 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 4 12 4 13 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 5 3 6 30 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 5 3 5 7 , SrcSpan "tests/examples/UnboxedTuples.hs" 5 19 5 21 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 5 6 5 , SrcSpan "tests/examples/UnboxedTuples.hs" 7 1 7 0 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 5 8 5 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 5 8 5 10 , SrcSpan "tests/examples/UnboxedTuples.hs" 5 12 5 13 , SrcSpan "tests/examples/UnboxedTuples.hs" 5 16 5 18 ] } Unboxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 5 11 5 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 5 11 5 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 5 11 5 12 , srcInfoPoints = [] } "b")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 5 14 5 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 5 14 5 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 5 14 5 15 , srcInfoPoints = [] } "a")) ]) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 5 6 30 , srcInfoPoints = [] } (PTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 5 6 15 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 6 5 6 7 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 9 6 10 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 13 6 15 ] } Unboxed [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 8 6 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 8 6 9 , srcInfoPoints = [] } "b") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 11 6 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 11 6 12 , srcInfoPoints = [] } "a") ]) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 16 6 30 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 6 16 6 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 19 6 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 19 6 28 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 19 6 26 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 6 19 6 21 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 22 6 23 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 24 6 26 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 19 6 26 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 6 19 6 21 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 22 6 23 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 24 6 26 ] } (TupleCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 19 6 26 , srcInfoPoints = [ SrcSpan "tests/examples/UnboxedTuples.hs" 6 19 6 21 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 22 6 23 , SrcSpan "tests/examples/UnboxedTuples.hs" 6 24 6 26 ] } Unboxed 2))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 27 6 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 27 6 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 27 6 28 , srcInfoPoints = [] } "b")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 29 6 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 29 6 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnboxedTuples.hs" 6 29 6 30 , srcInfoPoints = [] } "a"))))) Nothing ])) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/UnboxedTuples.hs.prettyparser.golden0000644000000000000000000000000612746233113025307 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnboxedTuples.hs.prettyprinter.golden0000644000000000000000000000020012746233113025472 0ustar0000000000000000{-# LANGUAGE UnboxedTuples #-} foo :: (a, b) -> (# b, a #) foo (a, b) = case (# b, a #) of (# b, a #) -> (# , #) b a haskell-src-exts-1.18.2/tests/examples/Unicode.hs0000644000000000000000000000514412746233113020072 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} module Main where import System.Environment main :: IO () main = do as ← getArgs print $ as print $ test 0 print $ test2 0 print $ testRewrite 0 print $ testRewriteReverse 0 print $ testRewrite2 0 print $ testRewriteReverse2 0 test :: a → Bool test x = pi where f = replicate 2000 x i = repeat x pf = f |> 300 pi = i |> 300 test2 :: a → (Bool,Bool) test2 x = (pf,pi) where f = replicate 2000 x i = repeat x pf = f |> 300 pi = i |> 300 testRewrite :: a → Bool testRewrite x = pi where f = replicate 2000 x i = repeat x lf = length f li = length i pf = lf > 300 pi = li > 300 testRewriteReverse :: a → Bool testRewriteReverse x = pi where f = replicate 2000 x i = repeat x lf = length f li = length i pf = 300 ≤ lf pi = 300 ≤ li testRewrite2 :: a → (Bool,Bool) testRewrite2 x = (length i > 300,300 > length i) where -- f = replicate 2000 x i = repeat x -- lf = length f -- li = length i -- pf = lf > 300 -- pi = li > 300 testRewriteReverse2 :: a → (Bool,Bool) testRewriteReverse2 x = (2000 < length i,length i > 20) where f = replicate 2000 x i = repeat x lf = length f li = length i pf = 2000 == lf pi = lf ≥ li lengthOP :: (Num a, Ord a) ⇒ Bool → (a → a → Bool) → [b] → a → Bool lengthOP v (⊜) [] n = 0 ⊜ n lengthOP v (⊜) xxs n = co xxs 0 where co (_:xs) c | n > c = co xs (c+1) | otherwise = v co [] c = c ⊜ n (≣) = (==) (≤) = (<=) (≥) = (>=) (|≣) = lengthOP False (≣) (|<) = lengthOP False (<) (|≤) = lengthOP False (≤) (|>) = lengthOP True (>) (|≥) = lengthOP True (≥) (|=) = lengthOP False (==) (|==) = lengthOP False (==) (|<=) = lengthOP False (<=) (|>=) = lengthOP False (>=) -- ≣≤≥ (≣|) = flip (|≣) (<|) = flip (|≥) (≤|) = flip (|>) (>|) = flip (|≤) (≥|) = flip (|<) {-# RULES -- length "xs |≣ n" forall xs n. (length xs) == n = xs |≣ n "xs |< n" forall xs n. (length xs) < n = xs |< n "xs |≤ n" forall xs n. (length xs) <= n = xs |≤ n "xs |> n" forall xs n. (length xs) > n = xs |> n "xs |≥ n" forall xs n. (length xs) >= n = xs |≥ n "n ≣| xs" forall xs n. n == (length xs) = xs |≣ n "n <| xs" forall xs n. n < (length xs) = xs |≥ n "n ≤| xs" forall xs n. n <= (length xs) = xs |> n "n >| xs" forall xs n. n > (length xs) = xs |≤ n "n ≥| xs" forall xs n. n >= (length xs) = xs |< n #-} haskell-src-exts-1.18.2/tests/examples/Unicode.hs.exactprinter.golden0000644000000000000000000000477712746233113024063 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} module Main where import System.Environment main :: IO () main = do as <-getArgs print $ as print $ test 0 print $ test2 0 print $ testRewrite 0 print $ testRewriteReverse 0 print $ testRewrite2 0 print $ testRewriteReverse2 0 test :: a ->Bool test x = pi where f = replicate 2000 x i = repeat x pf = f |> 300 pi = i |> 300 test2 :: a ->(Bool,Bool) test2 x = (pf,pi) where f = replicate 2000 x i = repeat x pf = f |> 300 pi = i |> 300 testRewrite :: a ->Bool testRewrite x = pi where f = replicate 2000 x i = repeat x lf = length f li = length i pf = lf > 300 pi = li > 300 testRewriteReverse :: a ->Bool testRewriteReverse x = pi where f = replicate 2000 x i = repeat x lf = length f li = length i pf = 300 d lf pi = 300 d li testRewrite2 :: a ->(Bool,Bool) testRewrite2 x = (length i > 300,300 > length i) where -- f = replicate 2000 x i = repeat x -- lf = length f -- li = length i -- pf = lf > 300 -- pi = li > 300 testRewriteReverse2 :: a ->(Bool,Bool) testRewriteReverse2 x = (2000 < length i,length i > 20) where f = replicate 2000 x i = repeat x lf = length f li = length i pf = 2000 == lf pi = lf e li lengthOP :: (Num a, Ord a) =>Bool ->(a ->a ->Bool) ->[b] ->a ->Bool lengthOP v () [] n = 0 n lengthOP v () xxs n = co xxs 0 where co (_:xs) c | n > c = co xs (c+1) | otherwise = v co [] c = c n (c) = (==) (d) = (<=) (e) = (>=) (|c) = lengthOP False (c) (|<) = lengthOP False (<) (|d) = lengthOP False (d) (|>) = lengthOP True (>) (|e) = lengthOP True (e) (|=) = lengthOP False (==) (|==) = lengthOP False (==) (|<=) = lengthOP False (<=) (|>=) = lengthOP False (>=) -- cde (c|) = flip (|c) (<|) = flip (|e) (d|) = flip (|>) (>|) = flip (|d) (e|) = flip (|<) {-# RULES -- length "xs |\8803 n"forallxsn. (length xs) == n = xs |c n "xs |< n" forall xs n. (length xs) < n = xs |< n "xs |\8804 n"forallxsn. (length xs) <= n = xs |d n "xs |> n" forall xs n. (length xs) > n = xs |> n "xs |\8805 n"forallxsn. (length xs) >= n = xs |e n "n \8803| xs"forallxsn. n == (length xs) = xs |c n "n <| xs" forall xs n. n < (length xs) = xs |e n "n \8804| xs"forallxsn. n <= (length xs) = xs |> n "n >| xs" forall xs n. n > (length xs) = xs |d n "n \8805| xs"forallxsn. n >= (length xs) = xs |< n #-} haskell-src-exts-1.18.2/tests/examples/Unicode.hs.parser.golden0000644000000000000000000132523312746233113022641 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 1 1 119 1 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 1 1 1 1 , SrcSpan "tests/examples/Unicode.hs" 2 1 2 1 , SrcSpan "tests/examples/Unicode.hs" 2 1 2 1 , SrcSpan "tests/examples/Unicode.hs" 4 1 4 1 , SrcSpan "tests/examples/Unicode.hs" 6 1 6 1 , SrcSpan "tests/examples/Unicode.hs" 7 1 7 1 , SrcSpan "tests/examples/Unicode.hs" 17 1 17 1 , SrcSpan "tests/examples/Unicode.hs" 18 1 18 1 , SrcSpan "tests/examples/Unicode.hs" 25 1 25 1 , SrcSpan "tests/examples/Unicode.hs" 26 1 26 1 , SrcSpan "tests/examples/Unicode.hs" 33 1 33 1 , SrcSpan "tests/examples/Unicode.hs" 34 1 34 1 , SrcSpan "tests/examples/Unicode.hs" 43 1 43 1 , SrcSpan "tests/examples/Unicode.hs" 44 1 44 1 , SrcSpan "tests/examples/Unicode.hs" 53 1 53 1 , SrcSpan "tests/examples/Unicode.hs" 54 1 54 1 , SrcSpan "tests/examples/Unicode.hs" 63 1 63 1 , SrcSpan "tests/examples/Unicode.hs" 64 1 64 1 , SrcSpan "tests/examples/Unicode.hs" 74 1 74 1 , SrcSpan "tests/examples/Unicode.hs" 75 1 75 1 , SrcSpan "tests/examples/Unicode.hs" 76 1 76 1 , SrcSpan "tests/examples/Unicode.hs" 82 1 82 1 , SrcSpan "tests/examples/Unicode.hs" 83 1 83 1 , SrcSpan "tests/examples/Unicode.hs" 84 1 84 1 , SrcSpan "tests/examples/Unicode.hs" 86 1 86 1 , SrcSpan "tests/examples/Unicode.hs" 87 1 87 1 , SrcSpan "tests/examples/Unicode.hs" 88 1 88 1 , SrcSpan "tests/examples/Unicode.hs" 89 1 89 1 , SrcSpan "tests/examples/Unicode.hs" 90 1 90 1 , SrcSpan "tests/examples/Unicode.hs" 92 1 92 1 , SrcSpan "tests/examples/Unicode.hs" 93 1 93 1 , SrcSpan "tests/examples/Unicode.hs" 94 1 94 1 , SrcSpan "tests/examples/Unicode.hs" 95 1 95 1 , SrcSpan "tests/examples/Unicode.hs" 99 1 99 1 , SrcSpan "tests/examples/Unicode.hs" 100 1 100 1 , SrcSpan "tests/examples/Unicode.hs" 101 1 101 1 , SrcSpan "tests/examples/Unicode.hs" 102 1 102 1 , SrcSpan "tests/examples/Unicode.hs" 103 1 103 1 , SrcSpan "tests/examples/Unicode.hs" 105 1 105 1 , SrcSpan "tests/examples/Unicode.hs" 119 1 119 1 , SrcSpan "tests/examples/Unicode.hs" 119 1 119 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 2 1 2 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 2 1 2 7 , SrcSpan "tests/examples/Unicode.hs" 2 13 2 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 2 8 2 12 , srcInfoPoints = [] } "Main") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 1 1 1 13 , SrcSpan "tests/examples/Unicode.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 1 14 1 27 , srcInfoPoints = [] } "UnicodeSyntax" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 4 1 4 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 4 8 4 26 , srcInfoPoints = [] } "System.Environment" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 1 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 6 6 6 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 1 6 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 9 6 14 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 9 6 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 9 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 9 6 11 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 6 12 6 13 , SrcSpan "tests/examples/Unicode.hs" 6 13 6 14 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 6 12 6 13 , SrcSpan "tests/examples/Unicode.hs" 6 13 6 14 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 6 12 6 14 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 6 12 6 13 , SrcSpan "tests/examples/Unicode.hs" 6 13 6 14 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 7 1 15 32 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 7 1 7 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 7 1 7 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 7 6 15 32 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 7 6 7 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 7 8 15 32 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 7 8 7 10 , SrcSpan "tests/examples/Unicode.hs" 8 3 8 3 , SrcSpan "tests/examples/Unicode.hs" 9 3 9 3 , SrcSpan "tests/examples/Unicode.hs" 10 3 10 3 , SrcSpan "tests/examples/Unicode.hs" 11 3 11 3 , SrcSpan "tests/examples/Unicode.hs" 12 3 12 3 , SrcSpan "tests/examples/Unicode.hs" 13 3 13 3 , SrcSpan "tests/examples/Unicode.hs" 14 3 14 3 , SrcSpan "tests/examples/Unicode.hs" 15 3 15 3 , SrcSpan "tests/examples/Unicode.hs" 17 1 17 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 8 3 8 15 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 8 6 8 7 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 8 3 8 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 8 3 8 5 , srcInfoPoints = [] } "as")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 8 8 8 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 8 8 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 8 8 8 15 , srcInfoPoints = [] } "getArgs"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 3 9 13 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 3 9 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 3 9 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 3 9 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 3 9 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 9 9 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 9 9 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 9 9 10 , srcInfoPoints = [] } "$"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 11 9 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 11 9 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 9 11 9 13 , srcInfoPoints = [] } "as")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 3 10 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 3 10 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 3 10 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 3 10 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 3 10 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 9 10 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 9 10 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 9 10 10 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 11 10 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 11 10 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 11 10 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 11 10 15 , srcInfoPoints = [] } "test"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 31 10 32 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 10 31 10 32 , srcInfoPoints = [] } 0 "0")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 3 11 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 3 11 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 3 11 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 3 11 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 3 11 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 9 11 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 9 11 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 9 11 10 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 11 11 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 11 11 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 11 11 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 11 11 16 , srcInfoPoints = [] } "test2"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 31 11 32 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 11 31 11 32 , srcInfoPoints = [] } 0 "0")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 3 12 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 3 12 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 3 12 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 3 12 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 3 12 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 9 12 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 9 12 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 9 12 10 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 11 12 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 11 12 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 11 12 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 11 12 22 , srcInfoPoints = [] } "testRewrite"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 31 12 32 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 12 31 12 32 , srcInfoPoints = [] } 0 "0")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 3 13 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 3 13 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 3 13 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 3 13 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 3 13 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 9 13 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 9 13 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 9 13 10 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 11 13 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 11 13 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 11 13 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 11 13 29 , srcInfoPoints = [] } "testRewriteReverse"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 31 13 32 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 13 31 13 32 , srcInfoPoints = [] } 0 "0")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 3 14 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 3 14 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 3 14 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 3 14 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 3 14 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 9 14 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 9 14 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 9 14 10 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 11 14 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 11 14 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 11 14 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 11 14 23 , srcInfoPoints = [] } "testRewrite2"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 31 14 32 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 14 31 14 32 , srcInfoPoints = [] } 0 "0")))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 3 15 32 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 3 15 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 3 15 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 3 15 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 3 15 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 9 15 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 9 15 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 9 15 10 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 11 15 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 11 15 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 11 15 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 11 15 30 , srcInfoPoints = [] } "testRewriteReverse2"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 31 15 32 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 15 31 15 32 , srcInfoPoints = [] } 0 "0")))) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 17 1 17 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 17 6 17 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 17 1 17 5 , srcInfoPoints = [] } "test" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 17 9 17 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 17 11 17 12 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 17 9 17 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 17 9 17 10 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 17 13 17 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 17 13 17 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 17 13 17 17 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 1 23 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 19 3 19 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 1 23 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 19 3 19 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 1 18 5 , srcInfoPoints = [] } "test") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 6 18 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 6 18 7 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 8 18 12 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 18 8 18 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 10 18 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 10 18 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 18 10 18 12 , srcInfoPoints = [] } "pi")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 5 23 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 20 5 20 5 , SrcSpan "tests/examples/Unicode.hs" 21 5 21 5 , SrcSpan "tests/examples/Unicode.hs" 22 5 22 5 , SrcSpan "tests/examples/Unicode.hs" 23 5 23 5 , SrcSpan "tests/examples/Unicode.hs" 25 1 25 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 5 20 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 5 20 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 5 20 6 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 8 20 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 20 8 20 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 10 20 26 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 10 20 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 10 20 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 10 20 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 10 20 19 , srcInfoPoints = [] } "replicate"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 20 20 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 20 20 24 , srcInfoPoints = [] } 2000 "2000"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 25 20 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 25 20 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 20 25 20 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 5 21 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 5 21 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 5 21 6 , srcInfoPoints = [] } "i")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 8 21 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 21 8 21 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 10 21 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 10 21 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 10 21 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 10 21 16 , srcInfoPoints = [] } "repeat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 25 21 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 25 21 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 21 25 21 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 5 22 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 5 22 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 5 22 7 , srcInfoPoints = [] } "pf")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 8 22 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 22 8 22 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 10 22 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 10 22 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 10 22 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 10 22 11 , srcInfoPoints = [] } "f"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 12 22 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 12 22 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 12 22 14 , srcInfoPoints = [] } "|>"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 15 22 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 22 15 22 18 , srcInfoPoints = [] } 300 "300")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 5 23 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 5 23 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 5 23 7 , srcInfoPoints = [] } "pi")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 8 23 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 23 8 23 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 10 23 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 10 23 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 10 23 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 10 23 11 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 12 23 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 12 23 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 12 23 14 , srcInfoPoints = [] } "|>"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 15 23 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 23 15 23 18 , srcInfoPoints = [] } 300 "300")))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 1 25 25 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 25 7 25 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 1 25 6 , srcInfoPoints = [] } "test2" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 10 25 25 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 25 12 25 13 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 10 25 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 10 25 11 , srcInfoPoints = [] } "a")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 14 25 25 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 25 14 25 15 , SrcSpan "tests/examples/Unicode.hs" 25 19 25 20 , SrcSpan "tests/examples/Unicode.hs" 25 24 25 25 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 15 25 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 15 25 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 15 25 19 , srcInfoPoints = [] } "Bool")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 20 25 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 20 25 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 25 20 25 24 , srcInfoPoints = [] } "Bool")) ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 1 31 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 27 3 27 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 1 31 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 27 3 27 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 1 26 6 , srcInfoPoints = [] } "test2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 7 26 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 7 26 8 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 9 26 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 26 9 26 10 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 11 26 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 26 11 26 12 , SrcSpan "tests/examples/Unicode.hs" 26 14 26 15 , SrcSpan "tests/examples/Unicode.hs" 26 17 26 18 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 12 26 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 12 26 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 12 26 14 , srcInfoPoints = [] } "pf")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 15 26 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 15 26 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 26 15 26 17 , srcInfoPoints = [] } "pi")) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 5 31 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 28 5 28 5 , SrcSpan "tests/examples/Unicode.hs" 29 5 29 5 , SrcSpan "tests/examples/Unicode.hs" 30 5 30 5 , SrcSpan "tests/examples/Unicode.hs" 31 5 31 5 , SrcSpan "tests/examples/Unicode.hs" 33 1 33 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 5 28 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 5 28 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 5 28 6 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 8 28 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 28 8 28 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 10 28 26 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 10 28 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 10 28 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 10 28 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 10 28 19 , srcInfoPoints = [] } "replicate"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 20 28 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 20 28 24 , srcInfoPoints = [] } 2000 "2000"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 25 28 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 25 28 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 28 25 28 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 5 29 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 5 29 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 5 29 6 , srcInfoPoints = [] } "i")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 8 29 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 29 8 29 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 10 29 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 10 29 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 10 29 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 10 29 16 , srcInfoPoints = [] } "repeat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 25 29 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 25 29 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 29 25 29 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 5 30 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 5 30 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 5 30 7 , srcInfoPoints = [] } "pf")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 8 30 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 30 8 30 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 10 30 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 10 30 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 10 30 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 10 30 11 , srcInfoPoints = [] } "f"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 12 30 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 12 30 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 12 30 14 , srcInfoPoints = [] } "|>"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 15 30 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 30 15 30 18 , srcInfoPoints = [] } 300 "300")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 5 31 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 5 31 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 5 31 7 , srcInfoPoints = [] } "pi")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 8 31 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 31 8 31 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 10 31 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 10 31 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 10 31 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 10 31 11 , srcInfoPoints = [] } "i"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 12 31 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 12 31 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 12 31 14 , srcInfoPoints = [] } "|>"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 15 31 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 31 15 31 18 , srcInfoPoints = [] } 300 "300")))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 33 1 33 24 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 33 13 33 15 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 33 1 33 12 , srcInfoPoints = [] } "testRewrite" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 33 16 33 24 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 33 18 33 19 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 33 16 33 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 33 16 33 17 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 33 20 33 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 33 20 33 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 33 20 33 24 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 1 41 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 35 3 35 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 1 41 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 35 3 35 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 1 34 12 , srcInfoPoints = [] } "testRewrite") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 13 34 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 13 34 14 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 15 34 19 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 34 15 34 16 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 17 34 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 17 34 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 34 17 34 19 , srcInfoPoints = [] } "pi")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 5 41 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 36 5 36 5 , SrcSpan "tests/examples/Unicode.hs" 37 5 37 5 , SrcSpan "tests/examples/Unicode.hs" 38 5 38 5 , SrcSpan "tests/examples/Unicode.hs" 39 5 39 5 , SrcSpan "tests/examples/Unicode.hs" 40 5 40 5 , SrcSpan "tests/examples/Unicode.hs" 41 5 41 5 , SrcSpan "tests/examples/Unicode.hs" 43 1 43 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 5 36 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 5 36 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 5 36 6 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 8 36 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 36 8 36 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 10 36 26 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 10 36 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 10 36 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 10 36 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 10 36 19 , srcInfoPoints = [] } "replicate"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 20 36 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 20 36 24 , srcInfoPoints = [] } 2000 "2000"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 25 36 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 25 36 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 36 25 36 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 5 37 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 5 37 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 5 37 6 , srcInfoPoints = [] } "i")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 8 37 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 37 8 37 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 10 37 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 10 37 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 10 37 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 10 37 16 , srcInfoPoints = [] } "repeat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 25 37 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 25 37 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 37 25 37 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 5 38 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 5 38 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 5 38 7 , srcInfoPoints = [] } "lf")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 8 38 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 38 8 38 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 10 38 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 10 38 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 10 38 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 10 38 16 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 17 38 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 17 38 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 38 17 38 18 , srcInfoPoints = [] } "f"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 5 39 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 5 39 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 5 39 7 , srcInfoPoints = [] } "li")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 8 39 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 39 8 39 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 10 39 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 10 39 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 10 39 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 10 39 16 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 17 39 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 17 39 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 39 17 39 18 , srcInfoPoints = [] } "i"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 5 40 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 5 40 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 5 40 7 , srcInfoPoints = [] } "pf")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 8 40 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 40 8 40 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 10 40 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 10 40 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 10 40 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 10 40 12 , srcInfoPoints = [] } "lf"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 13 40 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 13 40 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 13 40 14 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 15 40 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 40 15 40 18 , srcInfoPoints = [] } 300 "300")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 5 41 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 5 41 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 5 41 7 , srcInfoPoints = [] } "pi")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 8 41 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 41 8 41 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 10 41 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 10 41 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 10 41 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 10 41 12 , srcInfoPoints = [] } "li"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 13 41 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 13 41 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 13 41 14 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 15 41 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 41 15 41 18 , srcInfoPoints = [] } 300 "300")))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 43 1 43 31 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 43 20 43 22 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 43 1 43 19 , srcInfoPoints = [] } "testRewriteReverse" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 43 23 43 31 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 43 25 43 26 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 43 23 43 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 43 23 43 24 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 43 27 43 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 43 27 43 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 43 27 43 31 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 1 51 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 45 3 45 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 1 51 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 45 3 45 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 1 44 19 , srcInfoPoints = [] } "testRewriteReverse") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 20 44 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 20 44 21 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 22 44 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 44 22 44 23 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 24 44 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 24 44 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 44 24 44 26 , srcInfoPoints = [] } "pi")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 5 51 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 46 5 46 5 , SrcSpan "tests/examples/Unicode.hs" 47 5 47 5 , SrcSpan "tests/examples/Unicode.hs" 48 5 48 5 , SrcSpan "tests/examples/Unicode.hs" 49 5 49 5 , SrcSpan "tests/examples/Unicode.hs" 50 5 50 5 , SrcSpan "tests/examples/Unicode.hs" 51 5 51 5 , SrcSpan "tests/examples/Unicode.hs" 53 1 53 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 5 46 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 5 46 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 5 46 6 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 8 46 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 46 8 46 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 10 46 26 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 10 46 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 10 46 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 10 46 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 10 46 19 , srcInfoPoints = [] } "replicate"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 20 46 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 20 46 24 , srcInfoPoints = [] } 2000 "2000"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 25 46 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 25 46 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 46 25 46 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 5 47 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 5 47 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 5 47 6 , srcInfoPoints = [] } "i")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 8 47 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 47 8 47 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 10 47 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 10 47 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 10 47 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 10 47 16 , srcInfoPoints = [] } "repeat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 25 47 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 25 47 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 47 25 47 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 5 48 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 5 48 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 5 48 7 , srcInfoPoints = [] } "lf")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 8 48 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 48 8 48 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 10 48 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 10 48 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 10 48 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 10 48 16 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 17 48 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 17 48 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 48 17 48 18 , srcInfoPoints = [] } "f"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 5 49 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 5 49 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 5 49 7 , srcInfoPoints = [] } "li")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 8 49 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 49 8 49 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 10 49 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 10 49 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 10 49 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 10 49 16 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 17 49 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 17 49 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 49 17 49 18 , srcInfoPoints = [] } "i"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 5 50 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 5 50 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 5 50 7 , srcInfoPoints = [] } "pf")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 8 50 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 50 8 50 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 10 50 18 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 10 50 13 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 10 50 13 , srcInfoPoints = [] } 300 "300")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 14 50 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 14 50 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 14 50 15 , srcInfoPoints = [] } "\8804"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 16 50 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 16 50 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 50 16 50 18 , srcInfoPoints = [] } "lf"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 5 51 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 5 51 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 5 51 7 , srcInfoPoints = [] } "pi")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 8 51 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 51 8 51 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 10 51 18 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 10 51 13 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 10 51 13 , srcInfoPoints = [] } 300 "300")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 14 51 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 14 51 15 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 14 51 15 , srcInfoPoints = [] } "\8804"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 16 51 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 16 51 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 51 16 51 18 , srcInfoPoints = [] } "li"))))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 1 53 32 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 53 14 53 16 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 1 53 13 , srcInfoPoints = [] } "testRewrite2" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 17 53 32 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 53 19 53 20 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 17 53 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 17 53 18 , srcInfoPoints = [] } "a")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 21 53 32 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 53 21 53 22 , SrcSpan "tests/examples/Unicode.hs" 53 26 53 27 , SrcSpan "tests/examples/Unicode.hs" 53 31 53 32 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 22 53 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 22 53 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 22 53 26 , srcInfoPoints = [] } "Bool")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 27 53 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 27 53 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 53 27 53 31 , srcInfoPoints = [] } "Bool")) ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 1 57 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 55 3 55 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 1 57 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 55 3 55 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 1 54 13 , srcInfoPoints = [] } "testRewrite2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 14 54 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 14 54 15 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 16 54 49 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 54 16 54 17 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 18 54 49 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 54 18 54 19 , SrcSpan "tests/examples/Unicode.hs" 54 33 54 34 , SrcSpan "tests/examples/Unicode.hs" 54 48 54 49 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 19 54 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 19 54 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 19 54 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 19 54 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 19 54 25 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 26 54 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 26 54 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 26 54 27 , srcInfoPoints = [] } "i")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 28 54 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 28 54 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 28 54 29 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 30 54 33 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 30 54 33 , srcInfoPoints = [] } 300 "300")) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 34 54 48 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 34 54 37 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 34 54 37 , srcInfoPoints = [] } 300 "300")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 38 54 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 38 54 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 38 54 39 , srcInfoPoints = [] } ">"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 40 54 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 40 54 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 40 54 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 40 54 46 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 47 54 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 47 54 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 54 47 54 48 , srcInfoPoints = [] } "i")))) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 5 57 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 57 5 57 5 , SrcSpan "tests/examples/Unicode.hs" 63 1 63 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 5 57 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 5 57 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 5 57 6 , srcInfoPoints = [] } "i")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 8 57 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 57 8 57 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 10 57 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 10 57 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 10 57 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 10 57 16 , srcInfoPoints = [] } "repeat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 25 57 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 25 57 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 57 25 57 26 , srcInfoPoints = [] } "x"))))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 1 63 39 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 63 21 63 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 1 63 20 , srcInfoPoints = [] } "testRewriteReverse2" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 24 63 39 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 63 26 63 27 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 24 63 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 24 63 25 , srcInfoPoints = [] } "a")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 28 63 39 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 63 28 63 29 , SrcSpan "tests/examples/Unicode.hs" 63 33 63 34 , SrcSpan "tests/examples/Unicode.hs" 63 38 63 39 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 29 63 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 29 63 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 29 63 33 , srcInfoPoints = [] } "Bool")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 34 63 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 34 63 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 63 34 63 38 , srcInfoPoints = [] } "Bool")) ])) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 1 71 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 65 3 65 8 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 1 71 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 65 3 65 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 1 64 20 , srcInfoPoints = [] } "testRewriteReverse2") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 21 64 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 21 64 22 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 23 64 56 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 64 23 64 24 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 25 64 56 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 64 25 64 26 , SrcSpan "tests/examples/Unicode.hs" 64 41 64 42 , SrcSpan "tests/examples/Unicode.hs" 64 55 64 56 ] } Boxed [ InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 26 64 41 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 26 64 30 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 26 64 30 , srcInfoPoints = [] } 2000 "2000")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 31 64 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 31 64 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 31 64 32 , srcInfoPoints = [] } "<"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 33 64 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 33 64 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 33 64 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 33 64 39 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 40 64 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 40 64 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 40 64 41 , srcInfoPoints = [] } "i")))) , InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 42 64 55 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 42 64 50 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 42 64 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 42 64 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 42 64 48 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 49 64 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 49 64 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 49 64 50 , srcInfoPoints = [] } "i")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 51 64 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 51 64 52 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 51 64 52 , srcInfoPoints = [] } ">"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 53 64 55 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 64 53 64 55 , srcInfoPoints = [] } 20 "20")) ])) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 5 71 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 66 5 66 5 , SrcSpan "tests/examples/Unicode.hs" 67 5 67 5 , SrcSpan "tests/examples/Unicode.hs" 68 5 68 5 , SrcSpan "tests/examples/Unicode.hs" 69 5 69 5 , SrcSpan "tests/examples/Unicode.hs" 70 5 70 5 , SrcSpan "tests/examples/Unicode.hs" 71 5 71 5 , SrcSpan "tests/examples/Unicode.hs" 74 1 74 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 5 66 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 5 66 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 5 66 6 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 8 66 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 66 8 66 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 10 66 26 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 10 66 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 10 66 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 10 66 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 10 66 19 , srcInfoPoints = [] } "replicate"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 20 66 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 20 66 24 , srcInfoPoints = [] } 2000 "2000"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 25 66 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 25 66 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 66 25 66 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 5 67 26 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 5 67 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 5 67 6 , srcInfoPoints = [] } "i")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 8 67 26 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 67 8 67 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 10 67 26 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 10 67 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 10 67 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 10 67 16 , srcInfoPoints = [] } "repeat"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 25 67 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 25 67 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 67 25 67 26 , srcInfoPoints = [] } "x"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 5 68 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 5 68 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 5 68 7 , srcInfoPoints = [] } "lf")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 8 68 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 68 8 68 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 10 68 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 10 68 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 10 68 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 10 68 16 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 17 68 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 17 68 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 68 17 68 18 , srcInfoPoints = [] } "f"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 5 69 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 5 69 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 5 69 7 , srcInfoPoints = [] } "li")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 8 69 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 69 8 69 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 10 69 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 10 69 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 10 69 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 10 69 16 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 17 69 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 17 69 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 69 17 69 18 , srcInfoPoints = [] } "i"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 5 70 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 5 70 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 5 70 7 , srcInfoPoints = [] } "pf")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 8 70 20 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 70 8 70 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 10 70 20 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 10 70 14 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 10 70 14 , srcInfoPoints = [] } 2000 "2000")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 15 70 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 15 70 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 15 70 17 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 18 70 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 18 70 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 70 18 70 20 , srcInfoPoints = [] } "lf"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 5 71 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 5 71 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 5 71 7 , srcInfoPoints = [] } "pi")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 8 71 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 71 8 71 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 10 71 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 10 71 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 10 71 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 10 71 12 , srcInfoPoints = [] } "lf"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 13 71 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 13 71 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 13 71 14 , srcInfoPoints = [] } "\8805"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 15 71 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 15 71 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 71 15 71 17 , srcInfoPoints = [] } "li"))))) Nothing ])) ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 1 74 68 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 10 74 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 1 74 9 , srcInfoPoints = [] } "lengthOP" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 13 74 68 , srcInfoPoints = [] } Nothing (Just (CxTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 13 74 29 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 13 74 14 , SrcSpan "tests/examples/Unicode.hs" 74 19 74 20 , SrcSpan "tests/examples/Unicode.hs" 74 26 74 27 , SrcSpan "tests/examples/Unicode.hs" 74 28 74 29 ] } [ ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 14 74 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 14 74 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 14 74 17 , srcInfoPoints = [] } "Num")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 18 74 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 18 74 19 , srcInfoPoints = [] } "a") ] , ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 21 74 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 21 74 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 21 74 24 , srcInfoPoints = [] } "Ord")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 25 74 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 25 74 26 , srcInfoPoints = [] } "a") ] ])) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 30 74 68 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 35 74 36 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 30 74 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 30 74 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 30 74 34 , srcInfoPoints = [] } "Bool"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 37 74 68 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 52 74 53 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 37 74 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 37 74 38 , SrcSpan "tests/examples/Unicode.hs" 74 50 74 51 ] } (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 38 74 50 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 40 74 41 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 38 74 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 38 74 39 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 42 74 50 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 44 74 45 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 42 74 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 42 74 43 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 46 74 50 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 46 74 50 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 46 74 50 , srcInfoPoints = [] } "Bool")))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 54 74 68 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 58 74 59 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 54 74 57 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 54 74 55 , SrcSpan "tests/examples/Unicode.hs" 74 56 74 57 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 55 74 56 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 55 74 56 , srcInfoPoints = [] } "b"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 60 74 68 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 74 62 74 63 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 60 74 61 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 60 74 61 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 64 74 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 64 74 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 74 64 74 68 , srcInfoPoints = [] } "Bool")))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 1 80 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 1 75 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 1 75 9 , srcInfoPoints = [] } "lengthOP") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 10 75 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 10 75 11 , srcInfoPoints = [] } "v") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 12 75 15 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 75 12 75 13 , SrcSpan "tests/examples/Unicode.hs" 75 13 75 14 , SrcSpan "tests/examples/Unicode.hs" 75 14 75 15 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 13 75 14 , srcInfoPoints = [] } "\8860") , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 16 75 18 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 75 16 75 17 , SrcSpan "tests/examples/Unicode.hs" 75 17 75 18 ] } [] , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 20 75 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 20 75 21 , srcInfoPoints = [] } "n") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 22 75 29 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 75 22 75 23 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 24 75 29 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 24 75 25 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 24 75 25 , srcInfoPoints = [] } 0 "0")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 26 75 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 26 75 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 26 75 27 , srcInfoPoints = [] } "\8860"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 28 75 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 28 75 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 75 28 75 29 , srcInfoPoints = [] } "n"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 1 80 24 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 77 3 77 8 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 1 76 9 , srcInfoPoints = [] } "lengthOP") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 10 76 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 10 76 11 , srcInfoPoints = [] } "v") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 12 76 15 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 76 12 76 13 , SrcSpan "tests/examples/Unicode.hs" 76 13 76 14 , SrcSpan "tests/examples/Unicode.hs" 76 14 76 15 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 13 76 14 , srcInfoPoints = [] } "\8860") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 16 76 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 16 76 19 , srcInfoPoints = [] } "xxs") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 20 76 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 20 76 21 , srcInfoPoints = [] } "n") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 22 76 32 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 76 22 76 23 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 24 76 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 24 76 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 24 76 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 24 76 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 24 76 26 , srcInfoPoints = [] } "co"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 27 76 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 27 76 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 27 76 30 , srcInfoPoints = [] } "xxs")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 31 76 32 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 76 31 76 32 , srcInfoPoints = [] } 0 "0")))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 5 80 24 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 78 5 78 5 , SrcSpan "tests/examples/Unicode.hs" 80 5 80 5 , SrcSpan "tests/examples/Unicode.hs" 82 1 82 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 5 80 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 5 79 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 5 78 7 , srcInfoPoints = [] } "co") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 8 78 14 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 78 8 78 9 , SrcSpan "tests/examples/Unicode.hs" 78 13 78 14 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 9 78 13 , srcInfoPoints = [] } (PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 9 78 10 , srcInfoPoints = [] }) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 10 78 11 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 10 78 11 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 11 78 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 11 78 13 , srcInfoPoints = [] } "xs"))) , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 15 78 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 15 78 16 , srcInfoPoints = [] } "c") ] (GuardedRhss SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 17 79 32 , srcInfoPoints = [] } [ GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 17 78 42 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 78 17 78 18 , SrcSpan "tests/examples/Unicode.hs" 78 29 78 30 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 19 78 24 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 19 78 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 19 78 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 19 78 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 19 78 20 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 21 78 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 21 78 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 21 78 22 , srcInfoPoints = [] } ">"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 23 78 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 23 78 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 23 78 24 , srcInfoPoints = [] } "c")))) ] (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 31 78 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 31 78 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 31 78 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 31 78 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 31 78 33 , srcInfoPoints = [] } "co"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 34 78 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 34 78 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 34 78 36 , srcInfoPoints = [] } "xs")))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 37 78 42 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 78 37 78 38 , SrcSpan "tests/examples/Unicode.hs" 78 41 78 42 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 38 78 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 38 78 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 38 78 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 38 78 39 , srcInfoPoints = [] } "c"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 39 78 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 39 78 40 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 39 78 40 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 40 78 41 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 78 40 78 41 , srcInfoPoints = [] } 1 "1"))))) , GuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 79 17 79 32 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 79 17 79 18 , SrcSpan "tests/examples/Unicode.hs" 79 29 79 30 ] } [ Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 79 19 79 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 79 19 79 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 79 19 79 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 79 19 79 28 , srcInfoPoints = [] } "otherwise"))) ] (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 79 31 79 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 79 31 79 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 79 31 79 32 , srcInfoPoints = [] } "v"))) ]) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 5 80 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 5 80 7 , srcInfoPoints = [] } "co") [ PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 8 80 10 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 80 8 80 9 , SrcSpan "tests/examples/Unicode.hs" 80 9 80 10 ] } [] , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 15 80 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 15 80 16 , srcInfoPoints = [] } "c") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 17 80 24 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 80 17 80 18 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 19 80 24 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 19 80 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 19 80 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 19 80 20 , srcInfoPoints = [] } "c"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 21 80 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 21 80 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 21 80 22 , srcInfoPoints = [] } "\8860"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 23 80 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 23 80 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 80 23 80 24 , srcInfoPoints = [] } "n"))))) Nothing ] ])) ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 82 1 82 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 82 1 82 4 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 82 1 82 2 , SrcSpan "tests/examples/Unicode.hs" 82 2 82 3 , SrcSpan "tests/examples/Unicode.hs" 82 3 82 4 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 82 2 82 3 , srcInfoPoints = [] } "\8803")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 82 5 82 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 82 5 82 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 82 7 82 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 82 7 82 8 , SrcSpan "tests/examples/Unicode.hs" 82 8 82 10 , SrcSpan "tests/examples/Unicode.hs" 82 10 82 11 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 82 7 82 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 82 7 82 8 , SrcSpan "tests/examples/Unicode.hs" 82 8 82 10 , SrcSpan "tests/examples/Unicode.hs" 82 10 82 11 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 82 8 82 10 , srcInfoPoints = [] } "==")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 83 1 83 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 83 1 83 4 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 83 1 83 2 , SrcSpan "tests/examples/Unicode.hs" 83 2 83 3 , SrcSpan "tests/examples/Unicode.hs" 83 3 83 4 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 83 2 83 3 , srcInfoPoints = [] } "\8804")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 83 5 83 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 83 5 83 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 83 7 83 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 83 7 83 8 , SrcSpan "tests/examples/Unicode.hs" 83 8 83 10 , SrcSpan "tests/examples/Unicode.hs" 83 10 83 11 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 83 7 83 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 83 7 83 8 , SrcSpan "tests/examples/Unicode.hs" 83 8 83 10 , SrcSpan "tests/examples/Unicode.hs" 83 10 83 11 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 83 8 83 10 , srcInfoPoints = [] } "<=")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 84 1 84 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 84 1 84 4 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 84 1 84 2 , SrcSpan "tests/examples/Unicode.hs" 84 2 84 3 , SrcSpan "tests/examples/Unicode.hs" 84 3 84 4 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 84 2 84 3 , srcInfoPoints = [] } "\8805")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 84 5 84 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 84 5 84 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 84 7 84 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 84 7 84 8 , SrcSpan "tests/examples/Unicode.hs" 84 8 84 10 , SrcSpan "tests/examples/Unicode.hs" 84 10 84 11 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 84 7 84 11 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 84 7 84 8 , SrcSpan "tests/examples/Unicode.hs" 84 8 84 10 , SrcSpan "tests/examples/Unicode.hs" 84 10 84 11 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 84 8 84 10 , srcInfoPoints = [] } ">=")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 1 86 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 1 86 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 86 1 86 2 , SrcSpan "tests/examples/Unicode.hs" 86 2 86 4 , SrcSpan "tests/examples/Unicode.hs" 86 4 86 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 2 86 4 , srcInfoPoints = [] } "|\8803")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 7 86 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 86 7 86 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 9 86 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 9 86 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 9 86 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 9 86 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 9 86 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 18 86 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 18 86 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 18 86 23 , srcInfoPoints = [] } "False")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 24 86 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 86 24 86 25 , SrcSpan "tests/examples/Unicode.hs" 86 25 86 26 , SrcSpan "tests/examples/Unicode.hs" 86 26 86 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 24 86 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 86 24 86 25 , SrcSpan "tests/examples/Unicode.hs" 86 25 86 26 , SrcSpan "tests/examples/Unicode.hs" 86 26 86 27 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 86 25 86 26 , srcInfoPoints = [] } "\8803"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 1 87 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 1 87 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 87 1 87 2 , SrcSpan "tests/examples/Unicode.hs" 87 2 87 4 , SrcSpan "tests/examples/Unicode.hs" 87 4 87 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 2 87 4 , srcInfoPoints = [] } "|<")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 7 87 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 87 7 87 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 9 87 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 9 87 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 9 87 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 9 87 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 9 87 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 18 87 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 18 87 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 18 87 23 , srcInfoPoints = [] } "False")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 24 87 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 87 24 87 25 , SrcSpan "tests/examples/Unicode.hs" 87 25 87 26 , SrcSpan "tests/examples/Unicode.hs" 87 26 87 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 24 87 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 87 24 87 25 , SrcSpan "tests/examples/Unicode.hs" 87 25 87 26 , SrcSpan "tests/examples/Unicode.hs" 87 26 87 27 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 87 25 87 26 , srcInfoPoints = [] } "<"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 1 88 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 1 88 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 88 1 88 2 , SrcSpan "tests/examples/Unicode.hs" 88 2 88 4 , SrcSpan "tests/examples/Unicode.hs" 88 4 88 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 2 88 4 , srcInfoPoints = [] } "|\8804")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 7 88 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 88 7 88 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 9 88 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 9 88 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 9 88 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 9 88 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 9 88 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 18 88 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 18 88 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 18 88 23 , srcInfoPoints = [] } "False")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 24 88 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 88 24 88 25 , SrcSpan "tests/examples/Unicode.hs" 88 25 88 26 , SrcSpan "tests/examples/Unicode.hs" 88 26 88 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 24 88 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 88 24 88 25 , SrcSpan "tests/examples/Unicode.hs" 88 25 88 26 , SrcSpan "tests/examples/Unicode.hs" 88 26 88 27 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 88 25 88 26 , srcInfoPoints = [] } "\8804"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 1 89 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 1 89 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 89 1 89 2 , SrcSpan "tests/examples/Unicode.hs" 89 2 89 4 , SrcSpan "tests/examples/Unicode.hs" 89 4 89 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 2 89 4 , srcInfoPoints = [] } "|>")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 7 89 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 89 7 89 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 9 89 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 9 89 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 9 89 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 9 89 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 9 89 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 18 89 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 18 89 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 18 89 22 , srcInfoPoints = [] } "True")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 24 89 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 89 24 89 25 , SrcSpan "tests/examples/Unicode.hs" 89 25 89 26 , SrcSpan "tests/examples/Unicode.hs" 89 26 89 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 24 89 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 89 24 89 25 , SrcSpan "tests/examples/Unicode.hs" 89 25 89 26 , SrcSpan "tests/examples/Unicode.hs" 89 26 89 27 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 89 25 89 26 , srcInfoPoints = [] } ">"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 1 90 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 1 90 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 90 1 90 2 , SrcSpan "tests/examples/Unicode.hs" 90 2 90 4 , SrcSpan "tests/examples/Unicode.hs" 90 4 90 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 2 90 4 , srcInfoPoints = [] } "|\8805")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 7 90 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 90 7 90 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 9 90 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 9 90 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 9 90 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 9 90 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 9 90 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 18 90 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 18 90 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 18 90 22 , srcInfoPoints = [] } "True")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 24 90 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 90 24 90 25 , SrcSpan "tests/examples/Unicode.hs" 90 25 90 26 , SrcSpan "tests/examples/Unicode.hs" 90 26 90 27 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 24 90 27 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 90 24 90 25 , SrcSpan "tests/examples/Unicode.hs" 90 25 90 26 , SrcSpan "tests/examples/Unicode.hs" 90 26 90 27 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 90 25 90 26 , srcInfoPoints = [] } "\8805"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 1 92 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 1 92 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 92 1 92 2 , SrcSpan "tests/examples/Unicode.hs" 92 2 92 4 , SrcSpan "tests/examples/Unicode.hs" 92 4 92 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 2 92 4 , srcInfoPoints = [] } "|=")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 7 92 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 92 7 92 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 9 92 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 9 92 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 9 92 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 9 92 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 9 92 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 18 92 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 18 92 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 18 92 23 , srcInfoPoints = [] } "False")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 24 92 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 92 24 92 25 , SrcSpan "tests/examples/Unicode.hs" 92 25 92 27 , SrcSpan "tests/examples/Unicode.hs" 92 27 92 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 24 92 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 92 24 92 25 , SrcSpan "tests/examples/Unicode.hs" 92 25 92 27 , SrcSpan "tests/examples/Unicode.hs" 92 27 92 28 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 92 25 92 27 , srcInfoPoints = [] } "=="))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 1 93 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 1 93 6 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 93 1 93 2 , SrcSpan "tests/examples/Unicode.hs" 93 2 93 5 , SrcSpan "tests/examples/Unicode.hs" 93 5 93 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 2 93 5 , srcInfoPoints = [] } "|==")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 7 93 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 93 7 93 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 9 93 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 9 93 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 9 93 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 9 93 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 9 93 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 18 93 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 18 93 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 18 93 23 , srcInfoPoints = [] } "False")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 24 93 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 93 24 93 25 , SrcSpan "tests/examples/Unicode.hs" 93 25 93 27 , SrcSpan "tests/examples/Unicode.hs" 93 27 93 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 24 93 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 93 24 93 25 , SrcSpan "tests/examples/Unicode.hs" 93 25 93 27 , SrcSpan "tests/examples/Unicode.hs" 93 27 93 28 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 93 25 93 27 , srcInfoPoints = [] } "=="))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 1 94 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 1 94 6 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 94 1 94 2 , SrcSpan "tests/examples/Unicode.hs" 94 2 94 5 , SrcSpan "tests/examples/Unicode.hs" 94 5 94 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 2 94 5 , srcInfoPoints = [] } "|<=")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 7 94 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 94 7 94 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 9 94 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 9 94 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 9 94 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 9 94 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 9 94 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 18 94 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 18 94 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 18 94 23 , srcInfoPoints = [] } "False")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 24 94 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 94 24 94 25 , SrcSpan "tests/examples/Unicode.hs" 94 25 94 27 , SrcSpan "tests/examples/Unicode.hs" 94 27 94 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 24 94 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 94 24 94 25 , SrcSpan "tests/examples/Unicode.hs" 94 25 94 27 , SrcSpan "tests/examples/Unicode.hs" 94 27 94 28 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 94 25 94 27 , srcInfoPoints = [] } "<="))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 1 95 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 1 95 6 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 95 1 95 2 , SrcSpan "tests/examples/Unicode.hs" 95 2 95 5 , SrcSpan "tests/examples/Unicode.hs" 95 5 95 6 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 2 95 5 , srcInfoPoints = [] } "|>=")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 7 95 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 95 7 95 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 9 95 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 9 95 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 9 95 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 9 95 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 9 95 17 , srcInfoPoints = [] } "lengthOP"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 18 95 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 18 95 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 18 95 23 , srcInfoPoints = [] } "False")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 24 95 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 95 24 95 25 , SrcSpan "tests/examples/Unicode.hs" 95 25 95 27 , SrcSpan "tests/examples/Unicode.hs" 95 27 95 28 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 24 95 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 95 24 95 25 , SrcSpan "tests/examples/Unicode.hs" 95 25 95 27 , SrcSpan "tests/examples/Unicode.hs" 95 27 95 28 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 95 25 95 27 , srcInfoPoints = [] } ">="))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 1 99 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 1 99 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 99 1 99 2 , SrcSpan "tests/examples/Unicode.hs" 99 2 99 4 , SrcSpan "tests/examples/Unicode.hs" 99 4 99 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 2 99 4 , srcInfoPoints = [] } "\8803|")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 6 99 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 99 6 99 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 8 99 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 8 99 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 8 99 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 8 99 12 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 13 99 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 99 13 99 14 , SrcSpan "tests/examples/Unicode.hs" 99 14 99 16 , SrcSpan "tests/examples/Unicode.hs" 99 16 99 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 13 99 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 99 13 99 14 , SrcSpan "tests/examples/Unicode.hs" 99 14 99 16 , SrcSpan "tests/examples/Unicode.hs" 99 16 99 17 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 99 14 99 16 , srcInfoPoints = [] } "|\8803"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 1 100 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 1 100 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 100 1 100 2 , SrcSpan "tests/examples/Unicode.hs" 100 2 100 4 , SrcSpan "tests/examples/Unicode.hs" 100 4 100 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 2 100 4 , srcInfoPoints = [] } "<|")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 6 100 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 100 6 100 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 8 100 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 8 100 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 8 100 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 8 100 12 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 13 100 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 100 13 100 14 , SrcSpan "tests/examples/Unicode.hs" 100 14 100 16 , SrcSpan "tests/examples/Unicode.hs" 100 16 100 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 13 100 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 100 13 100 14 , SrcSpan "tests/examples/Unicode.hs" 100 14 100 16 , SrcSpan "tests/examples/Unicode.hs" 100 16 100 17 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 100 14 100 16 , srcInfoPoints = [] } "|\8805"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 1 101 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 1 101 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 101 1 101 2 , SrcSpan "tests/examples/Unicode.hs" 101 2 101 4 , SrcSpan "tests/examples/Unicode.hs" 101 4 101 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 2 101 4 , srcInfoPoints = [] } "\8804|")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 6 101 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 101 6 101 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 8 101 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 8 101 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 8 101 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 8 101 12 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 13 101 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 101 13 101 14 , SrcSpan "tests/examples/Unicode.hs" 101 14 101 16 , SrcSpan "tests/examples/Unicode.hs" 101 16 101 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 13 101 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 101 13 101 14 , SrcSpan "tests/examples/Unicode.hs" 101 14 101 16 , SrcSpan "tests/examples/Unicode.hs" 101 16 101 17 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 101 14 101 16 , srcInfoPoints = [] } "|>"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 1 102 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 1 102 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 102 1 102 2 , SrcSpan "tests/examples/Unicode.hs" 102 2 102 4 , SrcSpan "tests/examples/Unicode.hs" 102 4 102 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 2 102 4 , srcInfoPoints = [] } ">|")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 6 102 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 102 6 102 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 8 102 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 8 102 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 8 102 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 8 102 12 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 13 102 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 102 13 102 14 , SrcSpan "tests/examples/Unicode.hs" 102 14 102 16 , SrcSpan "tests/examples/Unicode.hs" 102 16 102 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 13 102 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 102 13 102 14 , SrcSpan "tests/examples/Unicode.hs" 102 14 102 16 , SrcSpan "tests/examples/Unicode.hs" 102 16 102 17 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 102 14 102 16 , srcInfoPoints = [] } "|\8804"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 1 103 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 1 103 5 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 103 1 103 2 , SrcSpan "tests/examples/Unicode.hs" 103 2 103 4 , SrcSpan "tests/examples/Unicode.hs" 103 4 103 5 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 2 103 4 , srcInfoPoints = [] } "\8805|")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 6 103 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 103 6 103 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 8 103 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 8 103 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 8 103 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 8 103 12 , srcInfoPoints = [] } "flip"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 13 103 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 103 13 103 14 , SrcSpan "tests/examples/Unicode.hs" 103 14 103 16 , SrcSpan "tests/examples/Unicode.hs" 103 16 103 17 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 13 103 17 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 103 13 103 14 , SrcSpan "tests/examples/Unicode.hs" 103 14 103 16 , SrcSpan "tests/examples/Unicode.hs" 103 16 103 17 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 103 14 103 16 , srcInfoPoints = [] } "|<"))))) Nothing , RulePragmaDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 105 1 118 6 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 105 1 105 10 , SrcSpan "tests/examples/Unicode.hs" 118 3 118 6 ] } [ Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 1 107 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 107 1 107 10 , SrcSpan "tests/examples/Unicode.hs" 107 11 107 17 , SrcSpan "tests/examples/Unicode.hs" 107 22 107 23 , SrcSpan "tests/examples/Unicode.hs" 107 42 107 43 ] } "xs |\8803 n" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 18 107 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 18 107 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 21 107 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 21 107 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 25 107 41 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 25 107 36 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 107 25 107 26 , SrcSpan "tests/examples/Unicode.hs" 107 35 107 36 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 26 107 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 26 107 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 26 107 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 26 107 32 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 33 107 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 33 107 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 33 107 35 , srcInfoPoints = [] } "xs"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 37 107 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 37 107 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 37 107 39 , srcInfoPoints = [] } "=="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 40 107 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 40 107 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 40 107 41 , srcInfoPoints = [] } "n")))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 44 107 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 44 107 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 44 107 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 44 107 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 47 107 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 47 107 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 47 107 49 , srcInfoPoints = [] } "|\8803"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 50 107 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 50 107 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 107 50 107 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 1 108 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 108 1 108 10 , SrcSpan "tests/examples/Unicode.hs" 108 11 108 17 , SrcSpan "tests/examples/Unicode.hs" 108 22 108 23 , SrcSpan "tests/examples/Unicode.hs" 108 42 108 43 ] } "xs |< n" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 18 108 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 18 108 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 21 108 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 21 108 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 25 108 41 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 25 108 36 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 108 25 108 26 , SrcSpan "tests/examples/Unicode.hs" 108 35 108 36 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 26 108 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 26 108 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 26 108 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 26 108 32 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 33 108 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 33 108 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 33 108 35 , srcInfoPoints = [] } "xs"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 37 108 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 37 108 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 37 108 38 , srcInfoPoints = [] } "<"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 40 108 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 40 108 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 40 108 41 , srcInfoPoints = [] } "n")))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 44 108 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 44 108 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 44 108 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 44 108 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 47 108 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 47 108 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 47 108 49 , srcInfoPoints = [] } "|<"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 50 108 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 50 108 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 108 50 108 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 1 109 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 109 1 109 10 , SrcSpan "tests/examples/Unicode.hs" 109 11 109 17 , SrcSpan "tests/examples/Unicode.hs" 109 22 109 23 , SrcSpan "tests/examples/Unicode.hs" 109 42 109 43 ] } "xs |\8804 n" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 18 109 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 18 109 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 21 109 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 21 109 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 25 109 41 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 25 109 36 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 109 25 109 26 , SrcSpan "tests/examples/Unicode.hs" 109 35 109 36 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 26 109 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 26 109 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 26 109 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 26 109 32 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 33 109 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 33 109 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 33 109 35 , srcInfoPoints = [] } "xs"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 37 109 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 37 109 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 37 109 39 , srcInfoPoints = [] } "<="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 40 109 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 40 109 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 40 109 41 , srcInfoPoints = [] } "n")))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 44 109 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 44 109 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 44 109 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 44 109 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 47 109 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 47 109 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 47 109 49 , srcInfoPoints = [] } "|\8804"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 50 109 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 50 109 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 109 50 109 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 1 110 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 110 1 110 10 , SrcSpan "tests/examples/Unicode.hs" 110 11 110 17 , SrcSpan "tests/examples/Unicode.hs" 110 22 110 23 , SrcSpan "tests/examples/Unicode.hs" 110 42 110 43 ] } "xs |> n" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 18 110 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 18 110 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 21 110 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 21 110 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 25 110 41 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 25 110 36 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 110 25 110 26 , SrcSpan "tests/examples/Unicode.hs" 110 35 110 36 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 26 110 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 26 110 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 26 110 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 26 110 32 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 33 110 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 33 110 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 33 110 35 , srcInfoPoints = [] } "xs"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 37 110 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 37 110 38 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 37 110 38 , srcInfoPoints = [] } ">"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 40 110 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 40 110 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 40 110 41 , srcInfoPoints = [] } "n")))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 44 110 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 44 110 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 44 110 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 44 110 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 47 110 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 47 110 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 47 110 49 , srcInfoPoints = [] } "|>"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 50 110 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 50 110 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 110 50 110 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 1 111 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 111 1 111 10 , SrcSpan "tests/examples/Unicode.hs" 111 11 111 17 , SrcSpan "tests/examples/Unicode.hs" 111 22 111 23 , SrcSpan "tests/examples/Unicode.hs" 111 42 111 43 ] } "xs |\8805 n" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 18 111 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 18 111 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 21 111 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 21 111 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 25 111 41 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 25 111 36 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 111 25 111 26 , SrcSpan "tests/examples/Unicode.hs" 111 35 111 36 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 26 111 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 26 111 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 26 111 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 26 111 32 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 33 111 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 33 111 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 33 111 35 , srcInfoPoints = [] } "xs"))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 37 111 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 37 111 39 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 37 111 39 , srcInfoPoints = [] } ">="))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 40 111 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 40 111 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 40 111 41 , srcInfoPoints = [] } "n")))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 44 111 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 44 111 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 44 111 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 44 111 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 47 111 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 47 111 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 47 111 49 , srcInfoPoints = [] } "|\8805"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 50 111 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 50 111 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 111 50 111 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 1 113 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 113 1 113 10 , SrcSpan "tests/examples/Unicode.hs" 113 11 113 17 , SrcSpan "tests/examples/Unicode.hs" 113 22 113 23 , SrcSpan "tests/examples/Unicode.hs" 113 42 113 43 ] } "n \8803| xs" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 18 113 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 18 113 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 21 113 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 21 113 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 25 113 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 25 113 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 25 113 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 25 113 26 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 27 113 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 27 113 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 27 113 29 , srcInfoPoints = [] } "=="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 30 113 41 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 113 30 113 31 , SrcSpan "tests/examples/Unicode.hs" 113 40 113 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 31 113 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 31 113 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 31 113 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 31 113 37 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 38 113 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 38 113 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 38 113 40 , srcInfoPoints = [] } "xs")))))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 44 113 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 44 113 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 44 113 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 44 113 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 47 113 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 47 113 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 47 113 49 , srcInfoPoints = [] } "|\8803"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 50 113 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 50 113 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 113 50 113 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 1 114 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 114 1 114 10 , SrcSpan "tests/examples/Unicode.hs" 114 11 114 17 , SrcSpan "tests/examples/Unicode.hs" 114 22 114 23 , SrcSpan "tests/examples/Unicode.hs" 114 42 114 43 ] } "n <| xs" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 18 114 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 18 114 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 21 114 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 21 114 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 25 114 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 25 114 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 25 114 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 25 114 26 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 27 114 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 27 114 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 27 114 28 , srcInfoPoints = [] } "<"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 30 114 41 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 114 30 114 31 , SrcSpan "tests/examples/Unicode.hs" 114 40 114 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 31 114 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 31 114 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 31 114 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 31 114 37 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 38 114 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 38 114 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 38 114 40 , srcInfoPoints = [] } "xs")))))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 44 114 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 44 114 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 44 114 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 44 114 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 47 114 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 47 114 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 47 114 49 , srcInfoPoints = [] } "|\8805"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 50 114 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 50 114 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 114 50 114 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 1 115 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 115 1 115 10 , SrcSpan "tests/examples/Unicode.hs" 115 11 115 17 , SrcSpan "tests/examples/Unicode.hs" 115 22 115 23 , SrcSpan "tests/examples/Unicode.hs" 115 42 115 43 ] } "n \8804| xs" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 18 115 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 18 115 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 21 115 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 21 115 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 25 115 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 25 115 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 25 115 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 25 115 26 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 27 115 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 27 115 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 27 115 29 , srcInfoPoints = [] } "<="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 30 115 41 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 115 30 115 31 , SrcSpan "tests/examples/Unicode.hs" 115 40 115 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 31 115 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 31 115 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 31 115 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 31 115 37 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 38 115 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 38 115 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 38 115 40 , srcInfoPoints = [] } "xs")))))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 44 115 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 44 115 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 44 115 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 44 115 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 47 115 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 47 115 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 47 115 49 , srcInfoPoints = [] } "|>"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 50 115 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 50 115 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 115 50 115 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 1 116 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 116 1 116 10 , SrcSpan "tests/examples/Unicode.hs" 116 11 116 17 , SrcSpan "tests/examples/Unicode.hs" 116 22 116 23 , SrcSpan "tests/examples/Unicode.hs" 116 42 116 43 ] } "n >| xs" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 18 116 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 18 116 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 21 116 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 21 116 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 25 116 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 25 116 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 25 116 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 25 116 26 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 27 116 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 27 116 28 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 27 116 28 , srcInfoPoints = [] } ">"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 30 116 41 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 116 30 116 31 , SrcSpan "tests/examples/Unicode.hs" 116 40 116 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 31 116 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 31 116 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 31 116 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 31 116 37 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 38 116 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 38 116 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 38 116 40 , srcInfoPoints = [] } "xs")))))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 44 116 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 44 116 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 44 116 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 44 116 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 47 116 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 47 116 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 47 116 49 , srcInfoPoints = [] } "|\8804"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 50 116 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 50 116 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 116 50 116 51 , srcInfoPoints = [] } "n")))) , Rule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 1 117 51 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 117 1 117 10 , SrcSpan "tests/examples/Unicode.hs" 117 11 117 17 , SrcSpan "tests/examples/Unicode.hs" 117 22 117 23 , SrcSpan "tests/examples/Unicode.hs" 117 42 117 43 ] } "n \8805| xs" Nothing (Just [ RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 18 117 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 18 117 20 , srcInfoPoints = [] } "xs") , RuleVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 21 117 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 21 117 22 , srcInfoPoints = [] } "n") ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 25 117 41 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 25 117 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 25 117 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 25 117 26 , srcInfoPoints = [] } "n"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 27 117 29 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 27 117 29 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 27 117 29 , srcInfoPoints = [] } ">="))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 30 117 41 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode.hs" 117 30 117 31 , SrcSpan "tests/examples/Unicode.hs" 117 40 117 41 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 31 117 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 31 117 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 31 117 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 31 117 37 , srcInfoPoints = [] } "length"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 38 117 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 38 117 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 38 117 40 , srcInfoPoints = [] } "xs")))))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 44 117 51 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 44 117 46 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 44 117 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 44 117 46 , srcInfoPoints = [] } "xs"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 47 117 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 47 117 49 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 47 117 49 , srcInfoPoints = [] } "|<"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 50 117 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 50 117 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode.hs" 117 50 117 51 , srcInfoPoints = [] } "n")))) ] ] , [ Comment False (SrcSpan "tests/examples/Unicode.hs" 56 1 56 28) " f = replicate 2000 x" , Comment False (SrcSpan "tests/examples/Unicode.hs" 58 1 58 20) " lf = length f" , Comment False (SrcSpan "tests/examples/Unicode.hs" 59 1 59 20) " li = length i" , Comment False (SrcSpan "tests/examples/Unicode.hs" 60 1 60 20) " pf = lf > 300" , Comment False (SrcSpan "tests/examples/Unicode.hs" 61 1 61 20) " pi = li > 300" , Comment False (SrcSpan "tests/examples/Unicode.hs" 98 1 98 7) " \8803\8804\8805" , Comment False (SrcSpan "tests/examples/Unicode.hs" 106 1 106 10) " length" ] ) haskell-src-exts-1.18.2/tests/examples/Unicode.hs.prettyparser.golden0000644000000000000000000000000612746233113024074 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Unicode.hs.prettyprinter.golden0000644000000000000000000000463112746233113024273 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} module Main where import System.Environment main :: IO () main = do as <- getArgs print $ as print $ test 0 print $ test2 0 print $ testRewrite 0 print $ testRewriteReverse 0 print $ testRewrite2 0 print $ testRewriteReverse2 0 test :: a -> Bool test x = pi where f = replicate 2000 x i = repeat x pf = f |> 300 pi = i |> 300 test2 :: a -> (Bool, Bool) test2 x = (pf, pi) where f = replicate 2000 x i = repeat x pf = f |> 300 pi = i |> 300 testRewrite :: a -> Bool testRewrite x = pi where f = replicate 2000 x i = repeat x lf = length f li = length i pf = lf > 300 pi = li > 300 testRewriteReverse :: a -> Bool testRewriteReverse x = pi where f = replicate 2000 x i = repeat x lf = length f li = length i pf = 300 d lf pi = 300 d li testRewrite2 :: a -> (Bool, Bool) testRewrite2 x = (length i > 300, 300 > length i) where i = repeat x testRewriteReverse2 :: a -> (Bool, Bool) testRewriteReverse2 x = (2000 < length i, length i > 20) where f = replicate 2000 x i = repeat x lf = length f li = length i pf = 2000 == lf pi = lf e li lengthOP :: (Num a, Ord a) => Bool -> (a -> a -> Bool) -> [b] -> a -> Bool lengthOP v () [] n = 0 n lengthOP v () xxs n = co xxs 0 where co (_ : xs) c | n > c = co xs (c + 1) | otherwise = v co [] c = c n (c) = (==) (d) = (<=) (e) = (>=) (|c) = lengthOP False (c) (|<) = lengthOP False (<) (|d) = lengthOP False (d) (|>) = lengthOP True (>) (|e) = lengthOP True (e) (|=) = lengthOP False (==) (|==) = lengthOP False (==) (|<=) = lengthOP False (<=) (|>=) = lengthOP False (>=) (c|) = flip (|c) (<|) = flip (|e) (d|) = flip (|>) (>|) = flip (|d) (e|) = flip (|<) {-# RULES "xs |\8803 n" forall xs n . (length xs) == n = xs |c n "xs |< n" forall xs n . (length xs) < n = xs |< n "xs |\8804 n" forall xs n . (length xs) <= n = xs |d n "xs |> n" forall xs n . (length xs) > n = xs |> n "xs |\8805 n" forall xs n . (length xs) >= n = xs |e n "n \8803| xs" forall xs n . n == (length xs) = xs |c n "n <| xs" forall xs n . n < (length xs) = xs |e n "n \8804| xs" forall xs n . n <= (length xs) = xs |> n "n >| xs" forall xs n . n > (length xs) = xs |d n "n \8805| xs" forall xs n . n >= (length xs) = xs |< n #-} haskell-src-exts-1.18.2/tests/examples/Unicode2.hs0000644000000000000000000000007312746233113020150 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} lengthOP n (⊜) = 0 ⊜ n haskell-src-exts-1.18.2/tests/examples/Unicode2.hs.exactprinter.golden0000644000000000000000000000000612746233113024122 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Unicode2.hs.parser.golden0000644000000000000000000001231212746233113022711 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode2.hs" 1 1 1 1 , SrcSpan "tests/examples/Unicode2.hs" 3 1 3 1 , SrcSpan "tests/examples/Unicode2.hs" 3 1 3 1 , SrcSpan "tests/examples/Unicode2.hs" 3 1 3 1 , SrcSpan "tests/examples/Unicode2.hs" 4 1 4 1 , SrcSpan "tests/examples/Unicode2.hs" 4 1 4 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode2.hs" 1 1 1 13 , SrcSpan "tests/examples/Unicode2.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 1 14 1 27 , srcInfoPoints = [] } "UnicodeSyntax" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 1 3 23 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 1 3 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 1 3 9 , srcInfoPoints = [] } "lengthOP") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 10 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 10 3 11 , srcInfoPoints = [] } "n") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 12 3 15 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode2.hs" 3 12 3 13 , SrcSpan "tests/examples/Unicode2.hs" 3 13 3 14 , SrcSpan "tests/examples/Unicode2.hs" 3 14 3 15 ] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 13 3 14 , srcInfoPoints = [] } "\8860") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 16 3 23 , srcInfoPoints = [ SrcSpan "tests/examples/Unicode2.hs" 3 16 3 17 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 18 3 23 , srcInfoPoints = [] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 18 3 19 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 18 3 19 , srcInfoPoints = [] } 0 "0")) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 20 3 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 20 3 21 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 20 3 21 , srcInfoPoints = [] } "\8860"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 22 3 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 22 3 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unicode2.hs" 3 22 3 23 , srcInfoPoints = [] } "n"))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/Unicode2.hs.prettyparser.golden0000644000000000000000000000000612746233113024156 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Unicode2.hs.prettyprinter.golden0000644000000000000000000000006612746233113024353 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} lengthOP n () = 0 n haskell-src-exts-1.18.2/tests/examples/UnicodeArrow.hs0000644000000000000000000000026712746233113021106 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} arrowTest ∷ String → String arrowTest input = case input of "hello" → "world" "world" → "hello" otherwise → "unknow" haskell-src-exts-1.18.2/tests/examples/UnicodeArrow.hs.exactprinter.golden0000644000000000000000000000025612746233113025062 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} arrowTest ::String -> String arrowTest input = case input of "hello" ->"world" "world" ->"hello" otherwise ->"unknow" haskell-src-exts-1.18.2/tests/examples/UnicodeArrow.hs.parser.golden0000644000000000000000000002746112746233113023655 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 1 1 9 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 1 1 1 1 , SrcSpan "tests/examples/UnicodeArrow.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeArrow.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeArrow.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeArrow.hs" 4 1 4 1 , SrcSpan "tests/examples/UnicodeArrow.hs" 9 1 9 1 , SrcSpan "tests/examples/UnicodeArrow.hs" 9 1 9 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 1 1 1 13 , SrcSpan "tests/examples/UnicodeArrow.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 1 14 1 27 , srcInfoPoints = [] } "UnicodeSyntax" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 1 3 30 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 3 11 3 12 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 1 3 10 , srcInfoPoints = [] } "arrowTest" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 13 3 30 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 3 20 3 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 13 3 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 13 3 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 13 3 19 , srcInfoPoints = [] } "String"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 24 3 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 24 3 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 3 24 3 30 , srcInfoPoints = [] } "String")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 4 1 8 27 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 4 1 8 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 4 1 4 10 , srcInfoPoints = [] } "arrowTest") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 4 11 4 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 4 11 4 16 , srcInfoPoints = [] } "input") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 4 17 8 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 4 17 4 18 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 5 5 8 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 5 5 5 9 , SrcSpan "tests/examples/UnicodeArrow.hs" 5 16 5 18 , SrcSpan "tests/examples/UnicodeArrow.hs" 6 7 6 7 , SrcSpan "tests/examples/UnicodeArrow.hs" 7 7 7 7 , SrcSpan "tests/examples/UnicodeArrow.hs" 8 7 8 7 , SrcSpan "tests/examples/UnicodeArrow.hs" 9 1 9 0 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 5 10 5 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 5 10 5 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 5 10 5 15 , srcInfoPoints = [] } "input"))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 6 7 6 24 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 6 7 6 14 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 6 7 6 14 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 6 7 6 14 , srcInfoPoints = [] } "hello" "hello")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 6 15 6 24 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 6 15 6 16 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 6 17 6 24 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 6 17 6 24 , srcInfoPoints = [] } "world" "world"))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 7 7 7 24 , srcInfoPoints = [] } (PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 7 7 7 14 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 7 7 7 14 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 7 7 7 14 , srcInfoPoints = [] } "world" "world")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 7 15 7 24 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 7 15 7 16 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 7 17 7 24 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 7 17 7 24 , srcInfoPoints = [] } "hello" "hello"))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 8 7 8 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 8 7 8 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 8 7 8 16 , srcInfoPoints = [] } "otherwise")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 8 17 8 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeArrow.hs" 8 17 8 18 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 8 19 8 27 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeArrow.hs" 8 19 8 27 , srcInfoPoints = [] } "unknow" "unknow"))) Nothing ])) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/UnicodeArrow.hs.prettyparser.golden0000644000000000000000000000000612746233113025107 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnicodeArrow.hs.prettyprinter.golden0000644000000000000000000000026412746233113025304 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} arrowTest :: String -> String arrowTest input = case input of "hello" -> "world" "world" -> "hello" otherwise -> "unknow" haskell-src-exts-1.18.2/tests/examples/UnicodeRelation.hs0000644000000000000000000000071112746233113021563 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} import Prelude.Unicode testAnd ∷ Int → Int → Bool testAnd a b = let b₁ = a ≤ 3 b₂ = b ≥ 5 in b₁ ∧ b₂ testOr ∷ Int → Int → Int → Int → Int → Bool testOr a b c d e = let b₁ = a ≤ 3 b₂ = b ≢ 5 b₃ = c ≮ 5 b₄ = d ≯ 6 b₅ = e ∈ [1,2,3,4] b₆ = e ∉ [5,6,7,8] in b₁ ∨ b₂ ∨ b₃ ∨ b₄ ∨ b₅ ∨ b₆ haskell-src-exts-1.18.2/tests/examples/UnicodeRelation.hs.exactprinter.golden0000644000000000000000000000057412746233113025550 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} import Prelude.Unicode testAnd ::Int ->Int ->Bool testAnd a b = let b = a d 3 b = b e 5 in b ' b testOr ::Int ->Int ->Int ->Int ->Int ->Bool testOr a b c d e = let b = a d 3 b = b b 5 b = c n 5 b = d o 6 b = e  [1,2,3,4] b = e [5,6,7,8] in b ( b ( b ( b ( b ( b haskell-src-exts-1.18.2/tests/examples/UnicodeRelation.hs.parser.golden0000644000000000000000000024354112746233113024337 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 1 1 20 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 1 1 1 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 5 1 5 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 6 1 6 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 11 1 11 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 12 1 12 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 20 1 20 1 , SrcSpan "tests/examples/UnicodeRelation.hs" 20 1 20 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 1 1 1 13 , SrcSpan "tests/examples/UnicodeRelation.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 1 14 1 27 , srcInfoPoints = [] } "UnicodeSyntax" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 3 1 3 23 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 3 1 3 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 3 8 3 23 , srcInfoPoints = [] } "Prelude.Unicode" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Nothing } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 1 5 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 5 9 5 10 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 1 5 8 , srcInfoPoints = [] } "testAnd" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 11 5 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 5 15 5 16 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 11 5 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 11 5 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 11 5 14 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 17 5 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 5 21 5 22 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 17 5 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 17 5 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 17 5 20 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 23 5 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 23 5 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 5 23 5 27 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 6 1 9 15 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 6 1 9 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 6 1 6 8 , srcInfoPoints = [] } "testAnd") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 6 9 6 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 6 9 6 10 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 6 11 6 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 6 11 6 12 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 6 13 9 15 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 6 13 6 14 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 5 9 15 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 7 5 7 8 , SrcSpan "tests/examples/UnicodeRelation.hs" 9 5 9 7 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 9 8 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 7 9 7 9 , SrcSpan "tests/examples/UnicodeRelation.hs" 8 9 8 9 , SrcSpan "tests/examples/UnicodeRelation.hs" 9 5 9 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 9 7 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 9 7 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 9 7 11 , srcInfoPoints = [] } "b\8321")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 12 7 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 7 12 7 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 14 7 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 14 7 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 14 7 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 14 7 15 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 16 7 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 16 7 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 16 7 17 , srcInfoPoints = [] } "\8804"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 18 7 19 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 7 18 7 19 , srcInfoPoints = [] } 3 "3")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 9 8 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 9 8 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 9 8 11 , srcInfoPoints = [] } "b\8322")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 12 8 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 8 12 8 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 14 8 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 14 8 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 14 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 14 8 15 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 16 8 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 16 8 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 16 8 17 , srcInfoPoints = [] } "\8805"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 18 8 19 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 8 18 8 19 , srcInfoPoints = [] } 5 "5")))) Nothing ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 8 9 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 8 9 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 8 9 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 8 9 10 , srcInfoPoints = [] } "b\8321"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 11 9 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 11 9 12 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 11 9 12 , srcInfoPoints = [] } "\8743"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 13 9 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 13 9 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 9 13 9 15 , srcInfoPoints = [] } "b\8322")))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 1 11 44 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 11 8 11 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 1 11 7 , srcInfoPoints = [] } "testOr" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 10 11 44 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 11 14 11 15 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 10 11 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 10 11 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 10 11 13 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 16 11 44 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 11 20 11 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 16 11 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 16 11 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 16 11 19 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 22 11 44 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 11 26 11 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 22 11 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 22 11 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 22 11 25 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 28 11 44 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 11 32 11 33 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 28 11 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 28 11 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 28 11 31 , srcInfoPoints = [] } "Int"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 34 11 44 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 11 38 11 39 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 34 11 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 34 11 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 34 11 37 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 40 11 44 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 40 11 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 11 40 11 44 , srcInfoPoints = [] } "Bool")))))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 1 19 35 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 1 19 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 1 12 7 , srcInfoPoints = [] } "testOr") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 8 12 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 8 12 9 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 10 12 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 10 12 11 , srcInfoPoints = [] } "b") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 12 12 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 12 12 13 , srcInfoPoints = [] } "c") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 14 12 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 14 12 15 , srcInfoPoints = [] } "d") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 16 12 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 16 12 17 , srcInfoPoints = [] } "e") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 12 18 19 35 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 12 18 12 19 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 5 19 35 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 13 5 13 8 , SrcSpan "tests/examples/UnicodeRelation.hs" 19 5 19 7 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 9 18 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 13 9 13 9 , SrcSpan "tests/examples/UnicodeRelation.hs" 14 9 14 9 , SrcSpan "tests/examples/UnicodeRelation.hs" 15 9 15 9 , SrcSpan "tests/examples/UnicodeRelation.hs" 16 9 16 9 , SrcSpan "tests/examples/UnicodeRelation.hs" 17 9 17 9 , SrcSpan "tests/examples/UnicodeRelation.hs" 18 9 18 9 , SrcSpan "tests/examples/UnicodeRelation.hs" 19 5 19 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 9 13 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 9 13 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 9 13 11 , srcInfoPoints = [] } "b\8321")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 12 13 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 13 12 13 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 14 13 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 14 13 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 14 13 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 14 13 15 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 16 13 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 16 13 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 16 13 17 , srcInfoPoints = [] } "\8804"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 18 13 19 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 13 18 13 19 , srcInfoPoints = [] } 3 "3")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 9 14 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 9 14 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 9 14 11 , srcInfoPoints = [] } "b\8322")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 12 14 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 14 12 14 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 14 14 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 14 14 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 14 14 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 14 14 15 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 16 14 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 16 14 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 16 14 17 , srcInfoPoints = [] } "\8802"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 18 14 19 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 14 18 14 19 , srcInfoPoints = [] } 5 "5")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 9 15 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 9 15 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 9 15 11 , srcInfoPoints = [] } "b\8323")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 12 15 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 15 12 15 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 14 15 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 14 15 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 14 15 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 14 15 15 , srcInfoPoints = [] } "c"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 16 15 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 16 15 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 16 15 17 , srcInfoPoints = [] } "\8814"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 18 15 19 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 15 18 15 19 , srcInfoPoints = [] } 5 "5")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 9 16 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 9 16 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 9 16 11 , srcInfoPoints = [] } "b\8324")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 12 16 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 16 12 16 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 14 16 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 14 16 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 14 16 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 14 16 15 , srcInfoPoints = [] } "d"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 16 16 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 16 16 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 16 16 17 , srcInfoPoints = [] } "\8815"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 18 16 19 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 16 18 16 19 , srcInfoPoints = [] } 6 "6")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 9 17 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 9 17 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 9 17 11 , srcInfoPoints = [] } "b\8325")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 12 17 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 17 12 17 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 14 17 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 14 17 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 14 17 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 14 17 15 , srcInfoPoints = [] } "e"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 16 17 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 16 17 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 16 17 17 , srcInfoPoints = [] } "\8712"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 18 17 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 17 18 17 19 , SrcSpan "tests/examples/UnicodeRelation.hs" 17 20 17 21 , SrcSpan "tests/examples/UnicodeRelation.hs" 17 22 17 23 , SrcSpan "tests/examples/UnicodeRelation.hs" 17 24 17 25 , SrcSpan "tests/examples/UnicodeRelation.hs" 17 26 17 27 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 19 17 20 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 19 17 20 , srcInfoPoints = [] } 1 "1") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 21 17 22 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 21 17 22 , srcInfoPoints = [] } 2 "2") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 23 17 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 23 17 24 , srcInfoPoints = [] } 3 "3") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 25 17 26 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 17 25 17 26 , srcInfoPoints = [] } 4 "4") ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 9 18 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 9 18 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 9 18 11 , srcInfoPoints = [] } "b\8326")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 12 18 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 18 12 18 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 14 18 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 14 18 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 14 18 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 14 18 15 , srcInfoPoints = [] } "e"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 16 18 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 16 18 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 16 18 17 , srcInfoPoints = [] } "\8713"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 18 18 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeRelation.hs" 18 18 18 19 , SrcSpan "tests/examples/UnicodeRelation.hs" 18 20 18 21 , SrcSpan "tests/examples/UnicodeRelation.hs" 18 22 18 23 , SrcSpan "tests/examples/UnicodeRelation.hs" 18 24 18 25 , SrcSpan "tests/examples/UnicodeRelation.hs" 18 26 18 27 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 19 18 20 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 19 18 20 , srcInfoPoints = [] } 5 "5") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 21 18 22 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 21 18 22 , srcInfoPoints = [] } 6 "6") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 23 18 24 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 23 18 24 , srcInfoPoints = [] } 7 "7") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 25 18 26 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 18 25 18 26 , srcInfoPoints = [] } 8 "8") ]))) Nothing ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 8 19 35 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 8 19 30 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 8 19 25 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 8 19 20 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 8 19 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 8 19 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 8 19 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 8 19 10 , srcInfoPoints = [] } "b\8321"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 11 19 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 11 19 12 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 11 19 12 , srcInfoPoints = [] } "\8744"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 13 19 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 13 19 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 13 19 15 , srcInfoPoints = [] } "b\8322")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 16 19 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 16 19 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 16 19 17 , srcInfoPoints = [] } "\8744"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 18 19 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 18 19 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 18 19 20 , srcInfoPoints = [] } "b\8323")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 21 19 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 21 19 22 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 21 19 22 , srcInfoPoints = [] } "\8744"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 23 19 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 23 19 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 23 19 25 , srcInfoPoints = [] } "b\8324")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 26 19 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 26 19 27 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 26 19 27 , srcInfoPoints = [] } "\8744"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 28 19 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 28 19 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 28 19 30 , srcInfoPoints = [] } "b\8325")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 31 19 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 31 19 32 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 31 19 32 , srcInfoPoints = [] } "\8744"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 33 19 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 33 19 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeRelation.hs" 19 33 19 35 , srcInfoPoints = [] } "b\8326")))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/UnicodeRelation.hs.prettyparser.golden0000644000000000000000000000000612746233113025572 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnicodeRelation.hs.prettyprinter.golden0000644000000000000000000000061112746233113025763 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} import Prelude.Unicode testAnd :: Int -> Int -> Bool testAnd a b = let b = a d 3 b = b e 5 in b ' b testOr :: Int -> Int -> Int -> Int -> Int -> Bool testOr a b c d e = let b = a d 3 b = b b 5 b = c n 5 b = d o 6 b = e  [1, 2, 3, 4] b = e [5, 6, 7, 8] in b ( b ( b ( b ( b ( b haskell-src-exts-1.18.2/tests/examples/UnicodeSubscript.hs0000644000000000000000000000047312746233113021771 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} module Main where data Point = Point { pointX, pointY ∷ Double , name ∷ String } deriving (Show) distance ∷ Point → Point → Double distance x y = let t₁ = (pointX x - pointX y)^2 t₂ = (pointY x - pointY y)^2 in sqrt $ t₁ + t₂ haskell-src-exts-1.18.2/tests/examples/UnicodeSubscript.hs.exactprinter.golden0000644000000000000000000000045212746233113025744 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} module Main where data Point = Point { pointX, pointY ::Double , name ::String } deriving (Show) distance ::Point ->Point ->Double distance x y = let t = (pointX x - pointX y)^2 t = (pointY x - pointY y)^2 in sqrt $ t + t haskell-src-exts-1.18.2/tests/examples/UnicodeSubscript.hs.parser.golden0000644000000000000000000015051512746233113024536 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 1 1 14 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 1 1 1 1 , SrcSpan "tests/examples/UnicodeSubscript.hs" 2 1 2 1 , SrcSpan "tests/examples/UnicodeSubscript.hs" 2 1 2 1 , SrcSpan "tests/examples/UnicodeSubscript.hs" 4 1 4 1 , SrcSpan "tests/examples/UnicodeSubscript.hs" 9 1 9 1 , SrcSpan "tests/examples/UnicodeSubscript.hs" 10 1 10 1 , SrcSpan "tests/examples/UnicodeSubscript.hs" 14 1 14 1 , SrcSpan "tests/examples/UnicodeSubscript.hs" 14 1 14 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 2 1 2 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 2 1 2 7 , SrcSpan "tests/examples/UnicodeSubscript.hs" 2 13 2 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 2 8 2 12 , srcInfoPoints = [] } "Main") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 1 1 1 13 , SrcSpan "tests/examples/UnicodeSubscript.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 1 14 1 27 , srcInfoPoints = [] } "UnicodeSyntax" ] ] [] [ DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 4 1 7 22 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 4 12 4 13 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 4 1 4 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 4 6 4 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 4 6 4 11 , srcInfoPoints = [] } "Point")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 4 14 7 6 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 5 5 5 6 , SrcSpan "tests/examples/UnicodeSubscript.hs" 6 5 6 6 , SrcSpan "tests/examples/UnicodeSubscript.hs" 7 5 7 6 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 4 14 7 6 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 5 5 5 6 , SrcSpan "tests/examples/UnicodeSubscript.hs" 6 5 6 6 , SrcSpan "tests/examples/UnicodeSubscript.hs" 7 5 7 6 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 4 14 4 19 , srcInfoPoints = [] } "Point") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 5 7 5 30 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 5 13 5 14 , SrcSpan "tests/examples/UnicodeSubscript.hs" 5 22 5 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 5 7 5 13 , srcInfoPoints = [] } "pointX" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 5 15 5 21 , srcInfoPoints = [] } "pointY" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 5 24 5 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 5 24 5 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 5 24 5 30 , srcInfoPoints = [] } "Double"))) , FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 6 7 6 30 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 6 22 6 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 6 7 6 11 , srcInfoPoints = [] } "name" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 6 24 6 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 6 24 6 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 6 24 6 30 , srcInfoPoints = [] } "String"))) ]) ] (Just (Deriving SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 7 7 7 22 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 7 7 7 15 ] } [ IParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 7 16 7 22 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 7 16 7 17 , SrcSpan "tests/examples/UnicodeSubscript.hs" 7 21 7 22 ] } (IRule SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 7 17 7 21 , srcInfoPoints = [] } Nothing Nothing (IHCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 7 17 7 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 7 17 7 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 7 17 7 21 , srcInfoPoints = [] } "Show")))) ])) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 1 9 34 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 9 10 9 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 1 9 9 , srcInfoPoints = [] } "distance" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 12 9 34 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 9 18 9 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 12 9 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 12 9 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 12 9 17 , srcInfoPoints = [] } "Point"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 20 9 34 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 9 26 9 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 20 9 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 20 9 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 20 9 25 , srcInfoPoints = [] } "Point"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 28 9 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 28 9 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 9 28 9 34 , srcInfoPoints = [] } "Double"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 10 1 13 22 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 10 1 13 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 10 1 10 9 , srcInfoPoints = [] } "distance") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 10 10 10 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 10 10 10 11 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 10 12 10 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 10 12 10 13 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 10 14 13 22 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 10 14 10 15 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 5 13 22 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 11 5 11 8 , SrcSpan "tests/examples/UnicodeSubscript.hs" 13 5 13 7 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 9 12 37 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 11 9 11 9 , SrcSpan "tests/examples/UnicodeSubscript.hs" 12 9 12 9 , SrcSpan "tests/examples/UnicodeSubscript.hs" 13 5 13 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 9 11 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 9 11 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 9 11 11 , srcInfoPoints = [] } "t\8321")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 12 11 37 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 11 12 11 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 14 11 37 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 14 11 35 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 11 14 11 15 , SrcSpan "tests/examples/UnicodeSubscript.hs" 11 34 11 35 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 15 11 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 15 11 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 15 11 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 15 11 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 15 11 21 , srcInfoPoints = [] } "pointX"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 22 11 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 22 11 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 22 11 23 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 24 11 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 24 11 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 24 11 25 , srcInfoPoints = [] } "-"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 26 11 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 26 11 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 26 11 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 26 11 32 , srcInfoPoints = [] } "pointX"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 33 11 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 33 11 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 33 11 34 , srcInfoPoints = [] } "y")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 35 11 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 35 11 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 35 11 36 , srcInfoPoints = [] } "^"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 36 11 37 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 11 36 11 37 , srcInfoPoints = [] } 2 "2")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 9 12 37 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 9 12 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 9 12 11 , srcInfoPoints = [] } "t\8322")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 12 12 37 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 12 12 12 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 14 12 37 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 14 12 35 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSubscript.hs" 12 14 12 15 , SrcSpan "tests/examples/UnicodeSubscript.hs" 12 34 12 35 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 15 12 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 15 12 23 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 15 12 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 15 12 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 15 12 21 , srcInfoPoints = [] } "pointY"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 22 12 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 22 12 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 22 12 23 , srcInfoPoints = [] } "x")))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 24 12 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 24 12 25 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 24 12 25 , srcInfoPoints = [] } "-"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 26 12 34 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 26 12 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 26 12 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 26 12 32 , srcInfoPoints = [] } "pointY"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 33 12 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 33 12 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 33 12 34 , srcInfoPoints = [] } "y")))))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 35 12 36 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 35 12 36 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 35 12 36 , srcInfoPoints = [] } "^"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 36 12 37 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 12 36 12 37 , srcInfoPoints = [] } 2 "2")))) Nothing ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 8 13 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 8 13 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 8 13 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 8 13 12 , srcInfoPoints = [] } "sqrt"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 13 13 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 13 13 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 13 13 14 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 15 13 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 15 13 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 15 13 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 15 13 17 , srcInfoPoints = [] } "t\8321"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 18 13 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 18 13 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 18 13 19 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 20 13 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 20 13 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSubscript.hs" 13 20 13 22 , srcInfoPoints = [] } "t\8322"))))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/UnicodeSubscript.hs.prettyparser.golden0000644000000000000000000000000612746233113025773 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnicodeSubscript.hs.prettyprinter.golden0000644000000000000000000000044312746233113026167 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} module Main where data Point = Point{pointX, pointY :: Double, name :: String} deriving (Show) distance :: Point -> Point -> Double distance x y = let t = (pointX x - pointX y) ^ 2 t = (pointY x - pointY y) ^ 2 in sqrt $ t + t haskell-src-exts-1.18.2/tests/examples/UnicodeSuperscript.hs0000644000000000000000000000022512746233113022331 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} dumy ∷ Double → Double → Double dumy a b = let a² = a ★ a b² = b ★ b in sqrt $ a² + b² haskell-src-exts-1.18.2/tests/examples/UnicodeSuperscript.hs.exactprinter.golden0000644000000000000000000000021012746233113026301 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} dumy ::Double ->Double ->Double dumy a b = let a = a  a b = b  b in sqrt $ a + b haskell-src-exts-1.18.2/tests/examples/UnicodeSuperscript.hs.parser.golden0000644000000000000000000005660012746233113025103 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 1 1 8 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 1 1 1 1 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 1 3 1 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 1 4 1 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 8 1 8 1 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 8 1 8 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 1 1 1 31 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 1 1 1 13 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 1 28 1 31 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 1 14 1 27 , srcInfoPoints = [] } "UnicodeSyntax" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 1 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 6 3 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 1 3 5 , srcInfoPoints = [] } "dumy" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 8 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 15 3 16 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 8 3 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 8 3 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 8 3 14 , srcInfoPoints = [] } "Double"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 17 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 24 3 25 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 17 3 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 17 3 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 17 3 23 , srcInfoPoints = [] } "Double"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 26 3 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 26 3 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 3 26 3 32 , srcInfoPoints = [] } "Double"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 1 7 22 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 1 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 1 4 5 , srcInfoPoints = [] } "dumy") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 6 4 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 6 4 7 , srcInfoPoints = [] } "a") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 8 4 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 8 4 9 , srcInfoPoints = [] } "b") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 10 7 22 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 4 10 4 11 ] } (Let SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 5 7 22 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 5 5 8 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 5 7 7 ] } (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 9 6 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 9 5 9 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 9 6 9 , SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 5 7 0 ] } [ PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 9 5 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 9 5 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 9 5 11 , srcInfoPoints = [] } "a\178")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 12 5 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 12 5 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 14 5 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 14 5 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 14 5 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 14 5 15 , srcInfoPoints = [] } "a"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 16 5 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 16 5 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 16 5 17 , srcInfoPoints = [] } "\9733"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 18 5 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 18 5 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 5 18 5 19 , srcInfoPoints = [] } "a"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 9 6 19 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 9 6 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 9 6 11 , srcInfoPoints = [] } "b\178")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 12 6 19 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 12 6 13 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 14 6 19 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 14 6 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 14 6 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 14 6 15 , srcInfoPoints = [] } "b"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 16 6 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 16 6 17 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 16 6 17 , srcInfoPoints = [] } "\9733"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 18 6 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 18 6 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 6 18 6 19 , srcInfoPoints = [] } "b"))))) Nothing ]) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 8 7 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 8 7 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 8 7 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 8 7 12 , srcInfoPoints = [] } "sqrt"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 13 7 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 13 7 14 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 13 7 14 , srcInfoPoints = [] } "$"))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 15 7 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 15 7 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 15 7 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 15 7 17 , srcInfoPoints = [] } "a\178"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 18 7 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 18 7 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 18 7 19 , srcInfoPoints = [] } "+"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 20 7 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 20 7 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSuperscript.hs" 7 20 7 22 , srcInfoPoints = [] } "b\178"))))))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/UnicodeSuperscript.hs.prettyparser.golden0000644000000000000000000000000612746233113026340 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnicodeSuperscript.hs.prettyprinter.golden0000644000000000000000000000021212746233113026526 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax #-} dumy :: Double -> Double -> Double dumy a b = let a = a  a b = b  b in sqrt $ a + b haskell-src-exts-1.18.2/tests/examples/UnicodeSyntax.hs0000644000000000000000000000037112746233113021276 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax, ExplicitForAll #-} module UnicodeSyntax where import System.Environment (getArgs) main ∷ IO () main = do as ← getArgs print $ test 0 test ∷ Int → Bool test x = x*5 == x+8 id1 ∷ ∀ a . a → a id1 x = x haskell-src-exts-1.18.2/tests/examples/UnicodeSyntax.hs.exactprinter.golden0000644000000000000000000000035512746233113025256 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax, ExplicitForAll #-} module UnicodeSyntax where import System.Environment (getArgs) main ::IO () main = do as <-getArgs print $ test 0 test ::Int ->Bool test x = x*5 == x+8 id1 ::foralla.a->a id1 x = x haskell-src-exts-1.18.2/tests/examples/UnicodeSyntax.hs.parser.golden0000644000000000000000000006766112746233113024057 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 1 1 16 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 1 1 1 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 2 1 2 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 2 1 2 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 4 1 4 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 6 1 6 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 7 1 7 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 11 1 11 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 12 1 12 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 14 1 14 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 15 1 15 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 16 1 16 1 , SrcSpan "tests/examples/UnicodeSyntax.hs" 16 1 16 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 2 1 2 27 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 2 1 2 7 , SrcSpan "tests/examples/UnicodeSyntax.hs" 2 22 2 27 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 2 8 2 21 , srcInfoPoints = [] } "UnicodeSyntax") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 1 1 1 47 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 1 1 1 13 , SrcSpan "tests/examples/UnicodeSyntax.hs" 1 27 1 28 , SrcSpan "tests/examples/UnicodeSyntax.hs" 1 44 1 47 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 1 14 1 27 , srcInfoPoints = [] } "UnicodeSyntax" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 1 29 1 43 , srcInfoPoints = [] } "ExplicitForAll" ] ] [ ImportDecl { importAnn = SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 1 4 36 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 4 1 4 7 ] } , importModule = ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 8 4 26 , srcInfoPoints = [] } "System.Environment" , importQualified = False , importSrc = False , importSafe = False , importPkg = Nothing , importAs = Nothing , importSpecs = Just (ImportSpecList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 27 4 36 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 4 27 4 28 , SrcSpan "tests/examples/UnicodeSyntax.hs" 4 35 4 36 ] } False [ IVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 28 4 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 4 28 4 35 , srcInfoPoints = [] } "getArgs") ]) } ] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 1 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 6 6 6 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 1 6 5 , srcInfoPoints = [] } "main" ] (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 8 6 13 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 8 6 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 8 6 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 8 6 10 , srcInfoPoints = [] } "IO"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 12 , SrcSpan "tests/examples/UnicodeSyntax.hs" 6 12 6 13 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 12 , SrcSpan "tests/examples/UnicodeSyntax.hs" 6 12 6 13 ] } (UnitCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 13 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 6 11 6 12 , SrcSpan "tests/examples/UnicodeSyntax.hs" 6 12 6 13 ] })))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 1 9 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 1 7 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 1 7 5 , srcInfoPoints = [] } "main")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 6 9 17 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 7 6 7 7 ] } (Do SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 7 8 9 17 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 7 8 7 10 , SrcSpan "tests/examples/UnicodeSyntax.hs" 8 3 8 3 , SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 3 , SrcSpan "tests/examples/UnicodeSyntax.hs" 11 1 11 0 ] } [ Generator SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 3 8 15 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 8 6 8 7 ] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 3 8 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 3 8 5 , srcInfoPoints = [] } "as")) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 8 8 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 8 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 8 8 8 15 , srcInfoPoints = [] } "getArgs"))) , Qualifier SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 17 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 3 9 8 , srcInfoPoints = [] } "print"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 9 9 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 9 9 10 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 9 9 10 , srcInfoPoints = [] } "$"))) (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 11 9 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 11 9 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 11 9 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 11 9 15 , srcInfoPoints = [] } "test"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 16 9 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 9 16 9 17 , srcInfoPoints = [] } 0 "0")))) ])) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 1 11 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 11 6 11 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 1 11 5 , srcInfoPoints = [] } "test" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 8 11 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 11 12 11 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 8 11 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 8 11 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 8 11 11 , srcInfoPoints = [] } "Int"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 14 11 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 14 11 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 11 14 11 18 , srcInfoPoints = [] } "Bool")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 1 12 20 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 1 12 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 1 12 5 , srcInfoPoints = [] } "test") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 6 12 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 6 12 7 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 8 12 20 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 12 8 12 9 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 20 , srcInfoPoints = [] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 10 12 11 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 11 12 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 11 12 12 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 11 12 12 , srcInfoPoints = [] } "*"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 12 12 13 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 12 12 13 , srcInfoPoints = [] } 5 "5"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 14 12 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 14 12 16 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 14 12 16 , srcInfoPoints = [] } "=="))) (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 17 12 20 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 17 12 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 17 12 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 17 12 18 , srcInfoPoints = [] } "x"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 18 12 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 18 12 19 , srcInfoPoints = [] } (Symbol SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 18 12 19 , srcInfoPoints = [] } "+"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 19 12 20 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 12 19 12 20 , srcInfoPoints = [] } 8 "8"))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 1 14 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 14 5 14 6 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 1 14 4 , srcInfoPoints = [] } "id1" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 7 14 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 14 7 14 8 , SrcSpan "tests/examples/UnicodeSyntax.hs" 14 11 14 12 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 9 14 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 9 14 10 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 13 14 18 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 14 15 14 16 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 13 14 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 13 14 14 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 17 14 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 14 17 14 18 , srcInfoPoints = [] } "a")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 1 15 10 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 1 15 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 1 15 4 , srcInfoPoints = [] } "id1") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 5 15 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 5 15 6 , srcInfoPoints = [] } "x") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 7 15 10 , srcInfoPoints = [ SrcSpan "tests/examples/UnicodeSyntax.hs" 15 7 15 8 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 9 15 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 9 15 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnicodeSyntax.hs" 15 9 15 10 , srcInfoPoints = [] } "x")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/UnicodeSyntax.hs.prettyparser.golden0000644000000000000000000000000612746233113025303 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnicodeSyntax.hs.prettyprinter.golden0000644000000000000000000000037612746233113025504 0ustar0000000000000000{-# LANGUAGE UnicodeSyntax, ExplicitForAll #-} module UnicodeSyntax where import System.Environment (getArgs) main :: IO () main = do as <- getArgs print $ test 0 test :: Int -> Bool test x = x * 5 == x + 8 id1 :: forall a . a -> a id1 x = x haskell-src-exts-1.18.2/tests/examples/UnindentedPragmaClose.hs0000644000000000000000000000006612746233113022715 0ustar0000000000000000{-# LANGUAGE MultiParamTypeClasses #-} f :: Int f = 4 haskell-src-exts-1.18.2/tests/examples/UnindentedPragmaClose.hs.exactprinter.golden0000644000000000000000000000000612746233113026665 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnindentedPragmaClose.hs.parser.golden0000644000000000000000000000774412746233113025471 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/UnindentedPragmaClose.hs" 1 1 1 1 , SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 1 3 1 , SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 1 3 1 , SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 1 3 1 , SrcSpan "tests/examples/UnindentedPragmaClose.hs" 4 1 4 1 , SrcSpan "tests/examples/UnindentedPragmaClose.hs" 5 1 5 1 , SrcSpan "tests/examples/UnindentedPragmaClose.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 1 1 2 4 , srcInfoPoints = [ SrcSpan "tests/examples/UnindentedPragmaClose.hs" 1 1 1 13 , SrcSpan "tests/examples/UnindentedPragmaClose.hs" 2 1 2 1 , SrcSpan "tests/examples/UnindentedPragmaClose.hs" 2 1 2 4 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 1 14 1 35 , srcInfoPoints = [] } "MultiParamTypeClasses" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 1 3 9 , srcInfoPoints = [ SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 3 3 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 1 3 2 , srcInfoPoints = [] } "f" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 6 3 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 6 3 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 3 6 3 9 , srcInfoPoints = [] } "Int"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 4 1 4 6 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 4 1 4 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 4 1 4 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 4 3 4 6 , srcInfoPoints = [ SrcSpan "tests/examples/UnindentedPragmaClose.hs" 4 3 4 4 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 4 5 4 6 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/UnindentedPragmaClose.hs" 4 5 4 6 , srcInfoPoints = [] } 4 "4"))) Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/UnindentedPragmaClose.hs.prettyparser.golden0000644000000000000000000000000612746233113026721 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/UnindentedPragmaClose.hs.prettyprinter.golden0000644000000000000000000000006712746233113027117 0ustar0000000000000000{-# LANGUAGE MultiParamTypeClasses #-} f :: Int f = 4 haskell-src-exts-1.18.2/tests/examples/Unpack.hs0000644000000000000000000000021012746233113017712 0ustar0000000000000000{-# LANGUAGE GADTs #-} data CmmNode e x where CmmEntry :: {-# UNPACK #-} !Int -> CmmNode e x data UI = UI {-# UNPACK #-} !Int haskell-src-exts-1.18.2/tests/examples/Unpack.hs.exactprinter.golden0000644000000000000000000000000612746233113023673 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Unpack.hs.parser.golden0000644000000000000000000002537112746233113022473 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 1 1 7 1 , srcInfoPoints = [ SrcSpan "tests/examples/Unpack.hs" 1 1 1 1 , SrcSpan "tests/examples/Unpack.hs" 3 1 3 1 , SrcSpan "tests/examples/Unpack.hs" 3 1 3 1 , SrcSpan "tests/examples/Unpack.hs" 3 1 3 1 , SrcSpan "tests/examples/Unpack.hs" 6 1 6 1 , SrcSpan "tests/examples/Unpack.hs" 7 1 7 1 , SrcSpan "tests/examples/Unpack.hs" 7 1 7 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 1 1 1 23 , srcInfoPoints = [ SrcSpan "tests/examples/Unpack.hs" 1 1 1 13 , SrcSpan "tests/examples/Unpack.hs" 1 20 1 23 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 1 14 1 19 , srcInfoPoints = [] } "GADTs" ] ] [] [ GDataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 1 6 0 , srcInfoPoints = [ SrcSpan "tests/examples/Unpack.hs" 3 18 3 23 , SrcSpan "tests/examples/Unpack.hs" 4 9 4 9 , SrcSpan "tests/examples/Unpack.hs" 6 1 6 0 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 1 3 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 6 3 17 , srcInfoPoints = [] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 6 3 15 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 6 3 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 6 3 13 , srcInfoPoints = [] } "CmmNode")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 14 3 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 14 3 15 , srcInfoPoints = [] } "e"))) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 16 3 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 3 16 3 17 , srcInfoPoints = [] } "x"))) Nothing [ GadtDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 9 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/Unpack.hs" 4 18 4 20 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 9 4 17 , srcInfoPoints = [] } "CmmEntry") Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 21 4 55 , srcInfoPoints = [ SrcSpan "tests/examples/Unpack.hs" 4 41 4 43 ] } (TyBang SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 21 4 40 , srcInfoPoints = [] } (BangedTy SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 36 4 37 , srcInfoPoints = [] }) (Unpack SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 21 4 35 , srcInfoPoints = [ SrcSpan "tests/examples/Unpack.hs" 4 21 4 31 , SrcSpan "tests/examples/Unpack.hs" 4 32 4 35 ] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 37 4 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 37 4 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 37 4 40 , srcInfoPoints = [] } "Int")))) (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 44 4 55 , srcInfoPoints = [] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 44 4 53 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 44 4 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 44 4 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 44 4 51 , srcInfoPoints = [] } "CmmNode"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 52 4 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 52 4 53 , srcInfoPoints = [] } "e"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 54 4 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 4 54 4 55 , srcInfoPoints = [] } "x")))) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 1 6 33 , srcInfoPoints = [ SrcSpan "tests/examples/Unpack.hs" 6 9 6 10 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 1 6 5 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 6 6 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 6 6 8 , srcInfoPoints = [] } "UI")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 11 6 33 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 11 6 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 11 6 13 , srcInfoPoints = [] } "UI") [ TyBang SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 14 6 33 , srcInfoPoints = [] } (BangedTy SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 29 6 30 , srcInfoPoints = [] }) (Unpack SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 14 6 28 , srcInfoPoints = [ SrcSpan "tests/examples/Unpack.hs" 6 14 6 24 , SrcSpan "tests/examples/Unpack.hs" 6 25 6 28 ] }) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 30 6 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 30 6 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Unpack.hs" 6 30 6 33 , srcInfoPoints = [] } "Int"))) ]) ] Nothing ] , [] ) haskell-src-exts-1.18.2/tests/examples/Unpack.hs.prettyparser.golden0000644000000000000000000000000612746233113023727 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Unpack.hs.prettyprinter.golden0000644000000000000000000000021012746233113024113 0ustar0000000000000000{-# LANGUAGE GADTs #-} data CmmNode e x where CmmEntry :: {-# UNPACK #-} !Int -> CmmNode e x data UI = UI {-# UNPACK #-} !Int haskell-src-exts-1.18.2/tests/examples/ViewPatterns.hs0000644000000000000000000000012012746233113021124 0ustar0000000000000000{-# LANGUAGE ViewPatterns #-} f (id -> Just _) "" = "" g (id -> True) = False haskell-src-exts-1.18.2/tests/examples/ViewPatterns.hs.exactprinter.golden0000644000000000000000000000000612746233113025105 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ViewPatterns.hs.parser.golden0000644000000000000000000002264712746233113023710 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 1 1 6 1 , srcInfoPoints = [ SrcSpan "tests/examples/ViewPatterns.hs" 1 1 1 1 , SrcSpan "tests/examples/ViewPatterns.hs" 2 1 2 1 , SrcSpan "tests/examples/ViewPatterns.hs" 2 1 2 1 , SrcSpan "tests/examples/ViewPatterns.hs" 2 1 2 1 , SrcSpan "tests/examples/ViewPatterns.hs" 4 1 4 1 , SrcSpan "tests/examples/ViewPatterns.hs" 6 1 6 1 , SrcSpan "tests/examples/ViewPatterns.hs" 6 1 6 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/ViewPatterns.hs" 1 1 1 13 , SrcSpan "tests/examples/ViewPatterns.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 1 14 1 26 , srcInfoPoints = [] } "ViewPatterns" ] ] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 1 2 25 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 1 2 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 1 2 2 , srcInfoPoints = [] } "f") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 3 2 17 , srcInfoPoints = [ SrcSpan "tests/examples/ViewPatterns.hs" 2 3 2 4 , SrcSpan "tests/examples/ViewPatterns.hs" 2 16 2 17 ] } (PViewPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 4 2 16 , srcInfoPoints = [ SrcSpan "tests/examples/ViewPatterns.hs" 2 7 2 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 4 2 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 4 2 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 4 2 6 , srcInfoPoints = [] } "id"))) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 10 2 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 10 2 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 10 2 14 , srcInfoPoints = [] } "Just")) [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 15 2 16 , srcInfoPoints = [] } ])) , PLit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 18 2 20 , srcInfoPoints = [] } (Signless SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 18 2 20 , srcInfoPoints = [] }) (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 18 2 20 , srcInfoPoints = [] } "" "") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 21 2 25 , srcInfoPoints = [ SrcSpan "tests/examples/ViewPatterns.hs" 2 21 2 22 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 23 2 25 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 2 23 2 25 , srcInfoPoints = [] } "" ""))) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 1 4 23 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 1 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 1 4 2 , srcInfoPoints = [] } "g") [ PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 3 4 15 , srcInfoPoints = [ SrcSpan "tests/examples/ViewPatterns.hs" 4 3 4 4 , SrcSpan "tests/examples/ViewPatterns.hs" 4 14 4 15 ] } (PViewPat SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 4 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/ViewPatterns.hs" 4 7 4 9 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 4 4 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 4 4 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 4 4 6 , srcInfoPoints = [] } "id"))) (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 10 4 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 10 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 10 4 14 , srcInfoPoints = [] } "True")) [])) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 16 4 23 , srcInfoPoints = [ SrcSpan "tests/examples/ViewPatterns.hs" 4 16 4 17 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 18 4 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 18 4 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/ViewPatterns.hs" 4 18 4 23 , srcInfoPoints = [] } "False")))) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/ViewPatterns.hs.prettyparser.golden0000644000000000000000000000000612746233113025141 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/ViewPatterns.hs.prettyprinter.golden0000644000000000000000000000011612746233113025332 0ustar0000000000000000{-# LANGUAGE ViewPatterns #-} f (id -> Just _) "" = "" g (id -> True) = False haskell-src-exts-1.18.2/tests/examples/Vta1.hs0000644000000000000000000000376612746233113017327 0ustar0000000000000000{-# LANGUAGE TypeApplications, ScopedTypeVariables, PolyKinds, TypeFamilies, RankNTypes, FlexibleContexts #-} -- tests about visible type application module Vta1 where quad :: a -> b -> c -> d -> (a, b, c, d) quad = (,,,) silly = quad @_ @Bool @Char @_ 5 True 'a' "Hello" pairup_nosig x y = (x, y) pairup_sig :: a -> b -> (a,b) pairup_sig u w = (u, w) answer_sig = pairup_sig @Bool @Int False 7 -- -- (False, 7) :: (Bool, Int) answer_read = show (read @Int "3") -- "3" :: String answer_show = show @Integer (read "5") -- "5" :: String answer_showread = show @Int (read @Int "7") -- "7" :: String intcons a = (:) @Int a intpair x y = pairup_sig @Int x y answer_pairup = pairup_sig @Int 5 True -- (5, True) :: (Int, Bool) answer_intpair = intpair 1 "hello" -- (1, "hello") :: (Int, String) answer_intcons = intcons 7 [] -- [7] :: [Int] type family F a type instance F Char = Bool g :: F a -> a g _ = undefined f :: Char f = g True answer = g @Char False mapSame :: forall b. (forall a. a -> a) -> [b] -> [b] mapSame _ [] = [] mapSame fun (x:xs) = fun @b x : (mapSame @b fun xs) pair :: forall a. a-> (forall b. b -> (a, b)) pair x y = (x, y) b = pair @Int 3 @Bool True c = mapSame id [1,2,3] d = pair 3 @Bool True pairnum :: forall a. Num a => forall b. b -> (a, b) pairnum = pair 3 e = (pair 3 :: forall a. Num a => forall b. b -> (a, b)) @Int @Bool True h = pairnum @Int @Bool True data First (a :: * -> *) = F data Proxy (a :: k) = P -- This expands to P (kind variable) (type variable) data Three (a :: * -> k -> *) = T foo :: Proxy a -> Int foo _ = 0 first :: First a -> Int first _ = 0 fTest = first F fMaybe = first @Maybe F test = foo P bar = foo @Bool P -- should work too :: Three a -> Int too _ = 3 threeBase = too T threeOk = too @Either T blah = Nothing @Int newtype N = MkN { unMkN :: forall a. Show a => a -> String } n = MkN show boo = unMkN n @Bool boo2 :: forall (a :: * -> *) . Proxy a -> Bool boo2 _ = False base = boo2 P bar'= boo2 @Maybe P -- should work haskell-src-exts-1.18.2/tests/examples/Vta1.hs.exactprinter.golden0000644000000000000000000000000612746233113023265 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Vta1.hs.parser.golden0000644000000000000000000071610212746233113022064 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 1 1 96 1 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 1 1 1 1 , SrcSpan "tests/examples/Vta1.hs" 6 1 6 1 , SrcSpan "tests/examples/Vta1.hs" 6 1 6 1 , SrcSpan "tests/examples/Vta1.hs" 8 1 8 1 , SrcSpan "tests/examples/Vta1.hs" 9 1 9 1 , SrcSpan "tests/examples/Vta1.hs" 11 1 11 1 , SrcSpan "tests/examples/Vta1.hs" 13 1 13 1 , SrcSpan "tests/examples/Vta1.hs" 15 1 15 1 , SrcSpan "tests/examples/Vta1.hs" 16 1 16 1 , SrcSpan "tests/examples/Vta1.hs" 18 1 18 1 , SrcSpan "tests/examples/Vta1.hs" 21 1 21 1 , SrcSpan "tests/examples/Vta1.hs" 22 1 22 1 , SrcSpan "tests/examples/Vta1.hs" 23 1 23 1 , SrcSpan "tests/examples/Vta1.hs" 25 1 25 1 , SrcSpan "tests/examples/Vta1.hs" 27 1 27 1 , SrcSpan "tests/examples/Vta1.hs" 29 1 29 1 , SrcSpan "tests/examples/Vta1.hs" 30 1 30 1 , SrcSpan "tests/examples/Vta1.hs" 31 1 31 1 , SrcSpan "tests/examples/Vta1.hs" 33 1 33 1 , SrcSpan "tests/examples/Vta1.hs" 34 1 34 1 , SrcSpan "tests/examples/Vta1.hs" 36 1 36 1 , SrcSpan "tests/examples/Vta1.hs" 37 1 37 1 , SrcSpan "tests/examples/Vta1.hs" 39 1 39 1 , SrcSpan "tests/examples/Vta1.hs" 40 1 40 1 , SrcSpan "tests/examples/Vta1.hs" 42 1 42 1 , SrcSpan "tests/examples/Vta1.hs" 44 1 44 1 , SrcSpan "tests/examples/Vta1.hs" 45 1 45 1 , SrcSpan "tests/examples/Vta1.hs" 46 1 46 1 , SrcSpan "tests/examples/Vta1.hs" 48 1 48 1 , SrcSpan "tests/examples/Vta1.hs" 49 1 49 1 , SrcSpan "tests/examples/Vta1.hs" 51 1 51 1 , SrcSpan "tests/examples/Vta1.hs" 52 1 52 1 , SrcSpan "tests/examples/Vta1.hs" 53 1 53 1 , SrcSpan "tests/examples/Vta1.hs" 55 1 55 1 , SrcSpan "tests/examples/Vta1.hs" 56 1 56 1 , SrcSpan "tests/examples/Vta1.hs" 58 1 58 1 , SrcSpan "tests/examples/Vta1.hs" 59 1 59 1 , SrcSpan "tests/examples/Vta1.hs" 61 1 61 1 , SrcSpan "tests/examples/Vta1.hs" 62 1 62 1 , SrcSpan "tests/examples/Vta1.hs" 63 1 63 1 , SrcSpan "tests/examples/Vta1.hs" 65 1 65 1 , SrcSpan "tests/examples/Vta1.hs" 66 1 66 1 , SrcSpan "tests/examples/Vta1.hs" 68 1 68 1 , SrcSpan "tests/examples/Vta1.hs" 69 1 69 1 , SrcSpan "tests/examples/Vta1.hs" 71 1 71 1 , SrcSpan "tests/examples/Vta1.hs" 72 1 72 1 , SrcSpan "tests/examples/Vta1.hs" 74 1 74 1 , SrcSpan "tests/examples/Vta1.hs" 75 1 75 1 , SrcSpan "tests/examples/Vta1.hs" 77 1 77 1 , SrcSpan "tests/examples/Vta1.hs" 78 1 78 1 , SrcSpan "tests/examples/Vta1.hs" 80 1 80 1 , SrcSpan "tests/examples/Vta1.hs" 81 1 81 1 , SrcSpan "tests/examples/Vta1.hs" 83 1 83 1 , SrcSpan "tests/examples/Vta1.hs" 85 1 85 1 , SrcSpan "tests/examples/Vta1.hs" 87 1 87 1 , SrcSpan "tests/examples/Vta1.hs" 89 1 89 1 , SrcSpan "tests/examples/Vta1.hs" 91 1 91 1 , SrcSpan "tests/examples/Vta1.hs" 92 1 92 1 , SrcSpan "tests/examples/Vta1.hs" 94 1 94 1 , SrcSpan "tests/examples/Vta1.hs" 95 1 95 1 , SrcSpan "tests/examples/Vta1.hs" 96 1 96 1 , SrcSpan "tests/examples/Vta1.hs" 96 1 96 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 6 1 6 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 6 1 6 7 , SrcSpan "tests/examples/Vta1.hs" 6 13 6 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 6 8 6 12 , srcInfoPoints = [] } "Vta1") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 1 1 3 34 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 1 1 1 13 , SrcSpan "tests/examples/Vta1.hs" 1 30 1 31 , SrcSpan "tests/examples/Vta1.hs" 1 51 1 52 , SrcSpan "tests/examples/Vta1.hs" 1 62 1 63 , SrcSpan "tests/examples/Vta1.hs" 2 26 2 27 , SrcSpan "tests/examples/Vta1.hs" 2 38 2 39 , SrcSpan "tests/examples/Vta1.hs" 3 31 3 34 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 1 14 1 30 , srcInfoPoints = [] } "TypeApplications" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 1 32 1 51 , srcInfoPoints = [] } "ScopedTypeVariables" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 1 53 1 62 , srcInfoPoints = [] } "PolyKinds" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 2 14 2 26 , srcInfoPoints = [] } "TypeFamilies" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 2 28 2 38 , srcInfoPoints = [] } "RankNTypes" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 3 14 3 30 , srcInfoPoints = [] } "FlexibleContexts" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 1 8 41 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 8 6 8 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 1 8 5 , srcInfoPoints = [] } "quad" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 9 8 41 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 8 11 8 13 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 9 8 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 9 8 10 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 14 8 41 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 8 16 8 18 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 14 8 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 14 8 15 , srcInfoPoints = [] } "b")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 19 8 41 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 8 21 8 23 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 19 8 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 19 8 20 , srcInfoPoints = [] } "c")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 24 8 41 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 8 26 8 28 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 24 8 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 24 8 25 , srcInfoPoints = [] } "d")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 29 8 41 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 8 29 8 30 , SrcSpan "tests/examples/Vta1.hs" 8 31 8 32 , SrcSpan "tests/examples/Vta1.hs" 8 34 8 35 , SrcSpan "tests/examples/Vta1.hs" 8 37 8 38 , SrcSpan "tests/examples/Vta1.hs" 8 40 8 41 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 30 8 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 30 8 31 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 33 8 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 33 8 34 , srcInfoPoints = [] } "b") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 36 8 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 36 8 37 , srcInfoPoints = [] } "c") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 39 8 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 8 39 8 40 , srcInfoPoints = [] } "d") ]))))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 9 1 9 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 9 1 9 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 9 1 9 5 , srcInfoPoints = [] } "quad")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 9 6 9 13 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 9 6 9 7 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 9 8 9 13 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 9 8 9 9 , SrcSpan "tests/examples/Vta1.hs" 9 9 9 10 , SrcSpan "tests/examples/Vta1.hs" 9 10 9 11 , SrcSpan "tests/examples/Vta1.hs" 9 11 9 12 , SrcSpan "tests/examples/Vta1.hs" 9 12 9 13 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 9 8 9 13 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 9 8 9 9 , SrcSpan "tests/examples/Vta1.hs" 9 9 9 10 , SrcSpan "tests/examples/Vta1.hs" 9 10 9 11 , SrcSpan "tests/examples/Vta1.hs" 9 11 9 12 , SrcSpan "tests/examples/Vta1.hs" 9 12 9 13 ] } (TupleCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 9 8 9 13 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 9 8 9 9 , SrcSpan "tests/examples/Vta1.hs" 9 9 9 10 , SrcSpan "tests/examples/Vta1.hs" 9 10 9 11 , SrcSpan "tests/examples/Vta1.hs" 9 11 9 12 , SrcSpan "tests/examples/Vta1.hs" 9 12 9 13 ] } Boxed 4)))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 1 11 50 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 1 11 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 1 11 6 , srcInfoPoints = [] } "silly")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 7 11 50 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 11 7 11 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 38 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 33 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 31 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 22 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 9 11 13 , srcInfoPoints = [] } "quad"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 14 11 16 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 11 14 11 15 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 15 11 16 , srcInfoPoints = [] } Nothing))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 17 11 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 11 17 11 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 18 11 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 18 11 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 18 11 22 , srcInfoPoints = [] } "Bool"))))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 23 11 28 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 11 23 11 24 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 24 11 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 24 11 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 24 11 28 , srcInfoPoints = [] } "Char"))))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 29 11 31 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 11 29 11 30 ] } (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 30 11 31 , srcInfoPoints = [] } Nothing))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 32 11 33 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 32 11 33 , srcInfoPoints = [] } 5 "5"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 34 11 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 34 11 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 34 11 38 , srcInfoPoints = [] } "True")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 39 11 42 , srcInfoPoints = [] } (Char SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 39 11 42 , srcInfoPoints = [] } 'a' "a"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 43 11 50 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 11 43 11 50 , srcInfoPoints = [] } "Hello" "Hello")))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 1 13 26 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 1 13 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 1 13 13 , srcInfoPoints = [] } "pairup_nosig") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 14 13 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 14 13 15 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 16 13 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 16 13 17 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 18 13 26 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 13 18 13 19 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 20 13 26 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 13 20 13 21 , SrcSpan "tests/examples/Vta1.hs" 13 22 13 23 , SrcSpan "tests/examples/Vta1.hs" 13 25 13 26 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 21 13 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 21 13 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 21 13 22 , srcInfoPoints = [] } "x")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 24 13 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 24 13 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 13 24 13 25 , srcInfoPoints = [] } "y")) ])) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 1 15 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 15 12 15 14 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 1 15 11 , srcInfoPoints = [] } "pairup_sig" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 15 15 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 15 17 15 19 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 15 15 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 15 15 16 , srcInfoPoints = [] } "a")) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 20 15 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 15 22 15 24 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 20 15 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 20 15 21 , srcInfoPoints = [] } "b")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 25 15 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 15 25 15 26 , SrcSpan "tests/examples/Vta1.hs" 15 27 15 28 , SrcSpan "tests/examples/Vta1.hs" 15 29 15 30 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 26 15 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 26 15 27 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 28 15 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 15 28 15 29 , srcInfoPoints = [] } "b") ]))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 1 16 24 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 1 16 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 1 16 11 , srcInfoPoints = [] } "pairup_sig") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 12 16 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 12 16 13 , srcInfoPoints = [] } "u") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 14 16 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 14 16 15 , srcInfoPoints = [] } "w") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 16 16 24 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 16 16 16 17 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 18 16 24 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 16 18 16 19 , SrcSpan "tests/examples/Vta1.hs" 16 20 16 21 , SrcSpan "tests/examples/Vta1.hs" 16 23 16 24 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 19 16 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 19 16 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 19 16 20 , srcInfoPoints = [] } "u")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 22 16 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 22 16 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 16 22 16 23 , srcInfoPoints = [] } "w")) ])) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 1 18 43 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 1 18 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 1 18 11 , srcInfoPoints = [] } "answer_sig")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 12 18 43 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 18 12 18 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 14 18 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 14 18 41 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 14 18 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 14 18 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 14 18 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 14 18 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 14 18 24 , srcInfoPoints = [] } "pairup_sig"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 25 18 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 18 25 18 26 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 26 18 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 26 18 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 26 18 30 , srcInfoPoints = [] } "Bool"))))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 31 18 35 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 18 31 18 32 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 32 18 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 32 18 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 32 18 35 , srcInfoPoints = [] } "Int"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 36 18 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 36 18 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 36 18 41 , srcInfoPoints = [] } "False")))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 42 18 43 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 18 42 18 43 , srcInfoPoints = [] } 7 "7")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 1 21 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 1 21 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 1 21 12 , srcInfoPoints = [] } "answer_read")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 13 21 35 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 21 13 21 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 15 21 35 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 15 21 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 15 21 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 15 21 19 , srcInfoPoints = [] } "show"))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 20 21 35 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 21 20 21 21 , SrcSpan "tests/examples/Vta1.hs" 21 34 21 35 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 21 21 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 21 21 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 21 21 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 21 21 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 21 21 25 , srcInfoPoints = [] } "read"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 26 21 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 21 26 21 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 27 21 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 27 21 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 27 21 30 , srcInfoPoints = [] } "Int"))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 31 21 34 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 21 31 21 34 , srcInfoPoints = [] } "3" "3")))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 1 22 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 1 22 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 1 22 12 , srcInfoPoints = [] } "answer_show")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 13 22 39 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 22 13 22 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 15 22 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 15 22 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 15 22 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 15 22 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 15 22 19 , srcInfoPoints = [] } "show"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 20 22 28 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 22 20 22 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 21 22 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 21 22 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 21 22 28 , srcInfoPoints = [] } "Integer"))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 29 22 39 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 22 29 22 30 , SrcSpan "tests/examples/Vta1.hs" 22 38 22 39 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 30 22 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 30 22 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 30 22 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 30 22 34 , srcInfoPoints = [] } "read"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 35 22 38 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 22 35 22 38 , srcInfoPoints = [] } "5" "5")))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 1 23 44 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 1 23 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 1 23 16 , srcInfoPoints = [] } "answer_showread")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 17 23 44 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 23 17 23 18 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 19 23 44 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 19 23 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 19 23 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 19 23 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 19 23 23 , srcInfoPoints = [] } "show"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 24 23 28 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 23 24 23 25 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 25 23 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 25 23 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 25 23 28 , srcInfoPoints = [] } "Int"))))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 29 23 44 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 23 29 23 30 , SrcSpan "tests/examples/Vta1.hs" 23 43 23 44 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 30 23 43 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 30 23 39 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 30 23 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 30 23 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 30 23 34 , srcInfoPoints = [] } "read"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 35 23 39 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 23 35 23 36 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 36 23 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 36 23 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 36 23 39 , srcInfoPoints = [] } "Int"))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 40 23 43 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 23 40 23 43 , srcInfoPoints = [] } "7" "7")))))) Nothing , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 1 25 23 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 1 25 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 1 25 8 , srcInfoPoints = [] } "intcons") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 9 25 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 9 25 10 , srcInfoPoints = [] } "a") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 11 25 23 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 25 11 25 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 13 25 23 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 13 25 21 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 13 25 16 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 25 13 25 14 , SrcSpan "tests/examples/Vta1.hs" 25 14 25 15 , SrcSpan "tests/examples/Vta1.hs" 25 15 25 16 ] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 13 25 16 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 25 13 25 14 , SrcSpan "tests/examples/Vta1.hs" 25 14 25 15 , SrcSpan "tests/examples/Vta1.hs" 25 15 25 16 ] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 14 25 15 , srcInfoPoints = [] }))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 17 25 21 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 25 17 25 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 18 25 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 18 25 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 18 25 21 , srcInfoPoints = [] } "Int"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 22 25 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 22 25 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 25 22 25 23 , srcInfoPoints = [] } "a"))))) Nothing ] , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 1 27 34 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 1 27 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 1 27 8 , srcInfoPoints = [] } "intpair") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 9 27 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 9 27 10 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 11 27 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 11 27 12 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 13 27 34 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 27 13 27 14 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 15 27 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 15 27 32 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 15 27 30 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 15 27 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 15 27 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 15 27 25 , srcInfoPoints = [] } "pairup_sig"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 26 27 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 27 26 27 27 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 27 27 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 27 27 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 27 27 30 , srcInfoPoints = [] } "Int"))))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 31 27 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 31 27 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 31 27 32 , srcInfoPoints = [] } "x")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 33 27 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 33 27 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 27 33 27 34 , srcInfoPoints = [] } "y"))))) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 1 29 39 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 1 29 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 1 29 14 , srcInfoPoints = [] } "answer_pairup")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 15 29 39 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 29 15 29 16 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 17 29 39 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 17 29 34 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 17 29 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 17 29 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 17 29 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 17 29 27 , srcInfoPoints = [] } "pairup_sig"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 28 29 32 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 29 28 29 29 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 29 29 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 29 29 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 29 29 32 , srcInfoPoints = [] } "Int"))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 33 29 34 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 33 29 34 , srcInfoPoints = [] } 5 "5"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 35 29 39 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 35 29 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 29 35 29 39 , srcInfoPoints = [] } "True"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 1 30 35 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 1 30 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 1 30 15 , srcInfoPoints = [] } "answer_intpair")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 16 30 35 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 30 16 30 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 18 30 35 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 18 30 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 18 30 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 18 30 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 18 30 25 , srcInfoPoints = [] } "intpair"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 26 30 27 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 26 30 27 , srcInfoPoints = [] } 1 "1"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 28 30 35 , srcInfoPoints = [] } (String SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 30 28 30 35 , srcInfoPoints = [] } "hello" "hello")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 1 31 30 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 1 31 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 1 31 15 , srcInfoPoints = [] } "answer_intcons")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 16 31 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 31 16 31 17 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 18 31 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 18 31 27 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 18 31 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 18 31 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 18 31 25 , srcInfoPoints = [] } "intcons"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 26 31 27 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 26 31 27 , srcInfoPoints = [] } 7 "7"))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 31 28 31 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 31 28 31 29 , SrcSpan "tests/examples/Vta1.hs" 31 29 31 30 ] } []))) Nothing , TypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 33 1 33 16 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 33 1 33 5 , SrcSpan "tests/examples/Vta1.hs" 33 6 33 12 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 33 13 33 16 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 33 13 33 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 33 13 33 14 , srcInfoPoints = [] } "F")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 33 15 33 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 33 15 33 16 , srcInfoPoints = [] } "a"))) Nothing Nothing , TypeInsDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 1 34 28 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 34 1 34 5 , SrcSpan "tests/examples/Vta1.hs" 34 6 34 14 , SrcSpan "tests/examples/Vta1.hs" 34 22 34 23 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 15 34 21 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 15 34 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 15 34 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 15 34 16 , srcInfoPoints = [] } "F"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 17 34 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 17 34 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 17 34 21 , srcInfoPoints = [] } "Char")))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 24 34 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 24 34 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 34 24 34 28 , srcInfoPoints = [] } "Bool"))) , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 1 36 14 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 36 3 36 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 1 36 2 , srcInfoPoints = [] } "g" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 6 36 14 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 36 10 36 12 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 6 36 9 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 6 36 7 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 6 36 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 6 36 7 , srcInfoPoints = [] } "F"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 8 36 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 8 36 9 , srcInfoPoints = [] } "a"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 13 36 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 36 13 36 14 , srcInfoPoints = [] } "a"))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 37 1 37 16 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 37 1 37 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 37 1 37 2 , srcInfoPoints = [] } "g") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 37 3 37 4 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 37 5 37 16 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 37 5 37 6 ] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 37 7 37 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 37 7 37 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 37 7 37 16 , srcInfoPoints = [] } "undefined")))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 39 1 39 10 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 39 3 39 5 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 39 1 39 2 , srcInfoPoints = [] } "f" ] (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 39 6 39 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 39 6 39 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 39 6 39 10 , srcInfoPoints = [] } "Char"))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 1 40 11 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 1 40 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 1 40 2 , srcInfoPoints = [] } "f")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 3 40 11 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 40 3 40 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 5 40 11 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 5 40 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 5 40 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 5 40 6 , srcInfoPoints = [] } "g"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 7 40 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 7 40 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 40 7 40 11 , srcInfoPoints = [] } "True"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 1 42 23 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 1 42 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 1 42 7 , srcInfoPoints = [] } "answer")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 8 42 23 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 42 8 42 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 10 42 23 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 10 42 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 10 42 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 10 42 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 10 42 11 , srcInfoPoints = [] } "g"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 12 42 17 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 42 12 42 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 13 42 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 13 42 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 13 42 17 , srcInfoPoints = [] } "Char"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 18 42 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 18 42 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 42 18 42 23 , srcInfoPoints = [] } "False"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 1 44 54 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 9 44 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 1 44 8 , srcInfoPoints = [] } "mapSame" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 12 44 54 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 12 44 18 , SrcSpan "tests/examples/Vta1.hs" 44 20 44 21 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 19 44 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 19 44 20 , srcInfoPoints = [] } "b") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 22 44 54 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 41 44 43 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 22 44 40 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 22 44 23 , SrcSpan "tests/examples/Vta1.hs" 44 39 44 40 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 23 44 39 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 23 44 29 , SrcSpan "tests/examples/Vta1.hs" 44 31 44 32 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 30 44 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 30 44 31 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 33 44 39 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 35 44 37 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 33 44 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 33 44 34 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 38 44 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 38 44 39 , srcInfoPoints = [] } "a"))))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 44 44 54 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 48 44 50 ] } (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 44 44 47 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 44 44 45 , SrcSpan "tests/examples/Vta1.hs" 44 46 44 47 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 45 44 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 45 44 46 , srcInfoPoints = [] } "b"))) (TyList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 51 44 54 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 44 51 44 52 , SrcSpan "tests/examples/Vta1.hs" 44 53 44 54 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 52 44 53 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 44 52 44 53 , srcInfoPoints = [] } "b")))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 45 1 46 52 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 45 1 45 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 45 1 45 8 , srcInfoPoints = [] } "mapSame") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 45 9 45 10 , srcInfoPoints = [] } , PList SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 45 11 45 13 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 45 11 45 12 , SrcSpan "tests/examples/Vta1.hs" 45 12 45 13 ] } [] ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 45 14 45 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 45 14 45 15 ] } (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 45 16 45 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 45 16 45 17 , SrcSpan "tests/examples/Vta1.hs" 45 17 45 18 ] } [])) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 1 46 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 1 46 8 , srcInfoPoints = [] } "mapSame") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 9 46 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 9 46 12 , srcInfoPoints = [] } "fun") , PParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 13 46 19 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 46 13 46 14 , SrcSpan "tests/examples/Vta1.hs" 46 18 46 19 ] } (PInfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 14 46 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 14 46 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 14 46 15 , srcInfoPoints = [] } "x")) (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 15 46 16 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 15 46 16 , srcInfoPoints = [] })) (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 16 46 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 16 46 18 , srcInfoPoints = [] } "xs"))) ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 20 46 52 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 46 20 46 21 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 22 46 52 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 22 46 30 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 22 46 28 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 22 46 25 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 22 46 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 22 46 25 , srcInfoPoints = [] } "fun"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 26 46 28 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 46 26 46 27 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 27 46 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 27 46 28 , srcInfoPoints = [] } "b")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 29 46 30 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 29 46 30 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 29 46 30 , srcInfoPoints = [] } "x")))) (QConOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 31 46 32 , srcInfoPoints = [] } (Special SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 31 46 32 , srcInfoPoints = [] } (Cons SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 31 46 32 , srcInfoPoints = [] }))) (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 33 46 52 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 46 33 46 34 , SrcSpan "tests/examples/Vta1.hs" 46 51 46 52 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 34 46 51 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 34 46 48 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 34 46 44 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 34 46 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 34 46 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 34 46 41 , srcInfoPoints = [] } "mapSame"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 42 46 44 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 46 42 46 43 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 43 46 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 43 46 44 , srcInfoPoints = [] } "b")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 45 46 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 45 46 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 45 46 48 , srcInfoPoints = [] } "fun")))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 49 46 51 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 49 46 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 46 49 46 51 , srcInfoPoints = [] } "xs"))))))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 1 48 46 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 48 6 48 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 1 48 5 , srcInfoPoints = [] } "pair" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 9 48 46 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 48 9 48 15 , SrcSpan "tests/examples/Vta1.hs" 48 17 48 18 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 16 48 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 16 48 17 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 19 48 46 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 48 20 48 22 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 19 48 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 19 48 20 , srcInfoPoints = [] } "a")) (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 23 48 46 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 48 23 48 24 , SrcSpan "tests/examples/Vta1.hs" 48 45 48 46 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 24 48 45 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 48 24 48 30 , SrcSpan "tests/examples/Vta1.hs" 48 32 48 33 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 31 48 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 31 48 32 , srcInfoPoints = [] } "b") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 34 48 45 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 48 36 48 38 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 34 48 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 34 48 35 , srcInfoPoints = [] } "b")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 39 48 45 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 48 39 48 40 , SrcSpan "tests/examples/Vta1.hs" 48 41 48 42 , SrcSpan "tests/examples/Vta1.hs" 48 44 48 45 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 40 48 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 40 48 41 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 43 48 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 48 43 48 44 , srcInfoPoints = [] } "b") ])))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 1 49 18 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 1 49 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 1 49 5 , srcInfoPoints = [] } "pair") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 6 49 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 6 49 7 , srcInfoPoints = [] } "x") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 8 49 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 8 49 9 , srcInfoPoints = [] } "y") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 10 49 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 49 10 49 11 ] } (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 12 49 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 49 12 49 13 , SrcSpan "tests/examples/Vta1.hs" 49 14 49 15 , SrcSpan "tests/examples/Vta1.hs" 49 17 49 18 ] } Boxed [ Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 13 49 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 13 49 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 13 49 14 , srcInfoPoints = [] } "x")) , Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 16 49 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 16 49 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 49 16 49 17 , srcInfoPoints = [] } "y")) ])) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 1 51 27 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 1 51 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 1 51 2 , srcInfoPoints = [] } "b")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 3 51 27 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 51 3 51 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 5 51 27 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 5 51 22 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 5 51 16 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 5 51 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 5 51 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 5 51 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 5 51 9 , srcInfoPoints = [] } "pair"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 10 51 14 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 51 10 51 11 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 11 51 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 11 51 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 11 51 14 , srcInfoPoints = [] } "Int"))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 15 51 16 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 15 51 16 , srcInfoPoints = [] } 3 "3"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 17 51 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 51 17 51 18 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 18 51 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 18 51 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 18 51 22 , srcInfoPoints = [] } "Bool"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 23 51 27 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 23 51 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 51 23 51 27 , srcInfoPoints = [] } "True"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 1 52 23 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 1 52 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 1 52 2 , srcInfoPoints = [] } "c")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 3 52 23 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 52 3 52 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 5 52 23 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 5 52 15 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 5 52 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 5 52 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 5 52 12 , srcInfoPoints = [] } "mapSame"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 13 52 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 13 52 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 13 52 15 , srcInfoPoints = [] } "id")))) (List SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 16 52 23 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 52 16 52 17 , SrcSpan "tests/examples/Vta1.hs" 52 18 52 19 , SrcSpan "tests/examples/Vta1.hs" 52 20 52 21 , SrcSpan "tests/examples/Vta1.hs" 52 22 52 23 ] } [ Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 17 52 18 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 17 52 18 , srcInfoPoints = [] } 1 "1") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 19 52 20 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 19 52 20 , srcInfoPoints = [] } 2 "2") , Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 21 52 22 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 52 21 52 22 , srcInfoPoints = [] } 3 "3") ]))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 1 53 22 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 1 53 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 1 53 2 , srcInfoPoints = [] } "d")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 3 53 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 53 3 53 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 5 53 22 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 5 53 17 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 5 53 11 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 5 53 9 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 5 53 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 5 53 9 , srcInfoPoints = [] } "pair"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 10 53 11 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 10 53 11 , srcInfoPoints = [] } 3 "3"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 12 53 17 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 53 12 53 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 13 53 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 13 53 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 13 53 17 , srcInfoPoints = [] } "Bool"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 18 53 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 18 53 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 53 18 53 22 , srcInfoPoints = [] } "True"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 1 55 52 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 55 9 55 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 1 55 8 , srcInfoPoints = [] } "pairnum" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 12 55 52 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 55 12 55 18 , SrcSpan "tests/examples/Vta1.hs" 55 20 55 21 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 19 55 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 19 55 20 , srcInfoPoints = [] } "a") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 22 55 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 55 28 55 30 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 22 55 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 55 28 55 30 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 22 55 25 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 22 55 25 , srcInfoPoints = [] } "Num")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 26 55 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 26 55 27 , srcInfoPoints = [] } "a") ]))) (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 31 55 52 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 55 31 55 37 , SrcSpan "tests/examples/Vta1.hs" 55 39 55 40 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 38 55 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 38 55 39 , srcInfoPoints = [] } "b") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 41 55 52 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 55 43 55 45 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 41 55 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 41 55 42 , srcInfoPoints = [] } "b")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 46 55 52 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 55 46 55 47 , SrcSpan "tests/examples/Vta1.hs" 55 48 55 49 , SrcSpan "tests/examples/Vta1.hs" 55 51 55 52 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 47 55 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 47 55 48 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 50 55 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 55 50 55 51 , srcInfoPoints = [] } "b") ])))) , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 1 56 17 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 1 56 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 1 56 8 , srcInfoPoints = [] } "pairnum")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 9 56 17 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 56 9 56 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 11 56 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 11 56 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 11 56 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 11 56 15 , srcInfoPoints = [] } "pair"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 16 56 17 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 56 16 56 17 , srcInfoPoints = [] } 3 "3")))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 1 58 73 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 1 58 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 1 58 2 , srcInfoPoints = [] } "e")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 3 58 73 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 3 58 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 5 58 73 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 5 58 68 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 5 58 62 , srcInfoPoints = [] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 5 58 57 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 5 58 6 , SrcSpan "tests/examples/Vta1.hs" 58 56 58 57 ] } (ExpTypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 6 58 56 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 13 58 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 6 58 12 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 6 58 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 6 58 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 6 58 10 , srcInfoPoints = [] } "pair"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 11 58 12 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 11 58 12 , srcInfoPoints = [] } 3 "3"))) (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 16 58 56 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 16 58 22 , SrcSpan "tests/examples/Vta1.hs" 58 24 58 25 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 23 58 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 23 58 24 , srcInfoPoints = [] } "a") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 26 58 34 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 32 58 34 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 26 58 34 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 32 58 34 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 26 58 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 26 58 29 , srcInfoPoints = [] } "Num")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 30 58 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 30 58 31 , srcInfoPoints = [] } "a") ]))) (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 35 58 56 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 35 58 41 , SrcSpan "tests/examples/Vta1.hs" 58 43 58 44 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 42 58 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 42 58 43 , srcInfoPoints = [] } "b") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 45 58 56 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 47 58 49 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 45 58 46 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 45 58 46 , srcInfoPoints = [] } "b")) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 50 58 56 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 50 58 51 , SrcSpan "tests/examples/Vta1.hs" 58 52 58 53 , SrcSpan "tests/examples/Vta1.hs" 58 55 58 56 ] } Boxed [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 51 58 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 51 58 52 , srcInfoPoints = [] } "a") , TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 54 58 55 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 54 58 55 , srcInfoPoints = [] } "b") ])))))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 58 58 62 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 58 58 59 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 59 58 62 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 59 58 62 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 59 58 62 , srcInfoPoints = [] } "Int"))))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 63 58 68 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 58 63 58 64 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 64 58 68 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 64 58 68 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 64 58 68 , srcInfoPoints = [] } "Bool"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 69 58 73 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 69 58 73 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 58 69 58 73 , srcInfoPoints = [] } "True"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 1 59 28 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 1 59 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 1 59 2 , srcInfoPoints = [] } "h")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 3 59 28 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 59 3 59 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 5 59 28 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 5 59 23 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 5 59 17 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 5 59 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 5 59 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 5 59 12 , srcInfoPoints = [] } "pairnum"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 13 59 17 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 59 13 59 14 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 14 59 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 14 59 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 14 59 17 , srcInfoPoints = [] } "Int"))))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 18 59 23 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 59 18 59 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 19 59 23 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 19 59 23 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 19 59 23 , srcInfoPoints = [] } "Bool"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 24 59 28 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 24 59 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 59 24 59 28 , srcInfoPoints = [] } "True"))))) Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 1 61 29 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 61 26 61 27 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 1 61 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 6 61 25 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 6 61 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 6 61 11 , srcInfoPoints = [] } "First")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 12 61 25 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 61 12 61 13 , SrcSpan "tests/examples/Vta1.hs" 61 15 61 17 , SrcSpan "tests/examples/Vta1.hs" 61 24 61 25 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 13 61 14 , srcInfoPoints = [] } "a") (KindFn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 18 61 24 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 61 20 61 22 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 18 61 19 , srcInfoPoints = [] }) (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 23 61 24 , srcInfoPoints = [] })))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 28 61 29 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 28 61 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 61 28 61 29 , srcInfoPoints = [] } "F") []) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 1 62 24 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 62 21 62 22 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 1 62 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 6 62 20 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 6 62 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 6 62 11 , srcInfoPoints = [] } "Proxy")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 12 62 20 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 62 12 62 13 , SrcSpan "tests/examples/Vta1.hs" 62 15 62 17 , SrcSpan "tests/examples/Vta1.hs" 62 19 62 20 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 13 62 14 , srcInfoPoints = [] } "a") (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 18 62 19 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 18 62 19 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 18 62 19 , srcInfoPoints = [] } "k"))))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 23 62 24 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 23 62 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 62 23 62 24 , srcInfoPoints = [] } "P") []) ] Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 1 63 34 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 63 31 63 32 ] } (DataType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 1 63 5 , srcInfoPoints = [] }) Nothing (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 6 63 30 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 6 63 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 6 63 11 , srcInfoPoints = [] } "Three")) (KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 12 63 30 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 63 12 63 13 , SrcSpan "tests/examples/Vta1.hs" 63 15 63 17 , SrcSpan "tests/examples/Vta1.hs" 63 29 63 30 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 13 63 14 , srcInfoPoints = [] } "a") (KindFn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 18 63 29 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 63 20 63 22 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 18 63 19 , srcInfoPoints = [] }) (KindFn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 23 63 29 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 63 25 63 27 ] } (KindVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 23 63 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 23 63 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 23 63 24 , srcInfoPoints = [] } "k"))) (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 28 63 29 , srcInfoPoints = [] }))))) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 33 63 34 , srcInfoPoints = [] } Nothing Nothing (ConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 33 63 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 63 33 63 34 , srcInfoPoints = [] } "T") []) ] Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 1 65 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 65 5 65 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 1 65 4 , srcInfoPoints = [] } "foo" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 8 65 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 65 16 65 18 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 8 65 15 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 8 65 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 8 65 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 8 65 13 , srcInfoPoints = [] } "Proxy"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 14 65 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 14 65 15 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 19 65 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 19 65 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 65 19 65 22 , srcInfoPoints = [] } "Int")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 66 1 66 10 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 66 1 66 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 66 1 66 4 , srcInfoPoints = [] } "foo") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 66 5 66 6 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 66 7 66 10 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 66 7 66 8 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 66 9 66 10 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 66 9 66 10 , srcInfoPoints = [] } 0 "0"))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 1 68 24 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 68 7 68 9 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 1 68 6 , srcInfoPoints = [] } "first" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 10 68 24 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 68 18 68 20 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 10 68 17 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 10 68 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 10 68 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 10 68 15 , srcInfoPoints = [] } "First"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 16 68 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 16 68 17 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 21 68 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 21 68 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 68 21 68 24 , srcInfoPoints = [] } "Int")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 69 1 69 12 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 69 1 69 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 69 1 69 6 , srcInfoPoints = [] } "first") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 69 7 69 8 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 69 9 69 12 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 69 9 69 10 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 69 11 69 12 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 69 11 69 12 , srcInfoPoints = [] } 0 "0"))) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 1 71 16 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 1 71 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 1 71 6 , srcInfoPoints = [] } "fTest")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 7 71 16 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 71 7 71 8 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 9 71 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 9 71 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 9 71 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 9 71 14 , srcInfoPoints = [] } "first"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 15 71 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 15 71 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 71 15 71 16 , srcInfoPoints = [] } "F"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 1 72 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 1 72 7 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 1 72 7 , srcInfoPoints = [] } "fMaybe")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 8 72 24 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 72 8 72 9 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 10 72 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 10 72 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 10 72 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 10 72 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 10 72 15 , srcInfoPoints = [] } "first"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 16 72 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 72 16 72 17 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 17 72 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 17 72 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 17 72 22 , srcInfoPoints = [] } "Maybe"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 23 72 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 23 72 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 72 23 72 24 , srcInfoPoints = [] } "F"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 1 74 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 1 74 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 1 74 5 , srcInfoPoints = [] } "test")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 6 74 13 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 74 6 74 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 8 74 13 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 8 74 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 8 74 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 8 74 11 , srcInfoPoints = [] } "foo"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 12 74 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 12 74 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 74 12 74 13 , srcInfoPoints = [] } "P"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 1 75 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 1 75 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 1 75 4 , srcInfoPoints = [] } "bar")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 5 75 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 75 5 75 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 7 75 18 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 7 75 16 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 7 75 10 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 7 75 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 7 75 10 , srcInfoPoints = [] } "foo"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 11 75 16 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 75 11 75 12 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 12 75 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 12 75 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 12 75 16 , srcInfoPoints = [] } "Bool"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 17 75 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 17 75 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 75 17 75 18 , srcInfoPoints = [] } "P"))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 1 77 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 77 5 77 7 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 1 77 4 , srcInfoPoints = [] } "too" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 8 77 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 77 16 77 18 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 8 77 15 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 8 77 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 8 77 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 8 77 13 , srcInfoPoints = [] } "Three"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 14 77 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 14 77 15 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 19 77 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 19 77 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 77 19 77 22 , srcInfoPoints = [] } "Int")))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 78 1 78 10 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 78 1 78 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 78 1 78 4 , srcInfoPoints = [] } "too") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 78 5 78 6 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 78 7 78 10 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 78 7 78 8 ] } (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 78 9 78 10 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 78 9 78 10 , srcInfoPoints = [] } 3 "3"))) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 1 80 18 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 1 80 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 1 80 10 , srcInfoPoints = [] } "threeBase")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 11 80 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 80 11 80 12 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 13 80 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 13 80 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 13 80 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 13 80 16 , srcInfoPoints = [] } "too"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 17 80 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 17 80 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 80 17 80 18 , srcInfoPoints = [] } "T"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 1 81 24 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 1 81 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 1 81 8 , srcInfoPoints = [] } "threeOk")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 9 81 24 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 81 9 81 10 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 11 81 24 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 11 81 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 11 81 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 11 81 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 11 81 14 , srcInfoPoints = [] } "too"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 15 81 22 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 81 15 81 16 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 16 81 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 16 81 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 16 81 22 , srcInfoPoints = [] } "Either"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 23 81 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 23 81 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 81 23 81 24 , srcInfoPoints = [] } "T"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 1 83 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 1 83 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 1 83 5 , srcInfoPoints = [] } "blah")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 6 83 20 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 83 6 83 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 8 83 20 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 8 83 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 8 83 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 8 83 15 , srcInfoPoints = [] } "Nothing"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 16 83 20 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 83 16 83 17 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 17 83 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 17 83 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 83 17 83 20 , srcInfoPoints = [] } "Int")))))) Nothing , DataDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 1 85 61 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 85 11 85 12 ] } (NewType SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 1 85 8 , srcInfoPoints = [] }) Nothing (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 9 85 10 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 9 85 10 , srcInfoPoints = [] } "N")) [ QualConDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 13 85 61 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 85 17 85 18 , SrcSpan "tests/examples/Vta1.hs" 85 60 85 61 ] } Nothing Nothing (RecDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 13 85 61 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 85 17 85 18 , SrcSpan "tests/examples/Vta1.hs" 85 60 85 61 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 13 85 16 , srcInfoPoints = [] } "MkN") [ FieldDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 19 85 59 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 85 25 85 27 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 19 85 24 , srcInfoPoints = [] } "unMkN" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 28 85 59 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 85 28 85 34 , SrcSpan "tests/examples/Vta1.hs" 85 36 85 37 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 35 85 36 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 35 85 36 , srcInfoPoints = [] } "a") ]) (Just (CxSingle SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 38 85 47 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 85 45 85 47 ] } (ClassA SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 38 85 47 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 85 45 85 47 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 38 85 42 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 38 85 42 , srcInfoPoints = [] } "Show")) [ TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 43 85 44 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 43 85 44 , srcInfoPoints = [] } "a") ]))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 48 85 59 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 85 50 85 52 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 48 85 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 48 85 49 , srcInfoPoints = [] } "a")) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 53 85 59 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 53 85 59 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 85 53 85 59 , srcInfoPoints = [] } "String"))))) ]) ] Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 1 87 13 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 1 87 2 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 1 87 2 , srcInfoPoints = [] } "n")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 3 87 13 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 87 3 87 4 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 5 87 13 , srcInfoPoints = [] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 5 87 8 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 5 87 8 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 5 87 8 , srcInfoPoints = [] } "MkN"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 9 87 13 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 9 87 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 87 9 87 13 , srcInfoPoints = [] } "show"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 1 89 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 1 89 4 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 1 89 4 , srcInfoPoints = [] } "boo")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 5 89 20 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 89 5 89 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 7 89 20 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 7 89 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 7 89 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 7 89 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 7 89 12 , srcInfoPoints = [] } "unMkN"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 13 89 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 13 89 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 13 89 14 , srcInfoPoints = [] } "n")))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 15 89 20 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 89 15 89 16 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 16 89 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 16 89 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 89 16 89 20 , srcInfoPoints = [] } "Bool")))))) Nothing , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 1 91 47 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 91 6 91 8 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 1 91 5 , srcInfoPoints = [] } "boo2" ] (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 9 91 47 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 91 9 91 15 , SrcSpan "tests/examples/Vta1.hs" 91 30 91 31 ] } (Just [ KindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 16 91 29 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 91 16 91 17 , SrcSpan "tests/examples/Vta1.hs" 91 19 91 21 , SrcSpan "tests/examples/Vta1.hs" 91 28 91 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 17 91 18 , srcInfoPoints = [] } "a") (KindFn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 22 91 28 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 91 24 91 26 ] } (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 22 91 23 , srcInfoPoints = [] }) (KindStar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 27 91 28 , srcInfoPoints = [] })) ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 32 91 47 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 91 40 91 42 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 32 91 39 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 32 91 37 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 32 91 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 32 91 37 , srcInfoPoints = [] } "Proxy"))) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 38 91 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 38 91 39 , srcInfoPoints = [] } "a"))) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 43 91 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 43 91 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 91 43 91 47 , srcInfoPoints = [] } "Bool"))))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 92 1 92 15 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 92 1 92 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 92 1 92 5 , srcInfoPoints = [] } "boo2") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 92 6 92 7 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 92 8 92 15 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 92 8 92 9 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 92 10 92 15 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 92 10 92 15 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 92 10 92 15 , srcInfoPoints = [] } "False")))) Nothing ] , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 1 94 14 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 1 94 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 1 94 5 , srcInfoPoints = [] } "base")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 6 94 14 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 94 6 94 7 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 8 94 14 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 8 94 12 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 8 94 12 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 8 94 12 , srcInfoPoints = [] } "boo2"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 13 94 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 13 94 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 94 13 94 14 , srcInfoPoints = [] } "P"))))) Nothing , PatBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 1 95 20 , srcInfoPoints = [] } (PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 1 95 5 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 1 95 5 , srcInfoPoints = [] } "bar'")) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 5 95 20 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 95 5 95 6 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 7 95 20 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 7 95 18 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 7 95 11 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 7 95 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 7 95 11 , srcInfoPoints = [] } "boo2"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 12 95 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta1.hs" 95 12 95 13 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 13 95 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 13 95 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 13 95 18 , srcInfoPoints = [] } "Maybe"))))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 19 95 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 19 95 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta1.hs" 95 19 95 20 , srcInfoPoints = [] } "P"))))) Nothing ] , [ Comment False (SrcSpan "tests/examples/Vta1.hs" 4 1 4 40) " tests about visible type application" , Comment False (SrcSpan "tests/examples/Vta1.hs" 18 44 18 46) "" , Comment False (SrcSpan "tests/examples/Vta1.hs" 19 1 19 29) " (False, 7) :: (Bool, Int)" , Comment False (SrcSpan "tests/examples/Vta1.hs" 21 36 21 52) " \"3\" :: String" , Comment False (SrcSpan "tests/examples/Vta1.hs" 22 40 22 56) " \"5\" :: String" , Comment False (SrcSpan "tests/examples/Vta1.hs" 23 45 23 61) " \"7\" :: String" , Comment False (SrcSpan "tests/examples/Vta1.hs" 29 40 29 67) " (5, True) :: (Int, Bool)" , Comment False (SrcSpan "tests/examples/Vta1.hs" 30 36 30 68) " (1, \"hello\") :: (Int, String)" , Comment False (SrcSpan "tests/examples/Vta1.hs" 31 36 31 51) " [7] :: [Int]" , Comment False (SrcSpan "tests/examples/Vta1.hs" 62 25 62 77) " This expands to P (kind variable) (type variable)" , Comment False (SrcSpan "tests/examples/Vta1.hs" 75 19 75 33) " should work" , Comment False (SrcSpan "tests/examples/Vta1.hs" 95 21 95 35) " should work" ] ) haskell-src-exts-1.18.2/tests/examples/Vta1.hs.prettyparser.golden0000644000000000000000000000000612746233113023321 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Vta1.hs.prettyprinter.golden0000644000000000000000000000331012746233113023511 0ustar0000000000000000{-# LANGUAGE TypeApplications, ScopedTypeVariables, PolyKinds, TypeFamilies, RankNTypes, FlexibleContexts #-} module Vta1 where quad :: a -> b -> c -> d -> (a, b, c, d) quad = (,,,) silly = quad @_ @Bool @Char @_ 5 True 'a' "Hello" pairup_nosig x y = (x, y) pairup_sig :: a -> b -> (a, b) pairup_sig u w = (u, w) answer_sig = pairup_sig @Bool @Int False 7 answer_read = show (read @Int "3") answer_show = show @Integer (read "5") answer_showread = show @Int (read @Int "7") intcons a = (:) @Int a intpair x y = pairup_sig @Int x y answer_pairup = pairup_sig @Int 5 True answer_intpair = intpair 1 "hello" answer_intcons = intcons 7 [] type family F a type instance F Char = Bool g :: F a -> a g _ = undefined f :: Char f = g True answer = g @Char False mapSame :: forall b . (forall a . a -> a) -> [b] -> [b] mapSame _ [] = [] mapSame fun (x : xs) = fun @b x : (mapSame @b fun xs) pair :: forall a . a -> (forall b . b -> (a, b)) pair x y = (x, y) b = pair @Int 3 @Bool True c = mapSame id [1, 2, 3] d = pair 3 @Bool True pairnum :: forall a . Num a => forall b . b -> (a, b) pairnum = pair 3 e = (pair 3 :: forall a . Num a => forall b . b -> (a, b)) @Int @Bool True h = pairnum @Int @Bool True data First (a :: * -> *) = F data Proxy (a :: k) = P data Three (a :: * -> k -> *) = T foo :: Proxy a -> Int foo _ = 0 first :: First a -> Int first _ = 0 fTest = first F fMaybe = first @Maybe F test = foo P bar = foo @Bool P too :: Three a -> Int too _ = 3 threeBase = too T threeOk = too @Either T blah = Nothing @Int newtype N = MkN{unMkN :: forall a . Show a => a -> String} n = MkN show boo = unMkN n @Bool boo2 :: forall (a :: * -> *) . Proxy a -> Bool boo2 _ = False base = boo2 P bar' = boo2 @Maybe P haskell-src-exts-1.18.2/tests/examples/Vta2.hs0000644000000000000000000000061612746233113017317 0ustar0000000000000000{-# LANGUAGE RankNTypes, TypeApplications #-} module Vta2 where checkIf :: Bool -> (forall a. a -> a) -> (Bool, Int) checkIf _ = if True then \f -> (f True, f 5) else \f -> (f False, f @Int 3) checkCase :: Bool -> (forall a. a -> a) -> (Bool, Int) checkCase _ = case True of True -> \f -> (f True, f 5) False -> \f -> (f False, f @Int 3) haskell-src-exts-1.18.2/tests/examples/Vta2.hs.exactprinter.golden0000644000000000000000000000000612746233113023266 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Vta2.hs.parser.golden0000644000000000000000000014131012746233113022056 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 1 1 15 1 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 1 1 1 1 , SrcSpan "tests/examples/Vta2.hs" 4 1 4 1 , SrcSpan "tests/examples/Vta2.hs" 4 1 4 1 , SrcSpan "tests/examples/Vta2.hs" 6 1 6 1 , SrcSpan "tests/examples/Vta2.hs" 7 1 7 1 , SrcSpan "tests/examples/Vta2.hs" 11 1 11 1 , SrcSpan "tests/examples/Vta2.hs" 12 1 12 1 , SrcSpan "tests/examples/Vta2.hs" 15 1 15 1 , SrcSpan "tests/examples/Vta2.hs" 15 1 15 1 ] } (Just (ModuleHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 4 1 4 18 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 4 1 4 7 , SrcSpan "tests/examples/Vta2.hs" 4 13 4 18 ] } (ModuleName SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 4 8 4 12 , srcInfoPoints = [] } "Vta2") Nothing Nothing)) [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 1 1 1 46 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 1 1 1 13 , SrcSpan "tests/examples/Vta2.hs" 1 24 1 25 , SrcSpan "tests/examples/Vta2.hs" 1 43 1 46 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 1 14 1 24 , srcInfoPoints = [] } "RankNTypes" , Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 1 26 1 42 , srcInfoPoints = [] } "TypeApplications" ] ] [] [ TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 1 6 53 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 6 9 6 11 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 1 6 8 , srcInfoPoints = [] } "checkIf" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 12 6 53 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 6 17 6 19 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 12 6 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 12 6 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 12 6 16 , srcInfoPoints = [] } "Bool"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 20 6 53 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 6 39 6 41 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 20 6 38 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 6 20 6 21 , SrcSpan "tests/examples/Vta2.hs" 6 37 6 38 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 21 6 37 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 6 21 6 27 , SrcSpan "tests/examples/Vta2.hs" 6 29 6 30 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 28 6 29 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 28 6 29 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 31 6 37 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 6 33 6 35 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 31 6 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 31 6 32 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 36 6 37 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 36 6 37 , srcInfoPoints = [] } "a"))))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 42 6 53 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 6 42 6 43 , SrcSpan "tests/examples/Vta2.hs" 6 47 6 48 , SrcSpan "tests/examples/Vta2.hs" 6 52 6 53 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 43 6 47 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 43 6 47 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 43 6 47 , srcInfoPoints = [] } "Bool")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 49 6 52 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 49 6 52 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 6 49 6 52 , srcInfoPoints = [] } "Int")) ]))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 1 9 43 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 1 9 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 1 7 8 , srcInfoPoints = [] } "checkIf") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 9 7 10 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 11 9 43 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 7 11 7 12 ] } (If SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 13 9 43 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 7 13 7 15 , SrcSpan "tests/examples/Vta2.hs" 8 13 8 17 , SrcSpan "tests/examples/Vta2.hs" 9 13 9 17 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 16 7 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 16 7 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 7 16 7 20 , srcInfoPoints = [] } "True"))) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 18 8 37 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 8 18 8 19 , SrcSpan "tests/examples/Vta2.hs" 8 21 8 23 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 19 8 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 19 8 20 , srcInfoPoints = [] } "f") ] (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 24 8 37 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 8 24 8 25 , SrcSpan "tests/examples/Vta2.hs" 8 31 8 32 , SrcSpan "tests/examples/Vta2.hs" 8 36 8 37 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 25 8 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 25 8 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 25 8 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 25 8 26 , srcInfoPoints = [] } "f"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 27 8 31 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 27 8 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 27 8 31 , srcInfoPoints = [] } "True"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 33 8 36 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 33 8 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 33 8 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 33 8 34 , srcInfoPoints = [] } "f"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 35 8 36 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 8 35 8 36 , srcInfoPoints = [] } 5 "5")) ])) (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 18 9 43 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 9 18 9 19 , SrcSpan "tests/examples/Vta2.hs" 9 21 9 23 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 19 9 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 19 9 20 , srcInfoPoints = [] } "f") ] (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 24 9 43 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 9 24 9 25 , SrcSpan "tests/examples/Vta2.hs" 9 32 9 33 , SrcSpan "tests/examples/Vta2.hs" 9 42 9 43 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 25 9 32 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 25 9 26 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 25 9 26 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 25 9 26 , srcInfoPoints = [] } "f"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 27 9 32 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 27 9 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 27 9 32 , srcInfoPoints = [] } "False"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 34 9 42 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 34 9 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 34 9 35 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 34 9 35 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 34 9 35 , srcInfoPoints = [] } "f"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 36 9 40 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 9 36 9 37 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 37 9 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 37 9 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 37 9 40 , srcInfoPoints = [] } "Int"))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 41 9 42 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 9 41 9 42 , srcInfoPoints = [] } 3 "3")) ])))) Nothing ] , TypeSig SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 1 11 55 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 11 11 11 13 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 1 11 10 , srcInfoPoints = [] } "checkCase" ] (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 14 11 55 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 11 19 11 21 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 14 11 18 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 14 11 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 14 11 18 , srcInfoPoints = [] } "Bool"))) (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 22 11 55 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 11 41 11 43 ] } (TyParen SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 22 11 40 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 11 22 11 23 , SrcSpan "tests/examples/Vta2.hs" 11 39 11 40 ] } (TyForall SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 23 11 39 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 11 23 11 29 , SrcSpan "tests/examples/Vta2.hs" 11 31 11 32 ] } (Just [ UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 30 11 31 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 30 11 31 , srcInfoPoints = [] } "a") ]) Nothing (TyFun SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 33 11 39 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 11 35 11 37 ] } (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 33 11 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 33 11 34 , srcInfoPoints = [] } "a")) (TyVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 38 11 39 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 38 11 39 , srcInfoPoints = [] } "a"))))) (TyTuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 44 11 55 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 11 44 11 45 , SrcSpan "tests/examples/Vta2.hs" 11 49 11 50 , SrcSpan "tests/examples/Vta2.hs" 11 54 11 55 ] } Boxed [ TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 45 11 49 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 45 11 49 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 45 11 49 , srcInfoPoints = [] } "Bool")) , TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 51 11 54 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 51 11 54 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 11 51 11 54 , srcInfoPoints = [] } "Int")) ]))) , FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 1 14 51 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 1 14 51 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 1 12 10 , srcInfoPoints = [] } "checkCase") [ PWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 11 12 12 , srcInfoPoints = [] } ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 13 14 51 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 12 13 12 14 ] } (Case SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 15 14 51 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 12 15 12 19 , SrcSpan "tests/examples/Vta2.hs" 12 25 12 27 , SrcSpan "tests/examples/Vta2.hs" 13 17 13 17 , SrcSpan "tests/examples/Vta2.hs" 14 17 14 17 , SrcSpan "tests/examples/Vta2.hs" 15 1 15 0 ] } (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 20 12 24 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 20 12 24 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 12 20 12 24 , srcInfoPoints = [] } "True"))) [ Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 17 13 44 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 17 13 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 17 13 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 17 13 21 , srcInfoPoints = [] } "True")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 22 13 44 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 13 22 13 24 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 25 13 44 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 13 25 13 26 , SrcSpan "tests/examples/Vta2.hs" 13 28 13 30 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 26 13 27 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 26 13 27 , srcInfoPoints = [] } "f") ] (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 31 13 44 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 13 31 13 32 , SrcSpan "tests/examples/Vta2.hs" 13 38 13 39 , SrcSpan "tests/examples/Vta2.hs" 13 43 13 44 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 32 13 38 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 32 13 33 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 32 13 33 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 32 13 33 , srcInfoPoints = [] } "f"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 34 13 38 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 34 13 38 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 34 13 38 , srcInfoPoints = [] } "True"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 40 13 43 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 40 13 41 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 40 13 41 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 40 13 41 , srcInfoPoints = [] } "f"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 42 13 43 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 13 42 13 43 , srcInfoPoints = [] } 5 "5")) ]))) Nothing , Alt SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 17 14 51 , srcInfoPoints = [] } (PApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 17 14 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 17 14 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 17 14 22 , srcInfoPoints = [] } "False")) []) (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 23 14 51 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 14 23 14 25 ] } (Lambda SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 26 14 51 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 14 26 14 27 , SrcSpan "tests/examples/Vta2.hs" 14 29 14 31 ] } [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 27 14 28 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 27 14 28 , srcInfoPoints = [] } "f") ] (Tuple SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 32 14 51 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 14 32 14 33 , SrcSpan "tests/examples/Vta2.hs" 14 40 14 41 , SrcSpan "tests/examples/Vta2.hs" 14 50 14 51 ] } Boxed [ App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 33 14 40 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 33 14 34 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 33 14 34 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 33 14 34 , srcInfoPoints = [] } "f"))) (Con SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 35 14 40 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 35 14 40 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 35 14 40 , srcInfoPoints = [] } "False"))) , App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 42 14 50 , srcInfoPoints = [] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 42 14 48 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 42 14 43 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 42 14 43 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 42 14 43 , srcInfoPoints = [] } "f"))) (TypeApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 44 14 48 , srcInfoPoints = [ SrcSpan "tests/examples/Vta2.hs" 14 44 14 45 ] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 45 14 48 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 45 14 48 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 45 14 48 , srcInfoPoints = [] } "Int"))))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 49 14 50 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/Vta2.hs" 14 49 14 50 , srcInfoPoints = [] } 3 "3")) ]))) Nothing ])) Nothing ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/Vta2.hs.prettyparser.golden0000644000000000000000000000000612746233113023322 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/Vta2.hs.prettyprinter.golden0000644000000000000000000000055612746233113023523 0ustar0000000000000000{-# LANGUAGE RankNTypes, TypeApplications #-} module Vta2 where checkIf :: Bool -> (forall a . a -> a) -> (Bool, Int) checkIf _ = if True then \ f -> (f True, f 5) else \ f -> (f False, f @Int 3) checkCase :: Bool -> (forall a . a -> a) -> (Bool, Int) checkCase _ = case True of True -> \ f -> (f True, f 5) False -> \ f -> (f False, f @Int 3) haskell-src-exts-1.18.2/tests/examples/WhereBlock.hs0000644000000000000000000000011312746233113020520 0ustar0000000000000000hash ptr len = f len where f h = return h f p = (p `advancePtr` 1) haskell-src-exts-1.18.2/tests/examples/WhereBlock.hs.exactprinter.golden0000644000000000000000000000000612746233113024477 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/WhereBlock.hs.parser.golden0000644000000000000000000003572212746233113023300 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 1 4 1 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 1 1 1 1 , SrcSpan "tests/examples/WhereBlock.hs" 1 1 1 1 , SrcSpan "tests/examples/WhereBlock.hs" 1 1 1 1 , SrcSpan "tests/examples/WhereBlock.hs" 4 1 4 1 , SrcSpan "tests/examples/WhereBlock.hs" 4 1 4 1 ] } Nothing [] [] [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 1 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 2 2 2 7 ] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 1 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 2 2 2 7 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 1 1 5 , srcInfoPoints = [] } "hash") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 6 1 9 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 6 1 9 , srcInfoPoints = [] } "ptr") , PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 10 1 13 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 10 1 13 , srcInfoPoints = [] } "len") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 14 1 21 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 1 14 1 15 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 16 1 21 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 16 1 17 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 16 1 17 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 16 1 17 , srcInfoPoints = [] } "f"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 18 1 21 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 18 1 21 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 1 18 1 21 , srcInfoPoints = [] } "len"))))) (Just (BDecls SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 8 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 2 8 2 8 , SrcSpan "tests/examples/WhereBlock.hs" 3 8 3 8 , SrcSpan "tests/examples/WhereBlock.hs" 4 1 4 0 ] } [ FunBind SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 8 3 32 , srcInfoPoints = [] } [ Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 8 2 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 8 2 9 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 10 2 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 10 2 11 , srcInfoPoints = [] } "h") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 12 2 22 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 2 12 2 13 ] } (App SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 14 2 22 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 14 2 20 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 14 2 20 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 14 2 20 , srcInfoPoints = [] } "return"))) (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 21 2 22 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 21 2 22 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 2 21 2 22 , srcInfoPoints = [] } "h"))))) Nothing , Match SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 8 3 32 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 8 3 9 , srcInfoPoints = [] } "f") [ PVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 10 3 11 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 10 3 11 , srcInfoPoints = [] } "p") ] (UnGuardedRhs SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 12 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 3 12 3 13 ] } (Paren SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 14 3 32 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 3 14 3 15 , SrcSpan "tests/examples/WhereBlock.hs" 3 31 3 32 ] } (InfixApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 15 3 31 , srcInfoPoints = [] } (Var SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 15 3 16 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 15 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 15 3 16 , srcInfoPoints = [] } "p"))) (QVarOp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 17 3 29 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 3 17 3 18 , SrcSpan "tests/examples/WhereBlock.hs" 3 18 3 28 , SrcSpan "tests/examples/WhereBlock.hs" 3 28 3 29 ] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 17 3 29 , srcInfoPoints = [ SrcSpan "tests/examples/WhereBlock.hs" 3 17 3 18 , SrcSpan "tests/examples/WhereBlock.hs" 3 18 3 28 , SrcSpan "tests/examples/WhereBlock.hs" 3 28 3 29 ] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 18 3 28 , srcInfoPoints = [] } "advancePtr"))) (Lit SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 30 3 31 , srcInfoPoints = [] } (Int SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WhereBlock.hs" 3 30 3 31 , srcInfoPoints = [] } 1 "1"))))) Nothing ] ])) ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/WhereBlock.hs.prettyparser.golden0000644000000000000000000000000612746233113024533 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/WhereBlock.hs.prettyprinter.golden0000644000000000000000000000011512746233113024723 0ustar0000000000000000hash ptr len = f len where f h = return h f p = (p `advancePtr` 1) haskell-src-exts-1.18.2/tests/examples/WildcardTyFam.hs0000644000000000000000000000010512746233113021166 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} type family Foo a where Foo _ = Int haskell-src-exts-1.18.2/tests/examples/WildcardTyFam.hs.exactprinter.golden0000644000000000000000000000000612746233113025144 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/WildcardTyFam.hs.parser.golden0000644000000000000000000001114712746233113023740 0ustar0000000000000000ParseOk ( Module SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 1 1 5 1 , srcInfoPoints = [ SrcSpan "tests/examples/WildcardTyFam.hs" 1 1 1 1 , SrcSpan "tests/examples/WildcardTyFam.hs" 3 1 3 1 , SrcSpan "tests/examples/WildcardTyFam.hs" 3 1 3 1 , SrcSpan "tests/examples/WildcardTyFam.hs" 3 1 3 1 , SrcSpan "tests/examples/WildcardTyFam.hs" 5 1 5 1 , SrcSpan "tests/examples/WildcardTyFam.hs" 5 1 5 1 ] } Nothing [ LanguagePragma SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 1 1 1 30 , srcInfoPoints = [ SrcSpan "tests/examples/WildcardTyFam.hs" 1 1 1 13 , SrcSpan "tests/examples/WildcardTyFam.hs" 1 27 1 30 ] } [ Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 1 14 1 26 , srcInfoPoints = [] } "TypeFamilies" ] ] [] [ ClosedTypeFamDecl SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 3 1 3 18 , srcInfoPoints = [ SrcSpan "tests/examples/WildcardTyFam.hs" 3 1 3 5 , SrcSpan "tests/examples/WildcardTyFam.hs" 3 6 3 12 , SrcSpan "tests/examples/WildcardTyFam.hs" 3 19 3 24 ] } (DHApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 3 13 3 18 , srcInfoPoints = [] } (DHead SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 3 13 3 16 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 3 13 3 16 , srcInfoPoints = [] } "Foo")) (UnkindedVar SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 3 17 3 18 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 3 17 3 18 , srcInfoPoints = [] } "a"))) Nothing Nothing [ TypeEqn SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 3 4 14 , srcInfoPoints = [ SrcSpan "tests/examples/WildcardTyFam.hs" 4 9 4 10 ] } (TyApp SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 3 4 8 , srcInfoPoints = [] } (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 3 4 6 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 3 4 6 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 3 4 6 , srcInfoPoints = [] } "Foo"))) (TyWildCard SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 7 4 8 , srcInfoPoints = [] } Nothing)) (TyCon SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 11 4 14 , srcInfoPoints = [] } (UnQual SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 11 4 14 , srcInfoPoints = [] } (Ident SrcSpanInfo { srcInfoSpan = SrcSpan "tests/examples/WildcardTyFam.hs" 4 11 4 14 , srcInfoPoints = [] } "Int"))) ] ] , [] ) haskell-src-exts-1.18.2/tests/examples/WildcardTyFam.hs.prettyparser.golden0000644000000000000000000000000612746233113025200 0ustar0000000000000000Match haskell-src-exts-1.18.2/tests/examples/WildcardTyFam.hs.prettyprinter.golden0000644000000000000000000000011312746233113025366 0ustar0000000000000000{-# LANGUAGE TypeFamilies #-} type family Foo a where Foo _ = Int